/// <summary>Gibt das Ende es Textes als Double zurück und die Pos ab der die Zahl beginnt /// , wenn das Ende ein Double ist. Erkennt auch ".,"</summary> /// <param name="text"></param> /// <param name="result">Double.NaN = fehler</param> /// <param name="lastNumberPos">-1 = fehler</param> /// <returns>True erfolg</returns> public static Boolean getLastNumbersAsDouble(String text, out Double result, out Int32 lastNumberPos) { if (!IsNullOrWhiteSpace(text)) { if (Char.IsDigit(text.Last())) { String teil = ""; Int32 pos; for (pos = text.Length - 1; pos >= 0; pos--) { if ((Char.IsDigit(text[pos])) || ((text[pos] == '.') || (text[pos] == ','))) { teil = text[pos] + teil; } else { pos++; // es war die nächste Pos break; } } if (teil.Length > 0) { //TODO: Nächste Patchday aktivieren !! if (pos == -1) pos = 0; lastNumberPos = pos; return(ClassConverters.StringToDouble(teil, out result)); } } } lastNumberPos = -1; result = Double.NaN; return(false); }
/// <summary>Gibt einen CADdy formatierten String zurück</summary> /// <param name="settings"></param> /// <returns></returns> public String getCADdyFormatString(Settings settings) { String result = new String(' ', 255); String temp = ClassStringTools.lSetFull(Zielpunkt, settings.PointName_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.PointName_Start - 1, settings.PointName_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this.Hz, settings.Decimalseperator, "", settings.Messd_Hz_Decimals, settings.Messd_Hz_Decimals, false), settings.Messd_Hz_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Messd_Hz_Start - 1, settings.Messd_Hz_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this.S, settings.Decimalseperator, "", settings.Messd_S_Decimals, settings.Messd_S_Decimals, false), settings.Messd_S_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Messd_S_Start - 1, settings.Messd_S_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this.V, settings.Decimalseperator, "", settings.Messd_V_Decimals, settings.Messd_V_Decimals, false), settings.Messd_V_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Messd_V_Start - 1, settings.Messd_V_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this.D, settings.Decimalseperator, "", settings.Messd_D_Decimals, settings.Messd_D_Decimals, false), settings.Messd_D_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Messd_D_Start - 1, settings.Messd_D_Length); temp = ClassStringTools.lSetFull(Code, settings.Messd_Code_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Messd_Code_Start - 1, settings.Messd_Code_Length); if (!ClassStringTools.IsNullOrWhiteSpace(Bemerkung)) { temp = ClassStringTools.lSetFull(Bemerkung, settings.Messd_Descript_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Messd_Descript_Start - 1, settings.Messd_Descript_Length); } return(result.TrimEnd(' ')); }
private void btnPktRotation_Click(object sender, EventArgs e) { if ((points != null) && (points.HasPunkte)) { String rPnr = cbRotPoint.Text; String dPnr = cbDirPoint.Text; Double direction; if (ClassConverters.StringToDouble(tbDirection.Text, out direction)) { if (rPnr.CompareTo(dPnr) != 0) { if (points.rotateCoords(rPnr, dPnr, direction, chbZTo0.Checked)) { points.formatCurrentToCADdy(settings); } else { points.getPointsFromCurrentCADdy(settings); } } else { MessageBox.Show(language.getLanguageText("MSG_BOX_frmRotateCoord_identPoint")); } } else { MessageBox.Show(language.getLanguageText("MSG_BOX_frmRotateCoord_notdirection")); } } }
/// <summary>Gibt einen CADdy formatierten String zurück</summary> /// <param name="settings"></param> /// <returns></returns> public String getCADdyFormatString(Settings settings) { String result = new String(' ', 255); String temp = ClassStringTools.lSetFull(_punktnummer, settings.PointName_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.PointName_Start - 1, settings.PointName_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this._rechtswert, settings.Decimalseperator, "", settings.Koord_RW_E_Decimals, settings.Koord_RW_E_Decimals, false), settings.Koord_RW_E_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Koord_RW_E_Start - 1, settings.Koord_RW_E_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this._hochwert, settings.Decimalseperator, "", settings.Koord_HW_N_Decimals, settings.Koord_HW_N_Decimals, false), settings.Koord_HW_N_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Koord_HW_N_Start - 1, settings.Koord_HW_N_Length); temp = ClassStringTools.rSetFull(ClassConverters.ToString(this._hoehe, settings.Decimalseperator, "", settings.Koord_Elev_Decimals, settings.Koord_Elev_Decimals, false), settings.Koord_Elev_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Koord_Elev_Start - 1, settings.Koord_Elev_Length); temp = ClassStringTools.lSetFull(_code, settings.Koord_Code_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Koord_Code_Start - 1, settings.Koord_Code_Length); if (!ClassStringTools.IsNullOrWhiteSpace(_bemerkung)) { temp = ClassStringTools.lSetFull(_bemerkung, settings.Koord_Descript_Length, " "); ClassStringTools.overrideSubStr(ref result, temp, settings.Koord_Descript_Start - 1, settings.Koord_Descript_Length); } return(result.TrimEnd(' ')); }
/// <summary>Gibt einen 'hochgezählten' Text zurück</summary> /// <param name="numbertext"></param> /// <returns></returns> public static String getTextIncrement(String numbertext) { String defaultPunktnummer = numbertext; Double lastnumber; Int32 numberPos; if (ClassStringTools.getLastNumbersAsDouble(defaultPunktnummer, out lastnumber, out numberPos)) { if (!Double.IsNaN(lastnumber)) { Int32 digits = ClassMath.getDigitCount(lastnumber); lastnumber += ClassMath.getDigitFactor(lastnumber); if (numberPos == -1) { numberPos = 0; } String pktNr = defaultPunktnummer.Substring(0, numberPos) + ClassConverters.ToString(lastnumber, ".", "", digits, true).Trim(); if (pktNr.Length < defaultPunktnummer.Length) { Int32 nullen = defaultPunktnummer.Length - pktNr.Length; pktNr = defaultPunktnummer.Substring(0, numberPos) + new String('0', nullen) + ClassConverters.ToString(lastnumber, ".", "", digits, true).Trim(); } defaultPunktnummer = pktNr; } } return(defaultPunktnummer); }
private void btnCalcTransform_Click(object sender, EventArgs e) { if ((displayTransformPoints.Count > 0) && (transformation != null)) { //foreach (ClassTransformdisplayPoint transp in displayTransformPoints) // transformation.setUsing(transp); } if (transformation == null) { String cuFile = ClassNPPTools.getCurrentFile(); ClassCADdyPunkte file1 = new ClassCADdyPunkte(ref language); ClassNPPTools.switchToFile(cbListSrc.Text); file1.getPointsFromCurrentCADdy(settings); ClassCADdyPunkte file2 = new ClassCADdyPunkte(ref language); ClassNPPTools.switchToFile(cbListDest.Text); file2.getPointsFromCurrentCADdy(settings); ClassNPPTools.switchToFile(cuFile); transformation = new ClassTransformation(file1, file2, ref language, 3, 4); } else { transformation.calcResiduen(); } if (transformation != null) { displayTransformPoints.Clear(); foreach (ClassTransformPointPair matchPoint in transformation.MatchPoints) { displayTransformPoints.Add(new ClassTransformdisplayPoint(matchPoint, 3, 4)); } tbSigmaXY.Text = ClassConverters.ToString(transformation.SigmaXY, ",", "", 3, true); tbSigmaZ.Text = ClassConverters.ToString(transformation.SigmaZ, ",", "", 3, true); if (transformation.SigmaXY < 0.1) { tbSigmaXY.BackColor = Color.LightGreen; } else if (Double.IsNaN(transformation.SigmaXY)) { tbSigmaXY.BackColor = Color.LightGray; } else { tbSigmaXY.BackColor = Color.Orange; } if (transformation.SigmaZ < 0.1) { tbSigmaZ.BackColor = Color.LightGreen; } else if (Double.IsNaN(transformation.SigmaZ)) { tbSigmaZ.BackColor = Color.LightGray; } else { tbSigmaZ.BackColor = Color.Orange; } btnMakeTransform.Enabled = true; } }
/// <summary>Trennt die Punkte aus dem angegebenen Text</summary> /// <param name="settings"></param> /// <param name="editor"></param> public void getPointsFromEditor(Settings settings, IScintillaGateway editor) { punkte.Clear(); if (editor != null) { Int32 countLines = editor.GetLineCount(); for (Int32 lc = 0; lc < countLines; lc++) { String cuLine = editor.GetLine(lc); // Auch Excel Splitbar machen ;-) cuLine = cuLine.Replace('\t', ' '); // Tab durch Leerzeichen ersetzten cuLine = cuLine.Replace(',', settings.Decimalseperator[0]); // , durch . ersetzten String[] split = ClassStringTools.GetFieldsManyDelimiters(cuLine, ' ', true); if (split != null) { if (split.Length >= 4) // mind PNR R H E { ClassCADdyPunkt newPoint = new ClassCADdyPunkt(); { newPoint.Punktnummer = ClassStringTools.trimToEmpty(split[settings.PointName_Column - 1]); if (settings.PointName_ToUpper) { newPoint.Punktnummer = newPoint.Punktnummer.ToUpper(); } if (!ClassStringTools.IsNullOrWhiteSpace(newPoint.Punktnummer)) { Double temp = Double.NaN; if (ClassConverters.StringToDouble(split[settings.Koord_RW_E_Column - 1], out temp)) { newPoint.Rechtswert = temp; if (ClassConverters.StringToDouble(split[settings.Koord_HW_N_Column - 1], out temp)) { newPoint.Hochwert = temp; if (ClassConverters.StringToDouble(split[settings.Koord_Elev_Column - 1], out temp)) { newPoint.Hoehe = temp; newPoint.LineNumber = lc; if (split.Length >= 5) { // code newPoint.Code = ClassStringTools.trimToEmpty(split[settings.Koord_Code_Column - 1]); if (split.Length >= 6) { // code newPoint.Bemerkung = ClassStringTools.trimToEmpty(split[settings.Koord_Descript_Column - 1]); } } punkte.Add(newPoint); } } } } } } } } } hasPunkte = punkte.Count > 0; }
/// <summary>Setzt die Properties anhand der Defaultwerte</summary> public void setDefaults() { foreach (PropertyInfo property in this.GetType().GetProperties()) { try { DefaultValueAttribute defValue = (DefaultValueAttribute)Attribute.GetCustomAttribute(property, typeof(DefaultValueAttribute)); string strDefValue = ""; if (defValue != null) { if (defValue.Value != null) { strDefValue = defValue.Value.ToString(); object defObject = null; switch (property.PropertyType.Name) { case "Boolean": case "Int64": case "Int16": case "Int32": case "Decimal": case "Float": case "Double": case "Color": case "String": ClassConverters.getValueFromString(strDefValue, property.PropertyType, out defObject); break; case "Char": // DefaultValueAttribute ist schon ein Char //Char c; // if (ClassConverters.StringToChar(strDefValue, out c)) property.SetValue(this, strDefValue[0], null); break; default: if (property.PropertyType.IsEnum) { ClassConverters.getValueFromString(strDefValue, property.PropertyType, out defObject); } else { defObject = (object)strDefValue; } break; } property.SetValue(this, defObject, null); } } } catch { } } }
/// <summary>Gibt eine Double aus dem Text. /// Wenn der Text keine Zahl ist, dann Double.NaN</summary> /// <param name="text"></param> /// <returns></returns> public static Double getDouble(String text) { Double temp; if (ClassConverters.StringToDouble(text, out temp)) { return(temp); } else { return(Double.NaN); } }
/// <summary>Gibt einen EXCELFormatiertenString zurück</summary> /// <returns></returns> public String getExcelFormatString() { String result = Punktnummer + "\t\t\t\t"; result += ClassConverters.ToString(this.I, ",", "") + "\t"; result += Code + "\t"; if (!ClassStringTools.IsNullOrWhiteSpace(Bemerkung)) { result += Bemerkung; } return(result); }
/// <summary>Gibt einen EXCELFormatiertenString zurück</summary> /// <returns></returns> public String getExcelFormatString() { String result = _punktnummer + "\t"; result += ClassConverters.ToString(this._rechtswert, ",", "") + "\t"; result += ClassConverters.ToString(this._hochwert, ",", "") + "\t"; result += ClassConverters.ToString(this._hoehe, ",", "") + "\t"; result += _code + "\t"; if (!ClassStringTools.IsNullOrWhiteSpace(_bemerkung)) { result += _bemerkung; } return(result); }
private void btnPktChangeID_Click(object sender, EventArgs e) { if ((cuMeasures != null) && (cuMeasures.HasMessdaten)) { cuMeasures.getMeasuresFromCurrentCADdy(settings); Double newId = Double.NaN; if (ClassConverters.StringToDouble(tbNewId.Text, out newId)) { if (cuMeasures.setPointNumberToIDe(cbPunktnummer.Text, newId)) { cuMeasures.formatCurrentToCADdy(settings); } } } }
/// <summary>Laden der Settings</summary> public void load() { if (System.IO.File.Exists(iniFilename)) { foreach (PropertyInfo property in this.GetType().GetProperties()) { Boolean canNext = false; String groupName = "Main"; String propertyName = property.Name; String defString = null; DefaultValueAttribute defValue = (DefaultValueAttribute)Attribute.GetCustomAttribute(property, typeof(DefaultValueAttribute)); if (defValue != null) { ClassConverters.getStringFromValue(defValue.Value, property.PropertyType, out defString); } INIIgnoreThis ignorePropAttrib = (INIIgnoreThis)Attribute.GetCustomAttribute(property, typeof(INIIgnoreThis)); if (ignorePropAttrib == null) { canNext = true; } else { canNext = !ignorePropAttrib.IgnoreThis; } if (canNext) { INIGroupName groupNameAttrib = (INIGroupName)Attribute.GetCustomAttribute(property, typeof(INIGroupName)); if (groupNameAttrib != null) { groupName = groupNameAttrib.GName; } INIPropertyName propertyNameAttrib = (INIPropertyName)Attribute.GetCustomAttribute(property, typeof(INIPropertyName)); if (propertyNameAttrib != null) { propertyName = propertyNameAttrib.Name; } String loadedValue = readStringFromIni(groupName, propertyName, defString); Object setObject = null; if (ClassConverters.getValueFromString(loadedValue, property.PropertyType, out setObject)) { property.SetValue(this, setObject, null); } } } } }
private void btnPktRotation_Click(object sender, EventArgs e) { if ((points != null) && (points.HasPunkte)) { String trw = tbTranslRW.Text; String thw = tbTranslHW.Text; String tho = tbTranslHO.Text; Double dtRW; Double dtHW; Double dtHO; ClassConverters.StringToDouble(tbTranslRW.Text, out dtRW); ClassConverters.StringToDouble(tbTranslHW.Text, out dtHW); ClassConverters.StringToDouble(tbTranslHO.Text, out dtHO); if (points.translateCoords(dtRW, dtHW, dtHO)) { points.formatCurrentToCADdy(settings); } } }
private void btnMakeCalc_Click(object sender, EventArgs e) { if ((points != null) && (points.HasPunkte)) { resetCalc(); if (cbStartpoint.Text != cbEndpoint.Text) { ClassCADdyPunkt first = points.getPointByName(cbStartpoint.Text); ClassCADdyPunkt second = points.getPointByName(cbEndpoint.Text); if ((first != null) & (second != null)) { ClassCADdyPunkt delta = second - first; tbRiwi.Text = ClassConverters.ToString(delta.gonRiwi(), ".", "", 4, false); tbLength.Text = ClassConverters.ToString(delta.length(), ".", "", 3, false); tbDeltaH.Text = ClassConverters.ToString(delta.Hoehe, ".", "", 3, false); tbDistance.Text = ClassConverters.ToString(delta.distance(), ".", "", 3, false); tbClination.Text = ClassConverters.ToString(delta.clination(), ".", "", 1, false); } } } }
public void RegisterPlugins(CSharpConverter converter) { if (converter == null) { throw new ArgumentNullException(nameof(converter)); } ConvertBegin.Clear(); AfterPreprocessing.Clear(); GetCSharpNameResolvers.Clear(); GetCSharpTypeResolvers.Clear(); GetCSharpContainerResolvers.Clear(); CompilationConverters.Clear(); CommentConverters.Clear(); EnumConverters.Clear(); EnumItemConverters.Clear(); ClassConverters.Clear(); FieldConverters.Clear(); FunctionConverters.Clear(); FunctionTypeConverters.Clear(); ParameterConverters.Clear(); TypedefConverters.Clear(); Converting.Clear(); Converted.Clear(); ConvertEnd.Clear(); RegisteredPlugins.Clear(); for (var index = Options.Plugins.Count - 1; index >= 0; index--) { var plugin = Options.Plugins[index]; if (RegisteredPlugins.Contains(plugin)) { continue; } RegisteredPlugins.Add(plugin); plugin.Register(converter, this); } }
/// <summary>Speichern der Settings</summary> public void save() { foreach (PropertyInfo property in this.GetType().GetProperties()) { Boolean canNext = false; String groupName = "Main"; String propertyName = property.Name; INIIgnoreThis ignorePropAttrib = (INIIgnoreThis)Attribute.GetCustomAttribute(property, typeof(INIIgnoreThis)); if (ignorePropAttrib == null) { canNext = true; } else { canNext = !ignorePropAttrib.IgnoreThis; } if (canNext) { String saveValue = null; ClassConverters.getStringFromValue(property.GetValue(this, null), property.PropertyType, out saveValue); INIGroupName groupNameAttrib = (INIGroupName)Attribute.GetCustomAttribute(property, typeof(INIGroupName)); if (groupNameAttrib != null) { groupName = groupNameAttrib.GName; } INIPropertyName propertyNameAttrib = (INIPropertyName)Attribute.GetCustomAttribute(property, typeof(INIPropertyName)); if (propertyNameAttrib != null) { propertyName = propertyNameAttrib.Name; } WritePrivateProfileString(groupName, propertyName, saveValue, iniFilename); } } }
/// <summary>Textwerte in die Settings übernehmen</summary> private void applaySettings() { Int16 temp; ClassConverters.StringToInt16(tb_PointNameStart.Text, out temp); settings.PointName_Start = temp; ClassConverters.StringToInt16(tb_PointNameLength.Text, out temp); settings.PointName_Length = temp; ClassConverters.StringToInt16(tb_PointNameColumn.Text, out temp); settings.PointName_Column = temp; settings.Decimalseperator = tbDecimalseperator.Text; settings.PointName_ToUpper = cb_PointnameToupper.Checked; ClassConverters.StringToInt16(tb_CoordRWStart.Text, out temp); settings.Koord_RW_E_Start = temp; ClassConverters.StringToInt16(tb_CoordRWLength.Text, out temp); settings.Koord_RW_E_Length = temp; ClassConverters.StringToInt16(tb_CoordRWDecimals.Text, out temp); settings.Koord_RW_E_Decimals = temp; ClassConverters.StringToInt16(tb_CoordRWColumn.Text, out temp); settings.Koord_RW_E_Column = temp; ClassConverters.StringToInt16(tb_CoordHWStart.Text, out temp); settings.Koord_HW_N_Start = temp; ClassConverters.StringToInt16(tb_CoordHWLength.Text, out temp); settings.Koord_HW_N_Length = temp; ClassConverters.StringToInt16(tb_CoordHWDecimals.Text, out temp); settings.Koord_HW_N_Decimals = temp; ClassConverters.StringToInt16(tb_CoordHWColumn.Text, out temp); settings.Koord_HW_N_Column = temp; ClassConverters.StringToInt16(tb_CoordElevStart.Text, out temp); settings.Koord_Elev_Start = temp; ClassConverters.StringToInt16(tb_CoordElevLength.Text, out temp); settings.Koord_Elev_Length = temp; ClassConverters.StringToInt16(tb_CoordElevDecimals.Text, out temp); settings.Koord_Elev_Decimals = temp; ClassConverters.StringToInt16(tb_CoordElevColumn.Text, out temp); settings.Koord_Elev_Column = temp; ClassConverters.StringToInt16(tb_CoordCodeStart.Text, out temp); settings.Koord_Code_Start = temp; ClassConverters.StringToInt16(tb_CoordCodeLength.Text, out temp); settings.Koord_Code_Length = temp; ClassConverters.StringToInt16(tb_CoordCodeColumn.Text, out temp); settings.Koord_Code_Column = temp; ClassConverters.StringToInt16(tb_CoordDescriptStart.Text, out temp); settings.Koord_Descript_Start = temp; ClassConverters.StringToInt16(tb_CoordDescriptLength.Text, out temp); settings.Koord_Descript_Length = temp; ClassConverters.StringToInt16(tb_CoordDescriptColumn.Text, out temp); settings.Koord_Descript_Column = temp; ClassConverters.StringToInt16(tb_Messd_I_Start.Text, out temp); settings.Messd_I_Start = temp; ClassConverters.StringToInt16(tb_Messd_I_Length.Text, out temp); settings.Messd_I_Length = temp; ClassConverters.StringToInt16(tb_Messd_I_Decimals.Text, out temp); settings.Messd_I_Decimals = temp; ClassConverters.StringToInt16(tb_Messd_I_Column.Text, out temp); settings.Messd_I_Column = temp; ClassConverters.StringToInt16(tb_Messd_STPKCode_Start.Text, out temp); settings.Messd_STPKCode_Start = temp; ClassConverters.StringToInt16(tb_Messd_STPKCode_Length.Text, out temp); settings.Messd_STPKCode_Length = temp; ClassConverters.StringToInt16(tb_Messd_STPKCode_Column.Text, out temp); settings.Messd_STPKCode_Column = temp; ClassConverters.StringToInt16(tb_Messd_STPKDescript_Start.Text, out temp); settings.Messd_STPKDescript_Start = temp; ClassConverters.StringToInt16(tb_Messd_STPKDescript_Length.Text, out temp); settings.Messd_STPKDescript_Length = temp; ClassConverters.StringToInt16(tb_Messd_STPKDescript_Column.Text, out temp); settings.Messd_STPKDescript_Column = temp; ClassConverters.StringToInt16(tb_Messd_Hz_Start.Text, out temp); settings.Messd_Hz_Start = temp; ClassConverters.StringToInt16(tb_Messd_Hz_Length.Text, out temp); settings.Messd_Hz_Length = temp; ClassConverters.StringToInt16(tb_Messd_Hz_Decimals.Text, out temp); settings.Messd_Hz_Decimals = temp; ClassConverters.StringToInt16(tb_Messd_Hz_Column.Text, out temp); settings.Messd_Hz_Column = temp; ClassConverters.StringToInt16(tb_Messd_V_Start.Text, out temp); settings.Messd_V_Start = temp; ClassConverters.StringToInt16(tb_Messd_V_Length.Text, out temp); settings.Messd_V_Length = temp; ClassConverters.StringToInt16(tb_Messd_V_Decimals.Text, out temp); settings.Messd_V_Decimals = temp; ClassConverters.StringToInt16(tb_Messd_V_Column.Text, out temp); settings.Messd_V_Column = temp; ClassConverters.StringToInt16(tb_Messd_S_Start.Text, out temp); settings.Messd_S_Start = temp; ClassConverters.StringToInt16(tb_Messd_S_Length.Text, out temp); settings.Messd_S_Length = temp; ClassConverters.StringToInt16(tb_Messd_S_Decimals.Text, out temp); settings.Messd_S_Decimals = temp; ClassConverters.StringToInt16(tb_Messd_S_Column.Text, out temp); settings.Messd_S_Column = temp; ClassConverters.StringToInt16(tb_Messd_D_Start.Text, out temp); settings.Messd_D_Start = temp; ClassConverters.StringToInt16(tb_Messd_D_Length.Text, out temp); settings.Messd_D_Length = temp; ClassConverters.StringToInt16(tb_Messd_D_Decimals.Text, out temp); settings.Messd_D_Decimals = temp; ClassConverters.StringToInt16(tb_Messd_D_Column.Text, out temp); settings.Messd_D_Column = temp; ClassConverters.StringToInt16(tb_Messd_Code_Start.Text, out temp); settings.Messd_Code_Start = temp; ClassConverters.StringToInt16(tb_Messd_Code_Length.Text, out temp); settings.Messd_Code_Length = temp; ClassConverters.StringToInt16(tb_Messd_Code_Column.Text, out temp); settings.Messd_Code_Column = temp; ClassConverters.StringToInt16(tb_Messd_Descript_Start.Text, out temp); settings.Messd_Descript_Start = temp; ClassConverters.StringToInt16(tb_Messd_Descript_Length.Text, out temp); settings.Messd_Descript_Length = temp; ClassConverters.StringToInt16(tb_Messd_Descript_Column.Text, out temp); settings.Messd_Descript_Column = temp; }
private void reset() { if (settings != null) { tb_PointNameStart.Text = ClassConverters.ToString(settings.PointName_Start, ",", ""); tb_PointNameLength.Text = ClassConverters.ToString(settings.PointName_Length, ",", ""); tb_PointNameColumn.Text = ClassConverters.ToString(settings.PointName_Column, ",", ""); tbDecimalseperator.Text = settings.Decimalseperator; cb_PointnameToupper.Checked = settings.PointName_ToUpper; tb_CoordRWStart.Text = ClassConverters.ToString(settings.Koord_RW_E_Start, ",", ""); tb_CoordRWLength.Text = ClassConverters.ToString(settings.Koord_RW_E_Length, ",", ""); tb_CoordRWDecimals.Text = ClassConverters.ToString(settings.Koord_RW_E_Decimals, ",", ""); tb_CoordRWColumn.Text = ClassConverters.ToString(settings.Koord_RW_E_Column, ",", ""); tb_CoordHWStart.Text = ClassConverters.ToString(settings.Koord_HW_N_Start, ",", ""); tb_CoordHWLength.Text = ClassConverters.ToString(settings.Koord_HW_N_Length, ",", ""); tb_CoordHWDecimals.Text = ClassConverters.ToString(settings.Koord_HW_N_Decimals, ",", ""); tb_CoordHWColumn.Text = ClassConverters.ToString(settings.Koord_HW_N_Column, ",", ""); tb_CoordElevStart.Text = ClassConverters.ToString(settings.Koord_Elev_Start, ",", ""); tb_CoordElevLength.Text = ClassConverters.ToString(settings.Koord_Elev_Length, ",", ""); tb_CoordElevDecimals.Text = ClassConverters.ToString(settings.Koord_Elev_Decimals, ",", ""); tb_CoordElevColumn.Text = ClassConverters.ToString(settings.Koord_Elev_Column, ",", ""); tb_CoordCodeStart.Text = ClassConverters.ToString(settings.Koord_Code_Start, ",", ""); tb_CoordCodeLength.Text = ClassConverters.ToString(settings.Koord_Code_Length, ",", ""); tb_CoordCodeColumn.Text = ClassConverters.ToString(settings.Koord_Code_Column, ",", ""); tb_CoordDescriptStart.Text = ClassConverters.ToString(settings.Koord_Descript_Start, ",", ""); tb_CoordDescriptLength.Text = ClassConverters.ToString(settings.Koord_Descript_Length, ",", ""); tb_CoordDescriptColumn.Text = ClassConverters.ToString(settings.Koord_Descript_Column, ",", ""); tb_Messd_I_Start.Text = ClassConverters.ToString(settings.Messd_I_Start, ",", ""); tb_Messd_I_Length.Text = ClassConverters.ToString(settings.Messd_I_Length, ",", ""); tb_Messd_I_Decimals.Text = ClassConverters.ToString(settings.Messd_I_Decimals, ",", ""); tb_Messd_I_Column.Text = ClassConverters.ToString(settings.Messd_I_Column, ",", ""); tb_Messd_STPKCode_Start.Text = ClassConverters.ToString(settings.Messd_STPKCode_Start, ",", ""); tb_Messd_STPKCode_Length.Text = ClassConverters.ToString(settings.Messd_STPKCode_Length, ",", ""); tb_Messd_STPKCode_Column.Text = ClassConverters.ToString(settings.Messd_STPKCode_Column, ",", ""); tb_Messd_STPKDescript_Start.Text = ClassConverters.ToString(settings.Messd_STPKDescript_Start, ",", ""); tb_Messd_STPKDescript_Length.Text = ClassConverters.ToString(settings.Messd_STPKDescript_Length, ",", ""); tb_Messd_STPKDescript_Column.Text = ClassConverters.ToString(settings.Messd_STPKDescript_Column, ",", ""); tb_Messd_Hz_Start.Text = ClassConverters.ToString(settings.Messd_Hz_Start, ",", ""); tb_Messd_Hz_Length.Text = ClassConverters.ToString(settings.Messd_Hz_Length, ",", ""); tb_Messd_Hz_Decimals.Text = ClassConverters.ToString(settings.Messd_Hz_Decimals, ",", ""); tb_Messd_Hz_Column.Text = ClassConverters.ToString(settings.Messd_Hz_Column, ",", ""); tb_Messd_V_Start.Text = ClassConverters.ToString(settings.Messd_V_Start, ",", ""); tb_Messd_V_Length.Text = ClassConverters.ToString(settings.Messd_V_Length, ",", ""); tb_Messd_V_Decimals.Text = ClassConverters.ToString(settings.Messd_V_Decimals, ",", ""); tb_Messd_V_Column.Text = ClassConverters.ToString(settings.Messd_V_Column, ",", ""); tb_Messd_S_Start.Text = ClassConverters.ToString(settings.Messd_S_Start, ",", ""); tb_Messd_S_Length.Text = ClassConverters.ToString(settings.Messd_S_Length, ",", ""); tb_Messd_S_Decimals.Text = ClassConverters.ToString(settings.Messd_S_Decimals, ",", ""); tb_Messd_S_Column.Text = ClassConverters.ToString(settings.Messd_S_Column, ",", ""); tb_Messd_D_Start.Text = ClassConverters.ToString(settings.Messd_D_Start, ",", ""); tb_Messd_D_Length.Text = ClassConverters.ToString(settings.Messd_D_Length, ",", ""); tb_Messd_D_Decimals.Text = ClassConverters.ToString(settings.Messd_D_Decimals, ",", ""); tb_Messd_D_Column.Text = ClassConverters.ToString(settings.Messd_D_Column, ",", ""); tb_Messd_Code_Start.Text = ClassConverters.ToString(settings.Messd_Code_Start, ",", ""); tb_Messd_Code_Length.Text = ClassConverters.ToString(settings.Messd_Code_Length, ",", ""); tb_Messd_Code_Column.Text = ClassConverters.ToString(settings.Messd_Code_Column, ",", ""); tb_Messd_Descript_Start.Text = ClassConverters.ToString(settings.Messd_Descript_Start, ",", ""); tb_Messd_Descript_Length.Text = ClassConverters.ToString(settings.Messd_Descript_Length, ",", ""); tb_Messd_Descript_Column.Text = ClassConverters.ToString(settings.Messd_Descript_Column, ",", ""); } }
/// <summary>Trennt die Punkte aus dem Aktuellem Text</summary> /// <param name="settings"></param> public void getMeasuresFromCurrentCADdy(Settings settings) { IScintillaGateway editor = new ScintillaGateway(PluginBase.GetCurrentScintilla()); standpunkte.Clear(); if (editor != null) { Int32 countLines = editor.GetLineCount(); ClassCADdyStandpunkt cuStandpunkt = null; for (Int32 lc = 0; lc < countLines; lc++) { String cuLine = editor.GetLine(lc); // Auch Excel Splitbar machen ;-) cuLine = cuLine.Replace('\t', ' '); // Tab durch Leerzeichen ersetzten cuLine = cuLine.Replace(',', settings.Decimalseperator[0]); // , durch . ersetzten String[] split = ClassStringTools.GetFieldsManyDelimiters(cuLine, ' ', true); if (split != null) { if ((4 >= split.Length) && (split.Length >= 3)) // Standpunkt { if (split[0].StartsWith("-")) { if (cuStandpunkt != null) { standpunkte.Add(cuStandpunkt); } cuStandpunkt = new ClassCADdyStandpunkt(); cuStandpunkt.LineNumber = lc; cuStandpunkt.Punktnummer = ClassStringTools.trimToEmpty(split[settings.PointName_Column - 1]); if (settings.PointName_ToUpper) { cuStandpunkt.Punktnummer = cuStandpunkt.Punktnummer.ToUpper(); } Double temp = Double.NaN; if (ClassConverters.StringToDouble(split[settings.Messd_I_Column - 1], out temp)) { cuStandpunkt.I = temp; // code cuStandpunkt.Code = ClassStringTools.trimToEmpty(split[settings.Messd_STPKCode_Column - 1]); if (split.Length == 4) { // code cuStandpunkt.Bemerkung = ClassStringTools.trimToEmpty(split[settings.Messd_STPKDescript_Column - 1]); } } } } if (split.Length >= 5) // = Zielpunkt { if (cuStandpunkt != null) { ClassCADdyZielung zielung = new ClassCADdyZielung(); { zielung.Zielpunkt = ClassStringTools.trimToEmpty(split[settings.PointName_Column - 1]); if (settings.PointName_ToUpper) { zielung.Zielpunkt = zielung.Zielpunkt.ToUpper(); } if (!ClassStringTools.IsNullOrWhiteSpace(zielung.Zielpunkt)) { Double temp = Double.NaN; if (ClassConverters.StringToDouble(split[settings.Messd_Hz_Column - 1], out temp)) { zielung.Hz = temp; if (ClassConverters.StringToDouble(split[settings.Messd_S_Column - 1], out temp)) { zielung.S = temp; if (ClassConverters.StringToDouble(split[settings.Messd_V_Column - 1], out temp)) { zielung.V = temp; if (ClassConverters.StringToDouble(split[settings.Messd_D_Column - 1], out temp)) { zielung.D = temp; if (split.Length >= 6) { // code zielung.Code = ClassStringTools.trimToEmpty(split[settings.Messd_Code_Column - 1]); if (split.Length >= 7) { // Beschreibung zielung.Bemerkung = ClassStringTools.trimToEmpty(split[settings.Messd_Descript_Column - 1]); } } } zielung.LineNumber = lc; cuStandpunkt.Zielungen.Add(zielung); } } } } } } } } } // den letzten nicht vergessen if (cuStandpunkt != null) { standpunkte.Add(cuStandpunkt); } } hasMessdaten = standpunkte.Count > 0; }
/// <summary>Gibt einen Formatierten String zurük, der die (genutzen) Nachkommastellen von precision holt</summary> /// <param name="value"></param> /// <param name="decimalSeperator"></param> /// <param name="groupSeperator"></param> /// <param name="precision"></param> /// <returns></returns> public static String ToString(Double value, String decimalSeperator, String groupSeperator, Double precision) { Int32 nks = getDigitCount(precision); return(ClassConverters.ToString(value, decimalSeperator, groupSeperator, nks, true)); }