• AutoLISP对话框设计查询图元个数


    AutoLISP对话框设计查询图元个数,可查CIRCLE、LINE和TEXT的数量,DCL代码如下。

    dia5d:dialog {
        label = "练习" ;
        :concatenation {
            :text_part {
                label = "共选到【" ;
            }
            :text {
                width = 6 ;
                key = "t_cir" ;
            }
            :text_part {
                label = "】个CIRCLE" ;
            }
        }
        :concatenation {
            :text_part {
                label = "共选到【" ;
            }
            :text {
                width = 6 ;
                key = "t_line" ;
            }
            :text_part {
                label = "】个LINE" ;
            }
        }
        :concatenation {
            :text_part {
                label = "共选到【" ;
            }
            :text {
                width = 6 ;
                key = "t_text" ;
            }
            :text_part {
                label = "】个TEXT" ;
            }
        }
        ok_cancel;
    }

    LSP代码如下。

    (defun c:dia5d ()
        (setvar "cmdecho" 0)
        (sub_dia5d)
        (if    ss
        (dcl_dia5d)
        )
        (prin1)
    )
    (defun sub_dia5d ()
        (setq ss (ssget))
        (if    (null ss)
        (setq ss (ssadd))
        )
        (setq cir_num 0
          line_num 0
          text_num 0
        )
        (setq n 0)
        (repeat (sslength ss)
        (setq en (ssname ss n))
        (setq entype (cdr (assoc 0 (entget en))))
        (cond ((= entype "CIRCLE") (setq cir_num (1+ cir_num)))
              ((= entype "LINE") (setq line_num (1+ line_num)))
              ((= entype "TEXT") (setq text_num (1+ text_num)))
        )
        (setq n (1+ n))
        )
    )
    (defun dcl_dia5d ()
        (setq dcl_id (load_dialog "dia5d"))
        (if    (not (new_dialog "dia5d" dcl_id))
        (exit)
        )
        (set_tile "t_cir" (itoa cir_num))
        (set_tile "t_line" (itoa line_num))
        (set_tile "t_text" (itoa text_num))
        (setq dd (start_dialog))
    )

    代码完。

    查询其它图元类似。

    作者:codee
    文章千古事,得失寸心知。


  • 相关阅读:
    浅析搭建视频监控汇聚平台的必要性及场景应用
    浅析搭建校园在线教学视频汇聚平台的必要性及解决方案
    基于海康EhomeDemo工具排查公网部署出现的视频播放异常问题
    开发那些事儿:Linux系统中如何安装离线版本MySQL?
    Docker学习笔记(目录)目录
    NetCore中间件的一些知识
    linux自带的守护进程systemd(系统)与systemctl(命令)
    C#默认构造函数
    Vue使用Nginx时遇到刷新后404
    C#RabbitMQ学习笔记
  • 原文地址:https://www.cnblogs.com/bimgoo/p/2503064.html
Copyright © 2020-2023  润新知