28#pragma warning(disable:4786)
144 a.
curr, b.
curr, v, sa, sb))
return false;
153 a.
curr, b.
curr, v, sa))
return false;
bool intersect(const BBox &a, const BBox &b)
bool find_prim(const BBoxNode *tree, const Convex &c, const BBox &bb, const Transform &b2a, Vector &v, ShapePtr &p)
bool common_point(const BBoxNode *tree, const Convex &c, const BBox &bb, const Transform &b2a, Vector &v, Point &pa, Point &pb)
void closest_points(const Convex &a, const Convex &b, const Transform &a2w, const Transform &b2w, Point &pa, Point &pb)
bool common_pointComplexComplex(const Shape &a, const Shape &b, const Transform &a2w, const Transform &b2w, Vector &v, Point &pa, Point &pb)
AlgoTable< Common_point > Common_pointTable
bool intersectComplexConvex(const Shape &a, const Shape &b, const Transform &a2w, const Transform &b2w, Vector &v)
IntersectTable * intersectInitialize()
Common_pointTable * common_pointInitialize()
bool intersect(const Object &a, const Object &b, Vector &v)
bool intersectComplexComplex(const Shape &a, const Shape &b, const Transform &a2w, const Transform &b2w, Vector &v)
AlgoTable< Intersect > IntersectTable
bool prev_closest_points(const Object &a, const Object &b, Vector &v, Point &pa, Point &pb)
bool common_pointComplexConvex(const Shape &a, const Shape &b, const Transform &a2w, const Transform &b2w, Vector &v, Point &pa, Point &pb)
bool intersectConvexConvex(const Shape &a, const Shape &b, const Transform &a2w, const Transform &b2w, Vector &v)
bool common_point(const Object &a, const Object &b, Vector &v, Point &pa, Point &pb)
bool common_pointConvexConvex(const Shape &a, const Shape &b, const Transform &a2w, const Transform &b2w, Vector &v, Point &pa, Point &pb)
bool(* Common_point)(const Shape &, const Shape &, const Transform &, const Transform &, Vector &, Point &, Point &)
bool(* Intersect)(const Shape &, const Shape &, const Transform &, const Transform &, Vector &)
Function lookup(ShapeType type1, ShapeType type2) const
Object(DtObjectRef obj, ShapePtr shape)
virtual ShapeType getType() const =0