bgc-c/docs/intro-deu.md

76 lines
2.7 KiB
Markdown

# Bibliothek für grundlegende geometrische Berechnungen
[Русский (Russisch)](intro-rus.md)
[English (Englisch)](intro-eng.md)
[简体中文 (Chinesisch)](intro-zho.md)
**Hinweis**: Dieser Text wurde mithilfe der maschinellen Übersetzung von Google aus der russischen Version erstellt.
## Namenskonventionen
Die Programmiersprache C kennt keine Namensräume. Daher dienen Präfixe in Namen als deren Funktion.
Die Bibliothek verwendet Präfixe in den Namen von Typen, Konstanten und Funktionen, um Namenskonflikte mit anderen Bibliotheken zu vermeiden.
### Bibliothekspräfix (Primäres Präfix)
Das primäre Präfix ist **BGC** (Abkürzung für **B**asic **G**eometric **C**computations, was übersetzt „Grundlegende geometrische Berechnungen“ bedeutet).
Für Konstanten und Datenstrukturen lautet das Präfix **BGC_**.
Beispiele für Strukturen:
- BGC_FP64_Vector3
- BGC_FP32_Quaternion
- BGC_FP32_Matrix2x2
Konstanten:
- BGC_FP32_EPSILON
- BGC_FP64_TWO_PI
Funktionen haben das Präfix **bgc_**, zum Beispiel:
- bgc_fp32_turn3_combine
- bgc_fp64_matrix3x3_subtract
### Basistyppräfix (Sekundärpräfix)
Nach dem Bibliothekspräfix folgt das Basistyppräfix.
Die Bibliothek verwendet zwei Gleitkommazahlentypen: **float** und **double** (die Typen **binary32** und **binary64** des **IEEE 754**-Standards).
Die Bibliothek verwendet daher zwei Typpräfixe:
- **FP32** bedeutet "Floating Point 32-bit", also eine 32-Bit-Gleitkommazahl, die dem Datentyp **float** in der Programmiersprache C entspricht.
- **FP64** bedeutet "Floating Point 64-bit", also eine 64-Bit-Gleitkommazahl, die dem Datentyp **double** in der Programmiersprache C entspricht.
Strukturtypen und Konstanten, die auf dem Typ **float** basieren, haben das Präfix **FP32_**:
- BGC_FP32_Vector3
- BGC_FP32_Matrix3x2
- BGC_FP32_Quaternion
- BGC_FP32_PI
- BGC_FP32_EPSILON
Strukturtypen und Konstanten, die auf dem Typ **double** basieren, haben das Präfix **FP64_**:
- BGC_FP64_Vector2
- BGC_FP64_Matrix2x3
- BGC_FP64_Turn3
- BGC_FP64_HALF_PI
- BGC_FP64_ONE_THIRD
Funktionen, die mit **float**-Daten arbeiten, haben das Präfix **fp32_**:
- bgc_fp32_vector2_get_length
- bgc_fp32_radians_to_degrees
Funktionen, die mit **double**-Datentypen arbeiten, haben das Präfix **fp32_**:
- bgc_fp32_vector2_get_length
- bgc_fp32_radians_to_degrees
Funktionen, die mit **double**-Datentypen arbeiten, haben das Präfix **fp64_**:
- bgc_fp64_vector3_reset
- bgc_fp64_normalize_radians
Durch die Verwendung solcher Präfixe kann die Bibliothek zukünftig um neue Basistypen erweitert werden.
### Datentypen
- [Zweidimensionale Vektoren](vector2-rus.md)
- [Dreidimensionale Vektoren](vector3-rus.md)
- [Quaternionen](quaternion-rus.md)