SolidWorks机械工程师网——最大的SolidWorks学习平台

标题: 高手帮忙写个自动绘制中心线程式 [打印本页]

作者: ligang1985    时间: 2010-12-1 15:13
标题: 高手帮忙写个自动绘制中心线程式
请各位大侠们,帮帮忙,写个自动绘制中心线的程式,要求如下
1.把绘制的图层放在“center”里
2.图层颜色为“红色”
3.图层的线型为“center”
4.中心线超出的部分按合理的比例设置,
5.最好能绘制圆、矩形或者更多了,至少能绘制圆
6.命令为“cen”
7.最好做成独立对话框窗口,不要显示在命令行里
请各位大侠们帮忙,小弟在此先谢谢了。
作者: river112233    时间: 2010-12-1 18:05
好多CAD外挂都有这个功能,比如贱人工具箱,燕秀工具箱等等,都可以达到你要的效果,没必要重新写一个。
作者: jintian111    时间: 2010-12-1 20:00
2楼说的是真的吗,我也需要呀,我去看看
作者: dennisbao    时间: 2010-12-1 21:11
安装方法就是加载这个LSP就行了
CENTER.rar (980 Bytes, 下载次数: 193)
作者: xjiong    时间: 2010-12-1 22:00
命令是什么啊  我怎么加载了没用呢
作者: tk120967112    时间: 2010-12-2 01:01
上AM 里面全有
作者: rogerwang    时间: 2010-12-2 04:28
(if (not (tblsearch "layer" "center"))    (command "layer" "n" "center" "l" "center" "center" "c" "1" "center" ""))
上面这一条是当你图内无center层时它去建层。
;;;画圆的中心线
(defun c:cen ()
(setq ww 1 la (getvar "clayer") os (getvar "osmode" ) cm (getvar "cmdecho"))
  (setvar "clayer" "center")(setvar "osmode" 0) (setvar "cmdecho" 0)
(while ww
  (setq a (entsel "选择:"))
  (if (/= a nil)
    (progn
     (setq aa (entget (car a)))
     (setq p1 (cdr (assoc 10 aa)) r (cdr (assoc 40 aa)))
     (setq r1 (* r 1.2) p2 (polar p1 pi r1) p3 (polar p1 0 r1) p4 (polar p1 (* pi 0.5) r1) p5 (polar p1 (* pi 1.5) r1))
      (command "line" p2 p3 """line" p4 p5 "")
    )
  (setq ww nil)))
  (setvar "clayer" la)
  (setvar "osmode" os)
  (setvar "cmdecho" cm)
)
;;;画两条线的中心线,可画矩形的中心线。
(defun c:cenl ()
  (setq ww 1 la (getvar "clayer") os (getvar "osmode" ) cm (getvar "cmdecho"))
  (setvar "clayer" "center")(setvar "cmdecho" 0)
  (while ww
     (setvar "osmode" 2)
    (setq p1 (getpoint "第一边:"))
    (if (/= p1 nil)
      (progn
       (setq p2 (getpoint "第二边:") an (angle p1 p2) p2 (polar p2 an 3) p1 (polar p1 (angle p2 p1) 3))
       (setvar "osmode" 0)
       (command "layer" "s" "center" "" "line" p1 p2 "")
       )
      (setq ww nil))
   )
  (setvar "clayer" la)
  (setvar "osmode" os)
  (setvar "cmdecho" cm)
)

作者: 悠悠地游    时间: 2010-12-2 05:05
老顾,我是新手不懂LISP语言,把他换成直接可加载的程式好不?麻烦了
作者: xujianxxx    时间: 2010-12-2 05:54
6楼的好像不对啊!




欢迎光临 SolidWorks机械工程师网——最大的SolidWorks学习平台 (https://www.swbbsc.com/) Powered by Discuz! X3.2