[求助]vlax-curve-getDistAtPoint在有些图里面为什么不能用?
vlax-curve-getDistAtPoint为什么在这个图里面不能用啊?返回 nil,在其他图里面就可以用,为什么呢? <p>注意坐标系的问题,该函数需要wcs的点,运行程序之前先</p><p>(command ".ucs" "")</p> 同样问题,顶高手出来帮忙 (if (and (setq PNT (getpoint "\n拾取曲线上的点:"))(setq EN (nentselp PNT))
)
(setq EN(car EN)
PNT (trans PNT 1 0)
PNT (vlax-curve-getClosestPointTo EN PNT)
DIS (vlax-curve-getDistAtPoint EN PNT)
)
) 有时候曲线坐标比较大的时候,确实会返回nil,还有其它几个曲线函数也是同样问题,估计是bug 小菜123 发表于 2011-9-6 08:43
有时候曲线坐标比较大的时候,确实会返回nil,还有其它几个曲线函数也是同样问题,估计是bug
是的,也是反复查找原因,才发现曲线(line线)坐标位置较大时,vlax-curve-getDistAtPoint会返回nil,同样的曲线移动到较小坐标位置时,同样的语句执行就没问题。 补充:是line线在较大坐标位置时,用(vlax-curve-getClosestPointTo)函数返回指定点离线上最近点(n表示),再用(vlax-curve-getDistAtPoint)得到该点(n)在直线中的长度时返回nil。但奇怪的是,还是这条线,如果用(getpoint)函数nea捕捉线上最近点(m表示),再用(vlax-curve-getDistAtPoint)得到该点(m)在直线中的长度时又没问题,正常返回点在线中的长度。l困扰很长时间,一直找不到原因,才搜索到此
页:
[1]