![]() |
VR-Forces Developer's Guide
|
DtGimbalCompassOverlaySection extends DtOsgSensorViewCompassOverlaySection so that it can override its update() method. We need to do this because DtOsgSensorViewCompassOverlaySection makes an assumption about the way the observer is set up that is not valid in this case; it assumes that the observer is attached to the platform and then rotated to face the target (hence the observer's getAttachedRotation() can be used to get the orientation of the gimbal relative to the platform). However in this example, a gimbal object is created; oriented to point to the target each frame; and the observer is attached to that gimbal object. Therefore in this case the rotation of the observer relative to what it is attached to (the gimbal object) is always 0.

Public Member Functions | |
| DtGimbalCompassOverlaySection ()=delete | |
| virtual | ~DtGimbalCompassOverlaySection () |
| virtual void | update (const makVrv::DtOsgObserverObject &, const makVrv::DtSensorFieldOfViewData &) override |
| virtual void | setPlatformTopoOrientation (double ori) |
| virtual void | setGimbalOrientation (double ori) |
Public Member Functions inherited from makVrv::DtOsgSensorViewCompassOverlaySection | |
| ~DtOsgSensorViewCompassOverlaySection () | |
| virtual void | initialize (DtOverlayRenderer &overlayRenderer, unsigned int channelWidth, unsigned int channelHeight, unsigned int channelXOffset, unsigned int channelYOffset) override |
| virtual void | setChannelSize (unsigned int channelWidth, unsigned int channelHeight, unsigned int channelXOffset, unsigned int channelYOffset) override |
| virtual void | updateNorthIndicator (double cameraHeading) |
| virtual void | updateEntityHeading (double entityHeading) |
| virtual void | updateAzimuthScale (int relHeading) |
| virtual const std::string & | sectionName () const override |
Public Member Functions inherited from makVrv::DtOsgSensorViewOverlaySection | |
| virtual | ~DtOsgSensorViewOverlaySection () |
| virtual double | currentToInitialSizeRatio () const |
Protected Member Functions | |
| DtGimbalCompassOverlaySection (makVrv::DtDe &de) | |
Protected Member Functions inherited from makVrv::DtOsgSensorViewCompassOverlaySection | |
| DtOsgSensorViewCompassOverlaySection (DtDe &de) | |
| virtual void | slot_coordinateSystemChanged () |
Protected Member Functions inherited from makVrv::DtOsgSensorViewOverlaySection | |
| DtOsgSensorViewOverlaySection (DtDe &de) | |
Protected Attributes | |
| double | myPlatformOrientation |
| double | myGimbalOrientation |
Protected Attributes inherited from makVrv::DtOsgSensorViewCompassOverlaySection | |
| DtTextProxy * | myNorthIndicator |
| DtLineSegment * | myHorizontal |
| std::vector< DtLineSegment * > | myTickMarks |
| DtOutlinedPolygon * | myHeadingBox |
| DtFilledPolygon * | myHeadingArrow |
| DtTextProxy * | myHeadingText |
| DtLineSegment * | myAzimuthScaleArrowLeft |
| DtLineSegment * | myAzimuthScaleArrowRight |
| DtTextProxy * | myAzimuthScaleText |
| DtSignalConnectionManager | myConnections |
| DtCoordinateSystem * | myCoordinateSystem |
Protected Attributes inherited from makVrv::DtOsgSensorViewOverlaySection | |
| makVrv::DtDe & | myDe |
| unsigned int | myChannelWidth |
| unsigned int | myChannelHeight |
| unsigned int | myBaseChannelWidth |
| unsigned int | myBaseChannelHeight |
| unsigned int | myXOffset |
| unsigned int | myYOffset |
Friends | |
| class | DtGimbalCompassOverlaySectionCreator |
Additional Inherited Members | |
Static Public Attributes inherited from makVrv::DtOsgSensorViewCompassOverlaySection | |
| static const std::string | SectionName |
|
protected |
Protected CTOR. Instances of this class may only be created by the DtGimbalCompassOverlaySectionCreator.
|
delete |
Deleted Default Constructor.
|
virtual |
Virtual DTOR.
|
overridevirtual |
This overrides the base update() method. It calls updateNorthIndicator(), updateEntityHeading() and updateAzimuthScale() with values provided by the DtGimbalSensorOverlay. It doesn't use the DtOsgObserverObject.
Reimplemented from makVrv::DtOsgSensorViewCompassOverlaySection.
|
virtual |
Set the topocentric orientation of the platform, in radians (0 to 2*PI)
|
virtual |
Set the topocentric orientation of the gimbal, in radians (0 to 2*PI)
|
friend |
Give DtGimbalCompassOverlaySectionCreator permission to create instances of this class.
|
protected |
|
protected |