tm20038175 发表于 2011-6-11 17:35:48

【求助】如何得到线上的点?

【求助】如何得到线上的点?

一根曲线,或者多根曲线,上面有很多点,如何通过选择曲线得到点的选择集?

198526 发表于 2011-6-11 17:38:45

先选择所有点,再遍历所有点是否在曲线上。

tm20038175 发表于 2011-6-11 17:43:12

回复 198526 的帖子

应该有相交的命令可以判断吧,如果遍历一遍岂不很慢?

好像见过论坛讨论过判断点是否在曲线上,但是有好点的判断方法吗?

tm20038175 发表于 2011-6-11 17:54:47

LISP是用
;;(vlax-curve-getDistAtPoint curve-obj point)
(vlax-curve-getdistatpoint (car (entsel)) '(0 0 0))
;;NIL=不在线上要

tm20038175 发表于 2011-6-11 17:56:54

是这个命令吗?
如何遍历判断呢?

caoyin 发表于 2011-6-11 17:57:30

2楼方法可行,3楼的相交方法反而会更慢

tm20038175 发表于 2011-6-11 18:04:28

或者这样判断:

(setq curve (entsel)    
  curve (car curve)     
point (getpoint "\n拾取点:"))
(equal point (vlax-curve-getClosestPointTo curve point)0.00001)点

tm20038175 发表于 2011-6-11 18:08:08

回复 caoyin 的帖子

这样啊,代码如何写呢?
我对这个命令不是很是熟……

tm20038175 发表于 2011-6-11 18:19:07

关键是得到点后如何加入选择集………

tm20038175 发表于 2011-6-11 19:14:26

有人编过这样的程序吗?…
页: [1] 2
查看完整版本: 【求助】如何得到线上的点?