明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1397|回复: 1

读取纯数字的高程

[复制链接]
发表于 2013-10-26 09:54 | 显示全部楼层 |阅读模式
(defun c:LT001()
  (setq drawm0 (getvar "userr1"))
  (setq drawscl (/ drawm0 1000))
  (setq ffn (getfiled "写出文件" "" "dat" 1))
  (princ "\n请选择需要提取数据的数字:  ")
  (setq ss (ssget))
  (setq ff (open ffn "w"))
  (setq i 0)
  (setq n 1)
  (repeat (sslength ss)
    (setq ssn (ssname ss i))
    (setq ssdata (entget ssn))
    (setq txtg (cdr (assoc 40 ssdata)))
    (setq wx (* drawscl 1.5))
    (setq wy (* drawscl txtg 0.5))
    (setq sstyp (cdr (assoc 0 ssdata)))
    (if (or (= sstyp "TEXT") (= sstyp "MTEXT"))
      (progn
        (princ n ff)
        (princ ",," ff)
        (setq txtx1 (cadr (assoc 10 ssdata)))
        (setq txtx (- txtx1 wx))
        (princ txtx ff)
        (princ "," ff)
        (setq txty1 (caddr (assoc 10 ssdata)))
        (setq txty (+ txty1 wy))
        (princ txty ff)
        (princ "," ff)
        (setq txtz (cdr (assoc 1 ssdata)))
        (princ txtz ff)
        (princ "\n" ff)
      )
    )
    (setq n (1+ n))
    (setq i (1+ i))      
  )
  (close ff)
  (setq zds (1- n))
  (princ (strcat "\n文件保存位置==>: " ffn))
  (princ "\n本次总共提取了 ") (princ zds) (princ " 个高程点")
  (prin1)
)
(princ "\n====蓝图测绘,精心制作; 键入 LT001 运行本插件;查看使用说明请键入 HH ====")
发表于 2013-10-28 08:04 | 显示全部楼层
这是我学习LISP写的第一个代码,你怎么发这里来了,我都不要意思,太简单了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-28 18:43 , Processed in 0.540976 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表