libDXF 0.0.1
A library with DXF related functions written in C.

viewport.h

Go to the documentation of this file.
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 */