Una malla rectangular (objeto PolygonMesh) representa la superficie de un objeto mediante facetas planas. La densidad de malla, o número de facetas, se define en función de una matriz de vértices M y N, similar a una rejilla con filas y columnas. Mediante M y N se determina la posición de las columnas y filas, respectivamente, de cualquier vértice dado. Estos objetos se pueden crear en espacio 2D y 3D, si bien su uso es más apropiado para 3D.
Utilice el método Add3DMesh para crear mallas rectangulares. Este método requiere tres valores de entrada: el número de vértices de la dirección M, el número de vértices de la dirección N y una matriz de variantes que contenga las coordenadas de todos los vértices de la malla.
Una vez establecido PolygonMesh, utilice las propiedades MClose y NClose para cerrar la malla.
Para obtener más información acerca de la creación de mallas, véase “Creación de superficies” en el Manual del usuario.
Creación de una malla poligonal
En este ejemplo se crea una malla poligonal de “. La dirección de la ventana gráfica activa se ajusta de forma que la naturaleza tridimensional de la malla se visualiza con más facilidad.
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