vtlib library
|
Public Member Functions | |
void | CreateFeatureVisuals (osg::Group *pParent, vtHeightField3d *pHF, float fSpacing, bool progress_callback(int)=NULL) |
void | CreateLineGeometryForPoints () |
void | CreateObjectGeometry (uint iIndex) |
void | CreateLineGeometry (uint iIndex) |
void | CreateFeatureLabel (uint iIndex) |
void | ReleaseGeometry () |
void | ReleaseFeatureGeometry (vtFeature *f) |
Public Member Functions inherited from vtLayer | |
void | SetProps (const vtTagArray &props) |
Set the properties for this layer, which includes style. | |
vtTagArray & | Props () |
Get the properties for this layer, which includes style. | |
Protected Attributes | |
vtFeatureSet * | m_pSet |
This is the set of features which the layer contains. | |
An abstract layer is a traditional GIS-style set of geometry features with attributes. It can be shown on the terrain in a variety of ways (styles). Style is described with a set of properties, encoded as a vtTagArray. These are the supported style properties, all of which are optional:
When a terrain description (TParams) contains an abstract layer, these same style properties are encoded. On disk, they are stored as XML elements.
void vtAbstractLayer::CreateFeatureLabel | ( | uint | iIndex | ) |
Given a featureset and style description, create a labels and place it on the terrain.
If the features are 2D or 3D points (vtFeatureSetPoint2D or vtFeatureSetPoint3D) then the labels will be placed at those points. If the features are 2D polygons (vtFeatureSetPolygon) then the point used is the centroid of the polygon.
void vtAbstractLayer::CreateFeatureVisuals | ( | osg::Group * | pParent, |
vtHeightField3d * | pHF, | ||
float | fSpacing, | ||
bool | progress_callbackint = NULL |
||
) |
Given a featureset, create the geometry and place it on the terrain.
void vtAbstractLayer::CreateLineGeometry | ( | uint | iIndex | ) |
Given a featureset and style description, create line geometry. If 2D, it will be draped on the terrain. Polygon features (vtFeatureSetPolygon) will also be created as line geometry (unfilled polygons) and draped on the ground.
void vtAbstractLayer::CreateLineGeometryForPoints | ( | ) |
Given a featureset and style description, create line geometry that goes through all the points.
void vtAbstractLayer::CreateObjectGeometry | ( | uint | iIndex | ) |
Given a featureset and style description, create a geometry object (such as spheres) and place it on the terrain. If 2D, they will be draped on the terrain.
void vtAbstractLayer::ReleaseFeatureGeometry | ( | vtFeature * | f | ) |
Release all the 3D stuff created for a given feature.
void vtAbstractLayer::ReleaseGeometry | ( | ) |
Release all the 3D stuff created for the layer (including geometry and labels).