ポリメッシュを N 方向に閉じるかどうかを指定します。
サポートされているプラットフォーム: Windows のみ
読み込み専用: いいえ
タイプ: ブール型
PolygonMesh が閉じていると、最後の列から最初の列まで連続したものとして扱われます。PolygonMesh が開いていると、最後の列と最初の列の間で不連続なものとして扱われます。
VBA:
Sub Example_NClose()
' This example creates a 4 X 4 polygonmesh in model space.
' It then closes the polymesh in the 'N' direction.
Dim meshObj As AcadPolygonMesh
Dim mSize, nSize, count As Integer
Dim points(0 To 47) As Double
' Create the matrix of points
points(0) = 2: points(1) = 2: points(2) = 1
points(3) = 2.5: points(4) = 2: points(5) = 0
points(6) = 5: points(7) = 2: points(8) = 0
points(9) = 5.5: points(10) = 2: points(11) = 1
points(12) = 2: points(13) = 4: points(14) = 0.5
points(15) = 2.5: points(16) = 4: points(17) = 0
points(18) = 5: points(19) = 4: points(20) = 0
points(21) = 5.5: points(22) = 4: points(23) = 0.5
points(24) = 2: points(25) = 6: points(26) = 0.5
points(27) = 2.5: points(28) = 6: points(29) = 0
points(30) = 5: points(31) = 6: points(32) = 0
points(33) = 5.5: points(34) = 6: points(35) = 0.5
points(36) = 2: points(37) = 8: points(38) = 1
points(39) = 2.5: points(40) = 8: points(41) = 0
points(42) = 5: points(43) = 8: points(44) = 0
points(45) = 5.5: points(46) = 8: points(47) = 1
mSize = 4: nSize = 4
' Create a 3Dmesh in model space
Set meshObj = ThisDrawing.ModelSpace.Add3DMesh(mSize, nSize, points)
' Change the viewing direction of the viewport to better see the cylinder
Dim NewDirection(0 To 2) As Double
NewDirection(0) = -1: NewDirection(1) = -1: NewDirection(2) = 1
ThisDrawing.ActiveViewport.direction = NewDirection
ThisDrawing.ActiveViewport = ThisDrawing.ActiveViewport
ZoomAll
' Close the polymesh in the 'M' direction
MsgBox "The polymesh is " & IIf(meshObj.NClose, "closed", "open") & " in the 'N' direction.", , "NClose Example"
meshObj.NClose = True
ThisDrawing.Regen acActiveViewport
MsgBox "The polymesh is " & IIf(meshObj.NClose, "closed", "open") & " in the 'N' direction.", , "NClose Example"
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_NClose()
;; This example creates a 4 X 4 polygonmesh in model space.
;; It then closes the polymesh in the 'N' direction.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Create the matrix of points
(setq points (vlax-make-safearray vlax-vbDouble '(0 . 47)))
(vlax-safearray-fill points '(2 2 1
2.5 2 0
5 2 0
5.5 2 1
2 4 0.5
2.5 4 0
5 4 0
5.5 4 0.5
2 6 0.5
2.5 6 0
5 6 0
5.5 6 0.5
2 8 1
2.5 8 0
5 8 0
5.5 8 1
)
)
(setq mSize 4
nSize 4)
;; Create a 3Dmesh in model space
(setq modelSpace (vla-get-ModelSpace doc))
(setq meshObj (vla-Add3DMesh modelSpace mSize nSize points))
;; Change the viewing direction of the viewport to better see the cylinder
(setq NewDirection (vlax-3d-point -1 -1 1))
(setq activeViewport (vla-get-ActiveViewport doc))
(vla-put-Direction activeViewport NewDirection)
(vla-put-ActiveViewport doc activeViewport)
(vla-ZoomAll acadObj)
;; Close the polymesh in the 'N' direction
(alert (strcat "The polymesh is " (if (= (vla-get-NClose meshObj) :vlax-true) "closed" "open") " in the 'N' direction."))
(vla-put-NClose meshObj :vlax-true)
(vla-Regen doc acActiveViewport)
(alert (strcat "The polymesh is " (if (= (vla-get-NClose meshObj) :vlax-true) "closed" "open") " in the 'N' direction."))
)