C++
ACDBCORE2D_PORT ADESK_SEALED_VIRTUAL Acad::ErrorStatus getCompoundObjectTransform( AcGeMatrix3d & xMat ) const;
Description
This function is intended to be overridden by derived classes that are compound objects (in other words, objects that behave like blocks in the display list).
A compound object has little or no geometry of its own; instead it relies on nested entities, perhaps the contents of a BlockTableRecord, to represent itself. A compound object must use the same transformation matrix for all of its contained entities. Otherwise selection and osnap will not function correctly. This is the method that the system uses to obtain that matrix from the compound object.
This method should only be overridden if you return the kDrawableIsCompoundObject flag from setAttributes. The matrix you should return here is the one that you pass to pushModelTransform before you render your nested objects. You must override this method if you return the compound object flag in setAttributes, even if you don't push a transform for your nested objects. In that case you would return Acad::eOk and the identity transform in xMat.
Default implementation: Returns Acad::eNotApplicable and the identity matrix in xMat.
Parameters
Parameters | Description |
---|---|
xMat | Output filled in with transformation matrix used for nested objects |