|
| Graphic3d_TransformPers (const Graphic3d_TransModeFlags theMode) |
| Set transformation persistence.
|
|
| Graphic3d_TransformPers (const Graphic3d_TransModeFlags theMode, const gp_Pnt &thePnt) |
| Set Zoom/Rotate transformation persistence with an anchor 3D point. Anchor point defines the origin of Local Coordinate system within World Coordinate system. Throws an exception if persistence mode is not Graphic3d_TMF_ZoomPers, Graphic3d_TMF_ZoomRotatePers or Graphic3d_TMF_RotatePers.
|
|
| Graphic3d_TransformPers (const Graphic3d_TransModeFlags theMode, const Aspect_TypeOfTriedronPosition theCorner, const Graphic3d_Vec2i &theOffset=Graphic3d_Vec2i(0, 0)) |
| Set 2d/trihedron transformation persistence with a corner and 2D offset. 2D offset defines the origin of Local Coordinate system as projection of 2D point on screen plane into World Coordinate system. Throws an exception if persistence mode is not Graphic3d_TMF_TriedronPers or Graphic3d_TMF_2d. The offset is a positive displacement from the view corner in pixels.
|
|
Standard_Boolean | IsZoomOrRotate () const |
| Return true for Graphic3d_TMF_ZoomPers, Graphic3d_TMF_ZoomRotatePers or Graphic3d_TMF_RotatePers modes.
|
|
Standard_Boolean | IsTrihedronOr2d () const |
| Return true for Graphic3d_TMF_TriedronPers and Graphic3d_TMF_2d modes.
|
|
Graphic3d_TransModeFlags | Mode () const |
| Transformation persistence mode flags.
|
|
Graphic3d_TransModeFlags | Flags () const |
| Transformation persistence mode flags.
|
|
void | SetPersistence (const Graphic3d_TransModeFlags theMode, const gp_Pnt &thePnt) |
| Set Zoom/Rotate transformation persistence with an anchor 3D point. Throws an exception if persistence mode is not Graphic3d_TMF_ZoomPers, Graphic3d_TMF_ZoomRotatePers or Graphic3d_TMF_RotatePers.
|
|
void | SetPersistence (const Graphic3d_TransModeFlags theMode, const Aspect_TypeOfTriedronPosition theCorner, const Graphic3d_Vec2i &theOffset) |
| Set 2d/trihedron transformation persistence with a corner and 2D offset. Throws an exception if persistence mode is not Graphic3d_TMF_TriedronPers or Graphic3d_TMF_2d.
|
|
gp_Pnt | AnchorPoint () const |
| Return the anchor point for zoom/rotate transformation persistence.
|
|
void | SetAnchorPoint (const gp_Pnt &thePnt) |
| Set the anchor point for zoom/rotate transformation persistence.
|
|
Aspect_TypeOfTriedronPosition | Corner2d () const |
| Return the corner for 2d/trihedron transformation persistence.
|
|
void | SetCorner2d (const Aspect_TypeOfTriedronPosition thePos) |
| Set the corner for 2d/trihedron transformation persistence.
|
|
Graphic3d_Vec2i | Offset2d () const |
| Return the offset from the corner for 2d/trihedron transformation persistence.
|
|
void | SetOffset2d (const Graphic3d_Vec2i &theOffset) |
| Set the offset from the corner for 2d/trihedron transformation persistence.
|
|
virtual Standard_Real | persistentScale (const Handle< Graphic3d_Camera > &theCamera, const Standard_Integer theViewportWidth, const Standard_Integer theViewportHeight) const |
| Find scale value based on the camera position and view dimensions.
|
|
virtual NCollection_Mat3< Standard_Real > | persistentRotationMatrix (const Handle< Graphic3d_Camera > &theCamera, const Standard_Integer theViewportWidth, const Standard_Integer theViewportHeight) const |
| Create orientation matrix based on camera and view dimensions. Default implementation locks rotation by nullifying rotation component. Camera and view dimensions are not used, by default.
|
|
template<class T > |
void | Apply (const Handle< Graphic3d_Camera > &theCamera, const NCollection_Mat4< T > &theProjection, const NCollection_Mat4< T > &theWorldView, const Standard_Integer theViewportWidth, const Standard_Integer theViewportHeight, Bnd_Box &theBoundingBox) const |
| Apply transformation to bounding box of presentation.
|
|
template<class T > |
void | Apply (const Handle< Graphic3d_Camera > &theCamera, const NCollection_Mat4< T > &theProjection, const NCollection_Mat4< T > &theWorldView, const Standard_Integer theViewportWidth, const Standard_Integer theViewportHeight, BVH_Box< T, 3 > &theBoundingBox) const |
| Apply transformation to bounding box of presentation.
|
|
template<class T > |
NCollection_Mat4< T > | Compute (const Handle< Graphic3d_Camera > &theCamera, const NCollection_Mat4< T > &theProjection, const NCollection_Mat4< T > &theWorldView, const Standard_Integer theViewportWidth, const Standard_Integer theViewportHeight) const |
| Compute transformation. Computed matrix can be applied to model world transformation of an object to implement effect of transformation persistence.
|
|
template<class T > |
void | Apply (const Handle< Graphic3d_Camera > &theCamera, const NCollection_Mat4< T > &theProjection, NCollection_Mat4< T > &theWorldView, const Standard_Integer theViewportWidth, const Standard_Integer theViewportHeight, const gp_Pnt *theAnchor=NULL) const |
| Apply transformation persistence on specified matrices.
|
|
virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
| Dumps the content of me into the stream.
|
|
Public Member Functions inherited from Standard_Transient |
| Standard_Transient () |
| Empty constructor.
|
|
| Standard_Transient (const Standard_Transient &) |
| Copy constructor – does nothing.
|
|
Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter.
|
|
virtual | ~Standard_Transient () |
| Destructor must be virtual.
|
|
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object.
|
|
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type.
|
|
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| Returns a true value if this is an instance of TypeName.
|
|
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
|
|
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
|
|
Standard_Transient * | This () const |
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
|
|
Standard_Integer | GetRefCount () const noexcept |
| Get the reference counter of this object.
|
|
void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object.
|
|
Standard_Integer | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value.
|
|
virtual void | Delete () const |
| Memory deallocator for transient classes.
|
|
Transformation Persistence definition.
Transformation Persistence defines a mutable Local Coordinate system which depends on camera position, so that visual appearance of the object becomes partially immutable while camera moves. Object visually preserves particular property such as size, placement, rotation or their combination.
Graphic3d_TMF_ZoomPers, Graphic3d_TMF_RotatePers and Graphic3d_TMF_ZoomRotatePers define Local Coordinate system having origin in specified anchor point defined in World Coordinate system, while Graphic3d_TMF_TriedronPers and Graphic3d_TMF_2d define origin as 2D offset from screen corner in pixels.
Graphic3d_TMF_2d, Graphic3d_TMF_TriedronPers and Graphic3d_TMF_ZoomPers defines Local Coordinate system where length units are pixels. Beware that Graphic3d_RenderingParams::ResolutionRatio() will be ignored! For other Persistence flags, normal (world) length units will apply.
WARNING: Graphic3d_TMF_None is not permitted for defining instance of this class - NULL handle should be used for this purpose!