|
| GlsMapSymbology (bool generateInstance=false) |
|
virtual | ~GlsMapSymbology () |
|
virtual void | SetAvailableAttributes (unsigned int value) |
|
virtual DisplayObject * | CloneObject (bool generateNames=false) |
|
virtual void | CopyProperties (DisplayObject *src) |
|
virtual InterfaceListType * | GetCppInterfaceDescription (InterfaceListType *addToThisList=NULL) |
|
virtual void | GetCppInterfaceDescriptionFree (InterfaceListType *array) |
|
virtual void | PreDraw (const OpenGLMatrices &parentMatrices, Culler &culler) |
|
virtual void | Draw (void) |
|
virtual DisplayObject * | Pick3D (const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices) |
|
virtual DisplayObject * | handle (DisplayEvent *ev) |
|
virtual void | SetValue (int spec, va_list &args) |
|
GlsMapView * | GetMapView () |
|
virtual void | SetDataSource (GlsMapSymbologyDataSource *database) |
|
GlsMapSymbologyDataSource * | GetDataSource () |
|
GlsMapSymbologyStdDataSource * | GetStdDataSource () |
|
virtual bool | PickSymbols (GlsMapView *view, LocationEvent *lev, GlsMapSymbologyDataSource::IconIDList *iconsHit, GlsMapSymbologyDataSource::PathIDList *pathsHit) |
|
void | SetDefaultPathColor (const glsColor &value) |
|
glsColor | GetDefaultPathColor () |
|
The GlsMapSymbology class is a Group that contains a collection of DisplayObjects that can be thought of as 'icon templates'. When drawing, the MapSymbologyLayer will query it's MapSymbologyDataSource for the list of visible icons and paths, then render them to the map using the icon templates. The MapSymbologyDataSource interface is simple, while still allowing the MapSymbologyDataSource the ability to override the appearance of icons and paths.
When a new GlsMapSymbology instance is first created, it will create it's own GlsMapSymbologyStdDataSource which provides an interface for the user to create/update icons and paths without having to write their own MapSymbologyDataSource class. While this class provides much of the common functionality that is needed, some users will still want to create their own MapSymbologyDataSource to provide the best performance when working with their own datasets. These users have the option of deriving from the BasicDataSource class (a template class which provides basic functionality) or deriving directly from MapSymbologyDataSource interface to optimize all of the MapSymbologyDataSource code for their data set.