libDXF 0.0.1
A library with DXF related functions written in C.
|
00001 00036 #ifndef LIBDXF_SRC_VIEWPORT_H 00037 #define LIBDXF_SRC_VIEWPORT_H 00038 00039 00040 #include "global.h" 00041 00042 00043 #ifdef __cplusplus 00044 extern "C" { 00045 #endif 00046 00047 00063 typedef struct 00064 dxf_viewport 00065 { 00066 /* Members common for all DXF drawable entities. */ 00067 int id_code; 00072 char *linetype; 00076 char *layer; 00080 double elevation; 00085 double thickness; 00089 double linetype_scale; 00092 int16_t visibility; 00099 int color; 00106 int paperspace; 00111 char *dictionary_owner_soft; 00114 char *dictionary_owner_hard; 00117 /* Specific members for a DXF viewport. */ 00118 double x0; 00122 double y0; 00126 double z0; 00130 double width; 00133 double height; 00136 int status; 00150 int id; 00155 char *app_name; 00159 char *viewport_data; 00164 char *window_descriptor_begin; 00168 int extended_entity_data_version; 00173 double x_target; 00176 double y_target; 00179 double z_target; 00182 double x_direction; 00185 double y_direction; 00188 double z_direction; 00191 double view_twist_angle; 00194 double view_height; 00197 double x_center; 00200 double y_center; 00203 double perspective_lens_length; 00205 double front_plane_offset; 00208 double back_plane_offset; 00211 int view_mode; 00214 int circle_zoom_percent; 00217 int fast_zoom_setting; 00220 int UCSICON_setting; 00223 int snap_on; 00226 int grid_on; 00229 int snap_style; 00232 int snap_isopair; 00235 double snap_rotation_angle; 00238 double x_snap_base; 00241 double y_snap_base; 00244 double x_snap_spacing; 00247 double y_snap_spacing; 00250 double x_grid_spacing; 00253 double y_grid_spacing; 00256 int plot_flag; 00259 char *frozen_layer_list_begin; 00263 char *frozen_layers[DXF_MAX_LAYERS]; 00278 char *frozen_layer_list_end; 00282 char *window_descriptor_end; 00286 struct DxfViewport *next; 00289 } DxfViewport; 00290 00291 00292 DxfViewport *dxf_viewport_new (); 00293 DxfViewport *dxf_viewport_init (DxfViewport *viewport); 00294 DxfViewport *dxf_viewport_read (DxfFile *fp, DxfViewport *viewport); 00295 int dxf_viewport_write (DxfFile *fp, DxfViewport *viewport); 00296 int dxf_viewport_free (DxfViewport *viewport); 00297 void dxf_viewport_free_chain (DxfViewport *viewports); 00298 00299 00300 #ifdef __cplusplus 00301 } 00302 #endif 00303 00304 00305 #endif /* LIBDXF_SRC_VIEWPORT_H */ 00306 00307 00308 /* EOF */