Hilfe

CreateCone

B3D

Aufruf

kegel% = CreateCone ([segmente%] [, boden%] [, parent%])

Parameter

segmente% Anzahl der Segmente (Standard=8)
boden% 0=ohne Boden
1=mit Boden (Standard)
parent% Identität des Objekts zu dem es hinzugefügt werden soll


Rückgabewert

Es wird die Identität des Kegels zurückgeliefert.


Beschreibung

Der Befehl CreateCone erstellt ein Kegel-Gitterobjekt und liefert danach die Identität des Kegels zurück.

Ein Kegel wird auf der Koordinate 0,0,0 erstellt und hat danach einen Radius von 1.

Der optionale Parameter "segment%" gibt die Anzahl der Segmente an. Je höher dieser Wert, desto glatter erscheint das Objekt - allerdings benötigt so ein Objekt mehr Polygone. Der Wert kann nur im Bereich von 3-100 liegen. Dies wird nur im Debug-Modus überprüft. Ein größerer Wert wird bei ausgeschaltetem Debugger aber akzeptiert. Wird ein viel zu großer Wert übergeben, dann kann der Computer sogar abstürzen!

Berechnung der Polygonanzahl:
Polygone=Segmente+(Segmente-2)*Boden

4 Segmente: 6 Polygone - Pyramide
8 Segmente: 14 Polygone - minimale Anzahl der Segmente
16 Segmente: 30 Polygone - glatter Kegel (mittlere Entfernung)
32 Segmente: 62 Polygone - glatter Kegel (nahe Entfernung)

Mit dem optionalen Parameter "boden%" kann man den Kegelboden ein- oder ausschalten. Ist die Grundfläche des Kegels nie sichtbar, dann sollte es unbedingt ausgeschaltet werden - dadurch wird die Polygonanzahl etwas reduziert.

Wurde der Parameter "parent%" angegeben, dann wird dieser Kegel zu einem Objekt hinzugefügt. Falls nun ein Parent-Objekt bewegt wird, dann werden alle hinzugefügten Objekte automatisch verschoben. Ein Child-Objekt verschiebt dagegen kein Parent-Objekt mit.

Der Kegel wird normalerweise an der Position 0,0,0 erstellt. Wurde Parent angegeben, dann wird es an der Position des Parent-Objekts erstellt.


Beispiel

Standardbeispiel:

Graphics3D 640, 480
SetBuffer BackBuffer()
WireFrame 1

camera = CreateCamera()

light = CreateLight(2)
RotateEntity light, 90, 0, 0
PositionEntity light, 0, 10, 10

cone1 = CreateCone(20, 1)
RotateEntity cone1, 30, 0, 0
PositionEntity cone1, - 2, 0, 5

cone2 = CreateCone(100, 0)
RotateEntity cone2, 30, 0, 0
PositionEntity cone2, 2, 0, 5

While Not KeyHit(1)
   RenderWorld
   Flip
Wend
End


Siehe auch

CreateCube, CreateCylinder, CreateSphere

Übersicht 3D Grafik Mesh