Hallo Stefan,
die gesamte IGES-Spezifikation ist ein 600-seitiges DIN A4 Buch.
Hier der Grobaufbau einer IGES-Datei:
1. Start-Sektion (zu erkennen am "S" in der vorletzten Spalte)
Hier kann jeder alles reinschreiben
2. Global-Sektion ("G" in der vorletzten Spalte)
globale Parameter, wie Parametertrennzeichen, CAD-System, Datum usw.
3. Directory Entry (DE-Section, "D" in der vorletzten Spalte)
Struktur der einzelnen Elemente (Verweis auf P-Section, Farbe, Linienstärke, Untertyp [Form-Nummer], View-Pointer, u.a)
4. Parameter Data (P-Section, "P" in der vorletzten Spalte)
mathematische Beschreibung von Geometrie
5. Terminate-Section ("T" in der vorletzten Spalte)
Ende der IGES-Datei
Es gibt unzählige verschiedene Entities
z.B.
100 - Kreis
104 - Conic
108 - Ebene
110 - Linie
112 - parametrischer Spline
114 - parametrische Surface
116 - Punkt
128 - rationaler B-Spline
144 - getrimmte Fläche
202 - Winkelbemaßung
204 - Kurvenbemaßung
206 - Durchmesserbemaßung
212 - Text
216 - lineare Bemaßung
404 - Zeichnung
410 - Ansicht
usw.
Um ein Element zu identifizieren, muß man also zuerst in die DE-Section schauen und als zweiter Parameter ist der Verweis der Zeilennummer in der P-Section. Dort findet man die geometrischen Daten. Die DE-Section ist immer zweizeilig für ein Element aufgebaut. Bsp. Linie:
110 11 0 1 7 0 1 000000000D 21
110 1 1 1 0 LINE 2D 22
In der 1. Zeile ist der zweite Wert eine 11. Also schaut man in der P-Section in die 11. Zeile.
110,3975.,1100.,-0.,-1175.,1100.,-0.; 21P 11
Daraus erkennt man, dass die Linie zwischen den Punkten P1=3975;1100;0 und P2=-1175;1100;0 erzeugt wird. Diese Punktkoordinaten werden aber beim Import nicht als Punkt erzeugt, sondern sind nur implizite Linienendpunkte.
Am Beispiel einer Parametric Spline Curve (Entity 112) sieht das wie folgt aus:
DE-Section:
112 2822 0 1 1 0 1045 000000000D 2919
112 1 2 4 0 PSPLINE 21D 2920
Der zweite Wert ist hier 2822 (Zeile in der P-Section).
P-Section:
112,3,2,2,1,0.,1.,-803.517347742016,-4.498681739366361,0.,0., 2919P 2822
169.0729284222441,-3.581899999999905,0.,0.,0.,0.,0.,0., 2919P 2823
-808.01602948138236,-4.498681739366361,0.,0.,165.4910284222442, 2919P 2824
-3.581899999999905,0.,0.,0.,0.,0.,0.; 2919P 2825
Dabei sind nacheinander folgende Parameter aufgelistet:
- Entity Nr. [212]
- Spline Typ (1=linear; 2=quadratisch, 3=kubisch, 4=Wilson-Fowler, 5=modifizierter Wilson-Fowler, 6=BSpline) [hier also 3]
- Grad der Übergänge [hier also 2 = krümmungsstetig]
- Anzahl der Dimensionen (2=planar, 3=nicht planar) [hier also 2]
- Anzahl der Segmente [hier 1]
erster Übergangspunkt zwischen 2 Segmenten
.
. (die Anzahl ist abhängig von der Anzahl der Segmente)
.
letzter Übergangspunkt zwischen 2 Segmenten
jetzt kommen die Koeffizienten der Polynome in Abhängigkeit des Polynomgrades.
AX(1)
BX(1)
CX(1)
DX(1)
AY(1)
BY(1)
CY(1)
DY(1)
AZ(1)
BZ(1)
CZ(1)
DZ(1)
Man sieht hier also, dass das nicht ganz einfach zu verstehen ist. Für Dich ist es relevant, die Werte der Übergangspunkte auszulesen.
Ich hoffe, Dir hilft es ein bisschen.
Gruß
Steffen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP