2 Copyright (c) 1999-2012 OPEN CASCADE SAS
4 The content of this file is subject to the Open CASCADE Technology Public
5 License Version 6.5 (the "License"). You may not use the content of this file
6 except in compliance with the License. Please obtain a copy of the License
7 at http://www.opencascade.org and read it completely before using this file.
9 The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
10 main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
12 The Original Code and all software distributed under the License is
13 distributed on an "AS IS" basis, without warranty of any kind, and the
14 Initial Developer hereby disclaims all such warranties, including without
15 limitation, any warranties of merchantability, fitness for a particular
16 purpose or non-infringement. Please see the License for the specific terms
17 and conditions governing the rights and limitations under the License.
24 /* Include all files on which this is dependent. */
30 /* Define real precision structure (character encoding) */
33 Prec prec, min, defexp, expald;
36 /* CGM element codes for clear text input and output */
43 /* Encoding Specific defaults */
46 Prec int_prec, index_prec, vdcint_prec;
47 struct real_prec real, vdc;
48 Prec col_prec, colind_prec;
49 struct colour min_rgb, max_rgb;
50 long ring_angres, ring_int, ring_real;
54 long min_int, max_int, min_index, max_index;
55 float min_real, max_real;
57 struct vdc min_vdc, max_vdc;
58 Prec vdc_digits, colind_prec, col_prec;
59 struct colour min_rgb, max_rgb;
63 Prec int_prec, index_prec, vdcint_prec;
64 Enum real_type, vdc_type;
65 Prec real_whole, real_fraction, vdc_whole, vdc_fraction;
66 Prec col_prec, colind_prec;
67 struct colour min_rgb, max_rgb;
72 /* Encoding independent defaults */
75 Enum vdc_type, transparency, clip_ind;
76 Enum color_mode, scale_mode;
78 Enum linewidth_mode, markersize_mode, edgewidth_mode;
79 struct colour back, aux;
80 struct rect vdc_extent, clip_rect;
82 /* Retain encoding defaults for common access */
84 Prec int_bits, /* integer prec in bits */
85 index_bits, /* index prec in bits */
86 vdcint_bits, /* vdc integer precision in bits */
87 real_bits, /* real prec in bits */
88 real_places, /* binary bits after decimal place */
89 vdc_bits, /* vdc prec in bits */
90 vdc_places, /* binary bits after decimal place */
91 col_bits, /* colour prec in bits */
92 colind_bits; /* colour index prec in bits */
93 float min_real, /* min real value */
94 max_real, /* max real value */
95 realmin, /* smallest real value */
96 min_vdc, /* min real vdc value */
97 max_vdc, /* max real vdc value */
98 vdcmin; /* smallest vdc real value */
99 Prec real_defexp, /* Real default exponent */
100 real_expald, /* Real exponenet allowed */
101 vdc_defexp, /* VDC default exponent */
102 vdc_expald; /* VDC exponenet allowed */
103 struct colour min_rgb, /* integer values: index/RGB */
104 max_rgb; /* integer values: index/RGB */
105 Logical colprec_flag, /* Flag to show if colour precision set */
106 colval_flag; /* Flag to show if colour value extent set */
109 /* Graphics attributes */
112 Index line_ind, mark_ind, text_ind, fill_ind, edge_ind;
113 Index line_type, mark_type, text_font, edge_type;
114 struct vdc line_width, mark_size, edge_width;
115 struct colour line, marker, text, fill, edge;
116 Enum text_prec, text_path, text_halign, text_valign, edge_vis;
117 float text_hcont, text_vcont;
118 Index char_set, altchar_set;
119 float char_exp, char_space;
120 struct point char_up, char_base;
121 struct vdc char_height;
123 Index hatch_ind, pat_ind;
124 struct point fill_ref;
125 struct rect pat_size;
127 /* Flags for VDC dependent defaults */
128 Logical linewidth_flag, markersize_flag, edgewidth_flag,
129 charheight_flag, cliprect_flag;
133 /* Structure for attribute change flags */
136 Logical line_index, line_type, line_width, line_color;
137 Logical mark_index, mark_type, mark_size, mark_color;
138 Logical text_index, text_font, text_prec, char_expan, char_space,
139 text_color, char_height, char_orient, char_set,
140 altchar_set, text_path, text_align;
141 Logical fill_index, int_style, hatch_ind,
142 pat_ind, pat_size, fill_color, fill_ref;
143 Logical edge_index, edge_type, edge_width, edge_color, edge_vis;
146 /* structure for random frame searching */
151 char *cur_ptr, *end_ptr;
158 /* Basic data held about CGM character sets and CGM fonts, as
159 provided in CGM CHARACTERSETLIST and FONTLIST elements.
175 #endif /* end of cgmstruc.h */