查看单个帖子
旧 2009-04-25, 10:04 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 [原创][求助]可点可框的修剪

[原创][求助]可点可框的修剪
www.dimcax.com
[原创][求助]可点可框的修剪
问1:这个程序是用于修剪的,但有时会出现死循环或剪不干净的情况,请caoyin版主和各位高人看下,帮我搞定,谢谢
问2:为什么椭圆偏移之后变成了样条曲线,
通过工具菜单->加载应用程序 可加载该程序,然后可直接在命令行输入相关命令运行。如需要每次启动时均加载该程序,则可以将该文件放在启动组中。
文件预览:
d
1. 当p1 p3所在的矩形框内有非 trim 可以修剪的对象(如块),就进入了死循环,因此在前文中的ssget后面最好加上过滤条件
(while (ssget "c" p1 p3)
(command "f" p1 p2 p3 p4 p1 "")
(setq i(1+ i))
)
2. (= sslen 1)后面
offset 结果新生成图元有时候为0有时候>1,
再者,通过获取offset后产生对象的点作为剪切轨迹显然不是好方法,假如多段线包含弧度,则剪切出现失误;
(= dx0 "spline")时不应该取(+ (fix zc) 1)。。。
可以根据当前像素来分段。
当然最好的方法是求法线上的点!!!
3. (= sslen 1)后面

d
上图黄色部分是源对象,其他对象为一次偏移后的结果(新对象数量>1)。
右边为圆,偏移通过点是圆心(新对象数量=0)。
d
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)