/// <summary> /// 由圆创建球面折线 /// </summary> /// <param name="centerLon">圆心经度(度)</param> /// <param name="centerLat">圆心纬度(度)</param> /// <param name="radius">半径(米)</param> /// <returns></returns> public EarthView.World.Spatial.Geometry.LineString CreateFromCircle(double centerLon, double centerLat, double radius) { IntPtr __ptr = EarthView_World_Spatial_Geometry_CSphereGeometryFactory_createFromCircle_CLineString_ev_real64_ev_real64_ev_real64(this.NativeObject, centerLon, centerLat, radius); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Spatial.Geometry.LineString csObj = new EarthView.World.Spatial.Geometry.LineString(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "CLineString"); IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Spatial.Geometry.LineString; csObj.BindNativeObject(__ptr, "CLineString"); } return(csObj); }
/// <summary> /// 由点创建球面折线(暂未实现) /// </summary> /// <param name="points">点串</param> /// <param name="nCount">点数</param> /// <returns></returns> public EarthView.World.Spatial.Geometry.LineString CreateFromPoints(EarthView.World.Spatial.Geometry.Coordinate points, uint nCount) { IntPtr __ptr = EarthView_World_Spatial_Geometry_CSphereGeometryFactory_createFromPoints_CLineString_CCoordinate_ev_uint32(this.NativeObject, object.Equals(points, null) ? IntPtr.Zero : points.NativeObject, nCount); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Spatial.Geometry.LineString csObj = new EarthView.World.Spatial.Geometry.LineString(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "CLineString"); IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Spatial.Geometry.LineString; csObj.BindNativeObject(__ptr, "CLineString"); } return(csObj); }