Crate cavalier_contours_ffi

Crate cavalier_contours_ffi 

Source
Expand description

This module contains the C foreign function interface for cavalier_contours.

Structs§

cavc_aabbindex
Opaque type that wraps a StaticAABB2DIndex.
cavc_pline
Opaque type that wraps a Polyline.
cavc_pline_boolean_o
FFI representation of PlineBooleanOptions.
cavc_pline_contains_o
FFI representation of PlineContainsOptions.
cavc_pline_parallel_offset_o
FFI representation of PlineOffsetOptions.
cavc_pline_self_intersect_o
FFI representation of PlineSelfIntersectOptions.
cavc_plinelist
Opaque type that represents a list of cavc_pline.
cavc_point
Represents a simple 2D point with x and y coordinate values.
cavc_shape
Opaque type that wraps a Shape.
cavc_shape_offset_o
FFI representation of ShapeOffsetOptions.
cavc_vertex
Represents a polyline vertex holding x, y, and bulge.

Constants§

CAVC_CONTAINS_RESULT_DISJOINT
CAVC_CONTAINS_RESULT_INTERSECTED
CAVC_CONTAINS_RESULT_INVALID_INPUT
FFI Representation of PlineContainsResult enum
CAVC_CONTAINS_RESULT_PLINE1_INSIDE_PLINE2
CAVC_CONTAINS_RESULT_PLINE2_INSIDE_PLINE1
CAVC_SELF_INTERSECTS_INCLUDE_ALL
FFI representation of SelfIntersectsInclude enum
CAVC_SELF_INTERSECTS_INCLUDE_GLOBAL
CAVC_SELF_INTERSECTS_INCLUDE_LOCAL

Functions§

cavc_aabbindex_f
Free an existing cavc_aabbindex object.
cavc_aabbindex_get_extents
Wraps the StaticAABB2DIndex::bounds method (gets total extents of the aabb index). Writes NaNs if the index is empty.
cavc_pline_add
Add a vertex to a polyline pline with x, y, and bulge.
cavc_pline_boolean
Wraps PlineSource::boolean_opt.
cavc_pline_boolean_o_create
Create a new cavc_pline_boolean_o object.
cavc_pline_boolean_o_f
Free an existing cavc_pline_boolean_o object.
cavc_pline_boolean_o_init
Write default option values to a cavc_pline_boolean_o.
cavc_pline_clear
Clears all of the vertexes of a polyline.
cavc_pline_clone
Clones the polyline.
cavc_pline_contains
Wraps PlineSource::contains_opt.
cavc_pline_contains_o_create
Create a new cavc_pline_contains_o object.
cavc_pline_contains_o_f
Free an existing cavc_pline_contains_o object.
cavc_pline_contains_o_init
Write default option values to a cavc_pline_contains_o.
cavc_pline_create
Create a new polyline object.
cavc_pline_create_aabbindex
Wraps PlineSource::create_aabb_index.
cavc_pline_create_approx_aabbindex
Wraps PlineSource::create_approx_aabb_index.
cavc_pline_eval_area
Wraps PlineSource::area.
cavc_pline_eval_extents
Wraps PlineSource::extents.
cavc_pline_eval_path_length
Wraps PlineSource::path_length.
cavc_pline_eval_wn
Wraps PlineSource::winding_number.
cavc_pline_f
Free an existing cavc_pline object.
cavc_pline_get_is_closed
Get whether the polyline is closed or not.
cavc_pline_get_userdata_count
Get the userdata value count of a polyline.
cavc_pline_get_userdata_values
Get the userdata values of a pline
cavc_pline_get_vertex
Get a polyline vertex at a given index position.
cavc_pline_get_vertex_count
Get the vertex count of a polyline.
cavc_pline_get_vertex_data
Fills the buffer given with the vertex data of a polyline.
cavc_pline_invert_direction
Wraps PlineSourceMut::invert_direction_mut.
cavc_pline_parallel_offset
Wraps PlineSource::parallel_offset_opt.
cavc_pline_parallel_offset_o_create
Create a new cavc_pline_parallel_offset_o object.
cavc_pline_parallel_offset_o_f
Free an existing cavc_pline_parallel_offset_o object.
cavc_pline_parallel_offset_o_init
Write default option values to a cavc_pline_parallel_offset_o.
cavc_pline_remove
Remove a vertex from a polyline at an index position.
cavc_pline_remove_redundant
Wraps PlineSource::remove_redundant but modifies in place rather than returning a result.
cavc_pline_remove_repeat_pos
Wraps PlineSource::remove_repeat_pos but modifies in place rather than returning a result.
cavc_pline_reserve
Reserve space for an additional number of vertexes in the cavc_pline.
cavc_pline_scale
Wraps PlineSourceMut::scale_mut.
cavc_pline_scan_for_self_intersect
Wraps PlineSource::scan_for_self_intersect_opt.
cavc_pline_self_intersect_o_create
Create a new cavc_pline_self_intersect_o object.
cavc_pline_self_intersect_o_f
Free an existing cavc_pline_self_intersect_o object.
cavc_pline_self_intersect_o_init
Write default option values to a cavc_pline_self_intersect_o.
cavc_pline_set_is_closed
Set whether the polyline is closed or not.
cavc_pline_set_userdata_values
Set the userdata values of a pline
cavc_pline_set_vertex
Set a polyline vertex at a given index position.
cavc_pline_set_vertex_data
Sets all of the vertexes of a polyline.
cavc_pline_translate
Wraps PlineSourceMut::translate_mut.
cavc_plinelist_create
Create a new cavc_plinelist object.
cavc_plinelist_f
Free an existing cavc_plinelist object and all cavc_pline owned by it.
cavc_plinelist_get_count
Get the number of polylines inside a cavc_plinelist.
cavc_plinelist_get_pline
Get a polyline at the given index position in the cavc_plinelist.
cavc_plinelist_pop
Efficiently release and return the last cavc_pline from a cavc_plinelist.
cavc_plinelist_push
Append a cavc_pline to the end of a cavc_plinelist.
cavc_plinelist_take
Release and return a cavc_pline from a cavc_plinelist at a given index position.
cavc_shape_create
Create a new cavc_shape object.
cavc_shape_f
Free an existing cavc_shape object.
cavc_shape_get_ccw_count
Get the count of counter-clockwise polylines in a shape.
cavc_shape_get_ccw_pline_userdata_count
Get the userdata value count of a CCW polyline in a shape.
cavc_shape_get_ccw_pline_userdata_values
Get the userdata values of a CCW pline in a shape
cavc_shape_get_ccw_polyline_count
Get the vertex count of a specific counter-clockwise polyline in a shape.
cavc_shape_get_ccw_polyline_is_closed
Get whether a specific counter-clockwise polyline in a shape is closed.
cavc_shape_get_ccw_polyline_vertex_data
Fills the buffer given with the vertex data of a ccw polyline in a shape.
cavc_shape_get_cw_count
Get the count of clockwise polylines in a shape.
cavc_shape_get_cw_pline_userdata_count
Get the userdata value count of a CW polyline in a shape.
cavc_shape_get_cw_pline_userdata_values
Get the userdata values of a CW pline in a shape
cavc_shape_get_cw_polyline_count
Get the vertex count of a specific clockwise polyline in a shape.
cavc_shape_get_cw_polyline_is_closed
Get whether a specific clockwise polyline in a shape is closed.
cavc_shape_get_cw_polyline_vertex_data
Fills the buffer given with the vertex data of a cw polyline in a shape.
cavc_shape_offset_o_init
Write default option values to a cavc_shape_offset_o.
cavc_shape_parallel_offset
Wraps Shape::parallel_offset.
cavc_shape_set_ccw_pline_userdata_values
Set the userdata values of a CCW polyline in a shape
cavc_shape_set_cw_pline_userdata_values
Set the userdata values of a CW polyline in a shape