NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
2d_graphics_consts.h
Go to the documentation of this file.
1 #ifndef SDK_2D_GRAPHICS_CONSTS_H_
11 #define SDK_2D_GRAPHICS_CONSTS_H_
12 
13 #include <base/inc/sdk_pshpack1.h>
14 
15 namespace sdk {
16 namespace gfx {
17 
20 static const float kDefaultDPI = 96.0f;
21 
25 {
29 };
30 
33 typedef enum MeasurementUnits
34 {
37 } MeasurementUnits;
38 
41 typedef enum FillModeType
42 {
46 } FillModeType;
47 
50 typedef enum StartFigureStyle
51 {
54 } StartFigureStyle;
55 
58 typedef enum FinishFigureRule
59 {
62 } FinishFigureRule;
63 
66 typedef enum PathCombineMode
67 {
72 } PathCombineMode;
73 
76 typedef enum PathCompareResult
77 {
83 } PathCompareResult;
84 
87 typedef enum PathSimplifyMode
88 {
91 } PathSimplifyMode;
92 
95 typedef enum AntiAliasingMode
96 {
99 } AntiAliasingMode;
100 
103 SDK_PACK(struct FontMetrics
104 {
105  // All font metric values are in pixels only!
106  float font_ascent;
107  float font_cap_height;
108  float font_x_height;
109  float font_descent;
110  float font_line_gap;
111 });
112 
116 {
120 } TextAntiAliasingMode;
121 
125 {
128 } TextReadingDirection;
129 
133 {
137 } TextVerticalAlignment;
138 
142 {
146 } TextHorizontalAlignment;
147 
150 typedef enum TextWordWrapping
151 {
154 } TextWordWrapping;
155 
158 typedef enum FontWeight
159 {
170  FontWeight_ = 0xA,
171 } FontWeight;
172 
175 typedef enum FontStyle
176 {
181  FontStyle_ = 0x4,
182 } FontStyle;
183 
186 typedef enum FontStretch
187 {
198 } FontStretch;
199 
202 typedef enum LineCapStyle
203 {
208 } LineCapStyle;
209 
212 typedef enum LineJoinStyle
213 {
217 } LineJoinStyle;
218 
221 typedef enum LineDashPattern
222 {
229 } LineDashPattern;
230 
233 typedef struct StrokeStyleOptions
234 {
240  float miter_limit;
241  float dash_offset;
242 
247 
248  StrokeStyleOptions(const LineCapStyle& cap, const LineJoinStyle& join,
249  const LineDashPattern& pattern, const float& limit, const float& offset)
250  : line_start_cap(cap), line_end_cap(cap), dash_cap(cap),
251  line_join_style(join), dash_pattern(pattern), miter_limit(limit),
252  dash_offset(offset) {}
253 
254  StrokeStyleOptions(const LineCapStyle& start_cap, const LineCapStyle& end_cap,
255  const LineCapStyle& cap, const LineJoinStyle& join,
256  const LineDashPattern& pattern, const float& limit, const float& offset)
257  : line_start_cap(start_cap), line_end_cap(end_cap), dash_cap(cap),
258  line_join_style(join), dash_pattern(pattern), miter_limit(limit),
259  dash_offset(offset) {}
260 } StrokeStyleOptions;
261 
265 {
269 } BitmapBrushExtendMode;
270 } // namespace gfx
271 } // namespace sdk
272 
273 #include <base/inc/sdk_poppack.h>
274 
275 #endif // SDK_2D_GRAPHICS_CONSTS_H_
sdk::gfx::FontStretch_SemiExpanded
@ FontStretch_SemiExpanded
Semi-expanded font.
Definition: 2d_graphics_consts.h:194
sdk::gfx::kPixelFormat_Index_8
@ kPixelFormat_Index_8
index, 8 bits with additional information in palette
Definition: 2d_graphics_consts.h:28
sdk::gfx::BitmapBrushExtendMode_Clamp
@ BitmapBrushExtendMode_Clamp
Clamp mode.
Definition: 2d_graphics_consts.h:266
sdk::gfx::FontWeight_Bold
@ FontWeight_Bold
Bold font.
Definition: 2d_graphics_consts.h:167
sdk::gfx::AntiAliasingMode_PerPrimitive
@ AntiAliasingMode_PerPrimitive
Anti-aliasing is per-primitive.
Definition: 2d_graphics_consts.h:98
sdk::gfx::PixelFormats
PixelFormats
Supported pixel formats for render targets.
Definition: 2d_graphics_consts.h:24
sdk::gfx::kPixelFormat_RGBA_8888
@ kPixelFormat_RGBA_8888
RGBA, 32 bits.
Definition: 2d_graphics_consts.h:26
sdk::gfx::FontStretch_ExtraCondensed
@ FontStretch_ExtraCondensed
Extra condensed font.
Definition: 2d_graphics_consts.h:190
sdk::gfx::AntiAliasingMode
AntiAliasingMode
Possible anti-aliasing modes.
Definition: 2d_graphics_consts.h:95
sdk::gfx::FontWeight_ExtraLight
@ FontWeight_ExtraLight
Extra light font.
Definition: 2d_graphics_consts.h:162
sdk::gfx::LineJoinStyle_Round
@ LineJoinStyle_Round
Rounded style.
Definition: 2d_graphics_consts.h:216
sdk::gfx::LineDashPattern_DashDot
@ LineDashPattern_DashDot
Dash-dotted line.
Definition: 2d_graphics_consts.h:226
sdk::gfx::FillModeType_Unknown
@ FillModeType_Unknown
Unknown fill mode type.
Definition: 2d_graphics_consts.h:43
sdk::gfx::TextWordWrapping_NoWrapping
@ TextWordWrapping_NoWrapping
No word wrapping for texts.
Definition: 2d_graphics_consts.h:152
sdk::gfx::FontStretch_Default
@ FontStretch_Default
Default font stretch.
Definition: 2d_graphics_consts.h:188
sdk::gfx::TextAntiAliasingMode_GrayScale
@ TextAntiAliasingMode_GrayScale
Grayscale anti-aliasing.
Definition: 2d_graphics_consts.h:118
sdk::gfx::LineCapStyle_Square
@ LineCapStyle_Square
Square line cap style.
Definition: 2d_graphics_consts.h:205
sdk::gfx::FontStretch_Condensed
@ FontStretch_Condensed
Condensed font.
Definition: 2d_graphics_consts.h:191
sdk::gfx::BitmapBrushExtendMode_Repeat
@ BitmapBrushExtendMode_Repeat
Repeat mode.
Definition: 2d_graphics_consts.h:267
sdk::gfx::LineDashPattern_Dash
@ LineDashPattern_Dash
Dashed line.
Definition: 2d_graphics_consts.h:224
sdk::gfx::FontWeight_Default
@ FontWeight_Default
Default font weight.
Definition: 2d_graphics_consts.h:160
sdk::gfx::FontStyle_Oblique
@ FontStyle_Oblique
Oblique font.
Definition: 2d_graphics_consts.h:180
sdk::gfx::PathCompareResult
PathCompareResult
Possible results of graphics path compare methods.
Definition: 2d_graphics_consts.h:76
sdk::gfx::FinishFigureRule_CloseFigure
@ FinishFigureRule_CloseFigure
Figure should be closed.
Definition: 2d_graphics_consts.h:61
sdk::gfx::FillModeType
FillModeType
Fill mode for 2D operations.
Definition: 2d_graphics_consts.h:41
sdk::gfx::PathSimplifyMode_LinesAndCubicBezier
@ PathSimplifyMode_LinesAndCubicBezier
Use lines and cubic Bezier curves.
Definition: 2d_graphics_consts.h:90
sdk::gfx::LineDashPattern_DashDotDot
@ LineDashPattern_DashDotDot
Dash-dot-dot pattern.
Definition: 2d_graphics_consts.h:227
sdk::gfx::FontWeight_Light
@ FontWeight_Light
Light font.
Definition: 2d_graphics_consts.h:163
sdk::gfx::FillModeType_EvenOdd
@ FillModeType_EvenOdd
Fill mode by checking even/odd intersection count.
Definition: 2d_graphics_consts.h:44
sdk::gfx::TextWordWrapping_Wrap
@ TextWordWrapping_Wrap
Break words if they overflows text layout.
Definition: 2d_graphics_consts.h:153
sdk::gfx::FontStretch_SemiCondensed
@ FontStretch_SemiCondensed
Semi-condensed font.
Definition: 2d_graphics_consts.h:192
sdk::gfx::TextAntiAliasingMode_ClearType
@ TextAntiAliasingMode_ClearType
ClearType anti-aliasing.
Definition: 2d_graphics_consts.h:119
sdk::gfx::kPixelFormat_BGRA_8888
@ kPixelFormat_BGRA_8888
BGRA, 32 bits.
Definition: 2d_graphics_consts.h:27
sdk::gfx::StartFigureStyle_Filled
@ StartFigureStyle_Filled
Filled figure.
Definition: 2d_graphics_consts.h:52
sdk::gfx::AntiAliasingMode_None
@ AntiAliasingMode_None
Anti-aliasing is disabled.
Definition: 2d_graphics_consts.h:97
sdk::gfx::FontWeight_Thin
@ FontWeight_Thin
Thin font.
Definition: 2d_graphics_consts.h:161
sdk::gfx::FontStretch_UltraCondensed
@ FontStretch_UltraCondensed
Ultra condensed font.
Definition: 2d_graphics_consts.h:189
sdk::gfx::FontStyle_Normal
@ FontStyle_Normal
Normal font.
Definition: 2d_graphics_consts.h:178
sdk::gfx::PathCombineMode_AND
@ PathCombineMode_AND
Intersection of two paths.
Definition: 2d_graphics_consts.h:69
sdk::gfx::TextAntiAliasingMode_None
@ TextAntiAliasingMode_None
Text anti-aliasing is disabled.
Definition: 2d_graphics_consts.h:117
sdk::gfx::FontWeight_Normal
@ FontWeight_Normal
Normal font.
Definition: 2d_graphics_consts.h:164
sdk::gfx::FillModeType_Winding
@ FillModeType_Winding
Fill mode by checking left-to-right or right-to-left segment intersection count.
Definition: 2d_graphics_consts.h:45
sdk::gfx::StrokeStyleOptions
Set of parameters for stroke style definition.
Definition: 2d_graphics_consts.h:233
sdk::gfx::TextHorizontalAlignment_Begin
@ TextHorizontalAlignment_Begin
Align text to leading edge (to left, if reading direction from left to right)
Definition: 2d_graphics_consts.h:143
sdk::gfx::PathCombineMode
PathCombineMode
Possible modes for combining two paths.
Definition: 2d_graphics_consts.h:66
sdk::gfx::StrokeStyleOptions::dash_offset
float dash_offset
Dash offset from start point, in appropriate measurement units.
Definition: 2d_graphics_consts.h:241
sdk::gfx::StartFigureStyle
StartFigureStyle
New figure style (see I2DGraphicsPathEditor::StartFigure)
Definition: 2d_graphics_consts.h:50
sdk::gfx::StartFigureStyle_Hollow
@ StartFigureStyle_Hollow
Hollow figure.
Definition: 2d_graphics_consts.h:53
sdk::gfx::TextHorizontalAlignment
TextHorizontalAlignment
Text horizontal alignment type.
Definition: 2d_graphics_consts.h:141
sdk::gfx::StrokeStyleOptions::dash_pattern
LineDashPattern dash_pattern
Dash pattern for line.
Definition: 2d_graphics_consts.h:239
sdk::gfx::FontWeight_ExtraBold
@ FontWeight_ExtraBold
Extra-bold font.
Definition: 2d_graphics_consts.h:168
sdk::gfx::PathCompareResult_NoIntersection
@ PathCompareResult_NoIntersection
Both of paths does not intersects at all.
Definition: 2d_graphics_consts.h:79
sdk::gfx::FinishFigureRule_LeaveOpened
@ FinishFigureRule_LeaveOpened
Figure should be opened.
Definition: 2d_graphics_consts.h:60
sdk::gfx::TextVerticalAlignment
TextVerticalAlignment
Text vertical alignment type.
Definition: 2d_graphics_consts.h:132
sdk::gfx::TextVerticalAlignment_Center
@ TextVerticalAlignment_Center
Align text to center.
Definition: 2d_graphics_consts.h:135
sdk::gfx::LineCapStyle_Triangle
@ LineCapStyle_Triangle
Triangle line cap style.
Definition: 2d_graphics_consts.h:207
sdk::gfx::LineDashPattern_UserDefined
@ LineDashPattern_UserDefined
User defined pattern for line.
Definition: 2d_graphics_consts.h:228
sdk::gfx::LineDashPattern_Dot
@ LineDashPattern_Dot
Dotted line.
Definition: 2d_graphics_consts.h:225
sdk::gfx::LineJoinStyle_Miter
@ LineJoinStyle_Miter
Miter style.
Definition: 2d_graphics_consts.h:214
sdk::gfx::LineCapStyle
LineCapStyle
Possible cap styles for line.
Definition: 2d_graphics_consts.h:202
sdk::gfx::LineJoinStyle
LineJoinStyle
Describes possible types of line join styles.
Definition: 2d_graphics_consts.h:212
sdk::gfx::TextHorizontalAlignment_End
@ TextHorizontalAlignment_End
Align text to trailing edge (to right, if reading direction from left to right)
Definition: 2d_graphics_consts.h:145
sdk::gfx::StrokeStyleOptions::line_start_cap
LineCapStyle line_start_cap
Line start cap style.
Definition: 2d_graphics_consts.h:235
sdk::gfx::PathCompareResult_Unknown
@ PathCompareResult_Unknown
Can't compare two graphics paths.
Definition: 2d_graphics_consts.h:78
sdk::gfx::LineCapStyle_Round
@ LineCapStyle_Round
Round line cap style.
Definition: 2d_graphics_consts.h:206
sdk::gfx::StrokeStyleOptions::line_end_cap
LineCapStyle line_end_cap
Line end cap style.
Definition: 2d_graphics_consts.h:236
sdk::gfx::FontWeight_Medium
@ FontWeight_Medium
Medium font.
Definition: 2d_graphics_consts.h:165
sdk::gfx::FontWeight_Heavy
@ FontWeight_Heavy
Heavy font.
Definition: 2d_graphics_consts.h:169
sdk::gfx::TextReadingDirection_LeftToRight
@ TextReadingDirection_LeftToRight
Left-to-right reading direction.
Definition: 2d_graphics_consts.h:126
sdk::gfx::FontStyle_Italic
@ FontStyle_Italic
Italic font.
Definition: 2d_graphics_consts.h:179
sdk::gfx::FontWeight_SemiBold
@ FontWeight_SemiBold
Semi-bold font.
Definition: 2d_graphics_consts.h:166
sdk::gfx::FontStretch_Expanded
@ FontStretch_Expanded
Expanded font.
Definition: 2d_graphics_consts.h:195
sdk::gfx::BitmapBrushExtendMode_Mirror
@ BitmapBrushExtendMode_Mirror
Mirror mode.
Definition: 2d_graphics_consts.h:268
sdk::gfx::kDefaultDPI
static const float kDefaultDPI
Default DPI value.
Definition: 2d_graphics_consts.h:20
sdk::gfx::PathCompareResult_Intersection
@ PathCompareResult_Intersection
Graphic paths intersects, but neither completely contains the other.
Definition: 2d_graphics_consts.h:82
sdk::gfx::LineDashPattern
LineDashPattern
Describes possible types of dash pattern for line.
Definition: 2d_graphics_consts.h:221
sdk::gfx::TextWordWrapping
TextWordWrapping
Text word wrapping types.
Definition: 2d_graphics_consts.h:150
sdk::gfx::BitmapBrushExtendMode
BitmapBrushExtendMode
Describes possible of extend modes for bitmap based brushes.
Definition: 2d_graphics_consts.h:264
sdk::gfx::MeasurementUnits
MeasurementUnits
Measurement unit types.
Definition: 2d_graphics_consts.h:33
sdk::gfx::FontStyle
FontStyle
Possible font styles.
Definition: 2d_graphics_consts.h:175
sdk::gfx::TextReadingDirection_RightToLeft
@ TextReadingDirection_RightToLeft
Right-to-left reading direction.
Definition: 2d_graphics_consts.h:127
sdk::gfx::LineDashPattern_Solid
@ LineDashPattern_Solid
Solid line.
Definition: 2d_graphics_consts.h:223
sdk::gfx::TextAntiAliasingMode
TextAntiAliasingMode
Possible text anti-aliasing modes.
Definition: 2d_graphics_consts.h:115
sdk::gfx::FontStretch_Normal
@ FontStretch_Normal
Normal font.
Definition: 2d_graphics_consts.h:193
sdk::gfx::FontStretch_ExtraExpanded
@ FontStretch_ExtraExpanded
Extra expanded font.
Definition: 2d_graphics_consts.h:196
sdk::gfx::StrokeStyleOptions::miter_limit
float miter_limit
Miter limit, in appropriate measurement units.
Definition: 2d_graphics_consts.h:240
sdk::gfx::PathSimplifyMode
PathSimplifyMode
Possible modes for graphics path simplification.
Definition: 2d_graphics_consts.h:87
sdk::gfx::PathSimplifyMode_Lines
@ PathSimplifyMode_Lines
Use only lines for simplification.
Definition: 2d_graphics_consts.h:89
sdk::gfx::FontStyle_Default
@ FontStyle_Default
Default font style.
Definition: 2d_graphics_consts.h:177
sdk::gfx::TextVerticalAlignment_Bottom
@ TextVerticalAlignment_Bottom
Align text to bottom.
Definition: 2d_graphics_consts.h:136
sdk::gfx::FontWeight
FontWeight
Possible font weights.
Definition: 2d_graphics_consts.h:158
sdk::gfx::PathCombineMode_XOR
@ PathCombineMode_XOR
XOR operation for paths.
Definition: 2d_graphics_consts.h:70
sdk::gfx::PathCombineMode_EXCLUDE
@ PathCombineMode_EXCLUDE
Exclude common part of first and second paths from first path.
Definition: 2d_graphics_consts.h:71
sdk::gfx::PathCombineMode_OR
@ PathCombineMode_OR
Union of two paths.
Definition: 2d_graphics_consts.h:68
sdk::gfx::FinishFigureRule
FinishFigureRule
Figure finish rule (see I2DGraphicsPathEditor::FinishFigure)
Definition: 2d_graphics_consts.h:58
sdk::gfx::MeasurementUnits_Pixels
@ MeasurementUnits_Pixels
Device-independent pixels.
Definition: 2d_graphics_consts.h:35
sdk::gfx::FontStretch
FontStretch
Possible font stretches.
Definition: 2d_graphics_consts.h:186
sdk::gfx::StrokeStyleOptions::dash_cap
LineCapStyle dash_cap
Dash cap style.
Definition: 2d_graphics_consts.h:237
sdk::gfx::FontStretch_UltraExpanded
@ FontStretch_UltraExpanded
Ultra expanded font.
Definition: 2d_graphics_consts.h:197
sdk::gfx::PathCompareResult_GivenPathInside
@ PathCompareResult_GivenPathInside
Passed input graphics path fully contains given graphics path.
Definition: 2d_graphics_consts.h:81
sdk::gfx::LineCapStyle_Flat
@ LineCapStyle_Flat
Flat line cap style.
Definition: 2d_graphics_consts.h:204
sdk::gfx::LineJoinStyle_Bevel
@ LineJoinStyle_Bevel
Bevel style.
Definition: 2d_graphics_consts.h:215
sdk::gfx::PathCompareResult_InputPathInside
@ PathCompareResult_InputPathInside
Given graphics path fully contains passed input graphics path.
Definition: 2d_graphics_consts.h:80
sdk::gfx::TextVerticalAlignment_Top
@ TextVerticalAlignment_Top
Align text to top.
Definition: 2d_graphics_consts.h:134
sdk::gfx::TextHorizontalAlignment_Center
@ TextHorizontalAlignment_Center
Align text to center.
Definition: 2d_graphics_consts.h:144
sdk::gfx::MeasurementUnits_Millimeters
@ MeasurementUnits_Millimeters
Millimeters.
Definition: 2d_graphics_consts.h:36
sdk::gfx::StrokeStyleOptions::line_join_style
LineJoinStyle line_join_style
Line join style.
Definition: 2d_graphics_consts.h:238
sdk::gfx::TextReadingDirection
TextReadingDirection
Text reading direction types.
Definition: 2d_graphics_consts.h:124