libDXF 0.0.1
A library with DXF related functions written in C.
|
00001 00042 #ifndef LIBDXF_SRC_BODY_H 00043 #define LIBDXF_SRC_BODY_H 00044 00045 00046 #include "global.h" 00047 #include "binary_graphics_data.h" 00048 #include "proprietary_data.h" 00049 00050 00051 #ifdef __cplusplus 00052 extern "C" { 00053 #endif 00054 00055 00059 typedef struct 00060 dxf_body_struct 00061 { 00062 /* Members common for all DXF drawable entities. */ 00063 int id_code; 00068 char *linetype; 00072 char *layer; 00076 double elevation; 00081 double thickness; 00088 double linetype_scale; 00092 int16_t visibility; 00100 int color; 00107 int paperspace; 00113 int graphics_data_size; 00122 int16_t shadow_mode; 00132 DxfBinaryGraphicsData *binary_graphics_data; 00138 char *dictionary_owner_soft; 00142 char *material; 00147 char *dictionary_owner_hard; 00151 int16_t lineweight; 00156 char *plot_style_name; 00160 long color_value; 00172 char *color_name; 00180 long transparency; 00188 /* Specific members for a DXF body. */ 00189 DxfProprietaryData *proprietary_data; 00193 DxfProprietaryData *additional_proprietary_data; 00198 int modeler_format_version_number; 00201 struct DxfBody *next; 00204 } DxfBody; 00205 00206 00207 DxfBody *dxf_body_new (); 00208 DxfBody *dxf_body_init (DxfBody *body); 00209 DxfBody *dxf_body_read (DxfFile *fp, DxfBody *body); 00210 int dxf_body_write (DxfFile *fp, DxfBody *body); 00211 int dxf_body_free (DxfBody *body); 00212 void dxf_body_free_chain (DxfBody *bodies); 00213 int dxf_body_get_id_code (DxfBody *body); 00214 DxfBody *dxf_body_set_id_code (DxfBody *body, int id_code); 00215 char *dxf_body_get_linetype (DxfBody *body); 00216 DxfBody *dxf_body_set_linetype (DxfBody *body, char *linetype); 00217 char *dxf_body_get_layer (DxfBody *body); 00218 DxfBody *dxf_body_set_layer (DxfBody *body, char *layer); 00219 double dxf_body_get_elevation (DxfBody *body); 00220 DxfBody *dxf_body_set_elevation (DxfBody *body, double elevation); 00221 double dxf_body_get_thickness (DxfBody *body); 00222 DxfBody *dxf_body_set_thickness (DxfBody *body, double thickness); 00223 double dxf_body_get_linetype_scale (DxfBody *body); 00224 DxfBody *dxf_body_set_linetype_scale (DxfBody *body, double linetype_scale); 00225 int16_t dxf_body_get_visibility (DxfBody *body); 00226 DxfBody *dxf_body_set_visibility (DxfBody *body, int16_t visibility); 00227 int dxf_body_get_color (DxfBody *body); 00228 DxfBody *dxf_body_set_color (DxfBody *body, int color); 00229 int dxf_body_get_paperspace (DxfBody *body); 00230 DxfBody *dxf_body_set_paperspace (DxfBody *body, int paperspace); 00231 int dxf_body_get_graphics_data_size (DxfBody *body); 00232 DxfBody *dxf_body_set_graphics_data_size (DxfBody *body, int graphics_data_size); 00233 int16_t dxf_body_get_shadow_mode (DxfBody *body); 00234 DxfBody *dxf_body_set_shadow_mode (DxfBody *body, int16_t shadow_mode); 00235 DxfBinaryGraphicsData *dxf_body_get_binary_graphics_data (DxfBody *body); 00236 DxfBody *dxf_body_set_binary_graphics_data (DxfBody *body, DxfBinaryGraphicsData *data); 00237 char *dxf_body_get_dictionary_owner_soft (DxfBody *body); 00238 DxfBody *dxf_body_set_dictionary_owner_soft (DxfBody *body, char *dictionary_owner_soft); 00239 char *dxf_body_get_material (DxfBody *body); 00240 DxfBody *dxf_body_set_material (DxfBody *body, char *material); 00241 char *dxf_body_get_dictionary_owner_hard (DxfBody *body); 00242 DxfBody *dxf_body_set_dictionary_owner_hard (DxfBody *body, char *dictionary_owner_hard); 00243 int16_t dxf_body_get_lineweight (DxfBody *body); 00244 DxfBody *dxf_body_set_lineweight (DxfBody *body, int16_t lineweight); 00245 char *dxf_body_get_plot_style_name (DxfBody *body); 00246 DxfBody *dxf_body_set_plot_style_name (DxfBody *body, char *plot_style_name); 00247 long dxf_body_get_color_value (DxfBody *body); 00248 DxfBody *dxf_body_set_color_value (DxfBody *body, long color_value); 00249 char *dxf_body_get_color_name (DxfBody *body); 00250 DxfBody *dxf_body_set_color_name (DxfBody *body, char *color_name); 00251 long dxf_body_get_transparency (DxfBody *body); 00252 DxfBody *dxf_body_set_transparency (DxfBody *body, long transparency); 00253 DxfProprietaryData *dxf_body_get_proprietary_data (DxfBody *body); 00254 DxfBody *dxf_body_set_proprietary_data (DxfBody *body, DxfProprietaryData *proprietary_data); 00255 DxfProprietaryData *dxf_body_get_additional_proprietary_data (DxfBody *body); 00256 DxfBody *dxf_body_set_additional_proprietary_data (DxfBody *body, DxfProprietaryData *additional_proprietary_data); 00257 int dxf_body_get_modeler_format_version_number (DxfBody *body); 00258 DxfBody *dxf_body_set_modeler_format_version_number (DxfBody *body, int modeler_format_version_number); 00259 DxfBody *dxf_body_get_next (DxfBody *body); 00260 DxfBody *dxf_body_set_next (DxfBody *body, DxfBody *next); 00261 DxfBody *dxf_body_get_last (DxfBody *body); 00262 00263 00264 #ifdef __cplusplus 00265 } 00266 #endif 00267 00268 00269 #endif /* LIBDXF_SRC_BODY_H */ 00270 00271 00272 /* EOF */