Aufbau der Datei
Eine STL-Datei enthält eine Liste von Dreiecken mit je drei Eckpunkten. Es gibt eine binäre und eine textbasierte Schreibweise; Scanner liefern in der Regel die binäre.
struct StlBinary { // Little-Endian
uint8 header[80]; // frei belegbar, ohne festgelegte Bedeutung
uint32 triangleCount;
struct {
float32 normal[3]; // darf 0 sein, ergibt sich aus der Punktfolge
float32 vertex1[3];
float32 vertex2[3];
float32 vertex3[3];
uint16 attributeByteCount; // in der Regel 0
} triangles[triangleCount]; // 50 Byte je Dreieck
}
Dateigröße = 84 + 50 × triangleCount
Beispiel: 84 + 50 × 11.645 = 582.334 Byte
Die Dateigröße folgt damit exakt aus der Dreieckszahl und eignet sich als
Vollständigkeitsprüfung nach einer Übertragung. Die Textfassung beginnt mit dem
Schlüsselwort solid und führt jedes Dreieck als Block:
solid name
facet normal nx ny nz
outer loop
vertex x1 y1 z1
vertex x2 y2 z2
vertex x3 y3 z3
endloop
endfacet
endsolid name
| Angabe | Im Format | Führung im Betrieb |
|---|---|---|
| Geometrie | ja | — |
| Einheit | nein | aus der Geometrie bestimmen, siehe unten |
| Körperseite | nein | am Vorgang oder im Dateinamen |
| Aufnahmedatum | nein | am Vorgang |
| Kunde | nein | am Vorgang |
Einheit bestimmen
Koordinaten in einer STL sind einheitenlos. Fußscanner schreiben üblicherweise Millimeter; nach einem Weg über CAD-Software kommen auch Zentimeter, Zoll und Meter vor. Ein 3D-Betrachter zeigt den Unterschied nicht, weil er jedes Modell bildfüllend darstellt. Maßgeblich ist die längste Kante des Hüllquaders: Ein menschlicher Fuß misst zwischen 150 und 320 mm.
| Längste Kante | Einheit | Faktor nach Millimeter |
|---|---|---|
| 150 – 320 | Millimeter | 1 |
| 15 – 32 | Zentimeter | 10 |
| 5,9 – 12,6 | Zoll | 25,4 |
| 0,15 – 0,32 | Meter | 1.000 |
| außerhalb | nicht eindeutig | Inhalt der Datei prüfen |
Die Bereiche überschneiden sich nicht. Ein Fuß von 243 mm erscheint in Zoll als 9,6 und wird damit eindeutig erkannt. Liegt der Wert außerhalb aller Bereiche, enthält die Datei mehr als einen Fuß, eine Auflageplatte oder einen Kalibrierkörper.
Fußlänge aus dem Hüllquader
Der achsparallele Hüllquader liefert drei Maße: Die längste Kante entspricht der Fußlänge, die zweite der Breite, die dritte der Höhe. Zwei Voraussetzungen gelten:
- Die Datei enthält ausschließlich den Fuß.
- Der Fuß liegt entlang einer Koordinatenachse. Bei einer Drehung um 20 Grad wächst die gemessene Länge, weil der Quader die Diagonale erfasst.
Als Fußlänge im handwerklichen Sinn gilt das Maß von der Ferse bis zur längsten Zehe unter Belastung. Der Hüllquader entspricht diesem Maß bei einem ausgerichteten Belastungsscan; das Maßblatt bleibt die Referenz.
Umrechnung in die Schuhgröße
Europäische Schuhgrößen zählen in Pariser Stich. Ein Stich entspricht zwei Dritteln Zentimeter, also 6,67 mm. Die Größe bezeichnet die Leistenlänge, nicht die Fußlänge; dazwischen liegt die Zugabe. Sie ist nicht genormt und beträgt je nach Schuhart üblicherweise 10 bis 15 mm. Die folgende Tabelle rechnet mit 12 mm.
Größe (EU) = (Fußlänge_mm + Zugabe_mm) / 6,67 gerundet auf halbe Größen
Größe (EU) = Innenlänge_mm / 6,67 bei vorhandenem Schuh
Mondopoint = Fußlänge_mm ISO 9407, ohne Zugabe
| Fußlänge | Leistenlänge (+ 12 mm) | Größe (EU) |
|---|---|---|
| 240 mm | 252 mm | 38 |
| 250 mm | 262 mm | 39,5 |
| 260 mm | 272 mm | 41 |
| 270 mm | 282 mm | 42,5 |
| 280 mm | 292 mm | 44 |
| 290 mm | 302 mm | 45,5 |
Britische und amerikanische Größen verwenden eine andere Schrittweite und werden vor einem Vergleich umgerechnet. Mondopoint nennt die Fußlänge direkt in Millimetern.
Das STL-Format trägt keine Einheit. Die längste Kante des Hüllquaders bestimmt sie eindeutig: 150 bis 320 entspricht einem Fuß in Millimetern.
Prüfung beim Import
- Vollständigkeit. Dateigröße gleich 84 + 50 × Dreieckszahl.
- Einheit. Längste Kante in einem der vier Bereiche, Umrechnung nach Millimeter.
- Inhalt. Genau ein Körper, entlang einer Achse ausgerichtet.
- Zuordnung. Körperseite, Datum und Kunde am Vorgang, nicht in der Datei.
Ortavis führt diese Prüfungen beim Import aus und legt die STL in der Mappe des Vorgangs ab. Einheit und Maße des Hüllquaders stehen neben dem drehbaren 3D-Modell. Aus Fußlänge und getragener Schuhgröße ergibt sich der Vorschlag für den Rohling; weicht die Schuhgröße deutlich von der Fußlänge ab, weist das Programm darauf hin. Ein Relief aus einer .pce-Datei durchläuft dieselbe Vermessung.
Normen und Grundlagen
- STL (Stereolithography Interface Format), 3D Systems: binäre Form mit 80 Byte Kopf, 4 Byte Dreieckszahl und 50 Byte je Dreieck; Textform mit solid, facet und vertex.
- Gleitkommazahlen: IEEE 754, einfache Genauigkeit, Little-Endian.
- Pariser Stich: 1 Stich = 2/3 cm. Mondopoint: ISO 9407, Fußlänge in Millimetern.