gts.h
heaps
Binary heaps
GtsHeap
gts_heap_new
gts_heap_insert
gts_heap_remove_top
gts_heap_top
gts_heap_freeze
gts_heap_thaw
gts_heap_foreach
gts_heap_size
gts_heap_destroy
extended_heaps
Extended binary heaps
GtsEHeapPair
GtsKeyFunc
GtsEHeap
gts_eheap_new
gts_eheap_insert
gts_eheap_insert_with_key
gts_eheap_top
gts_eheap_remove_top
gts_eheap_remove
gts_eheap_decrease_key
gts_eheap_key
gts_eheap_randomized
gts_eheap_update
gts_eheap_freeze
gts_eheap_thaw
gts_eheap_foreach
gts_eheap_size
gts_eheap_destroy
fifo
First In First Out heaps
GtsFifo
gts_fifo_new
gts_fifo_push
gts_fifo_pop
gts_fifo_top
gts_fifo_size
gts_fifo_foreach
gts_fifo_is_empty
gts_fifo_reverse
gts_fifo_write
gts_fifo_destroy
matrices
Vectors and matrices
GtsVector[3]
GtsVector4[4]
gts_vector_init
gts_vector_scalar
gts_vector_cross
gts_vector_norm
gts_vector_normalize
gts_vector_print
gts_vector4_print
GtsMatrix
gts_matrix_new
gts_matrix_assign
gts_matrix_zero
gts_matrix_identity
gts_matrix_projection
gts_matrix_scale
gts_matrix_translate
gts_matrix_rotate
gts_matrix_transpose
gts_matrix_determinant
gts_matrix_inverse
gts_matrix3_inverse
gts_matrix_product
gts_matrix_compatible_row
gts_matrix_quadratic_optimization
gts_matrix_print
gts_matrix_destroy
points
Points
GTS_POINT_CLASS
GTS_POINT
GTS_IS_POINT
GtsPointClass
GtsPoint
gts_point_class
gts_point_new
gts_point_set
gts_point_is_in_rectangle
gts_segment_triangle_intersection
gts_point_transform
gts_point_distance
gts_point_distance2
gts_point_orientation_3d
gts_point_orientation_3d_sos
GtsIntersect
gts_point_in_circle
gts_point_in_triangle_circle
gts_point_is_in_triangle
gts_point_orientation
gts_point_orientation_sos
gts_point_segment_distance2
gts_point_segment_distance
gts_point_segment_closest
gts_point_triangle_distance
gts_point_triangle_closest
gts_point_triangle_distance2
gts_point_is_inside_surface
vertices
Vertices
GTS_VERTEX_CLASS
GTS_VERTEX
GTS_IS_VERTEX
GtsVertexClass
GtsVertex
gts_vertex_class
gts_vertex_new
gts_vertex_is_unattached
gts_vertex_is_boundary
gts_vertex_is_contact
gts_vertices_are_connected
gts_vertex_replace
gts_vertex_neighbors
gts_vertex_triangles
gts_vertex_faces
gts_vertex_fan_oriented
gts_vertex_encroaches_edge
gts_vertices_from_segments
gts_vertices_merge
kd-Trees
Kd-Trees
gts_kdtree_new
gts_kdtree_range
gts_kdtree_destroy
segments
Segments
GTS_SEGMENT_CLASS
GTS_SEGMENT
GTS_IS_SEGMENT
GtsSegmentClass
GtsSegment
gts_segment_class
gts_segment_new
gts_segments_are_identical
gts_segments_are_intersecting
gts_segment_is_duplicate
gts_segment_is_ok
gts_segment_connect
gts_segments_touch
gts_segments_from_vertices
gts_segment_midvertex
edges
Edges
GTS_EDGE_CLASS
GTS_EDGE
GTS_IS_EDGE
GtsEdgeClass
GtsEdge
gts_edge_class
gts_edge_new
gts_edge_replace
gts_edge_is_unattached
gts_edge_is_duplicate
gts_edge_has_parent_surface
gts_edge_has_any_parent_surface
gts_edge_is_boundary
gts_edge_is_contact
gts_edge_belongs_to_tetrahedron
gts_edge_face_number
gts_edge_manifold_faces
GtsEncroachFunc
gts_edge_is_encroached
gts_edges_merge
gts_edges_from_vertices
gts_edge_swap
bb-trees
Bounding boxes trees
GTS_BBOX_CLASS
GTS_BBOX
GTS_IS_BBOX
GtsBBoxClass
GtsBBox
gts_bbox_class
gts_bbox_new
gts_bbox_set
gts_bbox_segment
gts_bbox_triangle
gts_bbox_surface
gts_bbox_points
gts_bbox_bboxes
gts_bbox_draw
gts_bbox_point_is_inside
gts_bboxes_are_overlapping
gts_bbox_diagonal2
gts_bbox_point_distance2
gts_bbox_is_stabbed
gts_bbox_overlaps_triangle
GtsBBTreeTraverseFunc
gts_bb_tree_new
gts_bb_tree_surface
gts_bb_tree_overlap
gts_bb_tree_is_overlapping
gts_bb_tree_traverse_overlapping
gts_bb_tree_draw
gts_bb_tree_destroy
GtsBBoxDistFunc
GtsBBoxClosestFunc
gts_bb_tree_point_distance
gts_bb_tree_point_closest
gts_bb_tree_segment_distance
gts_bb_tree_triangle_distance
gts_bb_tree_point_closest_bboxes
gts_bb_tree_surface_boundary_distance
gts_bb_tree_surface_distance
gts_bb_tree_stabbed
triangles
Triangles
GTS_TRIANGLE_CLASS
GTS_TRIANGLE
GTS_IS_TRIANGLE
GtsTriangleClass
GtsTriangle
gts_triangle_class
gts_triangle_new
gts_triangle_set
gts_triangle_area
gts_triangle_perimeter
gts_triangle_quality
gts_triangle_normal
gts_triangle_revert
gts_triangle_orientation
gts_triangle_is_duplicate
gts_triangles_angle
gts_triangles_are_compatible
gts_triangle_enclosing
gts_triangles_common_edge
gts_triangle_neighbor_number
gts_triangle_neighbors
gts_triangle_vertices_edges
gts_triangle_vertex_opposite
gts_triangle_edge_opposite
gts_triangle_vertices
gts_triangle_vertex
gts_triangle_is_ok
gts_triangle_use_edges
gts_triangle_circumcircle_center
gts_triangle_is_stabbed
gts_triangles_are_folded
gts_triangles_from_edges
gts_triangle_interpolate_height
faces
Faces
GTS_FACE_CLASS
GTS_FACE
GTS_IS_FACE
GtsFaceClass
GtsFace
gts_face_class
gts_face_new
gts_face_has_parent_surface
gts_face_neighbor_number
gts_face_neighbors
gts_face_foreach_neighbor
gts_face_is_compatible
gts_faces_from_edges
surfaces
Surfaces
GTS_SURFACE_CLASS
GTS_SURFACE
GTS_IS_SURFACE
GtsSurfaceClass
GtsSurface
gts_surface_class
gts_surface_new
gts_surface_add_face
gts_surface_remove_face
gts_surface_copy
gts_surface_merge
gts_surface_read
gts_surface_is_manifold
gts_surface_is_orientable
gts_surface_is_closed
gts_surface_vertex_number
gts_surface_edge_number
gts_surface_face_number
gts_surface_boundary
gts_surface_area
gts_surface_volume
gts_surface_center_of_mass
gts_surface_center_of_area
GtsSurfaceStats
GtsSurfaceQualityStats
gts_surface_stats
gts_surface_quality_stats
gts_surface_print_stats
gts_surface_write
gts_surface_write_oogl
gts_surface_write_oogl_boundary
gts_surface_write_vtk
GtsFunc
gts_surface_foreach_vertex
gts_surface_foreach_edge
gts_surface_foreach_face
gts_surface_foreach_face_remove
gts_surface_foreach_intersecting_face
GtsSurfaceTraverse
gts_surface_traverse_new
gts_surface_traverse_next
gts_surface_traverse_destroy
gts_surface_distance
gts_surface_strip
gts_surface_tessellate
gts_surface_generate_sphere
gts_surface_split
delaunay
Delaunay and constrained Delaunay triangulations
GTS_CONSTRAINT_CLASS
GTS_CONSTRAINT
GTS_IS_CONSTRAINT
GtsConstraintClass
GtsConstraint
gts_constraint_class
gts_point_locate
gts_delaunay_add_vertex
gts_delaunay_add_vertex_to_face
gts_delaunay_remove_vertex
gts_delaunay_add_constraint
gts_delaunay_check
gts_delaunay_remove_hull
gts_delaunay_conform
gts_delaunay_refine
iso
Isosurfaces from 3D functions
GtsCartesianGrid
GtsGridPlane
gts_grid_plane_new
gts_grid_plane_destroy
GtsIsoSlice
gts_iso_slice_new
gts_iso_slice_fill
gts_iso_slice_fill_cartesian
gts_iso_slice_destroy
gts_isosurface_slice
GtsIsoCartesianFunc
gts_isosurface_cartesian
gts_isosurface_tetra
gts_isosurface_tetra_bounded
gts_isosurface_tetra_bcl
simplify
Surface simplification and refinement
gts_surface_refine
GtsCoarsenFunc
GtsRefineFunc
GtsStopFunc
gts_surface_coarsen
gts_coarsen_stop_number
gts_coarsen_stop_cost
GtsVolumeOptimizedParams
gts_volume_optimized_vertex
gts_volume_optimized_cost
gts_edge_collapse_is_valid
gts_edge_collapse_creates_fold
psurface
Progressive surfaces
GTS_PSURFACE_CLASS
GTS_PSURFACE
GTS_IS_PSURFACE
GTS_PSURFACE_IS_CLOSED
GtsPSurfaceClass
GtsPSurface
gts_psurface_class
gts_psurface_new
gts_psurface_add_vertex
gts_psurface_remove_vertex
gts_psurface_set_vertex_number
gts_psurface_get_vertex_number
gts_psurface_min_vertex_number
gts_psurface_max_vertex_number
gts_psurface_foreach_vertex
gts_psurface_open
gts_psurface_read_vertex
gts_psurface_close
gts_psurface_write
split
Vertex split
GTS_SPLIT_CLASS
GTS_SPLIT
GTS_IS_SPLIT
GTS_SPLIT_V1
GTS_SPLIT_V2
GtsSplitClass
GtsSplitCFace
GtsSplit
gts_split_class
gts_split_new
gts_split_collapse
gts_split_expand
gts_split_height
GtsSplitTraverseFunc
gts_split_traverse
hsplit
Hierarchical vertex split
GTS_HSPLIT_CLASS
GTS_HSPLIT
GTS_IS_HSPLIT
GtsHSplitClass
GtsHSplit
gts_hsplit_class
gts_hsplit_new
gts_hsplit_collapse
gts_hsplit_expand
gts_hsplit_force_expand
hsurface
Hierarchical surfaces
GTS_HSURFACE_CLASS
GTS_HSURFACE
GTS_IS_HSURFACE
GtsHSurfaceClass
GtsHSurface
gts_hsurface_class
gts_hsurface_new
gts_hsurface_traverse
gts_hsurface_height
gts_hsurface_foreach
object
Object class
GTS_CLASS_NAME_LENGTH
GTS_OBJECT_CLASS
GTS_OBJECT
GTS_IS_OBJECT
GTS_OBJECT_CLASS_CAST
GTS_OBJECT_CAST
GTS_OBJECT_FLAGS
GTS_OBJECT_SET_FLAGS
GTS_OBJECT_UNSET_FLAGS
GTS_OBJECT_DESTROYED
GtsObjectClass
GtsObject
GtsObjectClassInfo
GtsObjectClassInitFunc
GtsObjectInitFunc
GtsArgSetFunc
GtsArgGetFunc
GtsObjectFlags
GtsColor
gts_object_class
gts_object_class_new
gts_object_class_check_cast
gts_object_class_is_from_class
gts_object_class_from_name
gts_object_new
gts_object_init
gts_object_clone
gts_object_attributes
gts_object_check_cast
gts_object_is_from_class
gts_object_reset_reserved
gts_object_destroy
gts_finalize
boolean
Boolean operations
GTS_SURFACE_INTER_CLASS
GTS_SURFACE_INTER
GTS_IS_SURFACE_INTER
GtsSurfaceInterClass
GtsSurfaceInter
gts_surface_intersection
gts_surface_inter_class
gts_surface_inter_new
gts_surface_inter_check
GtsBooleanOperation
gts_surface_inter_boolean
gts_surface_is_self_intersecting
misc
Miscellaneous macros and functions
GTS_COMMENTS
GtsFile
GtsTokenType
GtsFileVariable
gts_file_new
gts_file_next_token
gts_file_first_token_after
gts_file_assign_start
gts_file_assign_next
gts_file_assign_variables
gts_file_getc
gts_file_getc_scope
gts_file_read
gts_file_variable_error
gts_file_verror
gts_file_error
gts_file_destroy
stats
Simple statistics
GtsRange
gts_range_init
gts_range_add_value
gts_range_update
gts_range_reset
gts_range_print
oocs
Out-of-core simplification
GTS_CLUSTER_CLASS
GTS_CLUSTER
GTS_IS_CLUSTER
GtsClusterClass
GtsCluster
GtsClusterId
gts_cluster_class
gts_cluster_new
gts_cluster_add
gts_cluster_update
GTS_CLUSTER_GRID_CLASS
GTS_CLUSTER_GRID
GTS_IS_CLUSTER_GRID
GtsClusterGridClass
GtsClusterGrid
gts_cluster_grid_class
gts_cluster_grid_new
gts_cluster_grid_add_triangle
gts_cluster_grid_update
graph
Graph class
GTS_GNODE_CLASS
GTS_GNODE
GTS_IS_GNODE
GTS_GNODE_NEIGHBOR
GtsGNodeClass
GtsGNode
gts_gnode_class
gts_gnode_new
gts_gnode_degree
gts_gnode_foreach_edge
gts_gnode_foreach_neighbor
gts_gnode_weight
gts_gnode_move_cost
GTS_GEDGE_CLASS
GTS_GEDGE
GTS_IS_GEDGE
GtsGEdgeClass
GtsGEdge
gts_gedge_class
gts_gedge_new
gts_gedge_weight
gts_gedge_connects
GTS_GRAPH_CLASS
GTS_GRAPH
GTS_IS_GRAPH
GtsGraphClass
GtsGraph
gts_graph_class
gts_graph_new
gts_graph_read
gts_graph_read_jostle
gts_graph_write
gts_graph_write_dot
gts_graph_print_stats
gts_graph_foreach_edge
GtsGraphTraverse
GtsTraverseType
gts_graph_traverse_new
gts_graph_traverse_next
gts_graph_traverse_what_next
gts_graph_traverse_destroy
gts_graph_edges_cut
gts_graph_edges_cut_weight
gts_graph_distance_sum
gts_graph_farthest
gts_graph_weight
GTS_FNODE_CLASS
GTS_FNODE
GTS_IS_FNODE
GtsFNode
GtsFNodeClass
gts_fnode_class
gts_fnode_new
gts_surface_graph_new
gts_surface_graph_surface
gts_segments_graph_new
wgraph
Weighted graph
GTS_WGEDGE_CLASS
GTS_WGEDGE
GTS_IS_WGEDGE
GtsWGEdgeClass
GtsWGEdge
gts_wgedge_class
gts_wgedge_new
GTS_WGNODE_CLASS
GTS_WGNODE
GTS_IS_WGNODE
GtsWGNodeClass
GtsWGNode
gts_wgnode_class
gts_wgnode_new
GTS_WGRAPH_CLASS
GTS_WGRAPH
GTS_IS_WGRAPH
GtsWGraphClass
GtsWGraph
gts_wgraph_class
gts_wgraph_weight_max
pgraph
Progressive graph
GTS_GNODE_SPLIT_CLASS
GTS_GNODE_SPLIT
GTS_IS_GNODE_SPLIT
GTS_GNODE_SPLIT_N1
GTS_GNODE_SPLIT_N2
GtsGNodeSplitClass
GtsGNodeSplit
gts_gnode_split_class
gts_gnode_split_new
gts_gnode_split_collapse
gts_gnode_split_expand
GTS_PGRAPH_CLASS
GTS_PGRAPH
GTS_IS_PGRAPH
GtsPGraphClass
GtsPGraph
gts_pgraph_class
gts_pgraph_new
gts_pgraph_add_node
gts_pgraph_remove_node
gts_pgraph_down
gts_pgraph_set_node_number
gts_pgraph_get_node_number
gts_pgraph_max_node_number
gts_pgraph_min_node_number
gts_pgraph_foreach_node
partition
Graph partitioning
GtsGraphBisection
gts_graph_bisection_new
gts_graph_ggg_bisection
gts_graph_bfgg_bisection
gts_graph_bisection_check
gts_graph_bisection_kl_refine
gts_graph_bisection_bkl_refine
gts_graph_recursive_bisection
gts_graph_bisection_destroy
gts_graph_bubble_partition
gts_graph_edges_cut
gts_graph_edges_cut_weight
gts_graph_partition_edges_cut
gts_graph_partition_balance
gts_graph_partition_clone
gts_graph_partition_print_stats
gts_graph_partition_edges_cut_weight
gts_graph_partition_destroy
container
Container classes
GTS_CONTAINER_CLASS
GTS_CONTAINER
GTS_IS_CONTAINER
GtsContainerClass
GtsContainer
gts_container_class
gts_container_new
gts_container_add
gts_container_remove
gts_container_size
gts_container_foreach
GTS_HASH_CONTAINER_CLASS
GTS_HASH_CONTAINER
GTS_IS_HASH_CONTAINER
GtsHashContainerClass
GtsHashContainer
gts_hash_container_class
GTS_SLIST_CONTAINER_CLASS
GTS_SLIST_CONTAINER
GTS_IS_SLIST_CONTAINER
GtsSListContainerClass
GtsSListContainer
gts_slist_container_class
containee
Containee classes
GTS_CONTAINEE_CLASS
GTS_CONTAINEE
GTS_IS_CONTAINEE
GtsContaineeClass
GtsContainee
gts_containee_class
gts_containee_new
gts_containee_is_contained
gts_containee_replace
GTS_SLIST_CONTAINEE_CLASS
GTS_SLIST_CONTAINEE
GTS_IS_SLIST_CONTAINEE
GtsSListContaineeClass
GtsSListContainee
gts_slist_containee_class
curvature
Differential geometry operators
gts_vertex_gaussian_curvature
gts_vertex_mean_curvature_normal
gts_vertex_principal_curvatures
gts_vertex_principal_directions