![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtWktHeaderParser.h,v $ $Revision: 1.4 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #pragma once 00014 00015 #include <vrvTerrain/vrvTerrain.h> 00016 #include <vrvCore/DtHeaderParser.h> 00017 00018 class OGRSpatialReference; 00019 00020 namespace makVrv 00021 { 00025 class DT_DLL_VRVTERRAIN DtWktHeaderParser : public DtHeaderParser 00026 { 00027 00028 public: 00029 00031 DtWktHeaderParser(const std::string& filePath); 00032 00034 virtual ~DtWktHeaderParser(); 00035 00038 virtual bool isValid(); 00039 00040 protected: 00041 00044 virtual bool getWktString(std::string& wktString); 00045 00048 virtual bool getOrigin(const std::string& originLabel, double& val); 00049 00052 virtual bool parseWktString( 00053 const std::string& wktString, double xOrigin, double yOrigin); 00054 00055 virtual bool parseGeocentric( 00056 const OGRSpatialReference& spatialRef, double xOrigin, double yOrigin); 00057 00058 virtual bool parseLambert( 00059 const OGRSpatialReference& spatialRef, double xOrigin, double yOrigin); 00060 00061 virtual bool parseUtm( 00062 const OGRSpatialReference& spatialRef, double xOrigin, double yOrigin); 00063 00064 virtual bool parseFlat( 00065 const OGRSpatialReference& spatialRef, double xOrigin, double yOrigin); 00066 00069 virtual bool convertCoordinates( 00070 const OGRSpatialReference& spatialRef, 00071 double x, double y, double& convX, double& convY, bool inDegrees); 00072 00075 virtual bool usingDegrees(const OGRSpatialReference& spatialRef); 00076 }; 00077 00080 class DT_DLL_VRVTERRAIN DtWktHeaderParserCreator : public DtHeaderParserCreator 00081 { 00082 public: 00083 00085 DtWktHeaderParserCreator(); 00086 00088 virtual ~DtWktHeaderParserCreator(); 00089 00091 virtual DtHeaderParser* create(DtDe& de, const std::string& filePath) const; 00092 00093 }; 00094 } 00095