millermin 发表于 2012-12-5 07:31:03

问题关于 fillet

本帖最后由 millermin 于 2012-12-6 02:36 编辑


朋友们,帮看看这张图,用fillet这个命令倒角修边时,不成功。错误提示是:“No intersection can be found between line and polyline line segments". 这种情况经常出现,但就是同一个文件有时又很正常,感觉很奇怪。不知哪里出错了。按理2D,看见相交,就应该有交点的。查过,两条线的z坐标都是0,而且我也从不使用3D命令。








millermin 发表于 2012-12-6 12:44:34

自己顶一顶。希望得到大师解答。

Andyhon 发表于 2012-12-6 15:42:58



Copy + Rotate
您试试,何者行,何者不行
再去理解 错误提示

millermin 发表于 2012-12-7 05:15:40

本帖最后由 millermin 于 2012-12-7 05:24 编辑

Andyhon 发表于 2012-12-6 15:42 http://bbs.mjtd.com/static/image/common/back.gif
Copy + Rotate
您试试,何者行,何者不行
再去理解 错误提示

我先画了个十字,再拷贝一对,然后转成你图中的模样。结果一试,任何交点出filler命令都成功。这和我做前的估计一样。就因为我遇到该行而不行的情况,才有这贴的问题。2D图,只要有交点,应该都行。为什么有时会出现不行呢?你还是直接说清楚为好,这样一来一回费很多天才有结论,这也浪费你的时间不是吗?

Gu_xl 发表于 2012-12-7 08:55:38

本帖最后由 Gu_xl 于 2012-12-7 08:57 编辑

millermin 发表于 2012-12-7 05:15 http://bbs.mjtd.com/static/image/common/back.gif
我先画了个十字,再拷贝一对,然后转成你图中的模样。结果一试,任何交点出filler命令都成功。这和我做 ...

提示说的再清楚不过了!仔细研究过Fillet命令吗?请注意修剪半径R值!

millermin 发表于 2012-12-7 09:26:43

Gu_xl 发表于 2012-12-7 08:55 static/image/common/back.gif
提示说的再清楚不过了!仔细研究过Fillet命令吗?请注意修剪半径R值!

任何命令的提示都是很清楚的,但不等于任何程序都编的很完善才上货架。我将半径设成0,也不成功。不成功的情况我还无法琢磨透,需要靠运气才能遇上。直线的z坐标都等于零,如果不平行那就只有相交了,没有第三种情况,所以我才不理解。试试我的图,也许你们能发现什么。单凭我的文字叙述,有时表达可能不够准确。

ll_j 发表于 2012-12-7 09:55:46

软件的计算是所谓的浮点计算,虽然保留很多位数,但仍旧可能与要得到的实际结果不同,这就是我们有时候看到一些出现诸如“2.13E-16”这种浮点数的原因,我们知道,这么小的数其实就是0,但软件却并不这样认为。
我们对实体进行诸如拷贝、旋转、镜像等操作,看上去物体是直接到那个点了,实际上,每个点也都是“算”出来的,而不同的实体在浮点计算过程中,总会有一定的误差,即使是同一个点,在不同的实体上,其结果也会有可能有微小差异,这种差异在多数情况下是能被软件判别消除的,但有时误差超过一定限值,软件就可能不能正确判别,从而把原本的“一个”点判别为两个点,如果这个差值体现在z坐标,那么就出现空间不交汇的情况,而这种误差在我们有限进度的显示下是无法识别的。

millermin 发表于 2012-12-7 10:57:10

ll_j 发表于 2012-12-7 09:55 static/image/common/back.gif
软件的计算是所谓的浮点计算,虽然保留很多位数,但仍旧可能与要得到的实际结果不同,这就是我们有时候看到 ...

这个情况我理解,也常碰到,所以极力避免。我目前的情况是从不用3d,所以理论上z应该绝对等于零,对吧?但是会不会有某种误操作导致z产生一点点值呢?这个我还不掌握。我也怀疑了z可能有点微弱的值,就像你说的,显示“0”, 可能是根据精度标准而舍弃没有显示,实际可能有值,但找不到产生值的原因。所以也无法在以后的工作尽量地避免。

阿然 发表于 2012-12-7 15:31:47

有些程序生成的pline线确实没有办法fillet,这个我也遇到过,也不知道如何处理,但是pline炸开成线段以后,就都可以fillet成。

millermin 发表于 2012-12-7 21:53:12

本帖最后由 millermin 于 2012-12-8 11:10 编辑

这个问题我就当真信软件的错误提示,把目标当成三维来理解,所以使用一次flatten一处理,问题就解决了。但也引发新问题。调用fillet命令之前,必须先用一次flatten命令,但是这个flatten本身就是个lsp命令,不是cad内部命令集里的命令,lsp无法再次调用lsp程序,如何解决这个新问题呢?
页: [1]
查看完整版本: 问题关于 fillet