(vl-load-com);; 条目名称 SOUTHDIJI;;选择宗地界址线(defun c:bak () ;; 获得JZD层上的闭合线选择集,必须带有扩展数据("SOUTH" (1000 . "300000"))。 (setq ss (ssget "x" '((0 . "*LINE") (8 . "JZD") (-4 . "&=") (70 . 1) (-3 ("SOUTH" (1000 . "300000"))))) Index 0 ) ;_ End setq (repeat (if ss (sslength ss) 0 ) ;_ End if (setq Ename (ssname ss Index) Index (1+ Index) Edata (entget Ename '("SOUTH")) ;; 找出对象所指向的词典。 ;;“{ACAD_XDICTIONARY”表示扩展词典组的起点。 Edata360 (cdr (member '(102 . "{ACAD_XDICTIONARY") Edata)) XrEnameSouth nil ) ;_ End setq (if Edata360 (progn ;; 360 所有者词典的硬所有者 ID/句柄。 ;; 在此不考虑出现多个360的情况,感觉这种情况不应该存在。 (setq DEname (cdr (assoc '360 Edata360)) ;_词典对象。 DEdata (entget DEname) ;_词典数据。 ;;条目名称SOUTHDIJI所对应的XRECORD对象 XrEnameSouth (cdr (assoc '360 (cdr (member '(3 . "SOUTHDIJI") DEdata)))) ) ;_ End setq ) ;_ End progn ) ;_ End if (if XrEnameSouth (progn (setq XrEdataSo
lisp读写cass属性_cass提取宗地属性lisp程序
最新推荐文章于 2023-04-13 15:12:35 发布
这是一个使用LISP语言编写的程序,用于从CASS(计算机辅助地形测绘系统)中选择并提取带有特定扩展数据(SOUTHDIJI)的宗地界址线属性。程序首先通过SSGET获取JZD层上闭合线的选择集,然后遍历选择集,查找并读取每个对象的扩展词典,进一步提取'南向'(SOUTH)属性的详细信息。如果找到相应的词典条目,程序将打印属性值;若未找到,则提示用户该对象没有宗地属性。
摘要由CSDN通过智能技术生成