CGALPY Bindings

The bindings module re-exports commonly used CGALPY types into the DiscoPygal namespace. This keeps the rest of the code concise and avoids repeating long CGALPY import paths.

Typical bound types include points, segments, polygons, arrangements, and numeric wrappers such as FT.

Use this page as the API reference for the exported binding symbols.

Currently the docs yeild ugly C++ class implementation. In the meantime, here is a clean docstring that documents the relevant variables:

  • CGAL Modules

  • Ker: CGAL Kernel module

  • Ms2: CGAL 2D Minkowski Sums module

  • Aos2: CGAL 2D Arrangements module

  • Pol2: CGAL 2D Polygons module

  • SS: CGAL Spatial Search module

  • PP2: CGAL 2D Polygon Partitioning module

  • Bso2: CGAL Boolean Set Operations module

  • CGAL Kernel Objects

  • Point_d: CGAL Point_d object

  • Point_2: CGAL Point_2 object

  • FT: CGAL Field Type (FT) object

  • Gmpq: CGAL Gmpq object

  • Segment_2: CGAL Segment_2 object

  • Circle_2: CGAL Circle_2 object

  • Vector_2: CGAL Vector_2 object

  • CGAL Spatial Search

  • Euclidean_distance: CGAL Euclediean distance function

  • K_neighbor_search: CGAL K_neighbor_search

  • Kd_tree: CGAL Kd_tree

  • Fuzzy_sphere: CGAL Fuzzy sphere

  • CGAL Transformations

  • Aff_transformation_2: CGAL Aff_transformation_2

  • Rotation: CGAL Rotation

  • Direction_2: CGAL Direction_2

  • CGAL Arrangements

  • Arrangement_2: CGAL 2D Arrangement

  • Arrangement_on_surface_2: General CGAL Arrangement that can be on a surface

  • Face: CGAL Arrangement Face handle

  • Halfedge: CGAL Arrangement Halfedge handle

  • Vertex: CGAL Arrangement Vertex handle

  • Arr_trapezoid_ric_point_location: CGAL Arrangement trapezoid ric point location

  • Arr_overlay_function_traits: CGAL Arrangement face overlay traits

  • X_monotone_curve_2: CGAL X_monotone_curve_2 object

  • Curve_2: CGAL Curve_2 object

  • TPoint: CGAL Aos2 Point_2

  • CGAL 2D Polygons

  • Polygon_2: CGAL Polygon_2

  • Polygon_set_2: CGAL Polygon_set_2

  • Polygon_with_holes_2: CGAL Polygon_with_holes_2

class discopygal.bindings.Aff_transformation_2(*args, **kwargs)

CGAL Aff_transformation_2

cartesian

returns entry mij in a matrix representation in which m22 is 1.

hm

returns entry mij in some fixed matrix representation.

homogeneous

returns entry mij in some fixed matrix representation.

inverse

gives the inverse transformation.

is_even

returns true, if the transformation is not reflecting, i.e. the determinant of the involved linear transformation is non-negative.

is_odd

returns true, if the transformation is reflecting.

is_reflection

returns true, if the object was constructed using the tag CGAL::Reflection, or is the result of the composition of only such reflection transformation objects.

is_rotation

returns true, if the object was constructed using the tag CGAL::Rotation, or is the result of the composition of only such rotation transformation objects.

is_scaling

returns true, if the object was constructed using the tag CGAL::Scaling, or is the result of the composition of only such scaling transformation objects.

is_translation

returns true, if the object was constructed using the tag CGAL::Translation, or is the result of the composition of only such translation transformation objects.

m

returns entry mij in a matrix representation in which m22 is 1.

transform
discopygal.bindings.Aos2 = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.Aos2'>

CGAL 2D Arrangements module (segment traits)

class discopygal.bindings.Arr_overlay_function_traits(*args, **kwargs)

CGAL Arrangement face overlay traits

set_ee_e
set_ee_v
set_ef_e
set_ev_v
set_fe_e
set_ff_f
set_fv_v
set_ve_v
set_vf_v
set_vv_v
discopygal.bindings.Arr_overlay_function_traits_circle

CGAL face overlay traits of a circle-segment arrangement

discopygal.bindings.Arr_traits_circle

CGAL circle-segment arrangement traits

discopygal.bindings.Arr_trapezoid_ric_point_location_circle

CGAL point location of a circle-segment arrangement

class discopygal.bindings.Arrangement_2(*args, **kwargs)

CGAL 2D Arrangement

number_of_vertices_at_infinity
unbounded_face
discopygal.bindings.Arrangement_2_circle

CGAL 2D Arrangement that may hold circular arcs

discopygal.bindings.As2 = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2CsVeHeFePl_bso2_ch2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2CsVeHeFePl_bso2_ch2_pol2_ss2.Aos2'>

CGAL 2D Arrangements module (circle-segment traits)

discopygal.bindings.Bso2 = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.Bso2'>

CGAL Boolean Set Operations module

class discopygal.bindings.Circle_2(*args, **kwargs)

CGAL Circle_2 object

bounded_side
center
has_on_boundary
has_on_bounded_side
has_on_negative_side
has_on_positive_side
has_on_unbounded_side
is_degenerate
orientation
oriented_side
orthogonal_transform
squared_radius
discopygal.bindings.Curve_2

CGAL Curve_2 object

discopygal.bindings.Curve_2_circle

CGAL circle-segment Curve_2 object (accepts a Segment_2 or a Circle_2)

class discopygal.bindings.Direction_2(*args, **kwargs)

CGAL Direction_2

counterclockwise_in_between
delta
dx
dy
transform
vector
class discopygal.bindings.Euclidean_distance(*args, **kwargs)

CGAL Euclediean distance function

max_distance_to_rectangle
min_distance_to_rectangle
transformed_distance
class discopygal.bindings.Face(*args, **kwargs)

CGAL Arrangement Face handle

data
has_outer_ccb
holes
inner_ccbs
number_of_holes
number_of_inner_ccbs
number_of_isolated_vertices
number_of_outer_ccbs
outer_ccb
outer_ccb_circulator
outer_ccbs
set_data
discopygal.bindings.Face_circle

CGAL Arrangement Face handle of a circle-segment arrangement

class discopygal.bindings.Fuzzy_sphere(*args, **kwargs)

CGAL Fuzzy sphere

contains
inner_range_intersects
outer_range_intersects
class discopygal.bindings.Gmpq(*args, **kwargs)

CGAL Gmpq object

denominator
numerator
size
to_double
class discopygal.bindings.Halfedge(*args, **kwargs)

CGAL Arrangement Halfedge handle

ccb
ccb_circulator
curve
curve_unsafe
curve_unsafe_mutable
data
direction
face
is_fictitious
next
prev
set_data
source
target
twin
discopygal.bindings.Halfedge_circle

CGAL Arrangement Halfedge handle of a circle-segment arrangement

CGAL K_neighbor_search

k_neighbors
class discopygal.bindings.Kd_tree(*args, **kwargs)

CGAL Kd_tree

build
capacity
insert
invalidate_build
points
remove
reserve
search
size
discopygal.bindings.Ker = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.Ker'>

CGAL Kernel module

class discopygal.bindings.Line_2(*args, **kwargs)

CGAL 2D Line_2 object

a
b
c
direction
has_on
has_on_boundary
has_on_negative_side
has_on_positive_side
is_degenerate
is_horizontal
is_vertical
opposite
oriented_side
perpendicular
projection
to_vector
transform
x_at_y
y_at_x
discopygal.bindings.Ms2 = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.Ms2'>

CGAL 2D Minkowski Sums module

class discopygal.bindings.Point_2(*args, **kwargs)

CGAL Point_2 object

bbox
cartesian
cartesians
dimension
hw
hx
hy
x
y
class discopygal.bindings.Point_d(*args, **kwargs)

CGAL Point_d object

cartesian
cartesians
dimension
discopygal.bindings.Pol2 = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2SegVeHeFePl_bso2_ch2_ms2_pol2_ss2.Pol2'>

CGAL 2D Polygons module

class discopygal.bindings.Polygon_2(*args, **kwargs)

CGAL Polygon_2

area
bbox
bottom_vertex
bounded_side
clear
edge
edges
has_on_boundary
has_on_bounded_side
has_on_negative_side
has_on_positive_side
has_on_unbounded_side
is_clockwise_oriented
is_collinear_oriented
is_convex
is_counterclockwise_oriented
is_empty
is_simple
left_vertex
orientation
oriented_side
push_back
reverse_orientation
right_vertex
size
top_vertex
vertex
vertex_mutable
vertices
class discopygal.bindings.Polygon_with_holes_2(*args, **kwargs)

CGAL Polygon_with_holes_2

bbox
class discopygal.bindings.Rotation(*args, **kwargs)

CGAL Rotation

discopygal.bindings.Ss = <module 'CGALPY_kerEpecInt_kerdEpicdDyn_aos2CsVeHeFePl_bso2_ch2_pol2_ss2.CGALPY_kerEpecInt_kerdEpicdDyn_aos2CsVeHeFePl_bso2_ch2_pol2_ss2.Ss'>

CGAL Spatial Search module

discopygal.bindings.TPoint

CGAL Aos2 Point_2

discopygal.bindings.TPoint_circle

CGAL circle-segment traits Point_2

class discopygal.bindings.Vector_2(*args, **kwargs)

CGAL Vector_2 object

cartesian
cartesians
dimension
direction
homogeneous
hw
hx
hy
perpendicular
squared_length
transform
x
y
class discopygal.bindings.Vertex(*args, **kwargs)

CGAL Arrangement Vertex handle

degree
face
incident_halfedges
incident_halfedges_circulator
is_at_open_boundary
is_isolated
parameter_space_in_x
parameter_space_in_y
point
point_unsafe
point_unsafe_mutable
discopygal.bindings.Vertex_circle

CGAL Arrangement Vertex handle of a circle-segment arrangement

class discopygal.bindings.X_monotone_curve_2(*args, **kwargs)

CGAL X_monotone_curve_2 object

bbox
flip
is_directed_right
is_vertical
left
line
right
segment
set_left
set_right
source
target
discopygal.bindings.X_monotone_curve_2_circle

CGAL circle-segment X_monotone_curve_2 object

class discopygal.bindings.FT(value)
approx
exact
to_double