我有一个lisp不知道我在哪里找到的坐标拾取列表逐点类似于我在这个论坛中找到的一些lisp,我试图修改它,使它可以-1。选择点2的组。单个层用于东、北和编号,但最终以失败告终,因为我不熟悉lisp语言。
世界海关组织。LSP 哇,威兹曼,你太棒了!
这就是我需要的!非常感谢!! Wizman-这是一个很棒的自动化程序。有没有可能让它把坐标写到一个。表单中的txt文件
pt编号,E,N,Z
我见过一些lsp例程这样做,但它们需要手动拾取点。
出于我的特殊目的,我不需要在图纸上绘制E、N、Z,只需要点编号就可以了。
我是这个论坛的新手,所以希望我的回复是正确的,希望我没有在早期采取太多的自由!
非常感谢。 嗨,调查人员,
如果我错了,请纠正我,我可能已经偏离了目标,但您是否只想将图形中ACAD点的x、y、z和pt数写入记事本txt文件。这是正确的吗? 如果这确实是你的意图-这应该适合你的需要:
(defun c:ptwriter (/ file ss file eLst i)
(vl-load-com)
(if (and (setq file (getfiled "Create a Text File" "C:\\" "txt" 9))
(setq ss (ssget "X" (list (cons 0 "POINT")
(if (getvar "CTAB")(cons 410 (getvar "CTAB"))
(cons 67 (- 1 (getvar "TILEMODE"))))))))
(progn
(setq file (open file "w")
eLst (vl-remove-if 'listp (mapcar 'cadr (ssnamex ss))) i 1)
(foreach e eLst
(write-line (strcat (rtos i) ","
(rtos (cadr (assoc 10 (entget e)))) ","
(rtos (caddr (assoc 10 (entget e)))) ","
(rtos (cadddr (assoc 10 (entget e))))) file)
(setq i (1+ i))))
(princ "\n<!> No File Selected or No Points found <!>"))
(princ "\n<< Points Written to File >>")
(close file)
(princ))
李·麦克,
谢谢你的回复。哇,效果很快!lsp运行得很快,我打开了文件,希望它是空白的。然而
我真正想要的是你的例程和Wiz-Man的组合(它目前会自动在图纸上绘制“number,E,N,Z”)
所需的工作流
1、选择文本文件名
2.最好选择要从中计数的起点编号
3、从图纸中选择点
4.Lsp将在每个点上自动在图纸上绘制点编号(每个点旁边)(不需要绘制E、N、Z)
5.这些点将按照您的例程以数字E、N、Z的格式写入文本文件
6.目的是我可以将一张图纸带到现场,选择我想要放线的点编号(从图纸上绘制的编号中),然后从我的数据记录器中选择该点(将包含坐标)进行放线。
这个工作流有意义吗?
再次感谢迄今为止的工作。
测量员 嗨,调查人员,我现在明白多了,谢谢。
但我还有一个问题-你想选择要打印到文本文件的点/打印一个数字吗?还是希望程序像当前一样自动选择图形中的所有点? 李·麦克,
我想使用选择工具来选择它们。这样我就可以从显示50的设计图中选择一到两栋房子(例如)。
如果我想要全部50张,我当然可以选择整个图纸——毫无疑问,这个过程会让事情变得复杂一些。
我真的很感谢你的意见。
谢谢
测量员:) 不用担心,surveyman,让用户选择点并不比让程序选择图形中的所有点更难,这只是一种检索较小选择集的方法。
看看我能做什么
如果要控制点编号的顺序,必须手动拾取点。除非Lisp程序比我想象的要聪明
通常在放样时,更容易将点编号按放样顺序连续排列。
页:
1
[2]