Interface for scene manipulation and query the restrictions.
ScaleMode
Describe mode for setting of scale value.
@ SM_RESET
Zoom will be reset, parameter value will be ignored.
@ SM_ZOOM_OUT
Zoom out will be done, parameter value will be ignored.
@ SM_SET
Simple set, old scale will be replaced with the new value.
@ SM_FIT_ISOTROPIC_REDUCTION
Isotropic scale will be done, but only scale reduction is allowed.
@ SM_COMBINE
Old scale will be mutliplied by the new value.
@ SM_ZOOM_IN
Zoom in will be done, parameter value will be ignored.
@ SM_FIT_ANISOTROPIC
Anisotropic scale will be done to fit whole viewport area.
@ SM_FIT_ISOTROPIC
Complete isotropic scale will be done.
virtual bool SetFitMode(FitMode fitMode)=0
Set vieport scale fitting mode.
virtual double GetScale() const =0
Get actual scale factor.
virtual bool IsFullScreenMode() const =0
Check if full screen mode is enabled.
virtual bool SetFullScreenMode(bool isFullScreen)=0
Set full screen mode on/off.
FitMode
Vieport scale fitting mode.
@ FM_ANISOTROPIC
Anisotropic scale will be done to fit whole viewport area.
@ FM_ISOTROPIC
Complete isotropic scale will be done.
@ FM_NONE
No fitting will be done.
@ FM_ISOTROPIC_REDUCTION
Isotropic scale will be done, but only scale reduction is allowed.
virtual int GetSceneRestrictionFlags() const =0
Get the restriction flags, to tell the scene manipulator, what can be changed on the scene.
virtual FitMode GetFitMode() const =0
Get vieport scale fitting mode.
@ SR_SCALE
Translation operaration is prohibited.
@ SR_ROTATE
Rotation operaration is prohibited.
@ SR_ALL
All operations on scene object are prohibited.
@ SR_NONE
All operations on scene object are allowed.
@ SR_SHIFT
Translation operaration is prohibited.
virtual bool SetScale(int scaleMode=SM_SET, double value=1.0)=0
Set or modify scale factor.
Base interface for all used interfaces and implementations.