Hello,
This code won't let me set an attribute for a certain block. I'd like to know if there's anything wrong with it.
brID = modelspace.AppendEntity(blockRef)
tr.AddNewlyCreatedDBObject(blockRef, True)
For Each idAtt As ObjectId In btr
Dim subent As Entity
subent = CType(tr.GetObject(idAtt, Autodesk.AutoCAD.DatabaseServices.OpenMode.ForRead), Entity)
If TypeOf subent Is AttributeDefinition Then
Dim str_text As String
Dim attDef As AttributeDefinition
attDef = CType(subent, AttributeDefinition)
Dim attRef As New AttributeReference()
attRef.SetAttributeFromBlock(attDef, blockRef.BlockTransform)
Dim ptBase As New Autodesk.AutoCAD.Geometry.Point3d(attRef.Position.X, attRef.Position.Y, attRef.Position.Z)
attRef.Position = ptBase
attRef.Tag = attDef.Tag
attRef.TextString = str_text
End If
Dim idTmp As ObjectId
idTmp = blockRef.AttributeCollection.AppendAttribute(attRef)
tr.AddNewlyCreatedDBObject(attRef, True)
Thanks,
cannorth