public Schalter(AnlagenElemente parent, Int32 zoom, AnzeigeTyp anzeigeTyp, string[] elem) : base(parent, Convert.ToInt32(elem[1]), zoom, anzeigeTyp) { string[] glAnschl = elem[2].Split(' '); Gleis gl = Parent.GleisElemente.Element(Convert.ToInt32(glAnschl[0])); if (elem.Length > 4) { KoppelungsString = elem[4]; } if (gl != null) { PositionRaster = gl.GetRasterPosition(this, Convert.ToInt32(glAnschl[1])); Position = new Point(PositionRaster.X * Zoom, PositionRaster.Y * Zoom); if (gl.GleisElementAnschluss(this)) { AnschlussGleis = gl; Ausgang = AnschlussGleis.Ausgang; Parent.SchalterElemente.Hinzufügen(this); _graphicsPath = new GraphicsPath(); this.Berechnung(); } } }
/// <summary> /// zum Laden aus der Text-Datei /// </summary> /// <param name="parent">AnlagenElemente</param> /// <param name="zoom"></param> /// <param name="anzeigeTyp"></param> /// <param name="elem">Zeile aus der Text-Datei</param> public EingangsSchalter(AnlagenElemente parent, Int32 zoom, AnzeigeTyp anzeigeTyp, string[] elem) : base(parent, Convert.ToInt32(elem[1]), zoom, anzeigeTyp) { KurzBezeichnung = "Eing"; string[] glAnschl = elem[2].Split(' '); Ausgang.SpeicherString = elem[3]; Bezeichnung = elem[4]; Stecker = elem[5]; Gleis gl = Parent.GleisElemente.Element(Convert.ToInt32(glAnschl[0])); Gleisposition = Convert.ToInt32(glAnschl[1]); if (gl != null) { PositionRaster = gl.GetRasterPosition(this, Convert.ToInt32(glAnschl[1])); Position = new Point(PositionRaster.X * Zoom, PositionRaster.Y * Zoom); { AnschlussGleis = gl; Parent.EingSchalterElemente.Hinzufügen(this); _graphicsPath = new GraphicsPath(); _graphicsPathKreis = new GraphicsPath(); this.Berechnung(); } } }
/// <summary> /// Konstruktor zum laden aus der .anl-Datei /// </summary> /// <param name="parent"></param> /// <param name="zoom"></param> /// <param name="anzeigeTyp"></param> /// <param name="elem"></param> public InfoFenster(AnlagenElemente parent, Int32 zoom, AnzeigeTyp anzeigeTyp, string[] elem) : base(parent, Convert.ToInt32(elem[1]), zoom, anzeigeTyp) { string[] glAnschl = elem[2].Split(' '); Gleis gl = Parent.GleisElemente.Element(Convert.ToInt32(glAnschl[0])); Gleisposition = Convert.ToInt32(glAnschl[1]); if (elem[3] == "0") { _lage = false; } else { _lage = Convert.ToBoolean(elem[3]); } if (gl != null) { PositionRaster = gl.GetRasterPosition(this, Convert.ToInt32(glAnschl[1])); Position = new Point(PositionRaster.X * Zoom, PositionRaster.Y * Zoom); AnschlussGleis = gl; Parent.InfoElemente.Hinzufügen(this); this.Text = ""; //InfoString; this.Berechnung(); } }
/// <summary> /// zum Laden aus der Text-Datei /// </summary> /// <param name="parent">AnlagenElemente</param> /// <param name="zoom"></param> /// <param name="anzeigeTyp"></param> /// <param name="elem">Zeile aus der Text-Datei</param> public FSS(AnlagenElemente parent, Int32 zoom, AnzeigeTyp anzeigeTyp, string[] elem) : base(parent, Convert.ToInt32(elem[1]), zoom, anzeigeTyp) { KurzBezeichnung = "Fss"; string[] glAnschl = elem[2].Split(' '); _reglerNrQuelle[0] = Convert.ToInt32(elem[3]); _reglerNrQuelle[1] = Convert.ToInt32(elem[4]); _reglerNr[0] = Convert.ToInt32(elem[3]); _reglerNr[1] = Convert.ToInt32(elem[4]); _fss[0] = null; _regler[0] = null; if (_reglerNr[0] > 0) { _regler[0] = Parent.ReglerElemente.Element(_reglerNr[0]); } _fss[1] = null; _regler[1] = null; if (_reglerNr[1] > 0) { _regler[1] = Parent.ReglerElemente.Element(_reglerNr[1]); } Ausgang.SpeicherString = elem[5]; if (elem.Length > 7) { Bezeichnung = elem[6]; Stecker = elem[7]; } if (elem.Length > 8) { KoppelungsString = elem[8]; } if (elem.Length > 9) { sichtbarkeit = Convert.ToBoolean(elem[9]); } Gleis gl = Parent.GleisElemente.Element(Convert.ToInt32(glAnschl[0])); Gleisposition = Convert.ToInt32(glAnschl[1]); if (gl != null) { PositionRaster = gl.GetRasterPosition(this, Convert.ToInt32(glAnschl[1])); Position = new Point(PositionRaster.X * Zoom, PositionRaster.Y * Zoom); { AnschlussGleis = gl; Parent.FssElemente.Hinzufügen(this); _graphicsPath = new GraphicsPath(); _graphicsPathKreis = new GraphicsPath(); this.Berechnung(); } } }
/// <summary> /// Zum laden aus der Anlagen-Datei /// </summary> /// <param name="parent"></param> /// <param name="zoom"></param> /// <param name="anzeigeTyp"></param> /// <param name="elem"></param> public Entkuppler(AnlagenElemente parent, Int32 zoom, AnzeigeTyp anzeigeTyp, string[] elem) : base(parent, Convert.ToInt32(elem[1]), zoom, anzeigeTyp) { Ausgang = new Adresse(parent); KurzBezeichnung = "Ek"; string[] glAnschl = elem[2].Split(' '); Gleis gl = Parent.GleisElemente.Element(Convert.ToInt32(glAnschl[0])); if (gl != null) { PositionRaster = gl.GetRasterPosition(this, Convert.ToInt32(glAnschl[1])); Position = new Point(PositionRaster.X * Zoom, PositionRaster.Y * Zoom); if (gl.GleisElementAnschluss(this)) { AnschlussGleis = gl; Parent.EntkupplerElemente.Hinzufügen(this); Ausgang.SpeicherString = elem[3]; Bezeichnung = elem[4]; this.Berechnung(); } } }
public Signal(AnlagenElemente parent, Int32 zoom, AnzeigeTyp anzeigeTyp, string[] elem) : base(parent, Convert.ToInt32(elem[1]), zoom, anzeigeTyp) { string[] glAnschl = elem[2].Split(' '); KurzBezeichnung = "Sn"; Bezeichnung = elem[6]; if (elem.Length > 7) { Stecker = elem[7]; } Ausgang = new Adresse(parent); if (elem.Length > 8) { _autoStart = Convert.ToBoolean(elem[8]); } if (elem.Length > 9) { _zugLaengeMax = Convert.ToInt32(elem[9]); } if (elem.Length > 10) { ZugTypString = elem[10]; } if (elem.Length > 11) { KoppelungsString = elem[11]; } if (elem.Length > 12) { ZielGleisNr = Convert.ToInt16(elem[12]); } Gleis gl = Parent.GleisElemente.Element(Convert.ToInt32(glAnschl[0])); if (gl != null) { PositionRaster = gl.GetRasterPosition(this, Convert.ToInt32(glAnschl[1])); Position = new Point(PositionRaster.X * Zoom, PositionRaster.Y * Zoom); InZeichenRichtung = Convert.ToBoolean(elem[3]); if (gl.GleisElementAnschluss(this)) { Ausgang.SpeicherString = elem[5]; AnschlussGleis = gl; Parent.SignalElemente.Hinzufügen(this); this._stringFormat = new StringFormat(); this._stringFormat.Alignment = StringAlignment.Center; this._stringFormat.LineAlignment = StringAlignment.Center; this._graphicsPathHintergrund = new GraphicsPath(); this._graphicsPathKreis = new GraphicsPath(); this._graphicsPathLinien = new GraphicsPath(); this._graphicsPathText = new GraphicsPath(); this._farbe = Color.Red; this.Berechnung(); } Signal gegenSig = GegenSignalSuchen(); if (gegenSig != null) { GegenSignal = gegenSig; gegenSig.GegenSignal = this; } } infoFensterLaden(Convert.ToInt16(elem[4])); }