明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: mandala

[讨论] 不用pedit,如何将一系列线和圆弧连接?

  [复制链接]
发表于 2011-4-27 11:57 | 显示全部楼层
1、可以用FILLET倒圆角命令,设圆角为零,将两直线连起来。
2、可以先算出封闭体的最小外框,画一水平线(长度为外框水平尺寸)对封闭体进行分割,求出分割面积,再按highflybird版主的迭代法逐步求得结果。
可参考下面面积等分程序。
游客,本帖隐藏的内容需要发帖数高于 5 才可浏览,你当前发帖数只有 0
发表于 2011-4-27 15:33 | 显示全部楼层
用stretch会导致相邻边角度有就动。
可不可以考虑把偏移边的两端点延长,再求出之前与此偏移边相邻的边与偏移后的边的交点。
再重新生成PLINE线
发表于 2011-5-2 01:33 | 显示全部楼层
这个可以有,等有时间再弄弄。
最好这样,1,选实体,提示当前面积,2指定最后要求的面积,3.选择要平移的边(直线或弧线段),4.自动计算后偏移到合适位置,修改成完整的封闭曲线
发表于 2011-5-2 17:14 | 显示全部楼层
狂刀lxx 发表于 2011-5-2 01:33
这个可以有,等有时间再弄弄。
最好这样,1,选实体,提示当前面积,2指定最后要求的面积,3.选择要平移的 ...

非要输入最后的面积吗?
 楼主| 发表于 2011-5-3 11:31 | 显示全部楼层
本帖最后由 mandala 于 2011-5-3 11:53 编辑
狂刀lxx 发表于 2011-5-2 01:33
这个可以有,等有时间再弄弄。
最好这样,1,选实体,提示当前面积,2指定最后要求的面积,3.选择要平移的 ...


我写的第一个用pedit连线的lsp,就是按这个步骤来的。

虽然我现在还不会写,但知道要完成这个工作也可以用动态来做。相比较而言,动态可以避免掉一些非常复杂的判断和运算,尤其在圆弧偏移的过程中。不过我希望还是能够不用动态来完成这个lsp。

我现在的思路是这样:首先跟狂刀一样,选实体、指定最终面积,再选择要平移的边L。
然后,
1、如果L是圆弧,那么平移L一个固定距离W,重新画一个圆弧通过原先的L的起点、终点和平移后的L的中点。由于最终面积是已知的,理论上这段W也是可知的。然后重新pedit连线后,最终实体就产生了。不过这个W的计算实在是让人崩溃。
2、如果L是直线,则要看分别判断L的前一条边和后一条边的情况,如果相邻边是直线,将L平移一个距离W后求交点,如果相邻边是圆弧,将相邻圆弧的起点改为平移后直线L的端点。W可以设为一个中间值,如面积差/L的长度,再除以2。最后用entmod改变实体的顶点,重画实体。
3、用while循环,重复上一步,直到达到指定面积。
 楼主| 发表于 2011-5-3 11:52 | 显示全部楼层
当然,不是所有的情况下都可以偏移一条边直到指定面积的,尤其是圆弧。这些提示可以在出错程序中处理。
发表于 2011-5-13 19:44 | 显示全部楼层
回复 highflybird 的帖子

我也是用几何方法计算变动的两点,再修改线的DXF再更新这样做的
发表于 2018-12-18 11:40 | 显示全部楼层
拉伸是不可行的,边长度不会变化
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-3-29 12:35 , Processed in 0.166031 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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