I have also added some assertion that false is
returned when t and the point among p and q share
a coordinate.
Bug fix for 1seg2ptproblem.cin input:
s 10 120 60 20
p 60 40
p 70 40
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
This is a bug fix for the following input br82.cin.
s 80 20 240 90
s 170 70 150 80
s 30 10 260 150
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
This is a bug fix for the following input br80.cin.
s 10 120 60 20
s 60 40 70 60
s 30 110 100 40
A similar fix is probably required for fecf pqrt case,
when p is segment and q is a point. The fix works when
vertices (p,q,r) and (q,p,inf) are not on different arcs
of the Linf parabola of p and q.
Explanation for arcs:
The Linf-perpendicular line to q that passes through p partitions
the Linf-parabola of p and q in two arcs.
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
The script ipe2cin converts all segments and points
in the first page of the ipe file given as the command
line argument to the SDG Linf cin format for segments
and points. The result is printed to the standard output.
Use refirection to save to a .cin file.
The file ipe2cin.lua has to be put in the appropriate
place, e.g., ~/.ipe/scripts/ and here is an example use:
ipescript ipe2cin ipe1.ipe > ipe1.cin
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
Several changes:
Reintroduce assertion for infinite faces in find_faces_to_split.
Use orientation_2_object instead of orientation_L2_2_object
in is_linear_chain.
Make primal agnostic to type of bisector line, ray, and segment.
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
Also, try to see if it is possible to use vertex conflict
instead of the orientation Linf test in insert_third.
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
The changes fix several bugs.
One choice involves a specific choice of bisectors to
compute the vv of three segments, that gives priority
to axis-parallel segments and segments that have a common
endpoint.
Maybe these changes should be also translated to vring.
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
Problem with the following input is fixed now:
~/Dropbox/cgal/demo/Segment_Delaunay_graph_Linf_2/September/br50noseg.cin
s -50 -20 0 +30
s 0 +30 +50 -20
p -20 0
p +20 0
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
New predicates in Basic_predicates_C2.h:
is_site_h_or_v
is_site_horizontal
is_site_vertical
These predicates are used in several files in classes that are derived
from Basic_predicates_C2.
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
This fixes the bug for the input br10.cin:
s -100 110 0 100
s 200 80 -110 -190
p 0 0
s 0 100 200 80
However, it seems we must also check if things
are in the same quadrants.
The bug for input br20.cin is still there:
s -100 130 0 100
s 200 80 -110 -190
p 0 0
s 0 100 200 80
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
This fixes the bug for input:
~/Dropbox/cgal/demo/Segment_Delaunay_graph_Linf_2/September/br10noseg.cin
s -100 110 0 100
s 200 80 -110 -190
p 0 0
In particular, vertex conflict of (M,CM,DE) with F now returns -1,
where M=(0,100), C=(-100,110), D=(200,80), E=(-110,-190), F=(0,0).
Maybe the same fix has to be done for qref.
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>
There was a problem with the following input.
$ cat ~/Dropbox/cgal/demo/Segment_Delaunay_graph_Linf_2/September/br3.cin
s 50 50 100 100
p 50 0
s 0 0 50 50
Signed-off-by: Panagiotis Cheilaris <philaris@cs.ntua.gr>