只需一步,快速开始
想做一个程序,将任意多个圆生成每个圆4个带小缺口的图元,并串接成聚合线 "LWPOLYLINE"
a,所选择的圆不管多大小,程序自动以45度方向凸出0.02mm的4处R0.2的小缺口
b,能识别图层和色型,选择对象后只处理图层名为 "*_W" 内的圆和色号为1#的圆
c,生成出来的新图元需是聚合线 "LWPOLYLINE"
请问这个程序该怎么编,提供一个测试图!
使用道具 举报
有沒有人提供一下思路的﹐現在不曉得該如何下手才好﹗
编程思路:1、用ssget取得图中的圆;2、使用repeat循环,循环数量为取得圆的数量;3、用entget,ssname取得单个圆的数据表;4、从上面数据表中读取圆心和半径;5、用polar函数计算要画的四个小弧的中心位置;6、在算好的四个点画四个半径为0.2的圆;7、使用trim命令对画好的圆进行剪裁;8、使用pedit命令对剪裁后的线条进行联接。
能力有限写不出来,ZZXXQQ版主帮忙写出后面的程序吧,依我现在的能力可能研究半年后才能写得出这完整的程序来
(defun c:ttt () (setvar "osmode" 0) (setq ss (ssget (0 . "circle"))) (setq i 0) (repeat (sslength ss) (setq c1 (ssname ss i)) (setq d1 (cdr (assoc 40 (entget c1)))) ;圆半径 (setq dzb (cdr (assoc 10 (entget c1)))) ;圆坐标点 (setq p1 (polar )) ;得到0.2圆的坐标点,这里开始不会写了 (setq i (+ i 1)) ) (princ))
使用道具
能力有限在做半径为0.2的坐标点就不知怎么写了,后面的还要trim截除和Pedit串接更加难写了,依我现在的能力得再学半年才有可能写得出来了,ZZXXQQ版主请帮忙写完下面的程序吧!
您需要 登录 才可以下载或查看,没有账号?注册
非常感謝ZZXXQQ版主的熱心幫助﹗
目前程序支持直徑1mm以上的圓﹐1以下的圓trim可能出錯,0.4以下的圓還應該加上出錯提示并不執行程序
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 ) ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途
GMT+8, 2025-2-23 17:25 , Processed in 0.194241 second(s), 29 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.