LinePattern
-
class
LinePattern
The LinePattern class is a concept class for line-pattern-related enum classes.
Public Types
-
enum class
Cap
: uint32_t Enumerates the predefined cap types that can be used at the ends of line segments within a line pattern.
Values:
-
enumerator
Butt
Line segments will end with a flat cap perpendicular to the line segment vector. This cap will occur immediately at the end of the line segment and will not extend its length.
-
enumerator
Square
Line segments will end with half of a filled square cap whose side is perpendicular to the line segment vector. This cap will extend the length of a line segment, but otherwise will appear the same as the ButtCap.
-
enumerator
-
enum class
Default
: uint32_t Enumerates the predefined line patterns in Visualize. These can be accessed via the LinePatternKit::GetDefault function and their appearance can be seen here. Hardware acceleration for line patterns is available when the following conditions are met:
- You are using the DirectX11 or OpenGL2 driver
- You are using Visualize 2015 or later
- Segment-level display lists are active
- The line weight is 1
The following line patterns can be hardware accelerated: Dashed, Dotted, DashDot, Dash2Dot, Dash3Dot, LongDash, FineDot. The pattern does not continue along adjacent edges. The pattern is restarted for each edge.
Values:
-
enumerator
Solid
A solid unbroked line pattern.
-
enumerator
DashDot
A repeating pattern of 18 solid pixels, 5 blank pixels, 4 solid pixels, and 5 blank pixels.
-
enumerator
Dashed
A repeating pattern of 10 solid pixels and 6 blank pixels.
-
enumerator
Dotted
A repeating pattern of 5 solid pixels and 3 blank pixels.
-
enumerator
Dash2Dot
A repeating pattern of 15 solid pixels, 4 blank pixels, 3 solid pixels, 3 blank pixels, 3 solid pixels, and 4 blank pixels.
-
enumerator
Dash3Dot
A repeating pattern of 15 solid pixels, 2 blank pixels, 3 solid pixels, 2 blank pixels, 3 solid pixels, 2 blank pixels, 3 solid pixels, and 2 blank pixels.
-
enumerator
LongDash
A repeating pattern of 26 solid pixels and 6 blank pixels.
-
enumerator
LongDashShortDash
A repeating pattern of 100 solid pixels, 10 blank pixels, 20 solid pixels, and 10 blank pixels.
-
enumerator
LongDash2ShortDash
A repeating pattern of 86 solid pixels, 8 blank pixels, 15 solid pixels, 8 blank pixels, 15 solid pixels, and 8 blank pixels.
-
enumerator
FineDot
A repeating pattern of 1 solid pixel and 3 blank pixels.
-
enum class
InsetBehavior
: uint32_t Enumerates how glyphs interact with other line pattern elements within a line pattern.
Values:
-
enumerator
Overlap
Glyphs will overlap with surrounding line pattern elements. Line pattern elements adjacent to glyphs will not be trimmed.
-
enumerator
Trim
Glyphs will overlap with surrounding line pattern elements. Line pattern elements adjacent to glyphs will be trimmed.
-
enumerator
Inline
Glyphs will not overlap with surrounding line pattern elements, and adjacent line pattern elements will not be trimmed.
-
enumerator
-
enum class
Join
: uint32_t Enumerates the types of join to use for a line pattern. Joins will always be mitred at the half angle for the smaller angle defined by two line segments. This enumeration defines what the join will look like for the larger angle defined by two line segments.
Values:
-
enumerator
Mitre
The join for the larger angle will be mitred, i.e., the segments will meet at a point at the half angle of the larger angle.
-
enumerator
Round
The join for the larger angle will be rounded, i.e., there will be a circle that subtends the larger angle.
-
enumerator
Bevel
The join for the larger angle will be beveled, i.e., there will be a line that subtends the larger angle.
-
enumerator
-
enum class
Justification
: uint32_t Enumerates the justfication modes for a line pattern. These are used to attempt to make the line pattern appear evenly spaced between end points of a line.
Values:
-
enumerator
Center
Attempts to ensure that the first element of the line pattern appears at both the beginning and the end of the line. This will give the best results if the first element in a line pattern makes up at least half the total length of the elements for the line pattern body.
-
enumerator
Stretch
Stretches the pattern and modifies the size of the line pattern elements to ensure even spacing.
-
enumerator
-
enum class
Modifier
: uint32_t Enumerates the types of joins, start caps, and end caps that can be set when a line pattern attribute is set.
Values:
-
enumerator
GlyphName
A glyph was set for the cap or join. The glyph name is valid.
-
enumerator
Enumerated
A predefined (enumerated) cap or join was set. The enumeration type is valid.
-
enumerator
-
enum class
SizeUnits
: uint32_t Enumerates the units used when specifying length, weight and offsets for line patterns.
Values:
-
enumerator
SubscreenRelative
Fraction of the height of the outermost window.
-
enumerator
WindowRelative
Fraction of the height of the local window.
-
enumerator
WorldSpace
Object space units including any scaling components in modelling matrices and cameras.
-
enumerator
Points
Points units typically used for text size. 1 point corresponds to 1/72 inch.
-
enumerator
Pixels
Number of pixels.
-
enumerator
ScaleFactor
Fraction of the default line width. A value of 1 corresponds to 0.1 percent of the screen size.
-
enumerator
-
enum class