void showSelectedPart(lineType type, Part part) { if (app.DEBUG) { app.Log("GUI.showSelectedPart(" + type.ToString() + ", " + part.name + ")", false); } app.UnHighlightParts(app.goodFuelLines); app.UnHighlightParts(app.goodStruts); app.UnHighlightParts(app.badFuelLines); app.UnHighlightParts(app.badStruts); selectedStrut = part; switch (type) { case lineType.goodFuel: app.HighlightSinglePart(XKCDColors.Amethyst, app.goodFuelLineColor, part); break; case lineType.goodStrut: app.HighlightSinglePart(XKCDColors.OffWhite, app.goodStrutColor, part); break; case lineType.badFuel: app.HighlightSinglePart(XKCDColors.Amethyst, app.badFuelLineColor, part); break; case lineType.badStrut: app.HighlightSinglePart(XKCDColors.OffWhite, app.badStrutColor, part); break; } }
/// <summary> /// Konstruktor /// </summary> /// <param name="id1">numer indeksu elementu do którego podłaczony jest początek linii</param> /// <param name="offset1">przesunięcie socketa od lewej strony powyższego elementu</param> /// <param name="yzal">współrzędna Y załamania linii</param> /// <param name="id2">numer indeksu elementu do którego podłaczony jest koniec linii</param> /// <param name="offset2">przesunięcie socketa od lewej strony powyższego elementu</param> /// <param name="p">określa wygląd linii (kolor i grubość)</param> /// <param name="begtip">reprezentuje zakończenie linii na jej początku</param> /// <param name="endtip">reprezentuje zakończenie linii na jej końcu</param> public Line(int id1, int offset1, int yzal, int id2, int offset2, Pen p, tip begtip, tip endtip, lineType type) { this.id1 = id1; this.offset1 = offset1; this.id2 = id2; this.offset2 = offset2; this.yzal = yzal; this.p = p; this.begtip = begtip; this.endtip = endtip; this.type = type; switch (type) { case lineType.chan_prot: this.x1 = 0; this.y1 = 0; this.x2 = 0; this.y2 = 0; break; case lineType.prot_segm: this.x1 = 0; this.y1 = 0; this.x2 = 0; this.y2 = 0; break; case lineType.segm_stat: this.x1 = 0; this.y1 = 0; this.x2 = 0; this.y2 = 0; break; } }
private void curvebtn_Click(object sender, EventArgs e) { this.Cursor = Cursors.Cross; this.canDraw = true; this.isCutting = false; this.lineState = lineType.curve; }
/// <summary> /// 画笔下方的各项工具栏,共十二种。 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void screencut_Click(object sender, EventArgs e) { this.Cursor = Cursors.Cross; this.isCutting = true; this.canDraw = true; this.isTool = false; lineState = lineType.rectangle; }
private void dottedlinebtn_Click(object sender, EventArgs e) { this.Cursor = Cursors.Cross; this.canDraw = true; this.isTool = false; this.isCutting = false; lineState = lineType.dottedLine; }
public lineType type; // określa typ linii /// <summary> /// Konstruktor /// </summary> /// <param name="x1">współrzędna X początku linii</param> /// <param name="y1">współrzędna Y początku linii</param> /// <param name="yzal">współrzędna Y załamania linii</param> /// <param name="x2">współrzędna X końca linii</param> /// <param name="y2">współrzędna Y końca linii</param> /// <param name="p">określa wygląd linii (kolor i grubość)</param> /// <param name="begtip">reprezentuje zakończenie linii na jej początku</param> /// <param name="endtip">reprezentuje zakończenie linii na jej końcu</param> public Line(int x1, int y1, int yzal, int x2, int y2, Pen p, tip begtip, tip endtip) { this.x1 = x1; this.y1 = y1; this.yzal = yzal; this.x2 = x2; this.y2 = y2; this.p = p; this.begtip = begtip; this.endtip = endtip; this.type = lineType.another; }
/// <summary> /// 点击开启画笔,可以随意在战术板画画 /// 五种画笔:pen, box, straight, curve, dotted /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void penbtn_Click(object sender, EventArgs e) { string dir = @"D:\ajy\summer_project\picture_material\mouse\m_pen.png"; Bitmap image = new Bitmap(dir); this.Cursor = GetCursor(image, 0, 30); this.canDraw = true; this.isTool = false; this.isCutting = false; lineState = lineType.freeDraw; }
void showSelectedPart(lineType type, Part part) { if (app.DEBUG) { app.Log("GUI.showSelectedPart(" + type.ToString() + ", " + part.name + ")", false); } app.UnHighlightParts(app.goodFuelLines); app.UnHighlightParts(app.goodStruts); app.UnHighlightParts(app.badFuelLines); app.UnHighlightParts(app.badStruts); selectedStrut = part; switch (type) { case lineType.goodFuel: app.HighlightSinglePart(XKCDColors.Amethyst, app.goodFuelLineColor, part); break; case lineType.goodStrut: app.HighlightSinglePart(XKCDColors.OffWhite, app.goodStrutColor, part); break; case lineType.badFuel: app.HighlightSinglePart(XKCDColors.Amethyst, app.badFuelLineColor, part); break; case lineType.badStrut: app.HighlightSinglePart(XKCDColors.OffWhite, app.badStrutColor, part); break; } if (HighLogic.LoadedSceneIsEditor) { var camera = EditorLogic.fetch.editorCamera; var sphCam = camera.GetComponent <SPHCamera>(); var vabCam = camera.GetComponent <VABCamera>(); // WHY THE EFF DOES IKSPCamera not declare PlaceCamera, SQUAD!? if (sphCam.enabled && sphCam != null) { sphCam.PlaceCamera(part.transform.position, app.camOffsetDistance); } else if (vabCam.enabled && vabCam != null) { vabCam.PlaceCamera(part.transform.position, app.camOffsetDistance); } else { Debug.LogError("StrutFinder: Unable to locate a valid editor camera component."); } } else if (HighLogic.LoadedSceneIsFlight) { if (MapView.MapIsEnabled || (CameraManager.Instance.currentCameraMode == CameraManager.CameraMode.IVA)) { return; } var camera = FlightCamera.fetch; camera.SetTargetPart(part); camera.SetDistance(app.camOffsetDistance); } }
private static string dir2str(direction d, lineType lin) { return lin == lineType.Single ? (d == direction.Up ? "↑" : d == direction.Down ? "↓" : d == direction.Left ? "←" : "→") : lin == lineType.Double ? (d == direction.Up ? "⇑" : d == direction.Down ? "⇓" : d == direction.Left ? "⇐" : "⇒") : ""; }