CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
DbGeoData.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2022 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24
25#ifndef _ODDB_GEODATA_INCLUDED_
26#define _ODDB_GEODATA_INCLUDED_
27
28#include "TD_PackPush.h"
29
30#include "DbObject.h"
32
39{
40public:
46
51 {
52 kCoordTypUnknown = 0, // Unknown
53 kCoordTypLocal, // Local grid
54 kCoordTypGrid, // Projected grid
55 kCoordTypGeographic // Geographic (latitude/longitude)
56 };
57
62 {
63 kScaleEstMethodUnity = 1, // Unity
64 kScaleEstMethodUserDefined, // User defined scale factor
65 kScaleEstMethodReferencePoint, // Grid scale at reference point
66 kScaleEstMethodPrismoidal // Prismoidal
67 };
68
73
80
93
100
112
128
138
150
156
168
178 double horizontalUnitScale() const;
186
193 OdResult setHorizontalUnitScale(double horzUnitScale);
194
201
208 double verticalUnitScale() const;
222 OdResult setVerticalUnitScale(double vertUnitScale);
229
248
252 double northDirection() const;
266
277
284 double scaleFactor() const;
294
313 OdResult setDoSeaLevelCorrection(bool seaLevelCorrectionOn);
314
318 double seaLevelElevation() const;
325
341
357
368
379
390
401
448
461 OdResult getMeshFace(OdInt32 faceIndex, OdInt32 & p0, OdInt32 & p1, OdInt32 & p2) const;
471
473 OdDbDwgFiler* pFiler);
474
475 virtual void dwgOutFields(
476 OdDbDwgFiler* pFiler) const;
477
479 OdDbDxfFiler* pFiler);
480
481 virtual void dxfOutFields(
482 OdDbDxfFiler* pFiler) const;
483
510 OdResult transformToLonLatAlt(double x, double y, double z, double& lon, double& lat, double& alt) const;
511
538 OdResult transformFromLonLatAlt(double lon, double lat, double alt, double& x, double& y, double& z) const;
539
546
547 //DOM-IGNORE-BEGIN
548 //For internal use only:
557 //DOM-IGNORE-END
558};
559
560//GLOBAL API FUNCTIONS
570
571TOOLKIT_EXPORT OdResult oddbGetGeoDataTransform(const OdDbDatabase* pDbSource, const OdDbDatabase* pDbTarget, OdGePoint3d& pt, double& dRotation, double& dScale);
572
577
578#include "TD_PackPop.h"
579
580#endif //_ODDB_GEODATA_INCLUDED_
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
TOOLKIT_EXPORT OdResult oddbGetGeoDataObjId(const OdDbDatabase *pDb, OdDbObjectId &objId)
OdSmartPtr< OdDbGeoData > OdDbGeoDataPtr
Definition: DbGeoData.h:576
TOOLKIT_EXPORT OdResult oddbGetGeoDataTransform(const OdDbDatabase *pDbSource, const OdDbDatabase *pDbTarget, OdGePoint3d &pt, double &dRotation, double &dScale)
alt
Definition: DimVarDefs.h:165
int OdInt32
OdResult
Definition: OdResult.h:29
OdResult setVerticalUnits(OdDb::UnitsValue vertUnits)
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
OdGeVector2d northDirectionVector() const
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
double seaLevelElevation() const
double horizontalUnitScale() const
OdResult meshTransformToLLA(const OdGePoint2d &ptIn, OdGePoint2d &ptOut) const
OdResult setHorizontalUnitScale(double horzUnitScale)
const OdGeMatrix3d & getMatrixLocalFromLLA() const
OdResult getMeshPointMaps(OdGePoint2dArray &srcPts, OdGePoint2dArray &dstPts) const
double northDirection() const
OdResult transformFromLonLatAlt(const OdGePoint3d &geoPt, OdGePoint3d &dwgPt) const
ScaleEstimationMethod
Definition: DbGeoData.h:62
@ kScaleEstMethodReferencePoint
Definition: DbGeoData.h:65
@ kScaleEstMethodUserDefined
Definition: DbGeoData.h:64
OdString geoRSSTag() const
OdResult updateTransformationMatrix()
const OdGeMatrix3d & getMatrixToLLA() const
OdGePoint3d designPoint() const
OdResult transformToLonLatAlt(double x, double y, double z, double &lon, double &lat, double &alt) const
OdResult setSeaLevelElevation(double value)
OdResult setCoordinateType(TypeOfCoordinates designCoordinateType)
OdGeVector3d upDirection() const
OdResult setGeoRSSTag(const OdString &rssTag)
OdResult setCoordinateSystem(const OdString &coordSystem)
OdString observationFrom() const
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
OdResult eraseFromDb()
OdResult resetMeshPointMaps()
OdString observationCoverage() const
OdString observationTo() const
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
OdResult setScaleEstimationMethod(ScaleEstimationMethod value)
OdResult setReferencePoint(const OdGePoint3d &point)
double coordinateProjectionRadius() const
double verticalUnitScale() const
OdResult meshTransformFromLLA(const OdGePoint2d &ptIn, OdGePoint2d &ptOut) const
@ kCoordTypLocal
Definition: DbGeoData.h:53
@ kCoordTypGrid
Definition: DbGeoData.h:54
OdDb::UnitsValue verticalUnits() const
OdString coordinateSystem() const
OdResult setDoSeaLevelCorrection(bool seaLevelCorrectionOn)
OdResult addMeshFace(OdInt32 faceIndex, OdInt32 p0, OdInt32 p1, OdInt32 p2)
OdInt32 numMeshPoints() const
double scaleFactor() const
OdResult getSimpleTransformerToLLA(OdDbGeoCoordinateSystemTransformerPtr &pTransformer) const
OdResult setNorthDirectionVector(const OdGeVector2d &north)
OdResult setObservationTo(const OdString &to)
OdDbObjectId blockTableRecordId() const
OdResult setObservationFrom(const OdString &from)
OdResult postToDb(OdDbObjectId &objId)
OdDb::UnitsValue horizontalUnits() const
OdResult addMeshPointMap(OdInt32 index, const OdGePoint2d &srcPt, const OdGePoint2d &dstPt)
OdResult getSimpleTransformerFromLLA(OdDbGeoCoordinateSystemTransformerPtr &pTransformer) const
OdInt32 numMeshFaces() const
OdResult setScaleFactor(double value)
OdGePoint3d referencePoint() const
OdResult transformFromLonLatAlt(double lon, double lat, double alt, double &x, double &y, double &z) const
OdResult setObservationCoverage(const OdString &coverage)
OdResult setUpDirection(const OdGeVector3d &vec)
ScaleEstimationMethod scaleEstimationMethod() const
OdResult setCoordinateProjectionRadius(double value)
OdResult transformToLonLatAlt(const OdGePoint3d &dwgPt, OdGePoint3d &geoPt) const
ODDB_DECLARE_MEMBERS(OdDbGeoData)
bool doSeaLevelCorrection() const
OdResult setHorizontalUnits(OdDb::UnitsValue horizUnits)
OdResult setVerticalUnitScale(double vertUnitScale)
const OdGeMatrix3d & getMatrixLocalToLLA() const
OdResult getMeshFace(OdInt32 faceIndex, OdInt32 &p0, OdInt32 &p1, OdInt32 &p2) const
TypeOfCoordinates coordinateType() const
const OdGeMatrix3d & getMatrixFromLLA() const
OdResult setDesignPoint(const OdGePoint3d &point)
OdResult getMeshPointMap(OdInt32 index, OdGePoint2d &srcPt, OdGePoint2d &dstPt) const
OdResult setMeshPointMaps(const OdGePoint2dArray &srcPts, const OdGePoint2dArray &dstPts)
OdResult setBlockTableRecordId(const OdDbObjectId &blockId)
GLfloat GLfloat GLfloat z
Definition: gles2_ext.h:318
GLuint index
Definition: gles2_ext.h:265
GLfloat x
Definition: gles2_ext.h:314
GLfloat GLfloat y
Definition: gles2_ext.h:316
GLsizei const GLfloat * value
Definition: gles2_ext.h:302
UnitsValue
Definition: OdaDefs.h:451