VisioMove  2.1.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Properties Friends Pages
Vg3DModule::VgPointDescriptor Struct Reference

This structure encapsulates the point description parameters. More...

Inheritance diagram for Vg3DModule::VgPointDescriptor:
Inheritance graph

Public Types

typedef VgPoint Described
 

Static Public Member Functions

static VgEngine::VgRefPtr
< Vg3DModule::VgPointDescriptor
create ()
 This static method returns a new heap-allocated descriptor. More...
 
static VgEngine::VgRefPtr
< Vg3DModule::VgPointDescriptor
create (VgEngine::VgRefPtr< Vg3DModule::VgPointDescriptor >const &pOther)
 This static method returns a new heap-allocated descriptor. More...
 

Public Attributes

VgEngine::VgPosition mPosition
 The point's position. More...
 
VgEngine::VgAltitudeMode mAltitudeMode
 The altitude mode tells how to interpret the VgPointDescriptor::mPosition::mZOrAltitude member. More...
 
VgEngine::VgAnchorMode mAnchorPosition
 Controls the anchoring of the point's bounding box with its position. More...
 
float mGeometryConstantSizeDistance
 Controls the distance at which the VgPoint does not become bigger as you approach it. More...
 
float mHeading
 Controls the scale of the VgPoint when viewed from a distance equal to mGeometryConstantSizeDistance. More...
 
float mPitch
 Controls the pitch of the VgPoint. More...
 
float mRoll
 Controls the roll of the VgPoint. More...
 
bool mForceFrontFace
 In cases where the camera can view the poi from behind, our engine will not display the label. More...
 
VgEngine::VgOrientationType mHeadingOrientationType
 Controls the orientation type of the Heading. More...
 
VgEngine::VgOrientationType mPitchOrientationType
 Controls the orientation type of the Heading. More...
 
VgEngine::VgOrientationType mRollOrientationType
 Controls the orientation type of the Roll. More...
 
std::vector
< VgEngine::VgRefPtr
< VgMarkerDescriptor > > 
mMarkerDescriptors
 A vector of VgMarkerDescriptors which determine what markers and how many of them are associated with this VgPoint. More...
 
std::string mID
 The Point's identifier. More...
 
VgEngine::VgSizePolicy mSizePolicy
 Size Policy, it Markers should have a constant scale, or be rescaled to fit inside a rectangle, this is most interesting for VgTextMarkers to make sure they stay within a certain region. More...
 
float mRectangleWidth
 Rectangle Width. More...
 
float mRectangleHeight
 Rectangle Height. More...
 
- Public Attributes inherited from Vg3DModule::VgGeometryDescriptor
double mVisibilityRampStartVisible
 Distance in meters at which it starts becoming visible. More...
 
double mVisibilityRampFullyVisible
 Distance in meters at which it is fully visible. More...
 
double mVisibilityRampStartInvisible
 Distance in meters at which it starts to become invisible. More...
 
double mVisibilityRampFullyInvisible
 Distance in meters at which it is fully invisible. More...
 
int mZIndex
 This member sets the z-index of the line. More...
 
bool mDrawOnTop
 Tells whether the line should draw on top (ignoring z-buffer). More...
 
float mScale
 VgIGeometry's initial scale. More...
 
bool mNotifyPOISelectedOnClick
 Call VgMapModule::VgIPlaceListener if the VgIGeometry has non-empty ID and is clicked This will be called after all the VgIGeometry callbacks have been called. More...
 

Protected Member Functions

 VgPointDescriptor ()
 Constructor. More...
 
 VgPointDescriptor (const VgPointDescriptor &pDescriptor)
 Copy Constructor. More...
 
virtual ~VgPointDescriptor ()
 Destructor. More...
 
- Protected Member Functions inherited from Vg3DModule::VgGeometryDescriptor
 VgGeometryDescriptor ()
 Constructor. More...
 
virtual ~VgGeometryDescriptor ()
 Destructor. More...
 

Friends

template<typename >
class VgEngine::VgRefPtr
 

Additional Inherited Members

- Public Member Functions inherited from VgEngine::VgReferenced
 VgReferenced ()
 Constructor. More...
 
 VgReferenced (const VgReferenced &pThis)
 Copy constructor. More...
 
virtual ~VgReferenced ()
 Destructor. More...
 
VgReferencedoperator= (const VgReferenced &pThis)
 Assignment operator. More...
 
void ref () const
 This method is used to add a reference to this object. More...
 
int unref () const
 This method is used to remove a reference to this object. More...
 
int getNbReferences () const
 Retrieves the number of references to this object. More...
 
- Protected Attributes inherited from VgEngine::VgReferenced
int mNbReferences
 The number of references to this object. More...
 

Detailed Description

This structure encapsulates the point description parameters.

The VgPointDescriptor contains the all the attributes that are useful for describing the behaviour of a VgPoint object.

Below is a code snippet showing how an allocated VgPointDescriptor can be configured:

...
Vg3DModule::VgIconMarkerDescriptor lIconMarkerDesc;
...
// Allocate a VgPointDescriptor object
Vg3DModule::VgPointDescriptor lPointDesc;
// Configure the object
//
// Set the point's position anchor.
lPointDesc.mAnchorPosition= VgEngine::eVgBottomCenter;
// Set the points position
lPointDesc.mPosition = lPos;
// Associate the marker with VgPointDescriptor.
// Note: It's possible to associate several markers with a single point.
lPointDesc.mMarkerDescriptors.push_back(&lIconMarkerDesc);
...
Version
2.0

Member Typedef Documentation

Constructor & Destructor Documentation

Vg3DModule::VgPointDescriptor::VgPointDescriptor ( )
inlineprotected

Constructor.

Vg3DModule::VgPointDescriptor::VgPointDescriptor ( const VgPointDescriptor pDescriptor)
inlineprotected

Copy Constructor.

virtual Vg3DModule::VgPointDescriptor::~VgPointDescriptor ( )
protectedvirtual

Destructor.

Member Function Documentation

static VgEngine::VgRefPtr< Vg3DModule::VgPointDescriptor > Vg3DModule::VgPointDescriptor::create ( )
static

This static method returns a new heap-allocated descriptor.

It is the only method that should be used to instantiate new descriptors. It is a way to make sure no one will delete it, except the last VgRefPtr pointing to it.

static VgEngine::VgRefPtr< Vg3DModule::VgPointDescriptor > Vg3DModule::VgPointDescriptor::create ( VgEngine::VgRefPtr< Vg3DModule::VgPointDescriptor >const &  pOther)
static

This static method returns a new heap-allocated descriptor.

It is the only method that should be used to instantiate new descriptors. It is a way to make sure no one will delete it, except the last VgRefPtr pointing to it.

Friends And Related Function Documentation

template<typename >
friend class VgEngine::VgRefPtr
friend

Member Data Documentation

VgEngine::VgAltitudeMode Vg3DModule::VgPointDescriptor::mAltitudeMode

The altitude mode tells how to interpret the VgPointDescriptor::mPosition::mZOrAltitude member.

Default is eAbsolute.

VgEngine::VgAnchorMode Vg3DModule::VgPointDescriptor::mAnchorPosition

Controls the anchoring of the point's bounding box with its position.

Default is VgEngine::eVgBottomCenter.

Version
1.1.6796
bool Vg3DModule::VgPointDescriptor::mForceFrontFace

In cases where the camera can view the poi from behind, our engine will not display the label.

For example this will happen if the VgPoint has a fixed orientation (it will not happen if it is always camera facing). Default value is false. Setting this to true will allow to view fixed VgPoints from behind.

float Vg3DModule::VgPointDescriptor::mGeometryConstantSizeDistance

Controls the distance at which the VgPoint does not become bigger as you approach it.

When the camera is within this distance of the VgPoint, the visible size of the VgPoint on the screen will be the same as what it looked like when it was mGeometryConstantSizeDistance meters away. If set to 0.0, the size of the POI will be determined by mScale, regardless of it's distance from the camera.

Version
2.0.9263
2.1.0 default value changed to 0.0 from 700.0
Remarks
on version 2.1.0 the default value was changed from 700.0 to 0, thus all VgPoints will not have their scale clamped.
float Vg3DModule::VgPointDescriptor::mHeading

Controls the scale of the VgPoint when viewed from a distance equal to mGeometryConstantSizeDistance.

The default value of this property is 1.0.

Version
2.0.9263
Deprecated:
2.1.0, use mScale instead, it will have the same effect float mGeometryConstantSizeMaxScale;

Controls the heading of the VgPoint. Default value is 0.0.

Note
This value is only used if VgPointDescriptor::mHeadingOrientationType takes into account heading.
VgEngine::VgOrientationType Vg3DModule::VgPointDescriptor::mHeadingOrientationType

Controls the orientation type of the Heading.

By default is eVgOrientaitonCameraFacing.

std::string Vg3DModule::VgPointDescriptor::mID

The Point's identifier.

Default value is empty string ("").

Version
2.0.9334
2.1.3 Changed default to be empty string.
See Also
VgEngine::VgQuery
std::vector< VgEngine::VgRefPtr< VgMarkerDescriptor > > Vg3DModule::VgPointDescriptor::mMarkerDescriptors

A vector of VgMarkerDescriptors which determine what markers and how many of them are associated with this VgPoint.

See Vg3DModule::VgMarkerType for a list of available markers.

Note
It is the responsability of the caller to release the VgMarkerDescriptor objects.
Version
2.0
float Vg3DModule::VgPointDescriptor::mPitch

Controls the pitch of the VgPoint.

The valid range is between -90.0 and 90.0. A value of 0, means the VgPoint is facing the horizon. Default value is 0.0.

Note
This value is only used if VgPointDescriptor::mPitchOrientationType takes into account pitch.
VgEngine::VgOrientationType Vg3DModule::VgPointDescriptor::mPitchOrientationType

Controls the orientation type of the Heading.

By default is eVgOrientaitonCameraFacing.

VgEngine::VgPosition Vg3DModule::VgPointDescriptor::mPosition

The point's position.

float Vg3DModule::VgPointDescriptor::mRectangleHeight

Rectangle Height.

Only useful if mSizePolicy is equal to VgEngine::eVgSizePolicyFitRectangle. Default value is -1.

Version
2.1.0
float Vg3DModule::VgPointDescriptor::mRectangleWidth

Rectangle Width.

Only useful if mSizePolicy is equal to VgEngine::eVgSizePolicyFitRectangle. Default value is -1.

Version
2.1.0
float Vg3DModule::VgPointDescriptor::mRoll

Controls the roll of the VgPoint.

The valid range is between -90.0 and 90.0. A value of 0, means the VgPoint is straight. Default value is 0.0.

Note
This value is only used if VgPointDescriptor::mRollOrientationType takes into account roll.
VgEngine::VgOrientationType Vg3DModule::VgPointDescriptor::mRollOrientationType

Controls the orientation type of the Roll.

By default is eVgOrientationFixedModulo180degrees.

VgEngine::VgSizePolicy Vg3DModule::VgPointDescriptor::mSizePolicy

Size Policy, it Markers should have a constant scale, or be rescaled to fit inside a rectangle, this is most interesting for VgTextMarkers to make sure they stay within a certain region.

Version
2.1.0

The documentation for this struct was generated from the following file:
VisioMove 2.1.5, Visioglobe® 2015