public static string CreateGroup(string groupName, ref SGWorld66 sgworld, string parentGroupName = "") { if (string.IsNullOrEmpty(parentGroupName)) { var gid = sgworld.ProjectTree.FindItem(groupName); if (!string.IsNullOrEmpty(gid)) { return(gid); } return(sgworld.ProjectTree.CreateGroup(groupName)); } else { var parentGid = sgworld.ProjectTree.FindItem(parentGroupName); if (string.IsNullOrEmpty(parentGid)) { parentGid = sgworld.ProjectTree.CreateGroup(parentGroupName); } var gid = sgworld.ProjectTree.FindItem(parentGroupName + "\\" + groupName); if (!string.IsNullOrEmpty(gid)) { return(gid); } return(sgworld.ProjectTree.CreateGroup(groupName, parentGroupName)); } }
/// <summary> /// TODO 丁一明,显示聚类结果 /// </summary> /// <param name="groupID"></param> public override void TECreate() { string[] photoName; string[] fileName; string[] photoTime; string[] sNo; string[] person; string[] remark; double[] x; double[] y; var sgworld = new SGWorld66(); if (string.IsNullOrEmpty(mGroupIDStatic)) { mGroupIDStatic = sgworld.ProjectTree.CreateGroup("Photo"); } int num; num = CConsPhoto.findConsPhoto(5, out photoName, out fileName, out photoTime, out x, out y, out sNo, out person, out remark); //num = CConsLog.findLast365Cons(out usrName, out projName, out consDate, out x, out y); for (int i = 0; i < num; i++) { Console.WriteLine("{0} #\t: photoName {1}\t fileName {2}\t x {3}\t y {4}\t Date {5}", i, photoName[i], fileName[i], x[i], y[i], photoTime[i]); } }
private void createOneProjectBranch(string projType, ILabelStyle66 cLabelStyle) { //SKRailwayItem item; var sgworld = new SGWorld66(); //ITerraExplorerMessage66 cMessage = null; var parentID = sgworld.ProjectTree.FindItem("桥梁"); if (!(projType.Equals("特大桥") || projType.Equals("中桥") || projType.Equals("大桥") || projType.Equals("框构桥"))) { parentID = string.Empty; } var branch = sgworld.ProjectTree.CreateGroup(projType, parentID); foreach (CRailwayProject item in CRailwayScene.mProjectList) { // item = (SKRailwayItem)CRailwayScene.mProjectList.mProjectList.ElementAt(j); if (item.mProfessionalName.Equals(projType, StringComparison.InvariantCultureIgnoreCase)) { var cPos = sgworld.Creator.CreatePosition(item.mLongitude_Mid, item.mLatitude_Mid, 10, AltitudeTypeCode.ATC_TERRAIN_RELATIVE); item.mLabel = sgworld.Creator.CreateTextLabel(cPos, item.mProjectName, cLabelStyle, branch, item.mProjectName); item.mLabel.ImageFileName = item.mLabelImage; //string urlStr = "http://" + GlobalVar.gSTAT_SERVERIP + "/MNMIS/APP/ProjectMng.aspx?f=detail&sn=" + item.mSerialNo + // "&uacc=" + GlobalVar.gSTAT_USERACC + "&upwd=" + GlobalVar.gSTAT_USRPWD; //cMessage = sgworld.Creator.CreateMessage(MsgTargetPosition.MTP_POPUP, urlStr, MsgType.TYPE_URL, true); ////cMessage.Height = 100; ////MsgTargetPosition mtp = //item.mLabel.Message.MessageID = cMessage.ID; } } }
private void createLabelWithProject() { string[] sProjType = new string[] { "路基", "涵洞", "特大桥", "大桥", "中桥", "框构桥", "空心板桥梁", "预制", "铺架" };//, "大临", "站房工程" var sgworld = new SGWorld66(); IColor66 bgcolor = sgworld.Creator.CreateColor(255, 255, 255, 155); IColor66 forecolor = sgworld.Creator.CreateColor(0, 0, 0, 255); ILabelStyle66 cLabelStyle = sgworld.Creator.CreateLabelStyle(SGLabelStyle.LS_DEFAULT); { //uint nBGRValue = 0x00000000; // White //var cBackgroundColor = cLabelStyle.BackgroundColor; // Get label style background color //cBackgroundColor.FromBGRColor(nBGRValue); // Set background to blue //cBackgroundColor.SetAlpha(0.8); // Set transparency to 50% cLabelStyle.BackgroundColor = bgcolor; // Set label style background color cLabelStyle.TextColor = forecolor; cLabelStyle.FontName = "Arial"; // Set font name to Arial cLabelStyle.Italic = true; // Set label style font to italic cLabelStyle.Scale = 3; // Set label style scale cLabelStyle.TextOnImage = false; } var branch = sgworld.ProjectTree.CreateGroup("桥梁"); foreach (string str in sProjType) { createOneProjectBranch(str, cLabelStyle); } }
private void createNavTrain() { var sgworld = new SGWorld66(); string fileName = GlobalVar.gDataPath + @"Common\Models\train.3ds"; //mTrain = sgworld.Creator.CreateModel(sgworld.Creator.CreatePosition(),fileName,0.25,ModelTypeCode.MT_NORMAL,string.Empty,"Train"); //mTrain.Position.X = 50; mDynamicTrain = sgworld.Creator.CreateDynamicObject(0, DynamicMotionStyle.MOTION_MANUAL, DynamicObjectType.DYNAMIC_3D_MODEL, fileName, 0.25, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, string.Empty, "Train"); for (int i = 6000; i < 36000; i += 5) //CRailwayScene.mMiddleLine.mPointNum { mDynamicTrain.Waypoints.AddWaypoint(sgworld.Creator.CreateRouteWaypoint( CRailwayScene.mMiddleLine.longitude[i], CRailwayScene.mMiddleLine.latitude[i], CRailwayScene.mMiddleLine.altitude[i], 300, CRailwayScene.mMiddleLine.heading[i])); //Console.WriteLine(CRailwayScene.mMiddleLine.longitude[i] + "\t" + CRailwayScene.mMiddleLine.latitude[i]); } mDynamicTrain.PlayRouteOnStartup = false; //mDynamicTrain.Pause = true; //mDynamicTrain.s //mDynamicTrain. }
public LoggingWell(IObjData dataObj, ref SGWorld66 sgworld) : base(dataObj, ref sgworld) { Type = LoggingType.Well; Draw(ref sgworld); }
public LoggingPit(IObjData dataObj, ref SGWorld66 sgworld) : base(dataObj, ref sgworld) { Type = LoggingType.Pit; Draw(ref sgworld); }
private void polylineMiddleLine(CRailwayProject rw, IColor66 lineColor, SGWorld66 sgworld, string branch) { ITerrainPolyline66 polyline; //double[] x, y, z, dir; double[] mArray; int count = rw.getSubLine(out mArray); //mSceneData.mMiddleLines.getSubLineByDKCode(rw.Mileage_Start_Discription, rw.Mileage_End_Discription, 10, out x, out y, out z, out dir); //double[] mArray = new double[count * 3]; //for (int i = 0; i < count; i++) //{ // mArray[3 * i] = x[i]; // mArray[3 * i + 1] = y[i]; // mArray[3 * i + 2] = z[i] + 1; //} if (count > 1) { polyline = sgworld.Creator.CreatePolylineFromArray(mArray, lineColor, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, branch, rw.ProjectName); polyline.Spline = true; polyline.Visibility.MaxVisibilityDistance = 10000000; polyline.Visibility.MinVisibilityDistance = 1000; polyline.LineStyle.Width = -5.0; polyline.Visibility.Show = true; } }
public void Erase(ref SGWorld66 sgworld) { if (LoggingObject.DictOfLoggingObjects.ContainsKey(this.Guid)) { LoggingObject.DictOfLoggingObjects.Remove(this.Guid); } if (LoggingObject.DictOfSkyIdGuid.ContainsKey(this.SkylineLabelObj.ID)) { LoggingObject.DictOfSkyIdGuid.Remove(this.SkylineLabelObj.ID); } if (SkylineMouthObj != null) { sgworld.Creator.DeleteObject(SkylineMouthObj.ID); SkylineMouthObj = null; } if (SkylineBodyObj != null) { sgworld.Creator.DeleteObject(SkylineBodyObj.ID); SkylineBodyObj = null; } if (SkylineLabelObj != null) { sgworld.Creator.DeleteObject(SkylineLabelObj.ID); SkylineLabelObj = null; } }
/// <summary> /// 绘制边坡(需要用边坡模型) /// </summary> /// <param name="sgworld"></param> public void Draw(ref SGWorld66 sgworld, IObjData dataObj, double xOffset = 0.0, double yOffset = 0.0) { string signIsInTerrain = IsLoggingObjInTerrain(ref sgworld) ? "" : "【地图以外】"; //绘制孔口:暂时用小圆点替代钻孔口模型 double radius = 10; var Style = SphereStyle.SPHERE_NORMAL; var nLineColor = 0xFF00FF00; var nFillColor = 0xFF646464; var SegmentDensity = -1; string gid = CreateGroup("边坡", ref sgworld); sgworld.ProjectTree.ExpandGroup(gid, true); // 在地面创建边坡中心点的坐标 double centerX = (dataObj.Points.GetPoint(0).X + dataObj.Points.GetPoint(1).X + dataObj.Points.GetPoint(2).X) / 3; double centerY = (dataObj.Points.GetPoint(0).Y + dataObj.Points.GetPoint(1).Y + dataObj.Points.GetPoint(2).Y) / 3; IPosition66 cPos = sgworld.Creator.CreatePosition( centerX, centerY, 0, AltitudeTypeCode.ATC_TERRAIN_RELATIVE); // 创建标记物 SkylineMouthObj = sgworld.Creator.CreateSphere( cPos, radius, Style, nLineColor, nFillColor, SegmentDensity, gid, Name + signIsInTerrain); //绘制孔身 //var arrVertices = new double[] //{ // Top.X, Top.Y, Top.Z, // Bottom.X, Bottom.Y, Bottom.Z //}; //var lineColor = sgworld.Creator.CreateColor(255, 0, 0, 128); //SkylineBodyObj = sgworld.Creator.CreatePolylineFromArray(arrVertices, lineColor, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, // sgworld.ProjectTree.HiddenGroupID, Name); //绘制文字标签 var cLabelStyle = sgworld.Creator.CreateLabelStyle(); cLabelStyle.MultilineJustification = "Center"; cLabelStyle.LineColor = sgworld.Creator.CreateColor(0, 0, 0, 255); cLabelStyle.TextColor = sgworld.Creator.CreateColor(0, 0, 0, 0); cLabelStyle.TextAlignment = "Bottom, Center"; SkylineLabelObj = sgworld.Creator.CreateTextLabel(cPos, Name, cLabelStyle, sgworld.ProjectTree.HiddenGroupID, Name); RecordLabelSkyId(); }
public void Draw(ref SGWorld66 sgworld) { //绘制身:暂时用小圆点替代钻孔口模型 double radius = 10; var Style = SphereStyle.SPHERE_NORMAL; var nLineColor = 0xFF00FF00; var nFillColor = 0xFF646464; var SegmentDensity = -1; string gid = CreateGroup("地质点", ref sgworld); sgworld.ProjectTree.ExpandGroup(gid, true); IPosition66 cPos = sgworld.Creator.CreatePosition(Top.X, Top.Y, Top.Z, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE); SkylineBodyObj = sgworld.Creator.CreateSphere(cPos, radius, Style, nLineColor, nFillColor, SegmentDensity, gid, Name); //绘制旗子 var imageFileName = Path.Combine(Directory.GetCurrentDirectory(), "flag.png"); SkylineMouthObj = sgworld.Creator.CreateImageLabel(cPos, imageFileName, null, sgworld.ProjectTree.HiddenGroupID); //绘制文字标签 var cLabelStyle = sgworld.Creator.CreateLabelStyle(); cLabelStyle.MultilineJustification = "Center"; cLabelStyle.LineColor = sgworld.Creator.CreateColor(0, 0, 0, 255); cLabelStyle.TextColor = sgworld.Creator.CreateColor(0, 0, 0, 0); cLabelStyle.TextAlignment = "Bottom, Center"; SkylineLabelObj = sgworld.Creator.CreateTextLabel(cPos, Name, cLabelStyle, sgworld.ProjectTree.HiddenGroupID, Name); RecordLabelSkyId(); }
public LoggingWell(IObjData dataObj, ref SGWorld66 sgworld, double xOffset = 0.0, double yOffset = 0.0) : base(dataObj, ref sgworld) { Type = LoggingType.Well; Draw(ref sgworld, xOffset, yOffset); }
public LoggingSpot(IObjData dataObj, ref SGWorld66 sgworld) : base(dataObj, ref sgworld) { if (isValidate == true) { Type = LoggingType.Spot; Draw(ref sgworld); } }
public override void TECreate() { var sgworld = new SGWorld66(); if (string.IsNullOrEmpty(mGroupIDStatic)) { mGroupIDStatic = sgworld.ProjectTree.CreateGroup("Pier"); } string modelName = CGisDataSettings.gDataPath + @"Common\Models\Pier\qiaodun.xpl2"; ITerrainModel66 m = null; //ILabelStyle66 cLabelStyle = sgworld.Creator.CreateLabelStyle(SGLabelStyle.LS_DEFAULT); //{ // uint nBGRValue = 0xFF0000; // Blue // double dAlpha = 0.5; // 50% opacity // var cBackgroundColor = cLabelStyle.BackgroundColor; // Get label style background color // cBackgroundColor.FromBGRColor(nBGRValue); // Set background to blue // cBackgroundColor.SetAlpha(dAlpha); // Set transparency to 50% // cLabelStyle.BackgroundColor = cBackgroundColor; // Set label style background color // cLabelStyle.FontName = "Arial"; // Set font name to Arial // cLabelStyle.Italic = true; // Set label style font to italic // cLabelStyle.Scale = 3; // Set label style scale // cLabelStyle.TextOnImage = false; //} foreach (CRailwayProject proj in mSceneData.mBridgeList) { //var branch = sgworld.ProjectTree.FindItem("Bridge\\"+cItem.mParentBridge.mProjectName); foreach (CRailwayPier cItem in proj.mDWProjList) { var cPos = sgworld.Creator.CreatePosition(cItem.mLongitude_Mid, cItem.mLatitude_Mid, cItem.mAltitude_Mid - 0.5, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, cItem.mHeading_Mid, 0, 0); m = sgworld.Creator.CreateModel(cPos, modelName, 1, ModelTypeCode.MT_NORMAL, mGroupIDStatic, cItem.DWName); m.ScaleX = 0.01; m.ScaleY = 0.01; m.ScaleZ = 0.015; m.BestLOD = 1000; cPos.Altitude += 4; sgworld.Creator.CreateTextLabel(cPos, cItem.DWName, mTEStandard.mLabelStyleL4, mGroupIDStatic, cItem.DWName); //FIXME 添加属性随时间变动功能 //cItem.dte = DateTime.Now.AddDays(100); ; //DateTime ds = Convert.ToDateTime("2015-06-01"); //cItem.dts = ds.AddDays(i); //cItem.mTEModel.TimeSpan.Start = cItem.dts; //cItem.mTEModel.TimeSpan.End = cItem.dte; //i += 10; //if (i > 180) { i = 0; } //cItem.mTEModel.Terrain.Tint.abgrColor = 0xFF; //cItem.mTEModel.Terrain.Tint.SetAlpha(alpha); // FIXME; //alpha += 0.05; //if (alpha > 1) alpha = 0.02; } } }
public GISForm() { //GlobalSettings.LoadConfig(); LoginForm login = new LoginForm(); if (login.ShowDialog() != DialogResult.OK) { Application.Exit(); } WelcomeFormJQ wf = new WelcomeFormJQ(); wf.Show(this); //GlobalSettings.InitGlobal(); gRWScene = new CRailwayScene(); //GlobalVar.gScene = new ModelInformation.CRailwayScene(); InitializeComponent(); sgworld = new SGWorld66(); this.axTE3DWindow1.Text = "新建济青高速铁路"; //axTE3DWindow1.ProductName = "蒙内标轨铁路"; axTE3DWindow1.Caption = "新建济青高速铁路"; //sgworld.Project.set_Settings("RemoveSkylineCopyright", 1); //sgworld.Project.set_Settings("DisplaySun", 0); if (mTEScene == null) { mTEScene = new CTEScene(gRWScene); } mNavTrain = new CTENavTrain(gRWScene); //mNavTrain.OnFlyTo += mNavTrain_OnFlyTo; gMapControl1.MapProvider = GMap.NET.MapProviders.OpenCycleMapProvider.Instance; gMapControl1.Zoom = 6D; GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerOnly; gMapControl1.Position = new GMap.NET.PointLatLng(36.6, 118.6); gMapControl1.Visible = true; //GlobalSettings.gGForm = this; showProject(); addDVG_Event(); //bar1.Visible = false; //bar1.Hide(); createMenuSG(); menuSG.Visible = false; mainContainer.Panel2Collapsed = true; trackTime.Text = curTime.ToLongDateString(); wf.Close(); }
public string CreateGroup(string groupName, ref SGWorld66 sgworld) { var gid = sgworld.ProjectTree.FindItem(groupName); if (!string.IsNullOrEmpty(gid)) { return(gid); } return(sgworld.ProjectTree.CreateGroup(groupName)); }
} = new List <IGPoint>(); //平硐控制点 public LoggingFootrill(IObjData dataObj, ref SGWorld66 sgworld) : base(dataObj, ref sgworld) { Type = LoggingType.Footrill; //控制点 for (var index = 0; index < dataObj.Points.Count; index++) { var thisPoint = dataObj.Points.GetPoint(index); Links.Add(thisPoint); } Draw(ref sgworld); }
public DrawingPoint(DrawingObjectInfo geoObjInfo, ref SGWorld66 sgworld) { Type = "Point"; double radius = 10; var Style = SphereStyle.SPHERE_NORMAL; var nLineColor = 0xFF00FF00; var nFillColor = 0xFF646464; var SegmentDensity = -1; _point = sgworld.Creator.CreateSphere(geoObjInfo.PointPosition, radius, Style, nLineColor, nFillColor, SegmentDensity, geoObjInfo.GroupId, geoObjInfo.Name); }
/// <summary> /// 绘制平硐洞口 /// </summary> /// <param name="sgworld"></param> public void Draw(ref SGWorld66 sgworld, double xOffset = 0.0, double yOffset = 0.0) { string signIsInTerrain = IsLoggingObjInTerrain(ref sgworld) ? "" : "【地图以外】"; //硐口 double radius = 10; var Style = SphereStyle.SPHERE_NORMAL; var nLineColor = 0xFF00FF00; var nFillColor = 0xFF64FF64; var SegmentDensity = -1; string gid = CreateGroup("硐探", ref sgworld); sgworld.ProjectTree.ExpandGroup(gid, true); IPosition66 cPos = sgworld.Creator.CreatePosition( Top.X + xOffset, Top.Y + yOffset, Top.Z, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE); SkylineMouthObj = sgworld.Creator.CreateSphere( cPos, radius, Style, nLineColor, nFillColor, SegmentDensity, gid, Name + signIsInTerrain); //硐身 List <double> ListVertices = new List <double>(); foreach (var point in Links) { ListVertices.Add(point.X); ListVertices.Add(point.Y); ListVertices.Add(point.Z); } var lineColor = sgworld.Creator.CreateColor(255, 0, 0, 128); SkylineBodyObj = sgworld.Creator.CreatePolylineFromArray(ListVertices.ToArray(), lineColor, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, sgworld.ProjectTree.HiddenGroupID, Name); //标签 var cLabelStyle = sgworld.Creator.CreateLabelStyle(); cLabelStyle.MultilineJustification = "Center"; cLabelStyle.LineColor = sgworld.Creator.CreateColor(0, 0, 0, 255); cLabelStyle.TextColor = sgworld.Creator.CreateColor(0, 0, 0, 0); cLabelStyle.TextAlignment = "Bottom, Center"; SkylineLabelObj = sgworld.Creator.CreateTextLabel(cPos, Name, cLabelStyle, sgworld.ProjectTree.HiddenGroupID, Name); RecordLabelSkyId(); }
public override void TEUpdate() { var sgworld = new SGWorld66(); //var branch = sgworld.ProjectTree.FindItem(groupID); //if (!string.IsNullOrEmpty(branch)) // sgworld.ProjectTree.DeleteItem(branch); sgworld.ProjectTree.DeleteItem(mGroupIDDynamic); mGroupIDDynamic = null; createCircle(); createRibbon(); }
/// <summary> /// 绘制钻孔孔口(需要用钻孔口模型) /// </summary> /// <param name="sgworld"></param> public void Draw(ref SGWorld66 sgworld, double xOffset = 0.0, double yOffset = 0.0) { string signIsInTerrain = IsLoggingObjInTerrain(ref sgworld) ? "" : "【地图以外】"; //绘制孔口:暂时用小圆点替代钻孔口模型 double radius = 10; var Style = SphereStyle.SPHERE_NORMAL; var nLineColor = 0xFF00FF00; var nFillColor = 0xFF646464; var SegmentDensity = -1; string gid = CreateGroup("钻探", ref sgworld); sgworld.ProjectTree.ExpandGroup(gid, true); IPosition66 cPos = sgworld.Creator.CreatePosition( Top.X + xOffset, Top.Y + yOffset, Top.Z, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE); SkylineMouthObj = sgworld.Creator.CreateSphere( cPos, radius, Style, nLineColor, nFillColor, SegmentDensity, gid, Name + signIsInTerrain); //绘制孔身 var arrVertices = new double[] { Top.X, Top.Y, Top.Z, Bottom.X, Bottom.Y, Bottom.Z }; var lineColor = sgworld.Creator.CreateColor(255, 0, 0, 128); SkylineBodyObj = sgworld.Creator.CreatePolylineFromArray(arrVertices, lineColor, AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, sgworld.ProjectTree.HiddenGroupID, Name); //绘制文字标签 var cLabelStyle = sgworld.Creator.CreateLabelStyle(); cLabelStyle.MultilineJustification = "Center"; cLabelStyle.LineColor = sgworld.Creator.CreateColor(0, 0, 0, 255); cLabelStyle.TextColor = sgworld.Creator.CreateColor(0, 0, 0, 0); cLabelStyle.TextAlignment = "Bottom, Center"; SkylineLabelObj = sgworld.Creator.CreateTextLabel(cPos, Name, cLabelStyle, sgworld.ProjectTree.HiddenGroupID, Name); RecordLabelSkyId(); }
/// <summary> /// 测试铁路链 /// </summary> private void createMiddles() { var sgworld = new SGWorld66(); var branch = sgworld.ProjectTree.CreateGroup("进度"); ITerrainPolyline66 polyline; ILabelStyle66 cLabelStyle = sgworld.Creator.CreateLabelStyle(SGLabelStyle.LS_DEFAULT); { cLabelStyle.FontName = "Arial"; // Set font name to Arial cLabelStyle.Italic = true; // Set label style font to italic cLabelStyle.Scale = 3; // Set label style scale cLabelStyle.TextOnImage = false; } //CRailwayProject item = mSceneData.mProjectList[0]; foreach (CRailwayLine item in mSceneData.mMiddleLines.mLineList) { double[] x; double[] y; double[] z; double[] d; //CRailwayLineList oo=null; int pointNum = item.getSubLine(item.mStart, item.mEnd, 1, out x, out y, out z, out d); if (pointNum > 0) { double[] cVerticesArray = new double[pointNum * 3]; for (int i = 0; i < pointNum; i++) { cVerticesArray[3 * i] = x[i]; cVerticesArray[3 * i + 1] = y[i]; cVerticesArray[3 * i + 2] = z[i] + 10; } try { polyline = sgworld.Creator.CreatePolylineFromArray(cVerticesArray, sgworld.Creator.CreateColor(255, 215, 0, 255), AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, branch, item.mDKCode + "里程"); //polyline.Visibility.MinVisibilityDistance = 1250; //polyline.Spline = true; //polyline.LineStyle.Width = -5; polyline.Visibility.MaxVisibilityDistance = 10000000; polyline.LineStyle.Width = -3.0; polyline.Visibility.Show = true; } catch (Exception ex) { Console.WriteLine("Creation Failed" + item.mDKCode); } } } }
/// <summary> /// Initializes a new instance of the <see cref="FrmCurvedSurfaceBuilder"/> class. /// </summary> /// <param name="objsDict"> /// The objs dict. /// </param> /// <param name="sgworld"> /// The sgworld. /// </param> public FrmCurvedSurfaceBuilder(Dictionary <string, LoggingObject> objsDict, ref SGWorld66 sgworld, ref YWCHEntEx db) { this.InitializeComponent(); this.loggingObjectsDict = objsDict; foreach (var kvLoggingObj in this.loggingObjectsDict) { this.listBoxAdvGeoObjs.Items.Add(kvLoggingObj.Value.Name); } this.sgworld = sgworld; CurveAlgorithm.sgworld = sgworld; this.db = db; }
} = new List <IGPoint>(); //控制点 public LoggingTrench(IObjData dataObj, ref SGWorld66 sgworld, double xOffset = 0.0, double yOffset = 0.0) : base(dataObj, ref sgworld) { Type = LoggingType.Trench; //控制点 for (var index = 0; index < dataObj.Points.Count; index++) { var thisPoint = dataObj.Points.GetPoint(index); Links.Add(thisPoint); } Draw(ref sgworld, xOffset, yOffset); }
public bool IsLoggingObjInTerrain(ref SGWorld66 sgworld) { var leftX = sgworld.Terrain.Left; var rightX = sgworld.Terrain.Right; var topY = sgworld.Terrain.Top; var bottomY = sgworld.Terrain.Bottom; if (Top.X < leftX || Top.X > rightX || Top.Y < bottomY || Top.Y > topY) { return(false); } return(true); }
public void HighlightLabel(ref SGWorld66 sgworld) { var textLabel = SkylineLabelObj as ITerrainLabel66; if (textLabel == null) { return; } var textLabelStyle = textLabel.Style; textLabelStyle.TextColor = sgworld.Creator.CreateColor(255, 0, 0, 255); textLabelStyle.Underline = true; }
public void ResetLabel(ref SGWorld66 sgworld) { var textLabel = SkylineLabelObj as ITerrainLabel66; if (textLabel == null) { return; } var textLabelStyle = textLabel.Style; textLabelStyle.TextColor = sgworld.Creator.CreateColor(0, 0, 0, 0); textLabelStyle.Underline = false; }
/// <summary> /// FIXME 目前只支持DK,且待调试修正 /// </summary> private void createProjectProgress() { //double[] x; //double[] y; //double[] z; int pointNum = mSceneData.mMiddleLines.mLineList[1].mPointNum; //CRailwayScene.mMiddleLine.mPointNum; //x = new double[pointNum]; //y = new double[pointNum]; //z = new double[pointNum]; if (pointNum > 1) { double[] cVerticesArray = new double[pointNum * 3]; int i; for (i = 0; i < pointNum; i += 10) { cVerticesArray[3 * i] = mSceneData.mMiddleLines.mLineList[1].longitude[i]; cVerticesArray[3 * i + 1] = mSceneData.mMiddleLines.mLineList[1].latitude[i]; cVerticesArray[3 * i + 2] = mSceneData.mMiddleLines.mLineList[1].altitude[i] + 5; } try { var sgworld = new SGWorld66(); var branch = sgworld.ProjectTree.FindItem("MiddleLine"); //int r, g, b; //HslToRgb(10, 1 - item.AvgProgress, 1, out r, out g, out b); sgworld.Creator.CreatePolylineFromArray(cVerticesArray, sgworld.Creator.CreateColor(255, 0, 0, 255), AltitudeTypeCode.ATC_TERRAIN_ABSOLUTE, string.Empty, "Middle Line"); //item.mPolyline.Visibility.MinVisibilityDistance = 1250; //item.mPolyline.Spline = true; //item.mPolyline.LineStyle.Width = -5; //item.mPolyline. } catch (Exception ex) { Console.WriteLine("Creation Middle Line Failed"); } } //var sgworld = new SGWorld66(); //var branch = sgworld.ProjectTree.CreateGroup("MiddleLine"); ////Console.WriteLine(CRailwayScene.mProjectList.Count + ""); //foreach (CRailwayProject item in CRailwayScene.mBridgeList) // showProjectProgress(item); //foreach (CRailwayProject item in CRailwayScene.mRoadList) // showProjectProgress(item); //foreach (CRailwayProject item in CRailwayScene.mTunnelList) // showProjectProgress(item); }
private void AppForm_Load(object sender, EventArgs e) { Utils.DevExpressLocalizerHelper.SetSimpleChinese(); sgworld = new SGWorld66(); string tAppRoot = Path.GetDirectoryName(Application.ExecutablePath); string flyPath = Path.Combine(tAppRoot, @"data\default.fly"); sgworld.Open(flyPath); sgworld.OnFrame += Sgworld_OnFrame; }
//public delegate void StopAround(); //public event StopAround ShowFinished = null; public CTEScene(CRailwayScene s, System.Windows.Forms.Timer timer) { mSceneData = s; //timerFly = timer; //timerFly.Stop(); //timerFly.Tick += TimerFly_Tick; //mRWStandard = new CRWTEStandard(); sgworld = new SGWorld66(); CRWTEStandard.Init(); //CTEFeature.linesPointsLoad("JqPoints1"); //CTEFeature.linesPointsLoad("JqPoints2"); //initTEContactLine(); initTEProjectList(); initTEFirmList(); initTEConsList(CGisDataSettings.gLocalDB); mTEPiers = new CTEPier(mSceneData, this); mTEPiers.TECreate(); //CTEFirm.NavigationFinished += NotifyShowFinish; //CTEPointNav.NavigationFinished += NotifyShowFinish; prjInfoForm = new MessageForm(); //panel1_Paint(p); //mTEItemList.Add(new CTEKML(s, this, mRWStandard)); //mTEItemList.Add(new CTEStation(s, this, mRWStandard)); //mTEItemList.Add(new CTENavTrain(s, this, mRWStandard)); //mTEItemList.Add(new CTEProject(s, this, mRWStandard)); //mTEItemList.Add(new CTECons(s, this, mRWStandard)); //mTEItemList.Add(new CTEMiddleLine(s, this, mRWStandard)); //mTEItemList.Add(new CTEFirm(s, this, mRWStandard)); //mTEItemList.Add(new CTEConsPhoto(s, mRWStandard)); //mTEKml = new CTEKML(s, mRWStandard); //mTEStation = new CTEStation(s, mRWStandard); //mTEFact = new CTEFactory(s, mRWStandard); //mTETrain = new CTENavTrain(s, this, mRWStandard); //mTEPier = new CTEPier(s, mRWStandard); //mTEProj = new CTEProject(s, mRWStandard); //mTECons = new CTECons(s, mRWStandard); //mTEMiddleLine = new CTEMiddleLine(s, mRWStandard); //mTEFirm = new CTEFirm(s, mRWStandard); //mTEPhotos = new CTEConsPhoto(s, this); }