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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1388|回复: 8
打印 上一主题 下一主题

高手帮忙写个自动绘制中心线程式

[复制链接]

7

主题

34

帖子

59

金币

天使

Rank: 2Rank: 2

积分
144
QQ
跳转到指定楼层
楼主
发表于 2010-12-1 15:13:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

   经典图书
请各位大侠们,帮帮忙,写个自动绘制中心线的程式,要求如下
1.把绘制的图层放在“center”里
2.图层颜色为“红色”
3.图层的线型为“center”
4.中心线超出的部分按合理的比例设置,
5.最好能绘制圆、矩形或者更多了,至少能绘制圆
6.命令为“cen”
7.最好做成独立对话框窗口,不要显示在命令行里
请各位大侠们帮忙,小弟在此先谢谢了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享教程|习题|模型|技巧 点赞点赞 拍砖拍砖
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

3

主题

29

帖子

17

金币

混混

Rank: 1

积分
71
QQ
沙发
发表于 2010-12-1 18:05:52 | 只看该作者
好多CAD外挂都有这个功能,比如贱人工具箱,燕秀工具箱等等,都可以达到你要的效果,没必要重新写一个。
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

1

主题

19

帖子

8

金币

混混

Rank: 1

积分
40
QQ
板凳
发表于 2010-12-1 20:00:01 | 只看该作者

   经典图书
2楼说的是真的吗,我也需要呀,我去看看
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

31

帖子

15

金币

天使

Rank: 2Rank: 2

积分
81
QQ
地板
发表于 2010-12-1 21:11:09 | 只看该作者
安装方法就是加载这个LSP就行了
CENTER.rar (980 Bytes, 下载次数: 193)
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

28

帖子

24

金币

天使

Rank: 2Rank: 2

积分
91
QQ
5#
发表于 2010-12-1 22:00:58 | 只看该作者

   经典案例图书
命令是什么啊  我怎么加载了没用呢
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

18

帖子

22

金币

天使

Rank: 2Rank: 2

积分
72
QQ
6#
发表于 2010-12-2 01:01:55 | 只看该作者
上AM 里面全有
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

2

主题

25

帖子

19

金币

天使

Rank: 2Rank: 2

积分
71
QQ
7#
发表于 2010-12-2 04:28:55 | 只看该作者

   经典案例图书
(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)
)
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

6

主题

24

帖子

49

金币

天使

Rank: 2Rank: 2

积分
120
QQ
8#
发表于 2010-12-2 05:05:40 | 只看该作者
老顾,我是新手不懂LISP语言,把他换成直接可加载的程式好不?麻烦了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

8

主题

30

帖子

102

金币

天使

Rank: 2Rank: 2

积分
191
QQ
9#
发表于 2010-12-2 05:54:40 | 只看该作者
6楼的好像不对啊!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭 卷起
关闭 卷起

SOLIDWORKS 2023 机械设计从入门到精通

手机版|小黑屋| GMT+8, 2024-9-20 17:31 , Processed in 0.212230 second(s), 23 queries , Memcache On.

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表