雪山飞狐_lzh 发表于 2009-4-20 19:00:00

自相交曲线的交点多个param值求法?

如图,交点处的第二个param值怎么求?

479274135 发表于 2018-1-27 11:05:56

大神们讨论的东西就是不一样

狂刀lxx 发表于 2009-4-20 20:20:00

<p>第二个是什么意思?</p><p>求自交点,还是intersectwith,两个obj用同一个实体,过滤掉节点</p>

雪山飞狐_lzh 发表于 2009-4-21 17:00:00

求自交点我会,或者这样说,我想求的是自交点到起点的距离(两个都要)怎么求

highflybir 发表于 2009-4-21 17:27:00

不就是vlax-curve-getDistAtPoint么?

雪山飞狐_lzh 发表于 2009-4-21 20:33:00

vlax-curve-getDistAtPoint可以在交点处求两个值么?

highflybir 发表于 2009-4-22 09:56:00

不好意思,我误解了楼主的问题。<p>是个好问题,用vlax-curve-getParamAtPoint只能得到一个参数。我把此问题贴到国外论坛上。</p>

highflybir 发表于 2009-4-23 10:58:00

<p>我想了想,这个问题如果是lwpolyline,是有直接办法求解的。</p><p>但对于spline,没有直接办法求解,只能先打断之后然后得到长度后返回来求param,这是一种间接办法,但也是一种低效率办法。</p>

雪山飞狐_lzh 发表于 2009-4-23 12:05:00

本帖最后由 作者 于 2009-4-23 13:25:21 编辑 <br /><br /> <p>先调用Break命令么?这不是我预想的结果</p><p>或者讨论下用算法去计算出第二个param,</p><p>牛顿算法应该是可以解决的,想通了</p>

highflybir 发表于 2009-4-23 14:29:00

什么是牛顿算法? 方程求解法?

雪山飞狐_lzh 发表于 2009-4-24 13:24:00

<p>想了一个比较简单的算法,如图</p><p>在自交点画一个很小的圆(r = 2^-3)</p><p>然后获取圆与spline的交点,按param排序</p><p>然后在小区间内把曲线看成直线,</p><p>while循环不断逼近自交点,直到误差在2^-64</p><p>基本误差很小,</p><p>实际上是我在曲线打断中的一段子程</p><p>打断以后基本上可以做面域,:)</p>
页: [1] 2
查看完整版本: 自相交曲线的交点多个param值求法?