Tin:findtintrianglesat

提供:GizmoLabs - だいたい CAD LISP なサイト
2023年1月28日 (土) 08:40時点におけるGizmon (トーク | 投稿記録)による版
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(Tin:findtinpointat tinEname point )


機能
入力点の位置で、tinEname TinSurfaceエンティティ上の TinTriangles を返す。


引数
  • tinEname : (ename または vla-object) 問い合わせる TinSurface エンティティ
  • point : 検索する2Dまたは3D点リスト。 Z高度は無視される。


戻り値
三角形の点リストのリスト。 最初の三角形は、問い合わせた点を含み、続く三角形のリストは、その最初の三角形のすべての近傍点を含む。



サンプル

(vl-load-tin)
(setq tin (tin:createTin '(0 0 0) '(100 100 100) 1000))
(tin:addpoints tin '((10 80 5) (50 50 10) (10 10 2) (80 20 7) (70 60 3) (40 70 10) (25 25 6) (55 55 2) (75 45 5) ))
(tin:findtintrianglesat tin '(45 45 8))

; 以下、3D点と2D点で同じ値が返ってきているのが分かる例
(tin:findtintrianglesat tin '(50 50 10))
((
 (55.0 55.0 2.0) (40.0 70.0 10.0) (50.0 50.0 10.0)) 
 ((25.0 25.0 6.0) (50.0 50.0 10.0) (40.0 70.0 10.0)) 
 ((25.0 25.0 6.0) (80.0 20.0 7.0) (50.0 50.0 10.0)) 
 ((50.0 50.0 10.0) (80.0 20.0 7.0) (75.0 45.0 5.0)) 
 ((75.0 45.0 5.0) (55.0 55.0 2.0) (50.0 50.0 10.0)
))

(tin:findtintrianglesat tin '(50 50))
((
 (55.0 55.0 2.0) (40.0 70.0 10.0) (50.0 50.0 10.0)) 
 ((25.0 25.0 6.0) (50.0 50.0 10.0) (40.0 70.0 10.0)) 
 ((25.0 25.0 6.0) (80.0 20.0 7.0) (50.0 50.0 10.0)) 
 ((50.0 50.0 10.0) (80.0 20.0 7.0) (75.0 45.0 5.0)) 
 ((75.0 45.0 5.0) (55.0 55.0 2.0) (50.0 50.0 10.0)
))

関連事項