Edición de definiciones de atributos

AutoCAD ActiveX

 
Edición de definiciones de atributos
 
 
 

Puede utilizar las propiedades y métodos del objeto Attribute para editar el atributo. Algunas de las propiedades de un atributo incluyen:

Alignment

Determina la alineación horizontal y vertical del atributo.

Backward

Especifica la dirección del texto del atributo.

FieldLength

Especifica la longitud de campo del atributo.

Height

Especifica la altura del atributo

InsertionPoint

Especifica el punto de inserción del atributo.

Mode

Especifica el modo del atributo.

PromptString

Especifica la cadena de mensaje del atributo.

Rotation

Especifica la rotación del atributo

ScaleFactor

Especifica el factor de escala del atributo

TagString

Especifica la cadena del identificador del atributo.

A continuación se incluyen algunos métodos que pueden utilizarse para modificar atributos:

ArrayPolar

Crea una matriz polar

ArrayRectangular

Crea una matriz rectangular

Copy

Copia el atributo

Erase

Borra el atributo

Mirror

Refleja el atributo.

Move

Desplaza el atributo

Rotate

Rota el atributo

ScaleEntity

Asigna una escala al atributo

Para volver a crear una definición de atributo

Este ejemplo crea un bloque y le añade un atributo. Después se inserta el bloque en el dibujo. Por último, se actualiza el atributo de texto para que se muestre reflejado a la izquierda.

Sub Ch10_RedefiningAnAttribute()
    ' Define the block
    Dim blockObj As AcadBlock
    Dim insertionPnt(0 To 2) As Double
    insertionPnt(0) = 0
    insertionPnt(1) = 0
    insertionPnt(2) = 0
    Set blockObj = ThisDrawing.Blocks.Add _
                     (insertionPnt, "BlockWithAttribute")
      
    ' Add an attribute to the block
    Dim attributeObj As AcadAttribute
    Dim height As Double
    Dim mode As Long
    Dim prompt As String
    Dim insertionPoint(0 To 2) As Double
    Dim tag As String
    Dim value As String
    height = 1
    mode = acAttributeModeVerify
    prompt = "New Prompt"
    insertionPoint(0) = 5
    insertionPoint(1) = 5
    insertionPoint(2) = 0
    tag = "New Tag"
    value = "New Value"
    Set attributeObj = blockObj.AddAttribute(height, mode, _
                          prompt, insertionPoint, tag, value)
    ' Insert the block, creating a block reference
    ' and an attribute reference
    Dim blockRefObj As AcadBlockReference
    insertionPnt(0) = 2
    insertionPnt(1) = 2
    insertionPnt(2) = 0
    Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock _
               (insertionPnt, "BlockWithAttribute", 1#, 1#, 1#, 0)
      
    ' Redefine the attribute text to display backwards.
    attributeObj.Backward = True
    attributeObj.Update
End Sub