「Tin:findtintrianglesat」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
編集の要約なし
 
60行目: 60行目:


[[Category:AutoLISP]]
[[Category:AutoLISP]]
[[Category:BricsCADのLISP]]

2023年1月28日 (土) 08:40時点における最新版

構文
(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)
))

関連事項