If you create the attribute with the exact same
position, scale, rotation and extrusion direction
as its corresponding attribute definiton, then the
only thing you shoud have to do to put it where
it should be, is to call TransformBy on the attribute,
and pass in the transformation matrix returned
by the Block reference's BlockTransform property.
--
http://www.caddzone.com
AcadXTabs: MDI Document Tabs for AutoCAD 2004/2005/2006/2007
http://www.acadxtabs.com
wrote in message news:5267679@discussion.autodesk.com...
I am changing the ScaleFactor member of a BlockReference upon creating the block, although I found that (logically) the scale does not get applied to all AttributeReferences. I figured I would also apply the scale to each attribute while I was creating them. This proved to be difficult, though, since there is no ScaleFactor member for an AttributeReference. I started to try to apply the scale myself, but my attempts are failing.
My question is how should I apply the ScaleFactor from the block to the AttributeReference?
Currently, I use something like this (it doesnt work....)
attref.Position.ScaleBy(scale,new Point3d(0,0,0))
attref.Height *= scale
attref.WidthFactor *= scale