private void DrawCirle(Point3D mPoint3D) { try { GeoCircle3D m_circle3d = new GeoCircle3D(mPoint3D, mRemoveRadius); GeoModel3D m_model = m_circle3d.ConvertToGeoModel3D(true); mRec = m_model.Bounds; //设置数据集容量,避免空间查询出现过多对象 mUseData.OutWaterNetWork.Tolerance.NodeSnap = 0.0001; mUseData.SupplyWaterNetWork.Tolerance.NodeSnap = 0.0001; GeoStyle3D style = new GeoStyle3D(); style.FillForeColor = Color.FromArgb(150, 153, 207, 25); style.AltitudeMode = AltitudeMode.RelativeToGround; style.FillMode = FillMode3D.Fill; m_model.Style3D = style; mSceneControl.Scene.TrackingLayer.IsEditable = true; mSceneControl.Scene.TrackingLayer.IsVisible = true; mSceneControl.Scene.TrackingLayer.Add(m_model, "圆"); CloseMethod(); } catch (System.Exception ex) { Trace.WriteLine(ex.Message); } }
public void DrawCirle(Point3D bd_point3D) { try { GeoCircle3D m_circle3d = new GeoCircle3D(bd_point3D, 20); GeoModel3D m_model = m_circle3d.ConvertToGeoModel3D(true); m_rec = m_model.Bounds; //设置数据集容量,避免空间查询出现过多对象 mUseData.OutWaterNetWork.Tolerance.NodeSnap = 0.0001; mUseData.SupplyWaterNetWork.Tolerance.NodeSnap = 0.0001; GeoStyle3D style = new GeoStyle3D(); style.FillForeColor = Color.FromArgb(100, 255, 128, 64); style.AltitudeMode = AltitudeMode.RelativeToGround; style.FillMode = FillMode3D.Fill; m_model.Style3D = style; TrackingLayer3D trackinglayer = mSceneControl.Scene.TrackingLayer; trackinglayer.IsEditable = true; trackinglayer.IsVisible = true; trackinglayer.Add(m_model, "圆"); CircleID = trackinglayer.IndexOf("圆"); } catch (System.Exception ex) { Trace.WriteLine(ex.Message); } }