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

obj_defs.h File Reference

#include <volume_io.h>
#include <bicpl/stack.h>
#include <bicpl/bintree.h>

Include dependency graph for obj_defs.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Data Structures

struct  lines_struct
 In-memory structure for polygonal lines. More...

struct  marker_struct
 In-memory structure for a marker. More...

struct  polygons_struct
 In-memory structure for polygons. More...

struct  quadmesh_struct
 In-memory structure for a quadrilateral mesh. More...

struct  text_struct
 In-memory structure for text. More...

struct  pixels_struct
 In-memory structure for ??? More...

struct  model_struct
 In-memory structure for a model. More...

struct  object_struct
 In-memory structure for an object. More...

struct  object_stack_struct
 In-memory structure for a stack of objects. More...

struct  object_traverse_struct
 In-memory structure for ??? More...


Defines

#define SET_OBJECT_SIZE(object, n, size)
#define GET_OBJECT_SIZE(object, n)
#define NUMBER_INDICES(object)
#define START_INDEX(end_indices, n)   ( ((n) == 0) ? 0 : (end_indices)[(n)-1] )
#define POINT_INDEX(end_indices, n, edge)   ( START_INDEX(end_indices,n) + (edge) )
#define MAX_POINTS_PER_POLYGON   20
#define MAX_POLYGON_NEIGHBOURS   2048
#define PIXEL_COLOUR_INDEX_8(pixels, x, y)   ((pixels).data.pixels_8bit_colour_index[IJ(y,x,(pixels).x_size)])
#define PIXEL_COLOUR_INDEX_16(pixels, x, y)   ((pixels).data.pixels_16bit_colour_index[IJ(y,x,(pixels).x_size)])
#define PIXEL_RGB_COLOUR(pixels, x, y)   ((pixels).data.pixels_rgb[IJ(y,x,(pixels).x_size)])
#define MAX_OBJECT_TRAVERSE   100

Typedefs

typedef object_struct object_struct
 In-memory structure for an object.


Enumerations

enum  Colour_flags { ONE_COLOUR, PER_ITEM_COLOURS, PER_VERTEX_COLOURS }
 Colour style of compound geometrical object. Objects such as lines, polygons, and quadmeshes that are comprised of many smaller objects may have one colour for the whole compound, or the colours may be set for individual elements of the compound. More...

enum  Marker_types { BOX_MARKER, SPHERE_MARKER, N_MARKER_TYPES }
enum  Font_types { FIXED_FONT, SIZED_FONT }
enum  Pixel_types { COLOUR_INDEX_8BIT_PIXEL, COLOUR_INDEX_16BIT_PIXEL, RGB_PIXEL }
enum  Object_types {
  LINES, MARKER, MODEL, PIXELS,
  POLYGONS, QUADMESH, TEXT, N_OBJECT_TYPES
}


Define Documentation

#define GET_OBJECT_SIZE object,
 ) 
 

Value:

( ((n) == 0) ? (object).end_indices[0] : \ ((object).end_indices[n] - \ (object).end_indices[(n)-1]) )

Definition at line 32 of file obj_defs.h.

Referenced by average_polygon_normals(), coalesce_lines(), compute_distances_from_point(), compute_line_model_info(), compute_polygon_normal(), compute_polygon_normals(), compute_polygons_model_info(), convert_lines_to_tubes(), create_line_spline(), create_lines_bintree(), create_polygon_neighbours(), create_polygon_point_neighbours(), find_edge_index(), find_next_edge_around_point(), find_polygon_with_vertex(), find_vertex_index(), get_lines_arc_point(), get_lines_length(), get_neighbours_of_point(), get_opposite_point(), get_plane_polygon_intersection(), get_polygon_centroid(), get_polygon_edge_angle(), get_polygon_points(), get_polygon_vertex_curvatures(), get_polygons_around_vertex(), get_tessellation_of_polygons_sphere(), intersect_planes_with_polygons(), perturb_line_points(), polygon_is_back_facing(), remove_invisible_polygons(), reverse_polygon_order(), scan_lines_to_voxels(), scan_polygons_to_voxels(), smooth_lines(), smooth_points(), subdivide_line(), and subdivide_polygon().

#define MAX_OBJECT_TRAVERSE   100
 

Definition at line 260 of file obj_defs.h.

Referenced by initialize_object_traverse(), and terminate_object_traverse().

#define MAX_POINTS_PER_POLYGON   20
 

Definition at line 94 of file obj_defs.h.

Referenced by create_polygon_point_neighbours(), create_polygons_bintree(), find_closest_polygon_point(), get_polygons_surface_area(), and map_point_between_polygons().

#define MAX_POLYGON_NEIGHBOURS   2048
 

Definition at line 95 of file obj_defs.h.

#define NUMBER_INDICES object   ) 
 

Value:

( ((object).n_items == 0) ? 0 : \ (object).end_indices[(object).n_items-1] )

Definition at line 37 of file obj_defs.h.

Referenced by copy_polygons(), io_lines(), io_polygons(), start_new_line(), and start_new_polygon().

#define PIXEL_COLOUR_INDEX_16 pixels,
x,
y   )     ((pixels).data.pixels_16bit_colour_index[IJ(y,x,(pixels).x_size)])
 

Definition at line 202 of file obj_defs.h.

Referenced by copy_pixel_region(), and interpolate_volume_to_slice().

#define PIXEL_COLOUR_INDEX_8 pixels,
x,
y   )     ((pixels).data.pixels_8bit_colour_index[IJ(y,x,(pixels).x_size)])
 

Definition at line 199 of file obj_defs.h.

Referenced by convert_index8_to_pixels24(), convert_pixels24_to_dithered(), convert_pixels24_to_gray_scale(), convert_pixels24_to_index8(), convert_pixels24_to_pixels8(), and copy_pixel_region().

#define PIXEL_RGB_COLOUR pixels,
x,
y   )     ((pixels).data.pixels_rgb[IJ(y,x,(pixels).x_size)])
 

Definition at line 205 of file obj_defs.h.

Referenced by convert_index8_to_pixels24(), convert_pixels24_to_dithered(), convert_pixels24_to_gray_scale(), convert_pixels24_to_index8(), convert_pixels24_to_pixels8(), copy_pixel_region(), crop_pixels(), input_rgb_file(), interpolate_volume_to_slice(), is_clear_slab(), output_rgb_file(), and resample_pixels().

#define POINT_INDEX end_indices,
n,
edge   )     ( START_INDEX(end_indices,n) + (edge) )
 

Definition at line 44 of file obj_defs.h.

Referenced by average_polygon_normals(), coalesce_lines(), compute_distances_from_point(), compute_polygon_normal(), compute_polygon_normals(), compute_polygons_model_info(), convert_lines_to_tubes(), create_line_spline(), create_lines_bintree(), create_polygon_neighbours(), create_polygon_point_neighbours(), find_edge_index(), find_next_edge_around_point(), find_polygon_with_vertex(), find_vertex_index(), get_lines_arc_point(), get_lines_length(), get_neighbours_of_point(), get_opposite_point(), get_plane_polygon_intersection(), get_point_line_segment_distance_sq(), 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(), intersect_planes_with_polygons(), intersect_ray_tube_segment(), polygon_is_back_facing(), remove_invisible_polygons(), reverse_polygon_order(), scan_lines_to_voxels(), scan_polygons_to_voxels(), smooth_lines(), smooth_points(), subdivide_line(), and subdivide_polygon().

#define SET_OBJECT_SIZE object,
n,
size   ) 
 

Value:

{ \ if( (n) == 0 ) \ (object).end_indices[0] = (size); \ else \ (object).end_indices[n] = (size) + \ (object).end_indices[(n)-1]; \ }

Definition at line 23 of file obj_defs.h.

#define START_INDEX end_indices,
 )     ( ((n) == 0) ? 0 : (end_indices)[(n)-1] )
 

Definition at line 41 of file obj_defs.h.

Referenced by find_path_between_polygons(), follow_path(), and intersect_ray_polygon().


Enumeration Type Documentation

enum Colour_flags
 

Colour style of compound geometrical object. Objects such as lines, polygons, and quadmeshes that are comprised of many smaller objects may have one colour for the whole compound, or the colours may be set for individual elements of the compound.

Enumeration values:
ONE_COLOUR 
PER_ITEM_COLOURS 
PER_VERTEX_COLOURS 

Definition at line 53 of file obj_defs.h.

Referenced by get_lines_colours(), get_marker_colours(), get_object_colour(), get_object_colours(), get_object_zero_colours(), get_polygons_colours(), get_quadmesh_colours(), get_text_colours(), and set_object_colour().

enum Font_types
 

Enumeration values:
FIXED_FONT 
SIZED_FONT 

Definition at line 157 of file obj_defs.h.

enum Marker_types
 

Enumeration values:
BOX_MARKER 
SPHERE_MARKER 
N_MARKER_TYPES 

Definition at line 77 of file obj_defs.h.

enum Object_types
 

Enumeration values:
LINES 
MARKER 
MODEL 
PIXELS 
POLYGONS 
QUADMESH 
TEXT 
N_OBJECT_TYPES 

Definition at line 210 of file obj_defs.h.

Referenced by get_object_type(), and input_object().

enum Pixel_types
 

Enumeration values:
COLOUR_INDEX_8BIT_PIXEL 
COLOUR_INDEX_16BIT_PIXEL 
RGB_PIXEL 

Definition at line 173 of file obj_defs.h.

Referenced by interpolate_volume_to_slice().


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