mirror of https://github.com/CGAL/cgal
removed type wrapper
added Ray/Vector types in AABB_traits_2/3
This commit is contained in:
parent
560e576488
commit
bc3e8fa235
|
|
@ -47,10 +47,11 @@ struct AABB_traits_intersection_base_2<GeomTraits,false>{};
|
|||
template <typename GeomTraits>
|
||||
struct AABB_traits_intersection_base_2<GeomTraits,true>{
|
||||
typedef typename GeomTraits::Ray_2 Ray_2;
|
||||
typedef typename GeomTraits::Ray_2 Ray;
|
||||
typedef typename GeomTraits::Point_2 Point_2;
|
||||
typedef typename GeomTraits::Point_2 Point;
|
||||
typedef typename GeomTraits::Ray_2 Ray;
|
||||
typedef typename GeomTraits::Vector_2 Vector_2;
|
||||
typedef typename GeomTraits::Vector_2 Vector;
|
||||
typedef typename GeomTraits::FT FT;
|
||||
typedef typename GeomTraits::Cartesian_const_iterator_2 Cartesian_const_iterator_2;
|
||||
typedef typename GeomTraits::Construct_cartesian_const_iterator_2 Construct_cartesian_const_iterator_2;
|
||||
|
|
|
|||
|
|
@ -70,10 +70,11 @@ struct AABB_traits_intersection_base<GeomTraits,false>{};
|
|||
template <typename GeomTraits>
|
||||
struct AABB_traits_intersection_base<GeomTraits,true>{
|
||||
typedef typename GeomTraits::Ray_3 Ray_3;
|
||||
typedef typename GeomTraits::Ray_3 Ray;
|
||||
typedef typename GeomTraits::Point_3 Point_3;
|
||||
typedef typename GeomTraits::Point_3 Point;
|
||||
typedef typename GeomTraits::Ray_3 Ray;
|
||||
typedef typename GeomTraits::Vector_3 Vector_3;
|
||||
typedef typename GeomTraits::Vector_3 Vector;
|
||||
typedef typename GeomTraits::FT FT;
|
||||
typedef typename GeomTraits::Cartesian_const_iterator_3 Cartesian_const_iterator_3;
|
||||
typedef typename GeomTraits::Construct_cartesian_const_iterator_3 Construct_cartesian_const_iterator_3;
|
||||
|
|
|
|||
|
|
@ -33,29 +33,12 @@
|
|||
|
||||
namespace CGAL {
|
||||
|
||||
namespace internal {
|
||||
template<class GT, int>
|
||||
struct Intersection_traits_wrapper {};
|
||||
|
||||
template<class GT>
|
||||
struct Intersection_traits_wrapper<GT, 2> {
|
||||
typedef typename GT::Ray_2 Ray;
|
||||
typedef typename GT::Vector_2 Vector;
|
||||
};
|
||||
|
||||
template<class GT>
|
||||
struct Intersection_traits_wrapper<GT, 3> {
|
||||
typedef typename GT::Ray_3 Ray;
|
||||
typedef typename GT::Vector_3 Vector;
|
||||
};
|
||||
}
|
||||
|
||||
template<typename AABBTree, typename SkipFunctor>
|
||||
class AABB_ray_intersection {
|
||||
typedef typename AABBTree::AABB_traits AABB_traits;
|
||||
static const int dimension = AABB_traits::Point::Ambient_dimension::value;
|
||||
typedef typename internal::Intersection_traits_wrapper<AABB_traits, dimension>::Ray Ray;
|
||||
typedef typename internal::Intersection_traits_wrapper<AABB_traits, dimension>::Vector Vector;
|
||||
typedef typename AABB_traits::Ray Ray;
|
||||
typedef typename AABB_traits::Vector Vector;
|
||||
|
||||
typedef typename AABBTree::template Intersection_and_primitive_id<Ray>::Type Ray_intersection_and_primitive_id;
|
||||
typedef typename Ray_intersection_and_primitive_id::first_type Ray_intersection;
|
||||
|
|
|
|||
Loading…
Reference in New Issue