Ein Objekt der Klasse JsgVect3List ist ein Array von JsgVect3 Elementen. JsgVect3List ist keine eigene Klasse. Zur Manipulation stehen die JavaScript Funktionen für Arrays zur Verfügung.
Funktionen mit JsgVect3List Objekten sind unter JsgVect3 Funktionen aufgeführt.
VectListFromFunc() | Ereugt eine Liste von 3D-Punkten bzw. 3D-Vektoren JsgVect3List über eine benutzerdefinierte Funktion |
PolygonFromFunc() | Ereugt JsgPolygon über eine benutzerdefinierte Funktion |
JsgVect3List.Ok() | Gibt true zurück, wenn ein Objekt vom Typ JsgVect3List ist |
JsgVect3List.ToPoly2D() | Wandelt ein JsgVect3List bestehend aus einer Liste von 3D-Vektoren in ein JsgPolygon bestehend aus 2D-Vektoren in einem für das 2D-Zeichnen benötigten Format. |
JsgMat3.TransList() | Multipliziert alle JsgVect3 Vektoren eines Arrays mit einer JsgMat3 Matrix und gibt die neuen resultierenden Vektoren in einem neuen Array zurück |
JsgCamera.TransList() | Viewing-Transformation eines JsgVect3List |
JsgCamera.TransToPoly2D() | Viewing-Transformation eines JsgVect3List und Reduktion der 3D-Vektoren zu einem 2D-JsgPolygon |
global JsgVect3List.Ok( Object )
Gibt true zurück, wenn Object definiert ist und vom Typ JsgVect3List ist.
Ein Objekt ist vom Typ JsgVect3List, wenn Object definiert ist und ein Array ist. Der Array muss entweder leer sein oder das erste Element muss vom Typ JsgVect3 sein, siehe JsgVect3.Ok().
Diese Funktion ist dazu gedacht, Fälle zu unterscheiden, falls eine Funktion verschiedene Argument-Typen akzeptiert.
function myFunc( arg ) { if (JsgVect3List.Ok(arg)) { // handle arg as a JsgVect3List } else { // handle arg as something else } }
global JsgVect3List.ToPoly2D( VecList, Poly )
Reduziert die 3D-Vektoren in VecList auf 2 Dimensionen, indem die Z-Komponente ignoriert wird. Wenn Poly definiert und vom Typ JsgPolygon ist, werden die resultierenden 2D-Vektoren in Poly gespeichert. Ist Poly nicht definiert, wird ein neues JsgPolygon erzeugt, in welchem die 2D-Vektoren gespeichert werden. Diese neue Polygon, oder Poly falls definiert, wird zurückgegeben.
JsGraphX3D.VectListFromFunc( Params )
}
Erzeugt eine JsgVect3List aus den Vektoren, welche Func beim Aufruf zurückgibt. VectListFromFunc generiert X-Werte von Min bis Max. Mit jedem dieser Werte wird Func aufgerufen. Für Properties, die in Params nicht definiert sind, werden die Defaultwerte verwendet.
Die Grösse der JsgVect3List kann entweder durch Angabe von Steps (Anzahl Schritte zwischen Min und Max) oder durch Angabe von Delta (Schrittweite) bestimmt werden. Wird beides angegeben, hat Steps Vorrang.
Min darf grösser als Max sein. Die X-Werte werden immer von Min nach Max generiert, in diesem Falle vom grösseren zum kleineren Wert. Das Vorzeichen von Delta wird ignoriert.
In Params können beliebige weitere Parameter definiert werden. Das Argument Params wird der Funktion Func übergeben. Diese kann auf die weiteren Parameter zugreifen. So kann zum Beispiel eine JsgPlane an die Funktion übergeben werden, sodass die Funktion Punkte auf einer Ebene generieren kann.
Die erzeugte JsgVect3List kann zum Beispiel mit der Funktion Polygon3D() oder Marker3D() gezeichnet werden.
JsGraphX3D.PolygonFromFunc( Params, poly )
}
Erzeugt ein Polygon aus den Vektoren, welche Func beim Aufruf zurück gibt. Wenn poly ein JsgPolygon ist, werden die berechneten Punkte in diesem Polygon gespeichert. Wenn poly nicht definiert ist, wird ein neues JsgPolygon erzeugt und die Punkte werden darin gespeichert.
PolygonFromFunc generiert X-Werte von Min bis Max. Mit jedem dieser Werte wird Func aufgerufen. Für Properties, die in Params nicht definiert sind, werden die Defaultwerte verwendet.
Die Anzahl der berechneten Punkte kann entweder durch Angabe von Steps (Anzahl Schritte zwischen Min und Max) oder durch Angabe von Delta (Schrittweite) bestimmt werden. Wird beides angegeben, hat Steps Vorrang.
Min darf grösser als Max sein. Die X-Werte werden immer von Min nach Max generiert, in diesem Falle vom grösseren zum kleineren Wert. Das Vorzeichen von Delta wird ignoriert.
In Params können beliebige weitere Parameter definiert werden. Das Argument Params wird der Funktion Func übergeben. Diese kann auf die weiteren Parameter zugreifen. So kann zum Beispiel eine JsgPlane an die Funktion übergeben werden, sodass die Funktion Punkte auf einer Ebene generieren kann.
Wenn in Params das Property Graph3D nicht definiert ist, wird es erzeugt und this wird zugewiesen.