帮助用di画双线
你好我需要一个lisp绘制一个连续的双线,每一行在不同的层和不同的线型。
例如:
*第1行位于“液体”层,L类型:“连续”
*第2行位于层:“气体”,L类型:“虚线” 我想你可以创建你的特殊多行风格,
只是一个想法 听起来你想要我很久以前用过的东西(在90年代的ACad R10-R14上),WallDraw:http://www.cadplan.co.za/docs/ct1_GENERAL.pdf
我同意,唯一需要担心的是“图层特性”,我认为您只能指定线型和颜色替代,但不能指定图层。所以两条线都位于一层。除非随后分解多行,并且lisp代码应用这些属性。
Sans mulitline这将是一段有趣的代码
提示输入“宽度”。。。。[简单的奶酪]
取决于拾取点的数量。。。。[那是直线还是普林线……]
如果你能动态地看到第二行,那就太好了。。。。。
.... 还有什么。。。嗯。。。 我希望这会让你开始
(在我的老歌中找到)
; 11/13/04 4:06 PM
;Draw two lines;
(defun C:TWOLINES (/ *error* adoc cline cmde dia
erro mdsp osmd pbx pt ptlist rad )
;_____________________________;
(setq cmde (getvar "cmdecho"))
(setvar "cmdecho" 0)
(command "_.undo" "_G")
(setq osmd (getvar "osmode"))
(setvar "osmode" 0)
(setq pbx (getvar "pickbox"))
(setvar "pickbox" 4)
(setq erro *error*)
(defun *error* (msg)
(setq *error* erro)
(setvar "osmode" osmd)
(command "_.undo" "_E")
(setvar "cmdecho" cmde)
(setvar "pickbox" pbx)
(if
(or
(= msg "Function cancelled")
(= msg "quit / exit abort")
)
(princ)
(princ (strcat "\nError: " msg))
)
)
; Helper function
(defun safefill (lst )
(vlax-safearray-fill (vlax-make-safearray
vlax-vbDouble
(cons 0 (- (length (apply 'append lst))1)))
(apply 'append lst))); eof safefill
(vl-load-com)
(setq adoc
(vla-get-activedocument
(vlax-get-acad-object))
mdsp (vla-get-modelspace adoc))
(setq dia (getreal "\nDiameter (or Wall Width): ") rad (/ dia 2.0))
(setq pt (getpoint "\nSpecify start point: "))
(setq ptlist (cons pt ptlist))
(while (setq pt1 (getpoint pt "\nSpecify next point: " ))
(grdraw pt pt1 1 -1)
(setq ptlist (cons pt1 ptlist))
(setq pt pt1)
)
(setq cline (vla-addPolyline mdsp (safefill ptlist)))
(vla-put-layer cline "liquid")
(vla-put-color cline 256)
;(vla-offset cline (- rad))
(vla-offset cline rad)
(vla-put-color cline 256)
(vla-put-layer cline "gas")
(vla-put-linetypescale cline dia);<-- to your suit
(vla-regen adoc acActiveViewport)
(princ)
(setq *error* erro)
(setvar "osmode" osmd)
(command "_.undo" "_E")
(setvar "cmdecho" cmde)
(setvar "pickbox" pbx)
(princ)
); eof
(princ "\nStart command with \"TWOLINES\" ")
(princ)
页:
[1]