Vla-get-numberoffaces

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
(vla-get-numberoffaces vla-object )


機能
ポリメッシュの面の数を取得する。


引数
  • vla-object … PolyFaceMeshのVLAオブジェクト


戻り値
PolyFaceMesh の面数。


サンプル
(vl-load-com)
(defun c:Example_NumberOfFaces()
    ;; ポリフェイスメッシュを作成して面数を取得するサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    ;; Data for new PolyFaceMesh object
    (setq vertexList (vlax-make-safearray vlax-vbDouble '(0 . 17)))
    (vlax-safearray-fill vertexList 
                         '(4 7 0
                           5 7 0
                           6 7 0
                           4 6 0
                           5 6 0
                           6 6 6 ))

    (setq FaceList (vlax-make-safearray vlax-vbInteger '(0 . 7)))
    (vlax-safearray-fill FaceList 
                         '(1
                           2
                           5
                           4
                           2
                           3
                           6
                           5 ))

    ;; ポリフェイスメッシュを作成
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq NewPolyFaceMeshObj (vla-AddPolyfaceMesh modelSpace vertexList FaceList))
    (vla-Update NewPolyFaceMeshObj)

    ;; 視点変更
    (setq direction (vlax-3d-point -1 -1 1))
    (setq activeViewport (vla-get-ActiveViewport doc))
    (vla-put-Direction activeViewport direction)
    (vla-put-ActiveViewport doc activeViewport)
    (vla-ZoomAll acadObj)
    
    ;; ポリフェイスメッシュの面数を取得
    (alert (strcat "新しいポリフェイスメッシュの面数は " (itoa (vla-get-NumberOfFaces NewPolyFaceMeshObj)) " 面です。"))
)

関連事項