@@ -31,10 +31,7 @@ namespace geode
3131 FORWARD_DECLARATION_DIMENSION_CLASS ( OwnerInfiniteLine );
3232 FORWARD_DECLARATION_DIMENSION_CLASS ( OwnerRay );
3333 FORWARD_DECLARATION_DIMENSION_CLASS ( Point );
34- template < typename PointType, index_t dimension >
35- class GenericSegment ;
3634 FORWARD_DECLARATION_DIMENSION_CLASS ( Segment );
37- FORWARD_DECLARATION_DIMENSION_CLASS ( OwnerSegment );
3835
3936 template < index_t dimension >
4037 using RefPoint = std::reference_wrapper< const Point< dimension > >;
@@ -47,9 +44,7 @@ namespace geode
4744 {
4845 public:
4946 GenericLine ( const Vector< dimension >& direction, PointType origin );
50-
51- explicit GenericLine (
52- const GenericSegment< PointType, dimension >& segment );
47+ explicit GenericLine ( const Segment< dimension >& segment );
5348 GenericLine ( const GenericLine< PointType, dimension >& other );
5449 GenericLine< PointType, dimension >& operator =(
5550 const GenericLine< PointType, dimension >& other );
@@ -75,7 +70,7 @@ namespace geode
7570 explicit OwnerInfiniteLine (
7671 const Vector< dimension >& direction, Point< dimension > origin );
7772
78- OwnerInfiniteLine ( const Segment< dimension >& segment );
73+ explicit OwnerInfiniteLine ( const Segment< dimension >& segment );
7974 OwnerInfiniteLine ( const OwnerInfiniteLine< dimension >& other );
8075 OwnerInfiniteLine< dimension >& operator =(
8176 const OwnerInfiniteLine< dimension >& other );
@@ -94,7 +89,7 @@ namespace geode
9489 explicit OwnerRay (
9590 const Vector< dimension >& direction, Point< dimension > origin );
9691
97- OwnerRay ( const Segment< dimension >& segment );
92+ explicit OwnerRay ( const Segment< dimension >& segment );
9893 OwnerRay ( const OwnerRay< dimension >& other );
9994 OwnerRay< dimension >& operator =( const OwnerRay< dimension >& other );
10095 OwnerRay ( OwnerRay< dimension >&& other ) noexcept ;
@@ -111,7 +106,7 @@ namespace geode
111106 public:
112107 InfiniteLine ( const Vector< dimension >& direction,
113108 const Point< dimension >& origin );
114- InfiniteLine ( const Segment< dimension >& segment );
109+ explicit InfiniteLine ( const Segment< dimension >& segment );
115110
116111 InfiniteLine ( const InfiniteLine< dimension >& other );
117112 InfiniteLine ( const OwnerInfiniteLine< dimension >& other );
0 commit comments