Exemple #1
0
 /// <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);
 }
Exemple #2
0
        /// <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(' '));
        }
Exemple #3
0
 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"));
         }
     }
 }
Exemple #4
0
        /// <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(' '));
        }
Exemple #5
0
        /// <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);
        }
Exemple #6
0
 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;
     }
 }
Exemple #7
0
 /// <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;
 }
Exemple #8
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
                { }
            }
        }
Exemple #9
0
        /// <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);
        }
Exemple #11
0
        /// <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);
        }
Exemple #12
0
 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);
             }
         }
     }
 }
Exemple #13
0
 /// <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);
                 }
             }
         }
     }
 }
Exemple #14
0
 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);
         }
     }
 }
Exemple #15
0
 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);
             }
         }
     }
 }
Exemple #16
0
        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);
            }
        }
Exemple #17
0
        /// <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);
                }
            }
        }
Exemple #18
0
        /// <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;
        }
Exemple #19
0
        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;
        }
Exemple #21
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));
        }