BaseGeoCoord.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------------------+
2 |
3 | Supplied under applicable software license agreement.
4 |
5 | Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6 |
7 +---------------------------------------------------------------------------------------*/
8 #pragma once
9 #include <Geom\GeomApi.h>
10 #include "BaseGeoDefs.r.h"
11 
12 typedef struct cs_Csprm_ CSParameters;
13 
14 #if defined (CREATE_STATIC_LIBRARIES)
15  #undef BASEGEOCOORD_EXPORTED
16  #define BASEGEOCOORD_EXPORTED
17  #undef BASEMANAGEDGCS_EXPORTED
18  #define BASEMANAGEDGCS_EXPORTED
19 #else
20 #if defined (__BASEGEOCOORD_BUILD__) && !defined (__BASEMANAGEDGCS_BUILD__)
21 # define BASEGEOCOORD_EXPORTED __declspec(dllexport)
22 #else
23 # define BASEGEOCOORD_EXPORTED __declspec(dllimport)
24 #endif
25 
26 #if defined (__BASEMANAGEDGCS_BUILD__)
27 # define BASEMANAGEDGCS_EXPORTED __declspec(dllexport)
28 #else
29 # define BASEMANAGEDGCS_EXPORTED __declspec(dllimport)
30 #endif
31 #endif
32 
33 #include <Bentley\Bentley.h>
34 #include <Bentley\WString.h>
35 #include <Bentley\RefCounted.h>
36 #include <Bentley\bvector.h>
37 
38 struct IGeoTiffKeysList;
39 
41 
42 namespace GeoCoordinates {
43 
44 enum VertDatumCode;
45 enum WGS84ConvertCode;
46 
47 typedef struct Library* LibraryP;
48 
49 
50 /*=================================================================================**/
89 #if defined (_MANAGED)
90 #define MPUBLIC public
91 #else
92 #define MPUBLIC
93 #endif
94 
95 typedef class BaseGCS* BaseGCSP;
96 typedef class BaseGCS const* BaseGCSCP;
97 typedef class BaseGCS& BaseGCSR;
98 typedef class BaseGCS const& BaseGCSCR;
100 
101 typedef class LocalTransformer* LocalTransformerP;
102 typedef class LocalTransformer const* LocalTransformerCP;
104 
105 typedef class DatumConverter* DatumConverterP;
106 
107 
108 /*=================================================================================**/
133 {
134 private:
135  virtual void MakeClassAbstract() = 0;
136 public:
137 public:
138 
139 /*---------------------------------------------------------------------------------**/
145 BASEGEOCOORD_EXPORTED static BaseGCSPtr CreateGCS ();
146 
147 /*---------------------------------------------------------------------------------**/
154 BASEGEOCOORD_EXPORTED static BaseGCSPtr CreateGCS (WCharCP coordinateSystemKeyName);
155 
156 /*---------------------------------------------------------------------------------**/
160 BASEGEOCOORD_EXPORTED static BaseGCSPtr CreateGCS (BaseGCSCR baseGcs);
161 
162 /*---------------------------------------------------------------------------------**/
182 BASEGEOCOORD_EXPORTED StatusInt InitAzimuthalEqualArea
183 (
184 WStringP errorMsg,
185 WCharCP datumName,
186 WCharCP unitName,
187 double originLongitude,
188 double originLatitude,
189 double azimuthAngle,
190 double scale,
191 double falseEasting,
192 double falseNorthing,
193 int quadrant
194 );
195 
196 /*---------------------------------------------------------------------------------**/
211 (
212 WStringP errorMsg,
213 WCharCP datumName, // Datum
214 WCharCP ellipsoidName, // only if datum is NULL.
215 WCharCP unitName, // usually "DEGREE"
216 double originLongitude, // displacement from Greenwich
217 double originLatitude // displacement from Greenwich
218 );
219 
220 
222  {
223  wktFlavorOGC = 1, // Open Geospatial Consortium flavor
224  wktFlavorGeoTiff = 2, // GeoTiff flavor.
225  wktFlavorESRI = 3, // ESRI flavor.
226  wktFlavorOracle = 4, // Oracle flavor.
227  wktFlavorGeoTools = 5, // GeoTools flavor
228  wktFlavorEPSG = 6, // EPSG flavor
229  wktFlavorOracle9 = 7, // Oracle 9 flavor
230  wktFlavorAutodesk = 8, // Autodesk and default value since CSMAP was bought
231 
232  // Note concerning these last entries and specificaly wktFlavorUnknown
233  // The values for these used to be Unknown = 7 AppAlt = 8 and LclAlt = 9
234  // As the latter two were yet unsupported they cannot cause any issue but the
235  // Change for the Unknown may lead to a backward compatibily issue for libraries if additional
236  // values are added. Make sure these changes occur in between major versions only.
237  wktFlavorUnknown = 9, // used if the flavor is unknown. InitFromWellKnownText will do its best to figure it out.
238  wktFlavorAppAlt = 10, // Not yet supported
239  wktFlavorLclAlt = 11, // Not yet supported
240  };
241 
243  {
244  RangeTestOk = 0, // The points are within the useful range
245  RangeTestOutsideRange = 1, // one of more points outside the useful range of the coordinate system.
246  RangeTestOutsideMathDomain = 2, // one or more points outside the mathematical domain of the coordinate system.
247  };
248 
249 /*---------------------------------------------------------------------------------**/
259 BASEGEOCOORD_EXPORTED StatusInt InitFromWellKnownText
260 (
261 StatusInt* warning,
262 WStringP warningErrorMsg,
263 WktFlavor wktFlavor,
264 WCharCP wellKnownText
265 );
266 
267 /*---------------------------------------------------------------------------------**/
281 BASEGEOCOORD_EXPORTED StatusInt InitFromEPSGCode
282 (
283 StatusInt* warning,
284 WStringP warningErrorMsg,
285 int epsgCode
286 );
287 
288 /*---------------------------------------------------------------------------------**/
295 BASEGEOCOORD_EXPORTED StatusInt GetWellKnownText
296 (
297 WStringR wellKnownText,
298 WktFlavor wktFlavor
299 ) const;
300 
301 /*---------------------------------------------------------------------------------**/
310 BASEGEOCOORD_EXPORTED StatusInt GetCompoundCSWellKnownText
311 (
312 WStringR wellKnownText,
313 WktFlavor wktFlavor
314 ) const;
315 
316 /*---------------------------------------------------------------------------------**/
325 BASEGEOCOORD_EXPORTED StatusInt InitFromGeoTiffKeys
326 (
327 StatusInt* warning,
328 WStringP warningErrorMsg,
329 ::IGeoTiffKeysList* geoTiffKeys
330 );
331 
332 
333 /*---------------------------------------------------------------------------------**/
340 BASEGEOCOORD_EXPORTED StatusInt SetGeoTiffKeys
341 (
342 ::IGeoTiffKeysList* geoTiffKeys // The GeoTiff keys list.
343 ) const;
344 
345 /*---------------------------------------------------------------------------------**/
350 BASEGEOCOORD_EXPORTED bool CanSaveToGeoTiffKeys () const;
351 
352 
353 
354 /*---------------------------------------------------------------------------------**/
363 BASEGEOCOORD_EXPORTED bool IsValid() const;
364 
365 /*---------------------------------------------------------------------------------**/
370 BASEGEOCOORD_EXPORTED int GetError() const;
371 
372 /*---------------------------------------------------------------------------------**/
377 BASEGEOCOORD_EXPORTED WCharCP GetErrorMessage (WStringR errorMsg) const;
378 
379 /*---------------------------------------------------------------------------------**/
383 BASEGEOCOORD_EXPORTED static WCharCP GetErrorMessage (WStringR errorMsg, StatusInt errorCode);
384 
385 
386 /*---------------------------------------------------------------------------------**/
392 BASEGEOCOORD_EXPORTED bool Validate (T_WStringVector& errorList) const;
393 
394 /*---------------------------------------------------------------------------------**/
399 BASEGEOCOORD_EXPORTED bool IsStandard() const;
400 
401 /*---------------------------------------------------------------------------------**/
406 BASEGEOCOORD_EXPORTED WCharCP GetName() const;
407 
408 /*---------------------------------------------------------------------------------**/
414 
415 /*---------------------------------------------------------------------------------**/
420 BASEGEOCOORD_EXPORTED WCharCP GetDescription() const;
421 
422 /*---------------------------------------------------------------------------------**/
427 BASEGEOCOORD_EXPORTED StatusInt SetDescription (WCharCP description);
428 
429 /*---------------------------------------------------------------------------------**/
434 BASEGEOCOORD_EXPORTED WCharCP GetProjection() const;
435 
437  {
438  pcvInvalid = 0,
439  pcvUnity = 1,
440  pcvTransverseMercator = 3,
441  pcvAlbersEqualArea = 4,
442  pcvHotineObliqueMercator = 5,
443  pcvMercator = 6,
444  pcvLambertEquidistantAzimuthal = 7,
445  pcvLambertTangential = 8,
446  pcvAmericanPolyconic = 9,
447  pcvModifiedPolyconic = 10,
448  pcvLambertEqualAreaAzimuthal = 11,
449  pcvEquidistantConic = 12,
450  pcvMillerCylindrical = 13,
451  pcvModifiedStereographic = 15,
452  pcvNewZealandNationalGrid = 16,
453  pcvSinusoidal = 17,
454  pcvOrthographic = 18,
455  pcvGnomonic = 19,
456  pcvEquidistantCylindrical = 20,
457  pcvVanderGrinten = 21,
458  pcvCassini = 22,
459  pcvRobinsonCylindrical = 23,
460  pcvBonne = 24,
461  pcvEckertIV = 25,
462  pcvEckertVI = 26,
463  pcvMollweide = 27,
464  pcvGoodeHomolosine = 28,
465  pcvEqualAreaAuthalicNormal = 29,
466  pcvEqualAreaAuthalicTransverse = 30,
467  pcvBipolarObliqueConformalConic = 31,
468  pcvObliqueCylindricalSwiss = 32,
469  pcvPolarStereographic = 33,
470  pcvObliqueStereographic = 34,
471  pcvSnyderObliqueStereographic = 35,
472  pcvLambertConformalConicOneParallel = 36,
473  pcvLambertConformalConicTwoParallel = 37,
474  pcvLambertConformalConicBelgian = 38,
475  pcvLambertConformalConicWisconsin = 39,
476  pcvTransverseMercatorWisconsin = 40,
477  pcvLambertConformalConicMinnesota = 41,
478  pcvTransverseMercatorMinnesota = 42,
479  pcvSouthOrientedTransverseMercator = 43,
480  pcvUniversalTransverseMercator = 44,
481  pcvSnyderTransverseMercator = 45,
482  pcvGaussKrugerTranverseMercator = 46,
483  pcvCzechKrovak = 47,
484  pcvCzechKrovakObsolete = 48,
485  pcvMercatorScaleReduction = 49,
486  pcvObliqueConformalConic = 50,
487  pcvCzechKrovak95 = 51,
488  pcvCzechKrovak95Obsolete = 52,
489  pcvPolarStereographicStandardLatitude = 53,
490  pcvTransverseMercatorAffinePostProcess = 54,
491  pcvNonEarth = 55,
492  pcvObliqueCylindricalHungary = 56,
493  pcvTransverseMercatorDenmarkSys34 = 57,
494  pcvTransverseMercatorOstn97 = 58,
495  pcvAzimuthalEquidistantElevatedEllipsoid = 59,
496  pcvTransverseMercatorOstn02 = 60,
497  pcvTransverseMercatorDenmarkSys3499 = 61,
498  pcvTransverseMercatorKruger = 62,
499  pcvWinkelTripel = 63,
500  pcvNonEarthScaleRotation = 64,
501  pcvLambertConformalConicAffinePostProcess = 65,
502  pcvTransverseMercatorDenmarkSys3401 = 66,
503  pcvEquidistantCylindricalEllipsoid = 67,
504  pcvPlateCarree = 68,
505  pcvPopularVisualizationPseudoMercator = 69,
506  pcvLambertMichigan = 70,
507  pcvHotineObliqueMercator1UV = (pcvHotineObliqueMercator * 256) + 1,
508  pcvHotineObliqueMercator1XY = (pcvHotineObliqueMercator * 256) + 2,
509  pcvHotineObliqueMercator2UV = (pcvHotineObliqueMercator * 256) + 3,
510  pcvHotineObliqueMercator2XY = (pcvHotineObliqueMercator * 256) + 4,
511  pcvRectifiedSkewOrthomorphic = (pcvHotineObliqueMercator * 256) + 5,
512  pcvRectifiedSkewOrthomorphicCentered = (pcvHotineObliqueMercator * 256) + 6,
513  pcvRectifiedSkewOrthomorphicOrigin = (pcvHotineObliqueMercator * 256) + 7,
514  pcvTotalUniversalTransverseMercator = 490,
515  pcvTotalTransverseMercatorBF = 491,
516  pcvObliqueMercatorMinnesota = 492,
517  };
518 
519 /*---------------------------------------------------------------------------------**/
524 BASEGEOCOORD_EXPORTED ProjectionCodeValue GetProjectionCode() const;
525 
526 /*---------------------------------------------------------------------------------**/
531 BASEGEOCOORD_EXPORTED StatusInt SetProjectionCode (ProjectionCodeValue projectionCode);
532 
533 
534 /*---------------------------------------------------------------------------------**/
539 BASEGEOCOORD_EXPORTED WCharCP GetSource (WStringR source) const;
540 
541 /*---------------------------------------------------------------------------------**/
546 BASEGEOCOORD_EXPORTED StatusInt SetSource (WCharCP source);
547 
548 /*---------------------------------------------------------------------------------**/
553 BASEGEOCOORD_EXPORTED WCharCP GetUnits (WStringR units) const;
554 
555 /*---------------------------------------------------------------------------------**/
560 BASEGEOCOORD_EXPORTED int GetUnitCode() const;
561 
562 /*---------------------------------------------------------------------------------**/
568 BASEGEOCOORD_EXPORTED int GetEPSGUnitCode() const;
569 
570 /*---------------------------------------------------------------------------------**/
576 BASEGEOCOORD_EXPORTED StatusInt SetUnitCode (int code);
577 
578 /*---------------------------------------------------------------------------------**/
583 BASEGEOCOORD_EXPORTED WCharCP GetDatumName() const;
584 
585 /*---------------------------------------------------------------------------------**/
590 BASEGEOCOORD_EXPORTED int GetDatumCode() const;
591 
592 /*---------------------------------------------------------------------------------**/
598 BASEGEOCOORD_EXPORTED StatusInt SetDatumCode (int datumCode);
599 
600 /*---------------------------------------------------------------------------------**/
606 BASEGEOCOORD_EXPORTED WCharCP GetDatumDescription() const;
607 
608 /*---------------------------------------------------------------------------------**/
613 BASEGEOCOORD_EXPORTED WCharCP GetDatumSource (WStringR datumSource) const;
614 
615 /*---------------------------------------------------------------------------------**/
621 BASEGEOCOORD_EXPORTED WGS84ConvertCode GetDatumConvertMethod() const;
622 
623 /*---------------------------------------------------------------------------------**/
628 BASEGEOCOORD_EXPORTED void GetDatumDelta (DPoint3dR delta) const;
629 
630 /*---------------------------------------------------------------------------------**/
635 BASEGEOCOORD_EXPORTED void GetDatumRotation (DPoint3dR rotation) const;
636 
637 /*---------------------------------------------------------------------------------**/
642 BASEGEOCOORD_EXPORTED double GetDatumScale () const;
643 
644 /*---------------------------------------------------------------------------------**/
652 BASEGEOCOORD_EXPORTED bool DatumParametersValid (bool& deltaValid, bool& rotationValid, bool& scaleValid) const;
653 
654 /*---------------------------------------------------------------------------------**/
663 BASEGEOCOORD_EXPORTED WCharCP GetVerticalDatumName() const;
664 
665 
666 
667 
668 /*---------------------------------------------------------------------------------**/
676 BASEGEOCOORD_EXPORTED VertDatumCode GetVerticalDatumCode () const;
677 
678 /*---------------------------------------------------------------------------------**/
686 BASEGEOCOORD_EXPORTED StatusInt SetVerticalDatumCode (VertDatumCode);
687 
688 
689 /*---------------------------------------------------------------------------------**/
694 BASEGEOCOORD_EXPORTED WCharCP GetEllipsoidName() const;
695 
696 /*---------------------------------------------------------------------------------**/
701 BASEGEOCOORD_EXPORTED int GetEllipsoidCode() const;
702 
703 /*---------------------------------------------------------------------------------**/
711 BASEGEOCOORD_EXPORTED StatusInt SetEllipsoidCode (int ellipsoidCode);
712 
713 /*---------------------------------------------------------------------------------**/
718 BASEGEOCOORD_EXPORTED WCharCP GetEllipsoidDescription() const;
719 
720 /*---------------------------------------------------------------------------------**/
725 BASEGEOCOORD_EXPORTED WCharCP GetEllipsoidSource (WStringR ellipsoidSource) const;
726 
727 #if defined (DGNGEOORD_ONLY)
728 /*---------------------------------------------------------------------------------**/
733 BASEGEOCOORD_EXPORTED WCharCP GetDisplayName (WStringR displayName) const;
734 #endif
735 
736 /*---------------------------------------------------------------------------------**/
741 BASEGEOCOORD_EXPORTED double GetOriginLatitude() const;
742 
743 /*---------------------------------------------------------------------------------**/
748 BASEGEOCOORD_EXPORTED StatusInt SetOriginLatitude (double value);
749 
750 /*---------------------------------------------------------------------------------**/
755 BASEGEOCOORD_EXPORTED double GetOriginLongitude() const;
756 
757 /*---------------------------------------------------------------------------------**/
762 BASEGEOCOORD_EXPORTED StatusInt SetOriginLongitude (double value);
763 
764 /*---------------------------------------------------------------------------------**/
769 BASEGEOCOORD_EXPORTED double GetFalseEasting() const;
770 
771 /*---------------------------------------------------------------------------------**/
776 BASEGEOCOORD_EXPORTED StatusInt SetFalseEasting (double value);
777 
778 /*---------------------------------------------------------------------------------**/
783 BASEGEOCOORD_EXPORTED double GetFalseNorthing() const;
784 
785 /*---------------------------------------------------------------------------------**/
790 BASEGEOCOORD_EXPORTED StatusInt SetFalseNorthing (double value);
791 
792 /*---------------------------------------------------------------------------------**/
797 BASEGEOCOORD_EXPORTED double GetScaleReduction() const;
798 
799 /*---------------------------------------------------------------------------------**/
804 BASEGEOCOORD_EXPORTED StatusInt SetScaleReduction (double value);
805 
806 /*---------------------------------------------------------------------------------**/
811 BASEGEOCOORD_EXPORTED double GetEllipsoidPolarRadius() const;
812 
813 /*---------------------------------------------------------------------------------**/
818 BASEGEOCOORD_EXPORTED double GetEllipsoidEquatorialRadius() const;
819 
820 /*---------------------------------------------------------------------------------**/
825 BASEGEOCOORD_EXPORTED double GetEllipsoidEccentricity() const;
826 
827 /*---------------------------------------------------------------------------------**/
832 BASEGEOCOORD_EXPORTED double GetMinimumLongitude() const;
833 
834 /*---------------------------------------------------------------------------------**/
839 BASEGEOCOORD_EXPORTED StatusInt SetMinimumLongitude (double value);
840 
841 /*---------------------------------------------------------------------------------**/
846 BASEGEOCOORD_EXPORTED double GetMaximumLongitude() const;
847 
848 /*---------------------------------------------------------------------------------**/
853 BASEGEOCOORD_EXPORTED StatusInt SetMaximumLongitude (double value);
854 
855 /*---------------------------------------------------------------------------------**/
860 BASEGEOCOORD_EXPORTED double GetMinimumLatitude() const;
861 
862 /*---------------------------------------------------------------------------------**/
867 BASEGEOCOORD_EXPORTED StatusInt SetMinimumLatitude (double value);
868 
869 /*---------------------------------------------------------------------------------**/
874 BASEGEOCOORD_EXPORTED double GetMaximumLatitude() const;
875 
876 /*---------------------------------------------------------------------------------**/
881 BASEGEOCOORD_EXPORTED StatusInt SetMaximumLatitude (double value);
882 
883 
884 /*---------------------------------------------------------------------------------**/
891 BASEGEOCOORD_EXPORTED double GetMinimumUsefulLongitude() const;
892 
893 /*---------------------------------------------------------------------------------**/
900 BASEGEOCOORD_EXPORTED double GetMaximumUsefulLongitude() const;
901 
902 /*---------------------------------------------------------------------------------**/
909 BASEGEOCOORD_EXPORTED double GetMinimumUsefulLatitude() const;
910 
911 /*---------------------------------------------------------------------------------**/
918 BASEGEOCOORD_EXPORTED double GetMaximumUsefulLatitude() const;
919 
920 
921 /*---------------------------------------------------------------------------------**/
926 BASEGEOCOORD_EXPORTED double GetStandardParallel1() const;
927 
928 /*---------------------------------------------------------------------------------**/
933 BASEGEOCOORD_EXPORTED StatusInt SetStandardParallel1 (double value);
934 
935 /*---------------------------------------------------------------------------------**/
940 BASEGEOCOORD_EXPORTED double GetStandardParallel2() const;
941 
942 /*---------------------------------------------------------------------------------**/
947 BASEGEOCOORD_EXPORTED StatusInt SetStandardParallel2 (double value);
948 
949 /*---------------------------------------------------------------------------------**/
954 BASEGEOCOORD_EXPORTED double GetAzimuth() const;
955 
956 /*---------------------------------------------------------------------------------**/
961 BASEGEOCOORD_EXPORTED StatusInt SetAzimuth (double value);
962 
963 /*---------------------------------------------------------------------------------**/
968 BASEGEOCOORD_EXPORTED double GetCentralMeridian() const;
969 
970 /*---------------------------------------------------------------------------------**/
975 BASEGEOCOORD_EXPORTED StatusInt SetCentralMeridian (double value);
976 
977 /*---------------------------------------------------------------------------------**/
982 BASEGEOCOORD_EXPORTED double GetEasternMeridian() const;
983 
984 /*---------------------------------------------------------------------------------**/
989 BASEGEOCOORD_EXPORTED StatusInt SetEasternMeridian (double value);
990 
991 /*---------------------------------------------------------------------------------**/
996 BASEGEOCOORD_EXPORTED double GetCentralPointLongitude() const;
997 
998 /*---------------------------------------------------------------------------------**/
1003 BASEGEOCOORD_EXPORTED StatusInt SetCentralPointLongitude (double value);
1004 
1005 /*---------------------------------------------------------------------------------**/
1010 BASEGEOCOORD_EXPORTED double GetCentralPointLatitude() const;
1011 
1012 /*---------------------------------------------------------------------------------**/
1017 BASEGEOCOORD_EXPORTED StatusInt SetCentralPointLatitude (double value);
1018 
1019 /*---------------------------------------------------------------------------------**/
1024 BASEGEOCOORD_EXPORTED double GetPoint1Longitude() const;
1025 
1026 /*---------------------------------------------------------------------------------**/
1031 BASEGEOCOORD_EXPORTED StatusInt SetPoint1Longitude (double value);
1032 
1033 /*---------------------------------------------------------------------------------**/
1038 BASEGEOCOORD_EXPORTED double GetPoint1Latitude() const;
1039 
1040 /*---------------------------------------------------------------------------------**/
1045 BASEGEOCOORD_EXPORTED StatusInt SetPoint1Latitude (double value);
1046 
1047 /*---------------------------------------------------------------------------------**/
1052 BASEGEOCOORD_EXPORTED double GetPoint2Longitude() const;
1053 
1054 /*---------------------------------------------------------------------------------**/
1059 BASEGEOCOORD_EXPORTED StatusInt SetPoint2Longitude (double value);
1060 
1061 /*---------------------------------------------------------------------------------**/
1066 BASEGEOCOORD_EXPORTED double GetPoint2Latitude() const;
1067 
1068 /*---------------------------------------------------------------------------------**/
1073 BASEGEOCOORD_EXPORTED StatusInt SetPoint2Latitude (double value);
1074 
1075 /*---------------------------------------------------------------------------------**/
1080 BASEGEOCOORD_EXPORTED double GetGeoidSeparation() const;
1081 
1082 /*---------------------------------------------------------------------------------**/
1087 BASEGEOCOORD_EXPORTED StatusInt SetGeoidSeparation (double value);
1088 
1089 /*---------------------------------------------------------------------------------**/
1094 BASEGEOCOORD_EXPORTED double GetElevationAboveGeoid() const;
1095 
1096 /*---------------------------------------------------------------------------------**/
1101 BASEGEOCOORD_EXPORTED StatusInt SetElevationAboveGeoid (double value);
1102 
1103 /*---------------------------------------------------------------------------------**/
1108 BASEGEOCOORD_EXPORTED double GetEllipsoidScaleFactor() const;
1109 
1110 /*---------------------------------------------------------------------------------**/
1116 BASEGEOCOORD_EXPORTED StatusInt SetEllipsoidScaleFactor (double value);
1117 
1118 /*---------------------------------------------------------------------------------**/
1123 BASEGEOCOORD_EXPORTED int GetUTMZone() const;
1124 
1125 /*---------------------------------------------------------------------------------**/
1130 BASEGEOCOORD_EXPORTED StatusInt SetUTMZone (int value);
1131 
1132 /*---------------------------------------------------------------------------------**/
1137 BASEGEOCOORD_EXPORTED int GetHemisphere() const;
1138 
1139 /*---------------------------------------------------------------------------------**/
1144 BASEGEOCOORD_EXPORTED StatusInt SetHemisphere (int value);
1145 
1146 /*---------------------------------------------------------------------------------**/
1151 BASEGEOCOORD_EXPORTED int GetQuadrant() const;
1152 
1153 /*---------------------------------------------------------------------------------**/
1158 BASEGEOCOORD_EXPORTED StatusInt SetQuadrant (short value);
1159 
1160 /*---------------------------------------------------------------------------------**/
1165 BASEGEOCOORD_EXPORTED int GetDanishSys34Region() const;
1166 
1167 /*---------------------------------------------------------------------------------**/
1172 BASEGEOCOORD_EXPORTED StatusInt SetDanishSys34Region (int value);
1173 
1174 /*---------------------------------------------------------------------------------**/
1179 BASEGEOCOORD_EXPORTED double GetAffineA0() const;
1180 
1181 /*---------------------------------------------------------------------------------**/
1186 BASEGEOCOORD_EXPORTED StatusInt SetAffineA0 (double value);
1187 
1188 /*---------------------------------------------------------------------------------**/
1193 BASEGEOCOORD_EXPORTED double GetAffineA1() const;
1194 
1195 /*---------------------------------------------------------------------------------**/
1200 BASEGEOCOORD_EXPORTED StatusInt SetAffineA1 (double value);
1201 
1202 /*---------------------------------------------------------------------------------**/
1207 BASEGEOCOORD_EXPORTED double GetAffineA2() const;
1208 
1209 /*---------------------------------------------------------------------------------**/
1214 BASEGEOCOORD_EXPORTED StatusInt SetAffineA2 (double value);
1215 
1216 /*---------------------------------------------------------------------------------**/
1221 BASEGEOCOORD_EXPORTED double GetAffineB0() const;
1222 
1223 /*---------------------------------------------------------------------------------**/
1228 BASEGEOCOORD_EXPORTED StatusInt SetAffineB0 (double value);
1229 
1230 /*---------------------------------------------------------------------------------**/
1235 BASEGEOCOORD_EXPORTED double GetAffineB1() const;
1236 
1237 /*---------------------------------------------------------------------------------**/
1242 BASEGEOCOORD_EXPORTED StatusInt SetAffineB1 (double value);
1243 
1244 /*---------------------------------------------------------------------------------**/
1249 BASEGEOCOORD_EXPORTED double GetAffineB2() const;
1250 
1251 /*---------------------------------------------------------------------------------**/
1256 BASEGEOCOORD_EXPORTED StatusInt SetAffineB2 (double value);
1257 
1258 /*---------------------------------------------------------------------------------**/
1271 BASEGEOCOORD_EXPORTED void GetAffineParameters (double* A0, double* A1, double* A2, double* B0, double* B1, double* B2) const;
1272 
1273 /*---------------------------------------------------------------------------------**/
1291 BASEGEOCOORD_EXPORTED StatusInt SetAffineParameters (double A0, double A1, double A2, double B0, double B1, double B2);
1292 
1293 /*---------------------------------------------------------------------------------**/
1299 BASEGEOCOORD_EXPORTED StatusInt DefinitionComplete ();
1300 
1301 
1302 
1303 /*---------------------------------------------------------------------------------**/
1309 BASEGEOCOORD_EXPORTED static T_WStringVector* GetLinearUnitNames ();
1310 /*---------------------------------------------------------------------------------**/
1315 BASEGEOCOORD_EXPORTED static T_WStringVector* GetUnitNames ();
1316 
1317 /*---------------------------------------------------------------------------------**/
1322 BASEGEOCOORD_EXPORTED static T_WStringVector* GetDatumNames ();
1323 
1324 /*---------------------------------------------------------------------------------**/
1329 BASEGEOCOORD_EXPORTED static T_WStringVector* GetEllipsoidNames ();
1330 
1331 /*---------------------------------------------------------------------------------**/
1340 BASEGEOCOORD_EXPORTED double GetScaleAlongMeridian
1341 (
1342 GeoPointCR point
1343 ) const;
1344 
1345 /*---------------------------------------------------------------------------------**/
1354 BASEGEOCOORD_EXPORTED double GetScaleAlongParallel
1355 (
1356 GeoPointCR point
1357 ) const;
1358 
1359 /*---------------------------------------------------------------------------------**/
1372 BASEGEOCOORD_EXPORTED double GetGridScale
1373 (
1374 GeoPointCR point
1375 ) const;
1376 
1377 /*---------------------------------------------------------------------------------**/
1383 BASEGEOCOORD_EXPORTED double GetConvergenceAngle
1384 (
1385 GeoPointCR point
1386 ) const;
1387 
1388 /*---------------------------------------------------------------------------------**/
1398 BASEGEOCOORD_EXPORTED StatusInt GetDistance
1399 (
1400 double *distance,
1401 double *azimuth,
1402 GeoPointCR startPoint,
1403 GeoPointCR endPoint
1404 ) const;
1405 
1406 /*---------------------------------------------------------------------------------**/
1413 BASEGEOCOORD_EXPORTED StatusInt GetCenterPoint
1414 (
1415 GeoPointR centerPoint
1416 ) const;
1417 
1418 /*---------------------------------------------------------------------------------**/
1424 BASEGEOCOORD_EXPORTED bool IsEquivalent
1425 (
1426 BaseGCSCR compareTo
1427 ) const;
1428 
1429 /*---------------------------------------------------------------------------------**/
1442 BASEGEOCOORD_EXPORTED bool Compare (BaseGCSCR compareTo, bool& datumDifferent, bool& csDifferent, bool& verticalDatumDifferent, bool& localTransformDifferent, bool stopFirstDifference) const;
1443 
1444 #ifdef DICTIONARY_MANAGEMENT_ONLY
1445 /*---------------------------------------------------------------------------------**/
1451 BASEGEOCOORD_EXPORTED StatusInt OutputAsASC
1452 (
1453 WStringR GCSAsASC
1454 ) const;
1455 #endif
1456 
1457 
1458 
1459 /*---------------------------------------------------------------------------------**/
1465 BASEGEOCOORD_EXPORTED bool HasEquivalentDatum
1466 (
1467 BaseGCSCR compareTo
1468 ) const;
1469 
1470 /*---------------------------------------------------------------------------------**/
1477 BASEGEOCOORD_EXPORTED int GetEPSGCode
1478 (
1479 bool noSearch = false
1480 ) const;
1481 
1482 /*---------------------------------------------------------------------------------**/
1489 BASEGEOCOORD_EXPORTED int GetEPSGDatumCode
1490 (
1491 bool noSearch = false
1492 ) const;
1493 
1494 /*---------------------------------------------------------------------------------**/
1502 BASEGEOCOORD_EXPORTED int GetEPSGEllipsoidCode
1503 (
1504 bool noSearch = false
1505 ) const;
1506 
1507 
1508 /*---------------------------------------------------------------------------------**/
1514 BASEGEOCOORD_EXPORTED ReprojectStatus CartesianFromLatLong
1515 (
1516 DPoint3dR outCartesian, // <= cartesian coordinates in this GCS
1517 GeoPointCR inLatLong // => latitude longitude in this GCS
1518 ) const;
1519 
1520 /*---------------------------------------------------------------------------------**/
1526 BASEGEOCOORD_EXPORTED ReprojectStatus CartesianFromLatLong2D
1527 (
1528 DPoint2dR outCartesian, // <= cartesian coordinates in this GCS
1529 GeoPoint2dCR inLatLong // => latitude longitude in this GCS
1530 ) const;
1531 
1532 /*---------------------------------------------------------------------------------**/
1538 BASEGEOCOORD_EXPORTED ReprojectStatus LatLongFromCartesian
1539 (
1540 GeoPointR outLatLong, // <= latitude longitude in this GCS
1541 DPoint3dCR inCartesian // => cartesian coordinates in this GCS
1542 ) const;
1543 
1544 /*---------------------------------------------------------------------------------**/
1550 BASEGEOCOORD_EXPORTED ReprojectStatus LatLongFromCartesian2D
1551 (
1552 GeoPoint2dR outLatLong, // <= latitude longitude in this GCS
1553 DPoint2dCR inCartesian // => cartesian coordinates in this GCS
1554 ) const;
1555 
1556 /*---------------------------------------------------------------------------------**/
1561 BASEGEOCOORD_EXPORTED double UnitsFromMeters
1562 (
1563 ) const;
1564 
1565 /*---------------------------------------------------------------------------------**/
1571 BASEGEOCOORD_EXPORTED RangeTestResult CheckGeoPointRange
1572 (
1573 GeoPointCR points,
1574 int numPoints
1575 ) const;
1576 
1577 /*---------------------------------------------------------------------------------**/
1584 BASEGEOCOORD_EXPORTED RangeTestResult CheckCartesianRange
1585 (
1586 DPoint3dCR points,
1587 int numPoints
1588 ) const;
1589 
1590 
1591 /*---------------------------------------------------------------------------------**/
1600 BASEGEOCOORD_EXPORTED bool SetReprojectElevation (bool value);
1601 
1602 /*---------------------------------------------------------------------------------**/
1610 BASEGEOCOORD_EXPORTED bool GetReprojectElevation () const;
1611 
1612 /*---------------------------------------------------------------------------------**/
1619 BASEGEOCOORD_EXPORTED ReprojectStatus LatLongFromLatLong
1620 (
1621 GeoPointR outLatLong,
1622 GeoPointCR inLatLong,
1623 BaseGCSCR destGCS
1624 ) const;
1625 
1626 /*---------------------------------------------------------------------------------**/
1633 BASEGEOCOORD_EXPORTED ReprojectStatus LatLongFromLatLong2D
1634 (
1635 GeoPoint2dR outLatLong,
1636 GeoPoint2dCR inLatLong,
1637 BaseGCSCR destGCS
1638 ) const;
1639 
1640 /*---------------------------------------------------------------------------------**/
1646 BASEGEOCOORD_EXPORTED static double RadiansFromDegrees
1647 (
1648 double inDegrees
1649 );
1650 
1651 /*---------------------------------------------------------------------------------**/
1657 BASEGEOCOORD_EXPORTED static double DegreesFromRadians
1658 (
1659 double inRadians
1660 );
1661 
1662 /*---------------------------------------------------------------------------------**/
1669 (
1670 GeoPointR outLatLong,
1671 DPoint3dCR inXYZ
1672 ) const;
1673 
1674 /*---------------------------------------------------------------------------------**/
1681 (
1682 DPoint3dR outXYZ,
1683 GeoPointCR inLatLong
1684 ) const;
1685 
1686 };
1687 
1688 
1690  {
1691  vdcFromDatum = 0, // Vertical Datum implied by Datum
1692  vdcNGVD29 = 1, // Vertical Datum of 1929
1693  vdcNAVD88 = 2, // Vertical Datum of 1988.
1694  vdcGeoid = 3 // Other Geoid (indicates GeoidHeight.gdc catalog should be used)
1695  };
1696 
1698  {
1702  };
1703 
1704 class GroupEnumerator;
1705 class MemberEnumerator;
1706 /*=================================================================================**/
1717 {
1718 private:
1719  virtual void MakeClassAbstract() = 0;
1720 public:
1721 public:
1722 /*---------------------------------------------------------------------------------**/
1727 BASEGEOCOORD_EXPORTED WCharCP GetName();
1728 
1729 /*---------------------------------------------------------------------------------**/
1734 BASEGEOCOORD_EXPORTED WCharCP GetDescription();
1735 
1736 /*---------------------------------------------------------------------------------**/
1741 BASEGEOCOORD_EXPORTED MemberEnumerator* GetMemberEnumerator();
1742 
1743 /*---------------------------------------------------------------------------------**/
1748 BASEGEOCOORD_EXPORTED static GroupEnumerator* GetGroupEnumerator ();
1749 
1750 /*---------------------------------------------------------------------------------**/
1754 BASEGEOCOORD_EXPORTED void Destroy() const;
1755 
1756 };
1757 
1758 /*=================================================================================**/
1764 {
1765 private:
1766  virtual void MakeClassAbstract() = 0;
1767 public:
1768 public:
1769 /*---------------------------------------------------------------------------------**/
1774 BASEGEOCOORD_EXPORTED bool MoveNext();
1775 
1776 /*---------------------------------------------------------------------------------**/
1781 BASEGEOCOORD_EXPORTED Group* GetCurrent();
1782 
1783 /*---------------------------------------------------------------------------------**/
1787 BASEGEOCOORD_EXPORTED void Destroy () const;
1788 
1789 };
1790 
1791 /*=================================================================================**/
1795 {
1796 private:
1797  virtual void MakeClassAbstract() = 0;
1798 public:
1799 public:
1800 /*---------------------------------------------------------------------------------**/
1805 BASEGEOCOORD_EXPORTED bool MoveNext();
1806 
1807 /*---------------------------------------------------------------------------------**/
1812 BASEGEOCOORD_EXPORTED WCharCP GetCurrentGCSName();
1813 
1814 /*---------------------------------------------------------------------------------**/
1819 BASEGEOCOORD_EXPORTED WCharCP GetCurrentGCSDescription();
1820 
1821 /*---------------------------------------------------------------------------------**/
1825 BASEGEOCOORD_EXPORTED void Destroy () const;
1826 
1827 };
1828 
1830 typedef class Ellipsoid const* EllipsoidCP;
1831 typedef class Ellipsoid const& EllipsoidCR;
1832 
1833 /*=================================================================================**/
1839 {
1840 private:
1841  virtual void MakeClassAbstract() = 0;
1842 public:
1843 public:
1844 /*---------------------------------------------------------------------------------**/
1851 BASEGEOCOORD_EXPORTED static EllipsoidCP CreateEllipsoid (WCharCP keyName);
1852 
1853 /*---------------------------------------------------------------------------------**/
1860 BASEGEOCOORD_EXPORTED bool IsValid() const;
1861 
1862 /*---------------------------------------------------------------------------------**/
1867 BASEGEOCOORD_EXPORTED int GetError() const;
1868 
1869 /*---------------------------------------------------------------------------------**/
1874 BASEGEOCOORD_EXPORTED WCharCP GetErrorMessage (WStringR errorMsg) const;
1875 
1876 /*---------------------------------------------------------------------------------**/
1881 BASEGEOCOORD_EXPORTED WCharCP GetName() const;
1882 
1883 /*---------------------------------------------------------------------------------**/
1888 BASEGEOCOORD_EXPORTED StatusInt SetName (WCharCP value);
1889 
1890 /*---------------------------------------------------------------------------------**/
1895 BASEGEOCOORD_EXPORTED WCharCP GetDescription() const;
1896 
1897 /*---------------------------------------------------------------------------------**/
1902 BASEGEOCOORD_EXPORTED WCharCP GetSource (WStringR source) const;
1903 
1904 /*---------------------------------------------------------------------------------**/
1909 BASEGEOCOORD_EXPORTED double GetPolarRadius() const;
1910 
1911 /*---------------------------------------------------------------------------------**/
1916 BASEGEOCOORD_EXPORTED double GetEquatorialRadius() const;
1917 
1918 /*---------------------------------------------------------------------------------**/
1923 BASEGEOCOORD_EXPORTED double GetEccentricity() const;
1924 
1925 /*---------------------------------------------------------------------------------**/
1930 BASEGEOCOORD_EXPORTED int GetEPSGCode () const;
1931 
1932 
1933 /*---------------------------------------------------------------------------------**/
1937 BASEGEOCOORD_EXPORTED void Destroy() const;
1938 
1939 #ifdef DICTIONARY_MANAGEMENT_ONLY
1940 /*---------------------------------------------------------------------------------**/
1946 BASEGEOCOORD_EXPORTED StatusInt OutputAsASC
1947 (
1948 WStringR EllipsoidAsASC
1949 ) const;
1950 #endif
1951 
1952 /*---------------------------------------------------------------------------------**/
1957 BASEGEOCOORD_EXPORTED static EllipsoidEnumeratorP CreateEnumerator();
1958 
1959 };
1960 
1961 /*=================================================================================**/
1966 {
1967 private:
1968  virtual void MakeClassAbstract() = 0;
1969 public:
1970 public:
1971 /*---------------------------------------------------------------------------------**/
1976 BASEGEOCOORD_EXPORTED bool MoveNext();
1977 
1978 /*---------------------------------------------------------------------------------**/
1983 BASEGEOCOORD_EXPORTED EllipsoidCP GetCurrent();
1984 
1985 /*---------------------------------------------------------------------------------**/
1989 BASEGEOCOORD_EXPORTED void Destroy() const;
1990 
1991 };
1992 
1993 
1995  {
2024  // ConvertType_PLYCN = 28,
2025  ConvertType_MAXVALUE = 27, // the maximum allowable value.
2026  };
2027 
2028 
2030 typedef class Datum const* DatumCP;
2031 
2032 
2033 /*=================================================================================**/
2038 class Datum
2039 {
2040 private:
2041  virtual void MakeClassAbstract() = 0;
2042 public:
2043 public:
2044 /*---------------------------------------------------------------------------------**/
2051 BASEGEOCOORD_EXPORTED static DatumCP CreateDatum (WCharCP keyName);
2052 
2053 /*---------------------------------------------------------------------------------**/
2060 BASEGEOCOORD_EXPORTED bool IsValid() const;
2061 
2062 /*---------------------------------------------------------------------------------**/
2067 BASEGEOCOORD_EXPORTED int GetError() const;
2068 
2069 /*---------------------------------------------------------------------------------**/
2074 BASEGEOCOORD_EXPORTED WCharCP GetErrorMessage (WStringR errorMsg) const;
2075 
2076 /*---------------------------------------------------------------------------------**/
2081 BASEGEOCOORD_EXPORTED WCharCP GetName() const;
2082 
2083 /*---------------------------------------------------------------------------------**/
2088 BASEGEOCOORD_EXPORTED StatusInt SetName (WCharCP value);
2089 
2090 /*---------------------------------------------------------------------------------**/
2095 BASEGEOCOORD_EXPORTED WCharCP GetDescription() const;
2096 
2097 /*---------------------------------------------------------------------------------**/
2102 BASEGEOCOORD_EXPORTED StatusInt SetDescription (WCharCP value);
2103 
2104 /*---------------------------------------------------------------------------------**/
2109 BASEGEOCOORD_EXPORTED WCharCP GetSource (WStringR source) const;
2110 
2111 /*---------------------------------------------------------------------------------**/
2116 BASEGEOCOORD_EXPORTED StatusInt SetSource (WCharCP value);
2117 
2118 /*---------------------------------------------------------------------------------**/
2123 BASEGEOCOORD_EXPORTED WGS84ConvertCode GetConvertToWGS84MethodCode() const;
2124 
2125 /*---------------------------------------------------------------------------------**/
2130 BASEGEOCOORD_EXPORTED StatusInt SetConvertToWGS84MethodCode (WGS84ConvertCode value);
2131 
2132 /*---------------------------------------------------------------------------------**/
2137 BASEGEOCOORD_EXPORTED void GetDelta (DPoint3dR delta) const;
2138 
2139 /*---------------------------------------------------------------------------------**/
2145 BASEGEOCOORD_EXPORTED StatusInt SetDelta (DPoint3dCR delta);
2146 
2147 /*---------------------------------------------------------------------------------**/
2152 BASEGEOCOORD_EXPORTED void GetRotation (DPoint3dR rotation) const;
2153 
2154 /*---------------------------------------------------------------------------------**/
2160 BASEGEOCOORD_EXPORTED StatusInt SetRotation (DPoint3dCR rotation) ;
2161 
2162 /*---------------------------------------------------------------------------------**/
2167 BASEGEOCOORD_EXPORTED double GetScale () const;
2168 
2169 /*---------------------------------------------------------------------------------**/
2175 BASEGEOCOORD_EXPORTED StatusInt SetScale (double scalePPM);
2176 
2177 /*---------------------------------------------------------------------------------**/
2182 BASEGEOCOORD_EXPORTED int GetEPSGCode () const;
2183 
2184 /*---------------------------------------------------------------------------------**/
2189 BASEGEOCOORD_EXPORTED WCharCP GetEllipsoidName() const;
2190 
2191 /*---------------------------------------------------------------------------------**/
2196 BASEGEOCOORD_EXPORTED int GetEllipsoidCode() const;
2197 
2198 /*---------------------------------------------------------------------------------**/
2203 BASEGEOCOORD_EXPORTED StatusInt SetEllipsoidCode (int ellipsoidCode);
2204 
2205 /*---------------------------------------------------------------------------------**/
2210 BASEGEOCOORD_EXPORTED WCharCP GetEllipsoidDescription() const;
2211 
2212 /*---------------------------------------------------------------------------------**/
2217 BASEGEOCOORD_EXPORTED WCharCP GetEllipsoidSource (WStringR ellipsoidSource) const;
2218 
2219 /*---------------------------------------------------------------------------------**/
2224 BASEGEOCOORD_EXPORTED double GetEllipsoidPolarRadius() const;
2225 
2226 /*---------------------------------------------------------------------------------**/
2231 BASEGEOCOORD_EXPORTED double GetEllipsoidEquatorialRadius() const;
2232 
2233 /*---------------------------------------------------------------------------------**/
2238 BASEGEOCOORD_EXPORTED double GetEllipsoidEccentricity() const;
2239 
2240 /*---------------------------------------------------------------------------------**/
2245 BASEGEOCOORD_EXPORTED EllipsoidCP GetEllipsoid() const;
2246 
2247 /*---------------------------------------------------------------------------------**/
2254 BASEGEOCOORD_EXPORTED void ParametersValid (bool& deltaValid, bool& rotationValid, bool& scaleValid) const;
2255 
2256 
2257 /*---------------------------------------------------------------------------------**/
2261 BASEGEOCOORD_EXPORTED void Destroy() const;
2262 
2263 #ifdef DICTIONARY_MANAGEMENT_ONLY
2264 /*---------------------------------------------------------------------------------**/
2270 BASEGEOCOORD_EXPORTED StatusInt OutputAsASC
2271 (
2272 WStringR DatumAsASC
2273 ) const;
2274 #endif
2275 
2276 /*---------------------------------------------------------------------------------**/
2281 BASEGEOCOORD_EXPORTED static DatumEnumeratorP CreateEnumerator();
2282 
2283 };
2284 
2285 /*=================================================================================**/
2290 {
2291 private:
2292  virtual void MakeClassAbstract() = 0;
2293 public:
2294 public:
2295 /*---------------------------------------------------------------------------------**/
2300 BASEGEOCOORD_EXPORTED bool MoveNext();
2301 
2302 /*---------------------------------------------------------------------------------**/
2307 BASEGEOCOORD_EXPORTED DatumCP GetCurrent();
2308 
2309 /*---------------------------------------------------------------------------------**/
2313 BASEGEOCOORD_EXPORTED void Destroy() const;
2314 
2315 };
2316 
2317 
2318 } // ends GeoCoordinates namespace
2320 
2321 
Definition: BaseGeoCoord.h:2013
class BaseGCS * BaseGCSP
Definition: BaseGeoCoord.h:95
struct GeoPoint const & GeoPointCR
Definition: msgeomstructs_typedefs.h:137
WGS84ConvertCode
Definition: BaseGeoCoord.h:1994
struct GeoPoint2d const & GeoPoint2dCR
Definition: msgeomstructs_typedefs.h:138
Definition: BaseGeoCoord.h:2005
Definition of the globe as elliptical distortion of a sphere.
Definition: BaseGeoCoord.h:1838
class Ellipsoid const * EllipsoidCP
Definition: BaseGeoCoord.h:1830
class Datum const * DatumCP
Definition: BaseGeoCoord.h:2030
Definition: BaseGeoCoord.h:2014
Definition: BaseGeoCoord.h:1699
class DatumConverter * DatumConverterP
Definition: BaseGeoCoord.h:105
class EllipsoidEnumerator * EllipsoidEnumeratorP
Definition: BaseGeoCoord.h:1829
RefCountedPtr< BaseGCS > BaseGCSPtr
Definition: BaseGeoCoord.h:99
RefCountedPtr< LocalTransformer > LocalTransformerPtr
Definition: BaseGeoCoord.h:103
struct GeoPoint & GeoPointR
Definition: msgeomstructs_typedefs.h:137
Definition: BaseGeoCoord.h:2019
LocalTransformType
Definition: BaseGeoCoord.h:1697
Definition: BaseGeoCoord.h:2023
class LocalTransformer const * LocalTransformerCP
Definition: BaseGeoCoord.h:102
Member Enumerator class.
Definition: BaseGeoCoord.h:1794
class BaseGCS & BaseGCSR
Definition: BaseGeoCoord.h:97
Definition: BaseGeoCoord.h:2001
Definition: BaseGeoCoord.h:2020
RangeTestResult
Definition: BaseGeoCoord.h:242
Definition: BaseGeoCoord.h:1691
Definition: BaseGeoCoord.h:1692
Ellipsoid enumeration class.
Definition: BaseGeoCoord.h:1965
Definition: BaseGeoCoord.h:2010
Group Enumerator class.
Definition: BaseGeoCoord.h:1763
Datum enumeration class.
Definition: BaseGeoCoord.h:2289
Geographic coordinate systems Group class.
Definition: BaseGeoCoord.h:1716
Definition: BaseGeoCoord.h:1999
Definition: BaseGeoCoord.h:2007
Definition: BaseGeoCoord.h:2004
wchar_t const * WCharCP
Definition: Bentley.h:224
Position and orientation relative to a WGS84 Datum.
Definition: BaseGeoCoord.h:2038
#define BEGIN_BENTLEY_NAMESPACE
Definition: Bentley.r.h:24
ProjectionCodeValue
Definition: BaseGeoCoord.h:436
GeomApi: Bentley::Rounding, Bentley::ValueSizeSize, Bentley::OrderedValueSizeSize, Bentley::IGeometry, Bentley::OrderedIGeometryPtr, Bentley::pointList.
Definition: BaseGeoCoord.h:2000
3d point coordinates.
Definition: dpoint3d.h:19
bvector< WString > T_WStringVector
A bvector of WString objects, with allocations handled by the Bentley allocator (so it can be passed ...
Definition: WString.h:421
Definition: BaseGeoCoord.h:2009
Definition: BaseGeoCoord.h:2016
Definition: BaseGeoCoord.h:1996
Definition: BaseGeoCoord.h:2022
ReprojectStatus
Status values returned by GeoCoordinate System reproject methods, including Handler::_OnGeoCoordinate...
Definition: GeoPoint.h:44
A shared pointer template for reference-counted objects.
Definition: RefCounted.h:119
Definition: BaseGeoCoord.h:2006
Defines typedefs and constants that can be used across other namespaces. All Bentley-authored C++ sou...
class DatumEnumerator * DatumEnumeratorP
Definition: BaseGeoCoord.h:2029
struct DPoint2d const & DPoint2dCR
Definition: msgeomstructs_typedefs.h:78
Definition: BaseGeoCoord.h:2011
class BaseGCS const * BaseGCSCP
Definition: BaseGeoCoord.h:96
Definition: BaseGeoCoord.h:1700
Definition: BaseGeoCoord.h:1694
Definition: BaseGeoCoord.h:2021
Definition: BaseGeoCoord.h:1997
class LocalTransformer * LocalTransformerP
Definition: BaseGeoCoord.h:101
Definition: BaseGeoCoord.h:2003
int StatusInt
Definition: Bentley.h:222
Concrete class that can be used to implement the reference-counting pattern.
Definition: RefCounted.h:109
Definition: BaseGeoCoord.h:2018
Definition: BaseGeoCoord.h:2015
WktFlavor
Definition: BaseGeoCoord.h:221
VertDatumCode
Definition: BaseGeoCoord.h:1689
#define END_BENTLEY_NAMESPACE
Definition: Bentley.r.h:25
Geographic Coordinate System class.
Definition: BaseGeoCoord.h:132
struct cs_Csprm_ CSParameters
Definition: BaseGeoCoord.h:12
Definition: BaseGeoCoord.h:2017
struct DPoint3d const & DPoint3dCR
Definition: msgeomstructs_typedefs.h:79
struct GeoPoint2d & GeoPoint2dR
Definition: msgeomstructs_typedefs.h:138
struct Library * LibraryP
Definition: BaseGeoCoord.h:47
#define BASEGEOCOORD_EXPORTED
Definition: BaseGeoCoord.h:23
Definition: BaseGeoCoord.h:2008
#define MPUBLIC
Definition: BaseGeoCoord.h:92
Definition: BaseGeoCoord.h:1693
Definition: BaseGeoCoord.h:1998
class Ellipsoid const & EllipsoidCR
Definition: BaseGeoCoord.h:1831
Definition: BaseGeoCoord.h:2002
2d point coordinates.
Definition: dpoint2d.h:23
class BaseGCS const & BaseGCSCR
Definition: BaseGeoCoord.h:98
A string class that has many of the same capabilities as std::string, plus additional functions such ...
Definition: WString.h:51
Definition: BaseGeoCoord.h:2025
Definition: BaseGeoCoord.h:2012

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.