Objekt-Typen

Ich versuche die Liste der gebräuchlichsten Objekt-Typen ab und zu zu erweitern:

 

Hier sind ein paar Codebeispiele um verschiedene Objekte zu erzeugen.

Teilweise überflüssiger Aufbau dient dem Verständnis der Funktionen.

 

freies Spline-Objekt:

Dieser Code erstellt einen Spline mit einem Segment und zwei Punkten, dieser wird dann im weiteren Verlauf erweitert auf einen Spline mit zwei Segmenten und 4 Punkten (jeweils zwei) und die Punkte eingefügt

 

[py]

import c4d
# erstellen eines Objektes der Klasse BaseObject mit der Definition Spline
spl = c4d.BaseObject(c4d.Ospline)
# Spline wird initialisiert, Angegeben wird: Größe des Splines (2 Punkte),Typ:Linear
spl.__init__(2, c4d.Tlinear)
# Größe wird angepasst (hier eigentlich überflüssig) auf 2Punkte,1Segment
spl.resize_object(2,1)
# Das Segment0 wird erstellt Segemnt0[Größe:2Punkte,Nicht geschloßen]
spl.set_segment(0,[2,0])
# Punkt0 wird auf Position -200,-200,-200 gesetzt
spl.set_point(0,c4d.Vector(-200,-200,-200))
# Punkt1 wird auf Position 200,200,200 gesetzt
spl.set_point(1,c4d.Vector(200,200,200))
# Größe wird angepasst auf 4Punkte,2Segmente
spl.resize_object(4,2)
<code># Das Segment1 wird erstellt Segemnt0[Größe:2Punkte,Nicht geschloßen]</code>
spl.set_segment(1,[2,0])
# Punkt2 wird auf Position 200,-200,-200 gesetzt
spl.set_point(2,c4d.Vector(200,-200,-200))
# Punkt3 wird auf Position -200,200,200 gesetzt
spl.set_point(3,c4d.Vector(-200,200,200))
# C4D wird mitgeteilt dass sich die Punkte des Objektes verändert haben
c4d.MSG_UPDATE
# das Objekt wird in das Dokument eingesetzt
doc.insert_object(spl)
# C4D wird veranlasst die Aktualisierung zu zeigen
c4d.event_add()[/py]

 

Man kann zwar mit

[py]spl.append(c4d.Vector(500))[/py]

in diesem Beispiel auch den Spline um einen Punkt erweitern.

Will man jedoch mehrere Punkte setzen passiert dies viel schneller wenn man zuvor die Splinegröße auf die gewünschte Größe erweitert und die Punkte dann setzt.

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.