5#ifndef __I_TRIANGLE_SELECTOR_H_INCLUDED__
6#define __I_TRIANGLE_SELECTOR_H_INCLUDED__
IReferenceCounted()
Constructor.
Axis aligned bounding box in 3d dimensional space.
3D line between two points with intersection methods.
Interface to return triangles with specific properties.
virtual s32 getTriangleCount() const =0
Get amount of all available triangles in this selector.
virtual void getTriangles(core::triangle3df *triangles, s32 arraySize, s32 &outTriangleCount, const core::line3d< f32 > &line, const core::matrix4 *transform=0) const =0
Gets the triangles for one associated node which have or may have contact with a 3d line.
virtual void getTriangles(core::triangle3df *triangles, s32 arraySize, s32 &outTriangleCount, const core::matrix4 *transform=0) const =0
Gets the triangles for one associated node.
virtual const ITriangleSelector * getSelector(u32 index) const =0
Get TriangleSelector based on index based on getSelectorCount.
virtual void getTriangles(core::triangle3df *triangles, s32 arraySize, s32 &outTriangleCount, const core::aabbox3d< f32 > &box, const core::matrix4 *transform=0) const =0
Gets the triangles for one associated node which may lie within a specific bounding box.
virtual ISceneNode * getSceneNodeForTriangle(u32 triangleIndex) const =0
Get scene node associated with a given triangle.
virtual u32 getSelectorCount() const =0
Get number of TriangleSelectors that are part of this one.
virtual ITriangleSelector * getSelector(u32 index)=0
Get TriangleSelector based on index based on getSelectorCount.
triangle3d< f32 > triangle3df
Typedef for a f32 3d triangle.
CMatrix4< f32 > matrix4
Typedef for f32 matrix.
All scene management can be found in this namespace: Mesh loading, special scene nodes like octrees a...
Everything in the Irrlicht Engine can be found in this namespace.
unsigned int u32
32 bit unsigned variable.
signed int s32
32 bit signed variable.