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

mlinestyle.h

Go to the documentation of this file.
00001 
00043 #ifndef LIBDXF_SRC_MLINESTYLE_H
00044 #define LIBDXF_SRC_MLINESTYLE_H
00045 
00046 
00047 #include "global.h"
00048 
00049 
00050 #ifdef __cplusplus
00051 extern "C" {
00052 #endif
00053 
00054 
00069 typedef struct
00070 dxf_mlinestyle_struct
00071 {
00072         /* Members common for all DXF objects. */
00073         int id_code;
00078         char *dictionary_owner_soft;
00081         char *dictionary_owner_hard;
00084         /* Specific members for a DXF mlinestyle. */
00085         char *name;
00088         char *description;
00091         char *element_linetype[DXF_MAX_PARAM];
00096         double element_offset[DXF_MAX_PARAM];
00101         double start_angle;
00104         double end_angle;
00107         int color;
00110         int element_color[DXF_MAX_PARAM];
00115         int flags;
00128         int number_of_elements;
00131         struct DxfMlinestyle *next;
00134 } DxfMlinestyle;
00135 
00136 
00137 DxfMlinestyle *dxf_mlinestyle_new ();
00138 DxfMlinestyle *dxf_mlinestyle_init (DxfMlinestyle *mlinestyle);
00139 DxfMlinestyle *dxf_mlinestyle_read (DxfFile *fp, DxfMlinestyle *mlinestyle);
00140 int dxf_mlinestyle_write (DxfFile *fp, DxfMlinestyle *mlinestyle);
00141 int dxf_mlinestyle_free (DxfMlinestyle *mlinestyle);
00142 void dxf_mlinestyle_free_chain (DxfMlinestyle *mlinestyles);
00143 int dxf_mlinestyle_get_id_code (DxfMlinestyle *mlinestyle);
00144 DxfMlinestyle *dxf_mlinestyle_set_id_code (DxfMlinestyle *mlinestyle, int id_code);
00145 char *dxf_mlinestyle_get_dictionary_owner_soft (DxfMlinestyle *mlinestyle);
00146 DxfMlinestyle *dxf_mlinestyle_set_dictionary_owner_soft (DxfMlinestyle *mlinestyle, char *dictionary_owner_soft);
00147 char *dxf_mlinestyle_get_dictionary_owner_hard (DxfMlinestyle *mlinestyle);
00148 DxfMlinestyle *dxf_mlinestyle_set_dictionary_owner_hard (DxfMlinestyle *mlinestyle, char *dictionary_owner_hard);
00149 char *dxf_mlinestyle_get_name (DxfMlinestyle *mlinestyle);
00150 DxfMlinestyle *dxf_mlinestyle_set_name (DxfMlinestyle *mlinestyle, char *name);
00151 char *dxf_mlinestyle_get_description (DxfMlinestyle *mlinestyle);
00152 DxfMlinestyle *dxf_mlinestyle_set_description (DxfMlinestyle *mlinestyle, char *description);
00153 char *dxf_mlinestyle_get_ith_element_linetype (DxfMlinestyle *mlinestyle, int i);
00154 DxfMlinestyle *dxf_mlinestyle_set_ith_element_linetype (DxfMlinestyle *mlinestyle, char *element_linetype, int i);
00155 double dxf_mlinestyle_get_element_offset (DxfMlinestyle *mlinestyle);
00156 DxfMlinestyle *dxf_mlinestyle_set_element_offset (DxfMlinestyle *mlinestyle, double *element_offset);
00157 double dxf_mlinestyle_get_ith_element_offset (DxfMlinestyle *mlinestyle, int i);
00158 DxfMlinestyle *dxf_mlinestyle_set_ith_element_offset (DxfMlinestyle *mlinestyle, double element_offset, int i);
00159 double dxf_mlinestyle_get_start_angle (DxfMlinestyle *mlinestyle);
00160 DxfMlinestyle *dxf_mlinestyle_set_start_angle (DxfMlinestyle *mlinestyle, double start_angle);
00161 double dxf_mlinestyle_get_end_angle (DxfMlinestyle *mlinestyle);
00162 DxfMlinestyle *dxf_mlinestyle_set_end_angle (DxfMlinestyle *mlinestyle, double end_angle);
00163 int dxf_mlinestyle_get_color (DxfMlinestyle *mlinestyle);
00164 DxfMlinestyle *dxf_mlinestyle_set_color (DxfMlinestyle *mlinestyle, int color);
00165 int dxf_mlinestyle_get_ith_element_color (DxfMlinestyle *mlinestyle, int i);
00166 DxfMlinestyle *dxf_mlinestyle_set_ith_element_color (DxfMlinestyle *mlinestyle, int element_color, int i);
00167 int dxf_mlinestyle_get_flags (DxfMlinestyle *mlinestyle);
00168 DxfMlinestyle *dxf_mlinestyle_set_flags (DxfMlinestyle *mlinestyle, int flags);
00169 int dxf_mlinestyle_flag_is_fill_on (DxfMlinestyle *mlinestyle);
00170 int dxf_mlinestyle_flag_is_display_miters (DxfMlinestyle *mlinestyle);
00171 int dxf_mlinestyle_flag_is_start_square_end_cap (DxfMlinestyle *mlinestyle);
00172 int dxf_mlinestyle_flag_is_start_inner_arcs_cap (DxfMlinestyle *mlinestyle);
00173 int dxf_mlinestyle_flag_is_start_round_outer_arcs_cap (DxfMlinestyle *mlinestyle);
00174 int dxf_mlinestyle_flag_is_end_square_end_cap (DxfMlinestyle *mlinestyle);
00175 int dxf_mlinestyle_flag_is_end_inner_arcs_cap (DxfMlinestyle *mlinestyle);
00176 int dxf_mlinestyle_flag_is_end_round_outer_arcs_cap (DxfMlinestyle *mlinestyle);
00177 int dxf_mlinestyle_get_number_of_elements (DxfMlinestyle *mlinestyle);
00178 DxfMlinestyle *dxf_mlinestyle_set_number_of_elements (DxfMlinestyle *mlinestyle, int number_of_elements);
00179 DxfMlinestyle *dxf_mlinestyle_get_next (DxfMlinestyle *mlinestyle);
00180 DxfMlinestyle *dxf_mlinestyle_set_next (DxfMlinestyle *mlinestyle, DxfMlinestyle *next);
00181 DxfMlinestyle *dxf_mlinestyle_get_last (DxfMlinestyle *mlinestyle);
00182 
00183 
00184 #ifdef __cplusplus
00185 }
00186 #endif
00187 
00188 
00189 #endif /* LIBDXF_SRC_MLINESTYLE_H */
00190 
00191 
00192 /* EOF */