#ifndef GEOCOMPUTATION_H #define GEOCOMPUTATION_H #include "qpoint.h" #include #include "Map/UGMap.h" #include "Geometry/UGGeoLine.h" #include "Geometry3D/UGGeoLine3D.h" #include "geospatialanalysis.h" using namespace UGC; class GeoComputation { public: GeoComputation(); //计算两点间球面距离 double getSphericalDistance(double lon1, double lat1,double lon2, double lat2); //根据起始点、距离、方向角计算目标点坐标 QPointF getDestinationPoint(double lon1, double lat1, double bearing, double dist); QPointF computeOffsetGeoPosition(double lon1, double lat1, double bearing, double dist); UGPoint2D DPtoMP(UGMap* pMap, const QPoint &point); //显示坐标转地图坐标 //获取几何对象长度 double getGeometryLength(UGGeometry* geometry); //计算高度余量 void getAlititudeDiff(UGGeoLine3D line3D,UGDatasetRasterPtr dem,QVector& x_dist,QVector& z_diff); private: GeoSpatialAnalysis geoAnalysisMag; }; #endif // GEOCOMPUTATION_H