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

polygons_struct Struct Reference
[Geometrical Objects in BICPL]

In-memory structure for polygons. More...

#include <obj_defs.h>

Collaboration diagram for polygons_struct:

Collaboration graph
[legend]

Data Fields

Colour_flags colour_flag
Colour * colours
Surfprop surfprop
float line_thickness
int n_points
Point * points
Vector * normals
int n_items
int * end_indices
int * indices
Smallest_int * visibilities
int * neighbours
bintree_struct_ptr bintree

Detailed Description

In-memory structure for polygons.

Definition at line 101 of file obj_defs.h.


Field Documentation

bintree_struct_ptr polygons_struct::bintree
 

Definition at line 129 of file obj_defs.h.

Referenced by copy_polygons(), create_polygons_bintree(), delete_polygons(), find_closest_point_on_object(), find_closest_polygon_point(), find_closest_vertex_on_object(), initialize_polygons(), and intersect_ray_with_object().

Colour_flags polygons_struct::colour_flag
 

Colours may be specified for entire set (colour_flag == ONE_COLOUR) or per item. The colour array is dynamically resized to match

Definition at line 105 of file obj_defs.h.

Referenced by colour_code_object(), delete_polygons(), get_polygons_colours(), half_sample_sphere_tessellation(), half_sample_tetrahedral_tessellation(), initialize_polygons(), io_polygons(), remove_invisible_polygons(), set_polygon_per_item_colours(), and subdivide_polygons().

Colour* polygons_struct::colours
 

Definition at line 106 of file obj_defs.h.

Referenced by colour_code_object(), copy_polygons(), create_polygons_sphere(), delete_polygons(), get_polygons_colours(), half_sample_sphere_tessellation(), half_sample_tetrahedral_tessellation(), initialize_polygons(), io_polygons(), remove_invisible_polygons(), set_polygon_per_item_colours(), set_polygons_colours(), and subdivide_polygons().

int* polygons_struct::end_indices
 

Definition at line 124 of file obj_defs.h.

Referenced by add_point_to_polygon(), average_polygon_normals(), check_polygons_neighbours_computed(), compute_distances_from_point(), compute_polygon_normal(), compute_polygon_normals(), compute_polygons_model_info(), copy_polygons(), create_polygon_neighbours(), create_polygon_point_neighbours(), create_polygons_sphere(), delete_polygons(), fill_in_indices(), find_edge_index(), find_next_edge_around_point(), find_polygon_with_vertex(), find_vertex_index(), get_neighbours_of_point(), get_opposite_point(), get_plane_polygon_intersection(), get_point_polygon_vertex_distance(), get_polygon_centroid(), get_polygon_edge_angle(), get_polygon_points(), get_polygon_vertex_curvatures(), get_smooth_surface_curvature(), get_subsampled_neighbours_of_point(), initialize_polygons(), initialize_polygons_with_size(), intersect_planes_with_polygons(), intersect_ray_polygon(), io_polygons(), polygon_is_back_facing(), polygons_are_same_topology(), remove_invisible_polygons(), reverse_polygon_order(), scan_polygons_to_voxels(), smooth_points(), start_new_polygon(), subdivide_polygon(), and subdivide_polygons().

int* polygons_struct::indices
 

Definition at line 125 of file obj_defs.h.

Referenced by add_point_to_polygon(), average_polygon_normals(), compute_distances_from_point(), compute_polygon_normal(), compute_polygon_normals(), compute_polygons_model_info(), copy_polygons(), create_polygon_neighbours(), create_polygon_point_neighbours(), create_polygons_sphere(), delete_polygons(), fill_in_indices(), find_edge_index(), find_next_edge_around_point(), find_polygon_with_vertex(), find_vertex_index(), get_neighbours_of_point(), get_opposite_point(), get_plane_polygon_intersection(), get_point_polygon_vertex_distance(), get_polygon_centroid(), get_polygon_edge_angle(), get_polygon_points(), get_polygon_vertex_curvatures(), get_smooth_surface_curvature(), get_subsampled_neighbours_of_point(), initialize_polygons(), initialize_polygons_with_size(), intersect_planes_with_polygons(), intersect_ray_polygon(), io_polygons(), polygon_is_back_facing(), polygons_are_same_topology(), remove_invisible_polygons(), reverse_polygon_order(), scan_polygons_to_voxels(), smooth_points(), subdivide_polygon(), and subdivide_polygons().

float polygons_struct::line_thickness
 

Definition at line 108 of file obj_defs.h.

Referenced by initialize_polygons(), and io_polygons().

int polygons_struct::n_items
 

"items" are the polygons themselves; they appear to be stored in the following manner. Each polygon is specified by a list of points, stored as indices into the "points" array. Polygon 0's list of indices is indices[0], indices[1], ..., indices[E-1], where E = end_indices[0]. Polygon 1's list starts at indices[E].

Definition at line 123 of file obj_defs.h.

Referenced by add_point_to_polygon(), average_polygon_normals(), check_polygons_neighbours_computed(), compute_polygon_normals(), compute_polygons_model_info(), create_polygon_neighbours(), create_polygon_point_neighbours(), create_polygons_bintree(), create_polygons_sphere(), create_polygons_visibilities(), create_tetrahedral_sphere(), delete_polygons(), fill_in_indices(), find_closest_point_on_object(), find_closest_polygon_point(), find_polygon_with_edge(), find_polygon_with_vertex(), get_polygon_vertex_curvatures(), get_polygons_surface_area(), get_tessellation_of_polygons_sphere(), half_sample_tetrahedral_tessellation(), initialize_polygons(), initialize_polygons_with_size(), intersect_planes_with_polygons(), intersect_ray_with_object(), io_polygons(), is_this_tetrahedral_topology(), make_polygons_front_facing(), polygons_are_same_topology(), remove_invisible_polygons(), reverse_polygons_vertices(), scan_polygons_to_voxels(), set_polygon_per_item_colours(), set_polygons_visibilities(), smooth_points(), start_new_polygon(), and subdivide_polygons().

int polygons_struct::n_points
 

points is a dynamic array. normals may be either NULL (no normal information kept) or a dynamic array.

Definition at line 112 of file obj_defs.h.

Referenced by add_point_to_polygon(), average_polygon_normals(), check_correct_deformation_polygons(), check_correct_general_polygons(), check_correct_model_polygons(), check_correct_parametric_polygons(), check_correct_subsampled_polygons(), colour_code_object(), compute_distances_from_point(), compute_polygon_normals(), compute_polygons_model_info(), create_polygon_neighbours(), create_polygon_point_neighbours(), create_polygons_sphere(), create_tetrahedral_sphere(), delete_polygon_point_neighbours(), delete_polygons(), get_polygon_vertex_curvatures(), get_polygons_normals(), get_polygons_points(), get_smooth_surface_curvature(), get_subsampled_neighbours_of_point(), half_sample_sphere_tessellation(), half_sample_tetrahedral_tessellation(), initialize_polygons(), initialize_polygons_with_size(), input_original_positions(), io_polygons(), lookup_polygon_vertex(), polygons_are_same_topology(), remove_invisible_polygons(), smooth_points(), smooth_polygon(), and subdivide_polygons().

int* polygons_struct::neighbours
 

Definition at line 128 of file obj_defs.h.

Referenced by check_polygons_neighbours_computed(), copy_polygons(), find_next_edge_around_point(), free_polygon_neighbours(), get_polygon_edge_angle(), initialize_polygons(), make_polygons_front_facing(), and reverse_polygons_vertices().

Vector* polygons_struct::normals
 

Definition at line 114 of file obj_defs.h.

Referenced by add_point_to_polygon(), average_polygon_normals(), compute_polygon_normals(), copy_polygons(), create_polygons_sphere(), delete_polygons(), get_polygons_normals(), get_smooth_surface_curvature(), half_sample_tetrahedral_tessellation(), initialize_polygons(), initialize_polygons_with_size(), io_polygons(), polygon_is_back_facing(), remove_invisible_polygons(), and subdivide_polygons().

Point* polygons_struct::points
 

Definition at line 113 of file obj_defs.h.

Referenced by add_point_to_polygon(), check_correct_general_polygons(), colour_code_object(), compute_distances_from_point(), compute_points_centroid_and_normal(), compute_polygon_normal(), compute_polygon_normals(), copy_polygons(), create_polygons_sphere(), create_tetrahedral_sphere(), create_unit_cube(), create_unit_icosahedron(), create_unit_octohedron(), create_unit_tetrahedron(), delete_polygons(), get_opposite_point(), get_plane_polygon_intersection(), get_point_polygon_vertex_distance(), get_polygon_centroid(), get_polygon_edge_angle(), get_polygon_points(), get_polygons_points(), get_smooth_surface_curvature(), get_smoothing_points(), half_sample_sphere_tessellation(), half_sample_tetrahedral_tessellation(), initialize_polygons(), initialize_polygons_with_size(), input_original_positions(), intersect_planes_with_polygons(), intersect_ray_polygon(), io_polygons(), lookup_polygon_vertex(), remove_invisible_polygons(), scan_polygons_to_voxels(), smooth_polygon(), subdivide_polygon(), subdivide_polygons(), and update_point_position().

Surfprop polygons_struct::surfprop
 

Definition at line 107 of file obj_defs.h.

Referenced by get_polygons_surfprop(), half_sample_sphere_tessellation(), initialize_polygons(), and io_polygons().

Smallest_int* polygons_struct::visibilities
 

Definition at line 127 of file obj_defs.h.

Referenced by copy_polygons(), create_polygons_visibilities(), delete_polygons(), get_point_polygon_distance_sq(), get_point_polygon_vertex_distance(), initialize_polygons(), intersect_ray_polygon(), and set_polygons_visibilities().


The documentation for this struct was generated from the following file:
Generated on Wed Jul 28 09:11:25 2004 for BICPL by doxygen 1.3.7