|
发表于 2022-7-6 07:17:45
|
显示全部楼层
这应该将点插入并导出到csv或txt文件中。
[颜色=#990099];;Lee McDonnell 26.07.2009导出的多段线点
(defunc:ptExp(/doc spc ss file sel pts)
(vl load com)
(setqdoc(vla get ActiveDocument
([/colorvlax get Acad Object[/color)[/color)[/color
spc(如果[color](zerop[color]([color=BLUE vla get activespace[color]doc b])
(如果[color](=([color=BLUE b][color=BLUE b]([color=BLUE vla get mspace][color]doc b][color=RE
(vla get modelspace[color]doc)
(vla get paperspacedoc))
(vla get modelspacedoc))
(如果[color](和[color]([color=BLUE ssget][color][color=深色](([#009900]0“*折线”
([/colorsetq[/color文件
([/colorgetfield[/color“输出文件”[/color
(if*load*load)[csv;txt”9[color=RED
(progn
(setq*加载文件(打开文件“a”
(vlax forObj(setqsel b]([color=BLUE vla get ACTIVELECTIONSETdoc b])
([/colorsetq[/colorpts
[颜色=红色]([/colorvlax列表->3D点
(vlax getObj'坐标)
(cond(eq([color=BLUE vla get ObjectName][color]Obj)[/color b] [颜色=红色][/color
(mapcar
(功能[color]
(lambda(x)
(写入行
(strcat
(rtos[color](car[color]x)2[color]([color=BLUE chr][color]]44
(rtos(cadrx22[/color b][color=RED】(chr[/color b]900]44
(rtos(caddrx2
(vla addPoint[color]spc(vlax-3D-point[color]x
(princ
(strcat“\n>”)
(关闭文件)
(vla删除[color]sel))
([/colorprinc[/color)[/color)[/color
(defun[color]vlax列表->3D点(lst x/oLst)
(而[color]lst
(setq[color]oLst
( |
|