La descomposición de objetos fragmenta los objetos individuales en sus partes constitutivas, pero sus efectos no son visibles en la pantalla. Por ejemplo, la descomposición de formas de lugar a líneas y arcos a partir de polígonos 3D, polilíneas, mallas poligonales y regiones. Sustituye una referencia a bloque con copias de los objetos simples que componen el bloque.
Para obtener información acerca de la descomposición de objetos, véase “Disociación de objetos compuestos (Descomponer)” en el Manual del usuario.
Descomposición de una polilínea
Este ejemplo crea un objeto de polilínea optimizada. Después la descompone en varios objetos. El ejemplo realiza un bucle en los objetos resultantes y muestra un cuadro de mensaje que contiene el nombre de todos los objetos y su índice en la lista de objetos descompuestos.
Sub Ch4_ExplodePolyline()
Dim plineObj As AcadLWPolyline
Dim points(0 To 11) As Double
' Define the 2D polyline points
points(0) = 1: points(1) = 1
points(2) = 1: points(3) = 2
points(4) = 2: points(5) = 2
points(6) = 3: points(7) = 2
points(8) = 4: points(9) = 4
points(10) = 4: points(11) = 1
' Create a light weight Polyline object
Set plineObj = ThisDrawing.ModelSpace. _
AddLightWeightPolyline(points)
' Set the bulge on one segment to vary the
' type of objects in the polyline
plineObj.SetBulge 3, -0.5
plineObj.Update
' Explode the polyline
Dim explodedObjects As Variant
explodedObjects = plineObj.Explode
' Loop through the exploded objects
' and display a message box with
' the type of each object
Dim I As Integer
For I = 0 To UBound(explodedObjects)
explodedObjects(I).Update
MsgBox "Exploded Object " & I & ": " & _
explodedObjects(I).ObjectName
explodedObjects(I).Update
Next
End Sub