40 #ifndef INCLUDED_GLSMAPVIEW_H
41 #define INCLUDED_GLSMAPVIEW_H
48 #if( defined( GLSGEN_EXPORT_GLSMAPVIEW ) || defined( GLSGEN_IMPORT_GLSMAPVIEW ) || defined( GLS_EXPORT_GENERATED ) || defined( GLS_IMPORT_GENERATED ) ) \
49 && defined( _MSC_VER )
50 # if defined( GLSGEN_EXPORT_GLSMAPVIEW ) || defined( GLS_EXPORT_GENERATED )
51 # define GLSGEN_GLSMAPVIEW_EXPORT __declspec( dllexport )
53 # define GLSGEN_GLSMAPVIEW_EXPORT __declspec( dllimport )
56 # define GLSGEN_GLSMAPVIEW_EXPORT
60 #define LIB_BASE_NAME "gls_map_toolkit"
69 GLS_GLSMAPVIEW_FIRST_VALUE = GLS_LAST_INITIALIZER + 1,
74 PROJECTION_TYPE_EQUIRECTANGULAR = 0,
75 PROJECTION_TYPE_MERCATOR,
76 PROJECTION_TYPE_TRANSVERSE_MERCATOR,
89 DISTI_DEPRECATED(
"This identifier is forbidden by the C++ standard. Use BaseClass instead." )
92 friend class GlsMapViewEditor;
97 GLSGEN_GLSMAPVIEW_EXPORT
GlsMapView(
bool generateInstance =
false );
102 static GLSGEN_GLSMAPVIEW_EXPORT
DisplayObject* CreateInstance();
116 virtual GLSGEN_GLSMAPVIEW_EXPORT
void Draw(
void );
119 const Vector& logicalCoords,
121 const Vector& directionVector,
127 virtual GLSGEN_GLSMAPVIEW_EXPORT
void SetValue(
int spec, va_list& args );
136 GLSGEN_GLSMAPVIEW_EXPORT ProjectionType GetProjectionType()
const;
143 Vector MapCenterOffset() {
return _mapCenterOffset; }
168 GLSGEN_GLSMAPVIEW_EXPORT
void ViewHeading(
const float& value );
181 GLSGEN_GLSMAPVIEW_EXPORT
void ViewHeight(
const double& value );
182 double ViewHeight() {
return _viewHeight; }
187 GLSGEN_GLSMAPVIEW_EXPORT
void ClipMap(
const bool& value );
188 bool ClipMap() {
return _clipMapView; }
199 return _visibleRegion;
215 if( !_geoToLogicalMatricesValid )
220 double lon, lat, alt;
238 if( !_geoToLogicalMatricesValid )
242 return _geoToLogicalMatrix;
250 if( !_geoToLogicalMatricesValid )
254 return _viewLogicalHeight;
267 ProjectionType _projectionType;
274 double _viewLogicalHeight;
279 bool _geoToLogicalMatricesValid;
285 void VisibleRegionCheckVert(
const Vector& v,
GeoRect& rect )
const;
296 if( dynamic_cast<GlsMapView*>( obj ) )
virtual DisplayObject * handle(DisplayEvent *ev)
void CalcVisibleRegion() const
#define DISTI_DEPRECATED(msg)
Defines whether this compiler supports the C++14 deprecated attribute.
Definition: gls_cpp_lang_support.h:436
virtual void SetValue(int spec, va_list &args)
void GetGeodetic(Vector *lonLatAlt, const EllipsoidParams &ellipsoid=GeoCoord::WGS84) const
Definition: gls_map_util.h:190
const GlsMatrixAffineD & GetGeoToLogicalMatrix() const
Definition: gls_map_view.h:236
Definition: dynamic_array.h:66
const GeoRect & GetVisibleRegion() const
Definition: gls_map_view.h:197
The disti::Group class. Implements groups of objects.
Class to contain current OpenGL view, projection and draw matrices.
Definition: util.h:471
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
Definition: gls_map_util.h:414
void LogicalToGeoCoord(const Vector &logical, GeoCoord *geo) const
The GlsMapView is a special group that controls the map view parameters. It contains all of the objec...
Definition: gls_map_view.h:86
double ViewLogicalHeight(void) const
Definition: gls_map_view.h:248
Definition: gls_map_util.h:67
void SetProjectionOffset(const GeoCoord &value)
void LonLatToLogical(double lon, double lat, Vector *logical_out) const
Utility classes for GL Studio Map toolkit.
DisplayObject * FirstObject()
virtual void PreDraw(const OpenGLMatrices &parentMatrices, Culler &culler)
virtual void ParentGroup(Group *group)
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
GeoCoord GetProjectionOffset()
Definition: gls_map_view.h:163
GlsMapView(bool generateInstance=false)
float ViewHeading()
Definition: gls_map_view.h:173
void GeoCoordToLogical(const GeoCoord &geo, Vector *logical) const
Definition: gls_map_view.h:213
GlsMapView * GetParentMapView(DisplayObject *obj)
Definition: gls_map_view.h:290
void SetProjectionType(ProjectionType value)
GeoCoord ViewLocation()
Definition: gls_map_view.h:153
void MapCenterOffset(const Vector &value)
virtual DisplayObject * CloneObject(bool generateNames=false)
virtual DisplayObject * Pick3D(const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices)
DisplayObject * GetBackgroundObject()
Definition: gls_map_view.h:192
void CalcGeoToLogicalMatrix() const
virtual void CopyProperties(DisplayObject *src)
virtual void SetAvailableAttributes(unsigned int value)
Definition: bmpimage.h:46