libDXF 0.0.1
A library with DXF related functions written in C.
|
00001 00036 #ifndef LIBDXF_SRC_TRACE_H 00037 #define LIBDXF_SRC_TRACE_H 00038 00039 00040 #include "global.h" 00041 00042 00043 #ifdef __cplusplus 00044 extern "C" { 00045 #endif 00046 00047 00057 typedef struct 00058 dxf_trace 00059 { 00060 /* Members common for all DXF drawable entities. */ 00061 int id_code; 00066 char *linetype; 00070 char *layer; 00074 double elevation; 00079 double thickness; 00083 double linetype_scale; 00086 int16_t visibility; 00093 int color; 00100 int paperspace; 00105 char *dictionary_owner_soft; 00108 char *dictionary_owner_hard; 00111 /* Specific members for a DXF trace. */ 00112 double x0; 00115 double y0; 00118 double z0; 00121 double x1; 00124 double y1; 00127 double z1; 00130 double x2; 00133 double y2; 00136 double z2; 00139 double x3; 00142 double y3; 00145 double z3; 00148 double extr_x0; 00152 double extr_y0; 00156 double extr_z0; 00160 struct DxfTrace *next; 00163 } DxfTrace; 00164 00165 00166 DxfTrace *dxf_trace_new (); 00167 DxfTrace *dxf_trace_init (DxfTrace *trace); 00168 DxfTrace *dxf_trace_read (DxfFile *fp, DxfTrace *trace); 00169 int dxf_trace_write (DxfFile *fp, DxfTrace *trace); 00170 int dxf_trace_free (DxfTrace *trace); 00171 void dxf_trace_free_chain (DxfTrace *traces); 00172 00173 00174 #ifdef __cplusplus 00175 } 00176 #endif 00177 00178 00179 #endif /* LIBDXF_SRC_TRACE_H */ 00180 00181 00182 /* EOF */