如何获取三维点集中任意点的最小包围三角形
很多三维点,如何在给定一个点的情况下,获得最小的包围三角形?没有的时候,获得最近点。求个效率高的思路
这个几乎不是Lisp问题,而是数学问题,首先对于任意三维点的所谓“包围”,必须判断是否共面,共面才有包围一说。其次,即使是平面点,最小包围(面积)可能并不是接近的点,而是很远的,并且近乎在一条线上的三个点,在理论上每个点都可能是这个“最小包围”的一个交点,这样的情况下,遍历几乎是最直观的方法,而遍历的算法是很耗时的。 三角网问题,查询某点有哪个三角形里 用 F 在屏幕边一点构造选择,第一个就是 ll_j 发表于 2016-1-6 12:19 static/image/common/back.gif
这个几乎不是Lisp问题,而是数学问题,首先对于任意三维点的所谓“包围”,必须判断是否共面,共面才有包围 ...
说简单点,条件是这么多三维点,求任意点高程有啥思路? zzyong00 发表于 2016-1-6 13:14 static/image/common/back.gif
三角网问题,查询某点有哪个三角形里
如果把点生成三角网了。查询给定点在那个三角形内(平面上),有啥好思路? 一种简便方法
(defun c:tt (/ ss p pc h s)
(if (setq p (getpoint "\nPoint: "))
(progn
(setq pc (getvar "viewctr")
h(getvar "viewsize")
)
(if (setq ss (ssget "F"
(list p (mapcar '+ pc (list 0.0 (/ h 2) 0.0)))
'((8 . "三角形"))
)
)
(progn
(setq s (ssadd))
(sssetfirst nil (ssadd (ssname ss 0) s))
)
)
)
)
(princ)
)
页:
[1]