Create Meshes
 
 
 

A rectangular mesh ( PolygonMesh object) represents an object's surface using planar facets. The mesh density, or number of facets, is defined in terms of a matrix of M and N vertices, similar to a grid consisting of columns and rows. M and N specify the column and row position, respectively, of any given vertex. You can create meshes in both 2D and 3D, but they are used primarily for 3D.

Use the Add3DMesh method for creating rectangular meshes. This method takes three values as input: the number of vertices in the M direction, the numer of vertices in the N direction, and a variant array containing coordinates for all the vertices in the mesh.

Once the PolygonMesh is created, use the MClose and NClose properties to close the mesh.

For more information on creating meshes, see “Create Surfaces” in the User's Guide.

Create a polygon mesh

This example creates a 4W4 polygon mesh. The direction of the active viewport is then adjusted so that the three-dimensional nature of the mesh is more easily viewed.

Sub Ch8_Create3DMesh()
	Dim meshObj As AcadPolygonMesh
	Dim mSize, nSize, Count As Integer
	Dim points(0 To 47) As Double


	' create the matrix of points
	points(0) = 0: points(1) = 0: points(2) = 0
	points(3) = 2: points(4) = 0: points(5) = 1
	points(6) = 4: points(7) = 0: points(8) = 0
	points(9) = 6: points(10) = 0: points(11) = 1
	points(12) = 0: points(13) = 2: points(14) = 0
	points(15) = 2: points(16) = 2: points(17) = 1
	points(18) = 4: points(19) = 2: points(20) = 0
	points(21) = 6: points(22) = 2: points(23) = 1
	points(24) = 0: points(25) = 4: points(26) = 0
	points(27) = 2: points(28) = 4: points(29) = 1
	points(30) = 4: points(31) = 4: points(32) = 0
	points(33) = 6: points(34) = 4: points(35) = 0
	points(36) = 0: points(37) = 6: points(38) = 0
	points(39) = 2: points(40) = 6: points(41) = 1
	points(42) = 4: points(43) = 6: points(44) = 0
	points(45) = 6: points(46) = 6: points(47) = 0


	mSize = 4: nSize = 4


	' creates 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
End Sub