$search
BVHSplitRule specialization for OBB. More...
#include <BVH_split_rule.h>
Public Member Functions | |
| BVSplitRule () | |
| void | clear () |
| Clear the geometry data set before. | |
| void | computeRule (const OBB &bv, unsigned int *primitive_indices, int num_primitives) |
| Compute the split rule according to a subset of geometry and the the corresponding BV node. | |
| bool | operator() (const Vec3f &q) const |
| Apply the split rule on a given point. | |
| void | set (Vec3f *vertices_, Triangle *tri_indices_, BVHModelType type_) |
| Set the geometry data needed by the split rule. | |
| void | setSplitType (SplitMethodType method) |
Private Member Functions | |
| void | computeRule_bvcenter (const OBB &bv, unsigned int *primitive_indices, int num_primitives) |
| Split the node from center. | |
| void | computeRule_mean (const OBB &bv, unsigned int *primitive_indices, int num_primitives) |
| Split the node according to the mean of the data contained. | |
| void | computeRule_median (const OBB &bv, unsigned int *primitive_indices, int num_primitives) |
| Split the node according to the median of the data contained. | |
Private Attributes | |
| SplitMethodType | split_method |
| BVH_REAL | split_value |
| Vec3f | split_vector |
| Triangle * | tri_indices |
| BVHModelType | type |
| Vec3f * | vertices |
BVHSplitRule specialization for OBB.
Definition at line 216 of file BVH_split_rule.h.
| collision_checking::BVSplitRule< OBB >::BVSplitRule | ( | ) | [inline] |
Definition at line 220 of file BVH_split_rule.h.
| void collision_checking::BVSplitRule< OBB >::clear | ( | void | ) | [inline] |
Clear the geometry data set before.
Definition at line 253 of file BVH_split_rule.h.
| void collision_checking::BVSplitRule< OBB >::computeRule | ( | const OBB & | bv, | |
| unsigned int * | primitive_indices, | |||
| int | num_primitives | |||
| ) | [inline] |
Compute the split rule according to a subset of geometry and the the corresponding BV node.
Definition at line 239 of file BVH_split_rule.h.
| void collision_checking::BVSplitRule< OBB >::computeRule_bvcenter | ( | const OBB & | bv, | |
| unsigned int * | primitive_indices, | |||
| int | num_primitives | |||
| ) | [private] |
Split the node from center.
Definition at line 42 of file BVH_split_rule.cpp.
| void collision_checking::BVSplitRule< OBB >::computeRule_mean | ( | const OBB & | bv, | |
| unsigned int * | primitive_indices, | |||
| int | num_primitives | |||
| ) | [private] |
Split the node according to the mean of the data contained.
Definition at line 49 of file BVH_split_rule.cpp.
| void collision_checking::BVSplitRule< OBB >::computeRule_median | ( | const OBB & | bv, | |
| unsigned int * | primitive_indices, | |||
| int | num_primitives | |||
| ) | [private] |
Split the node according to the median of the data contained.
Definition at line 82 of file BVH_split_rule.cpp.
| bool collision_checking::BVSplitRule< OBB >::operator() | ( | const Vec3f & | q | ) | const [inline] |
Apply the split rule on a given point.
Definition at line 247 of file BVH_split_rule.h.
| void collision_checking::BVSplitRule< OBB >::set | ( | Vec3f * | vertices_, | |
| Triangle * | tri_indices_, | |||
| BVHModelType | type_ | |||
| ) | [inline] |
Set the geometry data needed by the split rule.
Definition at line 231 of file BVH_split_rule.h.
| void collision_checking::BVSplitRule< OBB >::setSplitType | ( | SplitMethodType | method | ) | [inline] |
Definition at line 225 of file BVH_split_rule.h.
SplitMethodType collision_checking::BVSplitRule< OBB >::split_method [private] |
Definition at line 277 of file BVH_split_rule.h.
BVH_REAL collision_checking::BVSplitRule< OBB >::split_value [private] |
Definition at line 271 of file BVH_split_rule.h.
Vec3f collision_checking::BVSplitRule< OBB >::split_vector [private] |
Definition at line 272 of file BVH_split_rule.h.
Triangle* collision_checking::BVSplitRule< OBB >::tri_indices [private] |
Definition at line 275 of file BVH_split_rule.h.
BVHModelType collision_checking::BVSplitRule< OBB >::type [private] |
Definition at line 276 of file BVH_split_rule.h.
Vec3f* collision_checking::BVSplitRule< OBB >::vertices [private] |
Definition at line 274 of file BVH_split_rule.h.