怎么旋转以及缩放带属性的块参照?
如果通过块参照的Rotation属性来旋转,只会旋转块参照里面的普通实体,但属性不会跟着旋转。如果通过块参照的ScaleFactors属性来缩放,也同样无法缩放属性。
旋转的例子如下图:
代码:
Using tr As CADDS.Transaction = CADApp.DocumentManager.MdiActiveDocument.TransactionManager.StartTransaction
Dim blkTblRef As CADDS.BlockReference = tr.GetObject(selectedObjectID, CADDS.OpenMode.ForWrite)
blkTblRef.Rotation = 3.1415 / 2
tr.Commit()
End Using
所以怎么旋转以及缩放带属性的块参照了?
除了对块定行旋转外还要对属性进行旋转操作才行。
pt1 = blkTblRef.Position
y = blkTblRef.Rotation
blkTblRef.Rotation = math.pi/2
For Each id1 As ObjectId In blkTblRef.AttributeCollection
att = Trans.GetObject(id1, OpenMode.ForWrite)
mat = Matrix3d.Rotation(math.pi/2 - y, New Vector3d(0, 0, 1), pt1)
att.TransformBy(mat)
Next
页:
[1]