5 #ifndef CNOID_COLLISION_COLDET_MODEL_PAIR_H_INCLUDED 6 #define CNOID_COLLISION_COLDET_MODEL_PAIR_H_INCLUDED 29 return detectCollisionsSub(
true);
33 return collisionPairInserter->cdContact;
37 collisionPairInserter->cdContact.clear();
41 return !detectCollisionsSub(
false).empty();
44 double computeDistance(
double* point0,
double* point1);
50 double computeDistance(
int& out_triangle0,
double* out_point0,
int& out_triangle1,
double* out_point1);
52 bool detectIntersection();
57 tolerance_ = tolerance;
62 int calculateCentroidIntersection(
float &cx,
float &cy,
float &A,
float radius, std::vector<float> vx, std::vector<float> vy);
64 int makeCCW(std::vector<float> &vx, std::vector<float> &vy);
66 float calculatePolygonArea(
const std::vector<float> &vx,
const std::vector<float> &vy);
67 void calculateSectorCentroid(
float &cx,
float &cy,
float radius,
float th1,
float th2);
70 return sqrt(pow(x, 2) + pow(y, 2)) <= r;
72 bool isInsideTriangle(
float x,
float y,
const std::vector<float> &vx,
const std::vector<float> &vy);
74 int calculateIntersection(std::vector<float> &x, std::vector<float> &y,
float radius,
float x1,
float y1,
float x2,
float y2);
78 std::vector<collision_data>& detectCollisionsSub(
bool detectAllContacts);
79 bool detectMeshMeshCollisions(
bool detectAllContacts);
80 bool detectSphereSphereCollisions(
bool detectAllContacts);
81 bool detectSphereMeshCollisions(
bool detectAllContacts);
82 bool detectPlaneCylinderCollisions(
bool detectAllContacts);
83 bool detectPlaneMeshCollisions(
bool detectAllContacts);
std::vector< collision_data > & detectCollisions()
Definition: ColdetModelPair.h:28
Definition: CollisionPairInserter.h:17
void setTolerance(double tolerance)
Definition: ColdetModelPair.h:56
boost::shared_ptr< ColdetModelPair > ColdetModelPairPtr
Definition: ColdetModelPair.h:92
void clearCollisions()
Definition: ColdetModelPair.h:36
std::vector< collision_data > & collisions()
Definition: ColdetModelPair.h:32
bool isInsideCircle(float r, float x, float y)
Definition: ColdetModelPair.h:69
const ColdetModelPtr & model(int index)
Definition: ColdetModelPair.h:26
Definition: ColdetModelPair.h:15
double tolerance() const
Definition: ColdetModelPair.h:54
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
boost::shared_ptr< ColdetModel > ColdetModelPtr
Definition: ColdetModel.h:20
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37
bool checkCollision()
Definition: ColdetModelPair.h:40