mirror of https://github.com/CGAL/cgal
Fixing the case: 2 equal circular_arcs
This commit is contained in:
parent
7d6d4232b4
commit
010ae7e63b
|
|
@ -537,7 +537,9 @@ namespace CircularFunctors {
|
||||||
bool t1_in_a2 = has_on<CK>(a2,a1.target(),true);
|
bool t1_in_a2 = has_on<CK>(a2,a1.target(),true);
|
||||||
bool s1_in_a2 = has_on<CK>(a2,a1.source(),true);
|
bool s1_in_a2 = has_on<CK>(a2,a1.source(),true);
|
||||||
if(t1_in_a2 && s1_in_a2) {
|
if(t1_in_a2 && s1_in_a2) {
|
||||||
if(CircularFunctors::compare_xy<CK>(a1.source(), a2.source()) < 0) {
|
const Comparison_result comp =
|
||||||
|
CircularFunctors::compare_xy<CK>(a1.source(), a2.source());
|
||||||
|
if(comp < 0) {
|
||||||
if(a1.source() == a2.target()) {
|
if(a1.source() == a2.target()) {
|
||||||
*res++ = make_object(std::make_pair(a1.source(),1u));
|
*res++ = make_object(std::make_pair(a1.source(),1u));
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -552,7 +554,7 @@ namespace CircularFunctors {
|
||||||
Circular_arc_2(a1.supporting_circle(),a2.source(),a1.target());
|
Circular_arc_2(a1.supporting_circle(),a2.source(),a1.target());
|
||||||
*res++ = make_object(arc);
|
*res++ = make_object(arc);
|
||||||
}
|
}
|
||||||
} else {
|
} else if (comp > 0) {
|
||||||
if(a2.source() == a1.target()) {
|
if(a2.source() == a1.target()) {
|
||||||
*res++ = make_object(std::make_pair(a2.source(),1u));
|
*res++ = make_object(std::make_pair(a2.source(),1u));
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -567,7 +569,9 @@ namespace CircularFunctors {
|
||||||
Circular_arc_2(a1.supporting_circle(),a1.source(),a2.target());
|
Circular_arc_2(a1.supporting_circle(),a1.source(),a2.target());
|
||||||
*res++ = make_object(arc);
|
*res++ = make_object(arc);
|
||||||
}
|
}
|
||||||
} //return res;
|
} else {
|
||||||
|
*res++ = make_object(a1);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
*res++ = make_object(a2);
|
*res++ = make_object(a2);
|
||||||
//return res;
|
//return res;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue