方位和距离
您好,我正在寻找一个方向和distaseLisp程序,但方向。例如
拾取第一个点(S1),然后拾取方向点(S2),然后拾取所有其他点(1,2,3,4…….S3、K3、T3……任何……)
最后选择表点。。。。。
查看附加图形
谢谢
轴承。图纸 有什么想法吗? 你需要将大约4个lisp组合在一起,做一个搜索好的任务来开始学习lisp。在此处搜索如下内容
1列出要点
2画线
3绘制尺寸
4画一张桌子
工作时会发布一些代码 除了插入表格外,该程序是否还包括DIM和块的放置? 仅表格(如果可能,使用文字大小命令) 那么,从现有的图表中创建一个表?或者程序将从创建图表开始?或者就像你说的,只有桌子? 看看braw轴承。图纸
首先,lisp路线将询问
1) 指定第一个点(例如S1)
2) 指定方向点(例如S2)
3) 然后选择导出点(例如1,2,3,4)
4) 选择一个点以插入表格 有什么想法吗? 这并不完全是你想要的,但快速破解将满足你的需要,而不是获得布局细节,只需制作一个选定点列表,将角度保存到列表1中,将距离保存到列表2中。我需要找点时间。
Ps距离?
; dwg index to a table
; by Alan H NOV 2013
(defun AH:dwgindex (/ doc objtable ss1 lay ans ans2 plotabs ss1 tag2 tag3 list1 list2 curlayout colwidth numcolumns numrows INC rowheight )
(vl-load-com)
(setq curlayout (getvar "ctab"))
(if (= curlayout "Model")
(progn
(Alert "You need to be in a layout for this option")
(exit)
) ; end progn
) ; end if model
(setq doc (vla-get-activedocument (vlax-get-acad-object)))
(setq curspace (vla-get-paperspace doc))
(setq pt1 (vlax-3d-point (getpoint "\nPick point for top left hand of table:")))
;(setq pt1 (vlax-3d-point '(0 0 0)))
; for testing
; read values from title blocks
;(setq bname "DA1DRTXT")
(setq bname "COGG_TITLE")
(setq tag2 "DRG_NO") ;attribute tag name
(setq tag3 "WORKS_DESCRIPTION") ;attribute tag name
(setq ss1 (ssget "x"(list (cons 0 "INSERT") (cons 2 bname))))
(setq INC (sslength ss1))
(repeat INC
(foreach att (vlax-invoke (vlax-ename->vla-object (ssname SS1 (SETQ INC (- INC 1)) )) 'getattributes)
(if (= tag2 (strcase (vla-get-tagstring att)))
(progn
(setq ans (vla-get-textstring att))
(if (/= ans NIL)
(setq list1 (cons ans list1))
) ; if
); end progn
) ; end if
(if (= tag3 (strcase (vla-get-tagstring att)))
(progn
(setq ans2 (vla-get-textstring att))
(if (/= ans2 NIL)
(setq list2 (cons ans2 list2))
) ; end if
) ; end progn
) ; end if tag3
) ; end foreach
) ; end repeat
(setvar 'ctab curlayout)
(command "Zoom" "E")
(command "regen")
(reverse list1)
;(reverse list2)
; now do table
(setq numrows (+ 2 (sslength ss1)))
(setq numcolumns 2)
(setq rowheight 0.2)
(setq colwidth 130)
(setq objtable (vla-addtable curspace pt1 numrows numcolumns rowheight colwidth))
(vla-settext objtable 0 0 "DRAWING REGISTER")
(vla-settext objtable 1 0 "DRAWING NUMBER")
(vla-settext objtable 1 1 "DRAWING TITLE")
(SETQ X 0)
(SETQ Y 2)
(REPEAT (sslength ss1)
(vla-settext objtable Y 0 (NTH X LIST1))
(vla-settext objtable Y 1 (NTH X LIST2))
(vla-setrowheight objtable y 10)
(SETQ X (+ X 1))
(SETQ Y (+ Y 1))
)
(vla-setcolumnwidth objtable 0 55)
(vla-setcolumnwidth objtable 1 130)
(command "_zoom" "e")
); end AH defun
(AH:dwgindex)
(princ)
嗨,比格尔。谢谢你的回复。这个lisp只适用于布局,并且只生成正方形。我只在模型空间工作。。。。。。。。。。
页:
[1]
2