libDXF 0.0.1
A library with DXF related functions written in C.
|
00001 00048 #ifndef LIBDXF_SRC_IMAGE_H 00049 #define LIBDXF_SRC_IMAGE_H 00050 00051 00052 #include "global.h" 00053 #include "binary_graphics_data.h" 00054 #include "point.h" 00055 00056 00057 #ifdef __cplusplus 00058 extern "C" { 00059 #endif 00060 00061 00065 typedef struct 00066 dxf_image_struct 00067 { 00068 /* Members common for all DXF drawable entities. */ 00069 int id_code; 00074 char *linetype; 00078 char *layer; 00082 double elevation; 00087 double thickness; 00091 double linetype_scale; 00094 int16_t visibility; 00102 int color; 00109 int paperspace; 00115 int graphics_data_size; 00124 int16_t shadow_mode; 00134 DxfBinaryGraphicsData *binary_graphics_data; 00140 char *dictionary_owner_soft; 00144 char *material; 00149 char *dictionary_owner_hard; 00153 int16_t lineweight; 00158 char *plot_style_name; 00162 long color_value; 00174 char *color_name; 00182 long transparency; 00190 /* Specific members for a DXF image. */ 00191 DxfPoint *p0; 00194 DxfPoint *p1; 00199 DxfPoint *p2; 00204 DxfPoint *p3; 00207 DxfPoint *p4; 00215 int image_display_properties; 00225 int clipping_boundary_type; 00232 long class_version; 00235 long number_of_clip_boundary_vertices; 00238 int clipping_state; 00241 int brightness; 00244 int contrast; 00247 int fade; 00250 char *imagedef_object; 00253 char *imagedef_reactor_object; 00256 struct DxfImage *next; 00259 } DxfImage; 00260 00261 00262 DxfImage *dxf_image_new (); 00263 DxfImage *dxf_image_init (DxfImage *image); 00264 DxfImage *dxf_image_read (DxfFile *fp, DxfImage *image); 00265 int dxf_image_write (DxfFile *fp, DxfImage *image); 00266 int dxf_image_free (DxfImage *image); 00267 void dxf_image_free_chain (DxfImage *images); 00268 int dxf_image_get_id_code (DxfImage *image); 00269 DxfImage *dxf_image_set_id_code (DxfImage *image, int id_code); 00270 char *dxf_image_get_linetype (DxfImage *image); 00271 DxfImage *dxf_image_set_linetype (DxfImage *image, char *linetype); 00272 char *dxf_image_get_layer (DxfImage *image); 00273 DxfImage *dxf_image_set_layer (DxfImage *image, char *layer); 00274 double dxf_image_get_elevation (DxfImage *image); 00275 DxfImage *dxf_image_set_elevation (DxfImage *image, double elevation); 00276 double dxf_image_get_thickness (DxfImage *image); 00277 DxfImage *dxf_image_set_thickness (DxfImage *image, double thickness); 00278 double dxf_image_get_linetype_scale (DxfImage *image); 00279 DxfImage *dxf_image_set_linetype_scale (DxfImage *image, double linetype_scale); 00280 int16_t dxf_image_get_visibility (DxfImage *image); 00281 DxfImage *dxf_image_set_visibility (DxfImage *image, int16_t visibility); 00282 int dxf_image_get_color (DxfImage *image); 00283 DxfImage *dxf_image_set_color (DxfImage *image, int color); 00284 int dxf_image_get_paperspace (DxfImage *image); 00285 DxfImage *dxf_image_set_paperspace (DxfImage *image, int paperspace); 00286 int dxf_image_get_graphics_data_size (DxfImage *image); 00287 DxfImage *dxf_image_set_graphics_data_size (DxfImage *spline, int graphics_data_size); 00288 int16_t dxf_image_get_shadow_mode (DxfImage *image); 00289 DxfImage *dxf_image_set_shadow_mode (DxfImage *image, int16_t shadow_mode); 00290 DxfBinaryGraphicsData *dxf_image_get_binary_graphics_data (DxfImage *image); 00291 DxfImage *dxf_image_set_binary_graphics_data (DxfImage *image, DxfBinaryGraphicsData *data); 00292 char *dxf_image_get_dictionary_owner_soft (DxfImage *image); 00293 DxfImage *dxf_image_set_dictionary_owner_soft (DxfImage *image, char *dictionary_owner_soft); 00294 char *dxf_image_get_material (DxfImage *image); 00295 DxfImage *dxf_image_set_material (DxfImage *image, char *material); 00296 char *dxf_image_get_dictionary_owner_hard (DxfImage *image); 00297 DxfImage *dxf_image_set_dictionary_owner_hard (DxfImage *image, char *dictionary_owner_hard); 00298 int16_t dxf_image_get_lineweight (DxfImage *image); 00299 DxfImage *dxf_image_set_lineweight (DxfImage *image, int16_t lineweight); 00300 char *dxf_image_get_plot_style_name (DxfImage *image); 00301 DxfImage *dxf_image_set_plot_style_name (DxfImage *image, char *plot_style_name); 00302 long dxf_image_get_color_value (DxfImage *image); 00303 DxfImage *dxf_image_set_color_value (DxfImage *image, long color_value); 00304 char *dxf_image_get_color_name (DxfImage *image); 00305 DxfImage *dxf_image_set_color_name (DxfImage *image, char *color_name); 00306 long dxf_image_get_transparency (DxfImage *image); 00307 DxfImage *dxf_image_set_transparency (DxfImage *image, long transparency); 00308 DxfPoint *dxf_image_get_p0 (DxfImage *image); 00309 DxfImage *dxf_image_set_p0 (DxfImage *image, DxfPoint *p0); 00310 double dxf_image_get_x0 (DxfImage *image); 00311 DxfImage *dxf_image_set_x0 (DxfImage *image, double x0); 00312 double dxf_image_get_y0 (DxfImage *image); 00313 DxfImage *dxf_image_set_y0 (DxfImage *image, double y0); 00314 double dxf_image_get_z0 (DxfImage *image); 00315 DxfImage *dxf_image_set_z0 (DxfImage *image, double z0); 00316 DxfPoint *dxf_image_get_p1 (DxfImage *image); 00317 DxfImage *dxf_image_set_p1 (DxfImage *image, DxfPoint *p1); 00318 double dxf_image_get_x1 (DxfImage *image); 00319 DxfImage *dxf_image_set_x1 (DxfImage *image, double x1); 00320 double dxf_image_get_y1 (DxfImage *image); 00321 DxfImage *dxf_image_set_y1 (DxfImage *image, double y1); 00322 double dxf_image_get_z1 (DxfImage *image); 00323 DxfImage *dxf_image_set_z1 (DxfImage *image, double z1); 00324 DxfPoint *dxf_image_get_p2 (DxfImage *image); 00325 DxfImage *dxf_image_set_p2 (DxfImage *image, DxfPoint *p2); 00326 double dxf_image_get_x2 (DxfImage *image); 00327 DxfImage *dxf_image_set_x2 (DxfImage *image, double x2); 00328 double dxf_image_get_y2 (DxfImage *image); 00329 DxfImage *dxf_image_set_y2 (DxfImage *image, double y2); 00330 double dxf_image_get_z2 (DxfImage *image); 00331 DxfImage *dxf_image_set_z2 (DxfImage *image, double z2); 00332 DxfPoint *dxf_image_get_p3 (DxfImage *image); 00333 DxfImage *dxf_image_set_p3 (DxfImage *image, DxfPoint *p3); 00334 double dxf_image_get_x3 (DxfImage *image); 00335 DxfImage *dxf_image_set_x3 (DxfImage *image, double x3); 00336 double dxf_image_get_y3 (DxfImage *image); 00337 DxfImage *dxf_image_set_y3 (DxfImage *image, double y3); 00338 DxfPoint *dxf_image_get_p4 (DxfImage *image); 00339 DxfImage *dxf_image_set_p4 (DxfImage *image, DxfPoint *p4); 00340 double dxf_image_get_x4 (DxfImage *image); 00341 DxfImage *dxf_image_set_x4 (DxfImage *image, double x4); 00342 double dxf_image_get_y4 (DxfImage *image); 00343 DxfImage *dxf_image_set_y4 (DxfImage *image, double y4); 00344 int dxf_image_get_image_display_properties (DxfImage *image); 00345 DxfImage *dxf_image_set_image_display_properties (DxfImage *image, int image_display_properties); 00346 int dxf_image_get_clipping_boundary_type (DxfImage *image); 00347 DxfImage *dxf_image_set_clipping_boundary_type (DxfImage *image, int clipping_boundary_type); 00348 long dxf_image_get_class_version (DxfImage *image); 00349 DxfImage *dxf_image_set_class_version (DxfImage *image, long class_version); 00350 long dxf_image_get_number_of_clip_boundary_vertices (DxfImage *image); 00351 DxfImage *dxf_image_set_number_of_clip_boundary_vertices (DxfImage *image, long number_of_clip_boundary_vertices); 00352 int dxf_image_get_clipping_state (DxfImage *image); 00353 DxfImage *dxf_image_set_clipping_state (DxfImage *image, int clipping_state); 00354 int dxf_image_get_brightness (DxfImage *image); 00355 DxfImage *dxf_image_set_brightness (DxfImage *image, int brightness); 00356 int dxf_image_get_contrast (DxfImage *image); 00357 DxfImage *dxf_image_set_contrast (DxfImage *image, int contrast); 00358 int dxf_image_get_fade (DxfImage *image); 00359 DxfImage *dxf_image_set_fade (DxfImage *image, int fade); 00360 char *dxf_image_get_imagedef_object (DxfImage *image); 00361 DxfImage *dxf_image_set_imagedef_object (DxfImage *image, char *imagedef_object); 00362 char *dxf_image_get_imagedef_reactor_object (DxfImage *image); 00363 DxfImage *dxf_image_set_imagedef_reactor_object (DxfImage *image, char *imagedef_reactor_object); 00364 DxfImage *dxf_image_get_next (DxfImage *image); 00365 DxfImage *dxf_image_set_next (DxfImage *image, DxfImage *next); 00366 DxfImage *dxf_image_get_last (DxfImage *image); 00367 00368 00369 #ifdef __cplusplus 00370 } 00371 #endif 00372 00373 00374 #endif /* LIBDXF_SRC_IMAGE_H */ 00375 00376 00377 /* EOF */