private void ParseQuerschnitte(IReadOnlyList <string> lines) { for (var i = 0; i < lines.Count; i++) { if (lines[i] != "Querschnitt") { continue; } FeParser.InputFound += "\nQuerschnitt"; do { substrings = lines[i + 1].Split(delimiters); switch (substrings.Length) { case 2: { var querschnittId = substrings[0]; var flaeche = double.Parse(substrings[1]); var querschnitt = new Querschnitt(flaeche) { QuerschnittId = querschnittId }; modell.Querschnitt.Add(querschnittId, querschnitt); i++; break; } case 3: { var querschnittId = substrings[0]; var flaeche = double.Parse(substrings[1]); var ixx = double.Parse(substrings[2]); var querschnitt = new Querschnitt(flaeche, ixx) { QuerschnittId = querschnittId }; modell.Querschnitt.Add(querschnittId, querschnitt); i++; break; } default: throw new ParseAusnahme((i + 2) + ": Querschnitt, falsche Anzahl Parameter"); } } while (lines[i + 1].Length != 0); break; } }
public void SetCrossSectionReferences(FEModell modell) { // Elementquerschnitt für 2D Elemente if (ElementCrossSectionId == null) { return; } if (modell.Querschnitt.TryGetValue(ElementCrossSectionId, out var crossSection)) { ElementCrossSection = crossSection; } else { var querschnitt = MessageBox.Show("Querschnitt " + ElementCrossSectionId + " ist nicht im Modell enthalten.", "Abstract2D"); _ = querschnitt; } }
private void ParseQuerschnitte(IReadOnlyList <string> lines) { var delimiters = new[] { '\t' }; for (var i = 0; i < lines.Count; i++) { if (lines[i] != "Querschnitt") { continue; } FeParser.InputFound += "\nQuerschnitt"; do { substrings = lines[i + 1].Split(delimiters); var querschnittId = substrings[0]; var thickness = double.Parse(substrings[1]); var querschnitt = new Querschnitt(thickness); modell.Querschnitt.Add(querschnittId, querschnitt); i++; } while (lines[i + 1].Length != 0); break; } }