「Tin:findtintrianglesat」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成:「{{BCAD_LISP_CIVIL}} ; 構文 : (Tin:findtinpointat ''tinEname'' ''point'' ) ; 機能 : 入力点の位置で、tinEname TinSurfaceエンティティ上の TinTriangl…」)
 
編集の要約なし
 
(同じ利用者による、間の1版が非表示)
11行目: 11行目:
; 引数
; 引数
:* tinEname :  (ename または vla-object) 問い合わせる TinSurface エンティティ  
:* tinEname :  (ename または vla-object) 問い合わせる TinSurface エンティティ  
:* point : 検索する点。Z高度は無視される。
:* point : 検索する2Dまたは3D点リスト。 Z高度は無視される。




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




31行目: 31行目:
; 以下、3D点と2D点で同じ値が返ってきているのが分かる例
; 以下、3D点と2D点で同じ値が返ってきているのが分かる例
(tin:findtintrianglesat tin '(50 50 10))
(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)))
((
(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))
(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)))
((
 
(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)
))
</pre>
</pre>


49行目: 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)
))

関連事項