VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
makVrv::DtOsgGeoExtentRectangle Class Reference

A rectangle defines an axis-aligned geospatial extent. A bounding box that is aligned with a spatial reference's coordinate system.

Classes

class  Vertex
 

Public Member Functions

 DtOsgGeoExtentRectangle (DtDe &de, DtChannel *channel, DtVector color)
 
virtual ~DtOsgGeoExtentRectangle ()
 
virtual void reset ()
 
virtual void hide ()
 
virtual void setVertexChannelCoordinate (int index, double channelX, double channelY)
 
virtual void setVertexLongitude (int index, double longitude)
 
virtual void setVertexLatitude (int index, double latitude)
 
virtual double getVertexLongitude (int index)
 
virtual double getVertexLatitude (int index)
 
virtual void place (double channelX, double channelY)
 
virtual void drag ()
 
virtual void move (double channelX, double channelY)
 
virtual void dirty ()
 
virtual void cleanup (bool deleteGeometry)
 
virtual void update (double channelX, double channelY)
 
virtual DtChannelchannel () const
 

Public Attributes

boost::signalslib::signal
< void(int index, double
longtitude, double latitude)> 
signal_vertexChanged
 

Protected Member Functions

virtual void draw (double channelX, double channelY)
 
virtual void drawVertex (Vertex &vertex)
 
virtual void handleHighlight (int index, double channelX, double channelY)
 
virtual void geodeticToGeocentric (const DtVector &geodetic, DtVector &geocentric)
 
virtual void geocentricToGeodetic (const DtVector &geocentric, DtVector &geodetic)
 
virtual void geocentricToChannel (const DtVector &geocentric, double &mouseX, double &mouseY)
 
virtual bool channelToGeocentric (double channelX, double channelY, DtVector &geocentric)
 

Protected Attributes

DtDemyDe
 
const DtDisplayUnitsConvertermyConverter
 
VertexmyVertices [4]
 
DtFilledPolygonmyRectangle
 
DtChannelmyChannel
 
osg::Matrixd myPreviousMVPMatrix
 
bool myIsDirty
 
DtVector myColor
 
bool myAxisAligned
 
DtIntersectorsContainermyIntersectors = nullptr
 

Constructor & Destructor Documentation

makVrv::DtOsgGeoExtentRectangle::DtOsgGeoExtentRectangle ( DtDe de,
DtChannel channel,
DtVector  color 
)

CTOR.

Parameters
deThe DtDe.
channelThe channel that the rectangle is drawn on.
colorThe color of the rectangle([0,1]).
virtual makVrv::DtOsgGeoExtentRectangle::~DtOsgGeoExtentRectangle ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtOsgGeoExtentRectangle::reset ( )
virtual

Cleans the data from the previous operation.

virtual void makVrv::DtOsgGeoExtentRectangle::hide ( )
virtual

Hides the polygon.

virtual void makVrv::DtOsgGeoExtentRectangle::setVertexChannelCoordinate ( int  index,
double  channelX,
double  channelY 
)
virtual

Sets the channel coordinate of the vertex.

Parameters
indexThe index of the vertex.
xThe channelX coordinate of the vertex in channel space.
yThe channelY coordinate of the vertex in channel space.
virtual void makVrv::DtOsgGeoExtentRectangle::setVertexLongitude ( int  index,
double  longitude 
)
virtual

Sets the longitude of the vetex.

Parameters
indexThe index of the vertex.
longitudeThe longitude of the vertex.
virtual void makVrv::DtOsgGeoExtentRectangle::setVertexLatitude ( int  index,
double  latitude 
)
virtual

Sets the latitude of the vetex.

Parameters
bottomLeftBottom left coordinate or upper right vertex.
latitudeThe latitude of the vertex.
virtual double makVrv::DtOsgGeoExtentRectangle::getVertexLongitude ( int  index)
virtual

Gets the longitude of the vetex.

Parameters
indexThe index of the vertex.
virtual double makVrv::DtOsgGeoExtentRectangle::getVertexLatitude ( int  index)
virtual

Gets the latitude of the vetex.

Parameters
indexThe index of the vertex.
virtual void makVrv::DtOsgGeoExtentRectangle::place ( double  channelX,
double  channelY 
)
virtual

Called when the user places the vertex.

Parameters
channelXThe x coordinate of the vertex in channel coordinates.
channelYThe y coordinate of the vertex in channel coordinates.
virtual void makVrv::DtOsgGeoExtentRectangle::drag ( )
virtual

Called when the user drags the vertex of the rectangle.

virtual void makVrv::DtOsgGeoExtentRectangle::move ( double  channelX,
double  channelY 
)
virtual

Called when the user move the coordinate of the vertex of the rectangle.

Parameters
channelXThe x coordinate of the vertex in channel coordinates.
channelYThe y coordinate of the vertex in channel coordinates.
virtual void makVrv::DtOsgGeoExtentRectangle::dirty ( )
virtual

Mark the rectangle as dirty, the underlying geometry need to be sync with updated vertex.

virtual void makVrv::DtOsgGeoExtentRectangle::cleanup ( bool  deleteGeometry)
virtual

Cleans up the rectangle.

Parameters
deleteGeometryif sets to true, delete the geometry otherwise,just reset all.
virtual void makVrv::DtOsgGeoExtentRectangle::update ( double  channelX,
double  channelY 
)
virtual

Updates the rectangle if its dirty.

Parameters
namechannelX the mouse x coordinate in channel space
namechannelY the mouse y coordinate in channel space
virtual DtChannel* makVrv::DtOsgGeoExtentRectangle::channel ( ) const
virtual

Gets the channel that the rectangle is drawn on.

virtual void makVrv::DtOsgGeoExtentRectangle::draw ( double  channelX,
double  channelY 
)
protectedvirtual

Draw the rectangle.

Parameters
channelXThe current x coordiante of the the mouse in channel space.
channelYThe current y coordinate of the the mouse in channel space.
virtual void makVrv::DtOsgGeoExtentRectangle::drawVertex ( Vertex vertex)
protectedvirtual

Draws a vertex.

Parameters
vertexThe vertex to draw.
virtual void makVrv::DtOsgGeoExtentRectangle::handleHighlight ( int  index,
double  channelX,
double  channelY 
)
protectedvirtual

Handles the highlight of the vertex.

Parameters
indexThe index of the vertex.
channelXThe current x coordiante of the the mouse in channel space.
channelYThe current y coordinate of the the mouse in channel space.
virtual void makVrv::DtOsgGeoExtentRectangle::geodeticToGeocentric ( const DtVector &  geodetic,
DtVector &  geocentric 
)
protectedvirtual

Convient function for converting from geodetic coordinate to geocentric coordinate.

Parameters
geodeticthe geodetic coordinate
geocentricthe geocentric coordinate
virtual void makVrv::DtOsgGeoExtentRectangle::geocentricToGeodetic ( const DtVector &  geocentric,
DtVector &  geodetic 
)
protectedvirtual

Convient function for converting from geocentric coordinate to geodetic coordinate.

Parameters
geocentricthe geocentric coordinate
geodeticthe geodetic coordinate
virtual void makVrv::DtOsgGeoExtentRectangle::geocentricToChannel ( const DtVector &  geocentric,
double mouseX,
double mouseY 
)
protectedvirtual

Convient function for converting from geocentric coordinate to window coordinate.

Parameters
geocentricthe geocentric coordinate
mouseXthe x window coordinate
mouseYthe y window coordinate
virtual bool makVrv::DtOsgGeoExtentRectangle::channelToGeocentric ( double  channelX,
double  channelY,
DtVector &  geocentric 
)
protectedvirtual

Convient function for converting from window coordinate to geocentric coordinate.

Parameters
channelXthe x channel coordinate
channelYthe y channel coordinate
geocentricthe output geocentric coordinate
Returns
true on success, false on failure

Member Data Documentation

boost::signalslib::signal<void(int index, double longtitude, double latitude)> makVrv::DtOsgGeoExtentRectangle::signal_vertexChanged
DtDe& makVrv::DtOsgGeoExtentRectangle::myDe
protected
const DtDisplayUnitsConverter& makVrv::DtOsgGeoExtentRectangle::myConverter
protected
Vertex* makVrv::DtOsgGeoExtentRectangle::myVertices[4]
protected
DtFilledPolygon* makVrv::DtOsgGeoExtentRectangle::myRectangle
protected
DtChannel* makVrv::DtOsgGeoExtentRectangle::myChannel
protected
osg::Matrixd makVrv::DtOsgGeoExtentRectangle::myPreviousMVPMatrix
protected
bool makVrv::DtOsgGeoExtentRectangle::myIsDirty
protected
DtVector makVrv::DtOsgGeoExtentRectangle::myColor
protected
bool makVrv::DtOsgGeoExtentRectangle::myAxisAligned
protected
DtIntersectorsContainer* makVrv::DtOsgGeoExtentRectangle::myIntersectors = nullptr
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)