Documentation

Classes

Class CL3D.MetaTriangleSelector

Interface for making multiple triangle selectors work as one big selector.

Extends CL3D.TriangleSelector.

Class Overview
CL3D.MetaTriangleSelector()
Interface for making multiple triangle selectors work as one big selector. This is nothing more than a collection of one or more triangle selectors providing together the interface of one triangle selector. In this way, collision tests can be done with different triangle soups in one pass. See CL3D.MeshTriangleSelector for an implementation of a triangle selector for meshes.

Method Summary
Method Attributes Method Name and Description
 
Adds a triangle selector to the collection of triangle selectors.
 
Removes all triangle selectors from the collection of triangle selectors.
 
getAllTriangles(transform, outArray)
Returns all triangles for the scene node associated with this selector
 
getCollisionPointWithLine(start, end, bIgnoreBackFaces, outTriangle, ignoreInvisibleItems)
Returns the collision 3d point of a 3d line with the 3d geometry in this triangle selector.
 
getTrianglesInBox(box, transform, outArray)
Returns all triangles inside a bounding box, for the scene node associated with this selector.
 
If there are multiple scene nodes in this selector, it is possible to let it ignore one specific node, for example to prevent colliding it against itself.
Methods borrowed from class CL3D.TriangleSelector:
getRelatedSceneNode
Method Detail
addSelector(t)
Adds a triangle selector to the collection of triangle selectors.
Parameters:
t
{TriangleSelector} a TriangleSelector to add

clear()
Removes all triangle selectors from the collection of triangle selectors.

getAllTriangles(transform, outArray)
Returns all triangles for the scene node associated with this selector
Parameters:
transform
{Matrix4} a transformation matrix which transforms all triangles before returning them
outArray
{Array} output array of the triangles
Returns:
the new CL3D.TriangleSelector

getCollisionPointWithLine(start, end, bIgnoreBackFaces, outTriangle, ignoreInvisibleItems)
Returns the collision 3d point of a 3d line with the 3d geometry in this triangle selector.
Parameters:
start
{Vect3d} 3d point representing the start of the 3d line
end
{Vect3d} 3d point representing the end of the 3d line
bIgnoreBackFaces
{Boolean} if set to true, this will ignore back faced polygons, making the query twice as fast
outTriangle
{Triangle3d} if set to a triangle, this will contain the 3d triangle with which the line collided
ignoreInvisibleItems
{Boolean} set to true to ignore invisible scene nodes for collision test
Returns:
a 3d position as Bect3d if a collision was found or null if no collision was found

getTrianglesInBox(box, transform, outArray)
Returns all triangles inside a bounding box, for the scene node associated with this selector. This method will return at least the triangles that intersect the box, but may return other triangles as well.
Parameters:
box
{Box3d}
transform
{Matrix4} a transformation matrix which transforms all triangles before returning them
outArray
{Array} output array of the triangles
Returns:
the new CL3D.TriangleSelector

setNodeToIgnore(n)
If there are multiple scene nodes in this selector, it is possible to let it ignore one specific node, for example to prevent colliding it against itself.
Parameters:
n

© 2011-2012 N.Gebhardt, Ambiera
Documentation generated by JsDoc Toolkit