Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
Polyline(<Argumenteliste>);


<Argumenteliste>

Definiert die Argumenteliste, durch Kommata getrennt. Argumente definieren die individuellen Segmente einer Polylinie.


Ein Liniensegment wird durch 2 Punkte definiert.

Ein Bogensegment wird durch eine Abrundungsfunktion oder durch eine Funktion Arc0 oder Arc1 und zwei Punkten an den Enden des Bogens definiert.

Für Polylinien, die nur aus geraden Liniensegmenten bestehen, enthält die <Argumenteliste> nur 2D-Punkte, die über die Funktion Point(x,y) definiert werden.

...

Code Block
Point(<cx>,<cy>)


<cx>

Definiert die X-Koordinate des Punkts

<cy>

Definiert die Y-Koordinate des Punkts


Ein Rechteck kann beispielsweise wie folgt definiert werden:

...

Code Block
Arc0(<cx>,<cy>),
Arc1(<cx>,<cy>),


<cx>

Definiert die X-Koordinate des Bogenmittelpunkts

<cy>

Definiert die Y-Koordinate des Bogenmittelpunkts


Anfangs- und Endpunkte eines Bogens werden durch die vorhergehend und nachfolgend genannten Argumente definiert.

Arc0 und Arc1 können das erste oder letzte Argument in der Argumenteliste darstellen. Für eine Polylinie, die nu rein nur ein Bogensegment enthält, besteht die <Argumenteliste> aus zwei durch die Funktion Point(x,y) definierten Punkten und aus einem Bogen, der entweder durch die Funktion Arc0 oder durch Arc1 definiert wird.

...

Code Block
 Fillet(<Radius>);


<Radius>

Definiert den Radius der Abrundung.


Beispiel für Abrundungen in einer Polylinie:

Code Block
// polyfillet.ppm - Polylinie mit Abrundungen
H = 5;
L = 10;
FR = 1;
p2 = Polyline( // Rechteck mit abgerundeten Ecken
Point(0,0), // untere linke Ecke
Point(L,0), // untere rechte Ecke
Fillet(FR), // platziert Abrundung unten rechts
Point(L,H), // obere rechte Ecke
Fillet(FR), // platziert Abrundung oben rechts
Point(0,H), // obere linke Ecke
Fillet(FR), // platziert Abrundung oben links
Point(0,0), // schließt das Rechteck
Fillet(FR) // Anfangs-/Endecke der Abrundung 
  // Da es sich um eine geschlossene Form handelt
  // wird nachfolgend keine Point-Funktion benötigt
);
Output(p2);

...