请各位版主及高手帮忙,万分感谢,对管线专业很有用。。。
总算是如约给你了,,http://bbs.mjtd.com/forum.php?mo ... =1&extra=#pid603648 这个是什么玩意?总的来个弄好的效果图吧 【KAIXIN】 发表于 2013-7-19 18:48 static/image/common/back.gif
这个是什么玩意?总的来个弄好的效果图吧
不会弄呀,会弄肯定给弄个,见谅啊 上午刚好给一网友弄了一个,时间问题,我就直接发上来,供大家改写
(defun fz ()
(setq gj (GET_tile "gj"))
(setq pd (GET_TILE "pd"))
(setq zg (GET_TILE "zg"))
(setq xj (GET_TILE "xj"))
)
;;;临时生成Dcl文件 返回文件名
(defun Write_Dcl (/ Dcl_File file str)
(setq Dcl_File (vl-filename-mktemp nil nil ".Dcl"))
(setq file (open Dcl_File "W"))
(foreach str
'("RECT:dialog" "{label=\"管道标注\";"
":edit_box {key=\"gj\";label=\"管径:\";value=\"DN300\";}"
":edit_box {key=\"pd\";label=\"坡度:\";value=\"2.0%\";}"
":edit_box {key=\"zg\";label=\"字高:\";value=\"5.0\";}"
":edit_box {key=\"xj\";label=\"线距:\";value=\"5.0\";}"
"ok_only;}")
(write-line str file)
)
(close file)
Dcl_File
)
(defun C:XX()(c:GXBZ))
(defun c:GXBZ ()
(VL-LOAD-COM)
(setvar "CMDECHO" 0)
(SETQ DCL_ID (LOAD_DIALOG (setq Dcl_File (Write_Dcl))))
(vl-file-delete Dcl_File)
(NEW_DIALOG "RECT" DCL_ID)
(ACTION_TILE "accept" "(fz) (DONE_DIALOG)")
(START_DIALOG)
(UNLOAD_DIALOG DCL_ID)
(while t
(if (and
(setq pt1 (getpoint "\n请选择管道起点:"))
(setq pt2 (getpoint pt1 "\n请选择管道终点:"))
)
(progn
(setq xx (- (car pt2) (car pt1))
yy (- (cadr pt2) (cadr pt1))
num (/ yy 1.0 xx)
str (rtos (* 100 num) 2 1)
)
(setq dst (distance pt1 pt2)
str1 (rtos dst 2 1)
;; FIX 1
dtt (strcat gj " L=" str1 "m i=" pd)
a1 (angle pt1 pt2)
a2 (* (/ a1 pi) 180)
ptt (polar pt1 a1 (/ dst 2))
pte(polar ptt (* pi 0.5) (atof xj))
)
(command "text" "j" "bc" pte (atof zg) a2 dtt)
;; FIX2
)
)
)
(princ)
) 原帖http://bbs.mjtd.com/forum.php?mod=viewthread&tid=102538(defun c:YS1 ()
(setvar "CMDECHO" 0)
(if (and
(setq pt1 (getpoint "\nFirst Point 点一 :"))
(setq pt2 (getpoint pt1 "\nSecond Point 点二 :"))
)
(progn
(setq xx (- (car pt2) (car pt1))
yy (- (cadr pt2) (cadr pt1))
num (/ yy 1.0 xx)
str (rtos (* 100 num) 2 1)
)
(setq dst (distance pt1 pt2)
str1 (rtos (dst 2 1))
dtt (strcat "DN300 L="str1 "m i="str "%")
a1 (angle pt1 pt2)
a2 (* (/ a1 pi) 180)
ptt (polar pt1 a1 (/ dst 2))
))
(command "text" "j" "bc" ptt 2.5 a2 dtt)
)
(princ)
)
没人帮我呀,难。。。 njut_prince 发表于 2013-7-20 09:52 static/image/common/back.gif
没人帮我呀,难。。。
如是你的程序有问题,可以发上来大家看看,问题在哪里 炫哥的代码要改改,改好了应该蛮好用的 这个程序确实是很实用的插件,官网图有大量的这样标注,但是我建议没必要搞成线上线下,搞成动态的最好,把距离设置好就行了.
页:
[1]
2