Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

polygons.c File Reference

#include <volume_io/internal_volume_io.h>
#include <bicpl/objects.h>
#include <bicpl/geom.h>
#include <bicpl/trans.h>

Include dependency graph for polygons.c:

Include dependency graph

Go to the source code of this file.

Defines

#define MAX_TEMP_STORAGE   1000
#define MAX_NEIGHBOURS   1000

Functions

private void reverse_polygon_order (polygons_struct *polygons, int poly)
private Real estimate_polygon_curvature (Point *point, int n_neighs, Point neighs[], Point *centroid, Vector *normal, Real *base_length)
public void initialize_polygons (polygons_struct *polygons, Colour col, Surfprop *spr)
 generate empty set of polygons

public void initialize_polygons_with_size (polygons_struct *polygons, Colour col, Surfprop *spr, int n_points, int n_polygons, int size)
 generate polygons with fixed-size facets

public void free_polygon_neighbours (polygons_struct *polygons)
public void delete_polygons (polygons_struct *polygons)
public void copy_polygons (polygons_struct *src, polygons_struct *dest)
public void set_polygon_per_item_colours (polygons_struct *polygons)
public void create_polygons_visibilities (polygons_struct *polygons)
public void set_polygons_visibilities (polygons_struct *polygons, BOOLEAN state)
public void start_new_polygon (polygons_struct *polygons)
public void add_point_to_polygon (polygons_struct *polygons, Point *point, Vector *normal)
public int get_polygon_points (polygons_struct *polygons, int poly, Point points[])
public void get_polygon_centroid (polygons_struct *polygons, int poly, Point *centroid)
public int find_vertex_index (polygons_struct *polygons, int poly, int point_index)
public int find_edge_index (polygons_struct *polygons, int poly, int point_index1, int point_index2)
public BOOLEAN find_polygon_with_edge (polygons_struct *polygons, int point_index1, int point_index2, int *poly_containing_edge, int *edge_index)
public BOOLEAN find_polygon_with_vertex (polygons_struct *polygons, int point_index, int *poly_index, int *vertex_index)
public BOOLEAN lookup_polygon_vertex (polygons_struct *polygons, Point *point, int *point_index)
public BOOLEAN find_next_edge_around_point (polygons_struct *polygons, int poly, int index_1, int index_2, int *next_poly, int *next_index_1, int *next_index_2)
public int get_neighbours_of_point (polygons_struct *polygons, int poly, int vertex_index, int neighbours[], int max_neighbours, BOOLEAN *interior_point)
public int get_polygons_around_vertex (polygons_struct *polygons, int poly, int vertex_index, int poly_indices[], int n_polys_alloced, BOOLEAN *closed_flag)
public void compute_polygon_normal (polygons_struct *polygons, int poly, Vector *normal)
public void compute_polygon_normals (polygons_struct *polygons)
public void average_polygon_normals (polygons_struct *polygons, int n_iters, Real neighbour_weight)
public BOOLEAN get_plane_polygon_intersection (Vector *normal, Real d, polygons_struct *polygons, int poly, Point intersection_points[])
public BOOLEAN get_plane_segment_intersection (Vector *normal, Real d, Point *p1, Point *p2, Point *intersection_point)
public void reverse_polygons_vertices (polygons_struct *polygons)
public void make_polygons_front_facing (polygons_struct *polygons)
public BOOLEAN polygon_is_back_facing (polygons_struct *polygons, int poly)
public void compute_points_centroid_and_normal (polygons_struct *polygons, int point_index, int n_neighbours, int neighbours[], Point *centroid, Vector *normal, Real *base_length, Real *curvature)
public void compute_polygon_point_centroid (polygons_struct *polygons, int poly, int vertex_index, int point_index, Point *centroid, Vector *normal, Real *base_length, Real *curvature)
public Real compute_polygon_vertex_curvature (polygons_struct *polygons, int point_index)
private void get_opposite_point (polygons_struct *polygons, int poly, int edge, Point *point)
public Real get_polygon_edge_angle (polygons_struct *polygons, int poly, int edge)
public BOOLEAN polygons_are_same_topology (polygons_struct *p1, polygons_struct *p2)


Define Documentation

#define MAX_NEIGHBOURS   1000
 

#define MAX_TEMP_STORAGE   1000
 

Referenced by compute_polygon_normal(), and recursive_scan_polygon_to_voxels().


Generated on Wed Jul 28 09:11:15 2004 for BICPL by doxygen 1.3.7