Functions
Set_Line_Pattern_Explicit

Functions

void Set_Line_Pattern_Explicit (const char *pattern)
 Applies line style, caps, joins and arrow options on a line or polyline to be set directly. More...
 
void Set_Line_Pattern_Explicit_By_Key (HC_KEY key, const char *pattern)
 Similar to Set_Line_Pattern_Explicit(), but operates on a given segment rather than the currently open one. More...
 

Detailed Description

Function Documentation

void Set_Line_Pattern_Explicit ( const char *  pattern)

Applies line style, caps, joins and arrow options on a line or polyline to be set directly.

Parameters
pattern- A quoted string or a string variable containing a list of the desired pattern settings.
Supported Options:
line style, arrows, start glyph arrow, end glyph arrow, caps, start cap, inner cap, end cap, glyphs, start glyph, middle glyph, end glyph, unset glyphs, join

DETAILS

Declares, changes, or removes a value for the Line Pattern attribute. Use this function when you want to make one collection of lines look different from another on the screen. The following options are recognized:

[no] line style

Specifies a line style that was defined in Define_Line_Style() or any line pattern description that is legally accepted in Set_Line_Pattern().

[no] arrows = [glyph_name]

Specifies a glyph that was defined in Define_Glyph() to be used as end points for the line. Arrows are similar to caps except that the glyph at the end point of an arrow will be transformed such that it will be oriented in the opposite direction as the start point.

[no] start glyph arrow = [glyph_name]

Specifies a glyph that was defined in Define_Glyph() to be used as start point for the line. Arrows are similar to caps except that the glyph at the end point of an arrow will be transformed such that it will be oriented in the opposite direction as the start point. If you specify a start glyph arrow, HOOPS will use it as the end glyph arrow unless you specify an end glyph arrow explicitly.

[no] end glyph arrow = [glyph_name]

Specifies a glyph that was defined in Define_Glyph() to be used as end point for the line. Arrows are similar to caps except that the glyph at the end point of an arrow will be transformed such that it will be oriented in the opposite direction as the start point.

[no] caps = [symbol]

Specifies a symbol to be used at the start and end point of the line. Possible symbols are as follows:

-------------------------------------------------------------
'|' (vertical bar)         A "butt" line cap.
'[' (left square bracket)  A "square" line cap.
'(' (left parenthesis)     A "round" line cap.
'<' (left angle bracket)   A "mitre" line cap
-------------------------------------------------------------
Note that if you specify the left parenthesis symbol for a "round" line cap, it must be in a surrounded by singles quotes to remove 
any ambiguity that might occur about the syntax of the options string.

[no] start cap(s) = [symbol]

Specifies a symbol to be used at the start the line. Possible symbols are the same as for caps. If you specify a start cap, HOOPS will use it as the end cap unless you specify an end cap explicitly.

[no] inner cap(s) = [symbol]

Specifies a symbol to be used to cap segments within the line. Note that inner caps have no effect if the line pattern is not broken. In other words, inner caps will not appear on a line pattern with no blanks between the dashes. Possible symbols are as follows:

-------------------------------------------------------------
'#' square (hash symbol)          A "square" segment cap.
'^' pointy (carat symbol)         A "mitre" segment cap.
'@' round  ("at" symbol)          A "round" line segment cap.
-------------------------------------------------------------

[no] end cap(s) = [symbol]

Specifies a symbol to be used at the end the line. Possible symbols are as follows:

-------------------------------------------------------------
'|' (vertical bar)         A "butt" line cap.
']' (left square bracket)  A "square" line cap.
')' (left parenthesis)     A "round" line cap.
'>' (left angle bracket)   A "mitre" line cap
-------------------------------------------------------------

Note that if you specify the right parenthesis symbol for a "round" line cap, it must be in a surrounded by singles quotes to remove any ambiguity that might occur about the syntax of the options string.

glyphs = [glyph_name]

Specifies a glyph defined in Define_Glyph() to be used for the start and end of the line. If the line is a polyline, then points defined in between the start and end will also be drawn with the glyph.

[no] start glyph = [glyph_name]",

Specifies a glyph defined in Define_Glyph() to be used for the start of the line. If you specify a start glyph, HOOPS will use it as the end glyph unless you specify an end glyph explicitly.

[no] middle glyph = [glyph_name]

Specifies a glyph defined in Define_Glyph() to be used for the middle of a polyline where a point has been defined.

[no] end glyph = [glyph_name]

Specifies a glyph defined in Define_Glyph() to be used for the end of the line.

unset glyphs

Reverts the line pattern to the initial specification via Define_Line_Style() or Set_Line_Pattern(). This means that any glyphs specified in subsequent calls to Set_Line_Pattern_Explicit() will be unset.

[no] join(s) = [symbol]

Specifies a symbol to be used in the joins of the line. The possible symbols are as follows:

-------------------------------------------------------------
'<' mitre  (right angle bracket)  A "mitre" line join.
'|' bevel  (right square bracket) A "bevel" line join.
'(' round  (right parenthesis)    A "round" line join.
-------------------------------------------------------------
Note that if you specify the left parenthesis symbol for a "round" line join, it must be in a surrounded by singles quotes to remove 
any ambiguity that might occur about the syntax of the options string.

By default no line segment caps are applied to non-solid patterns.

Line Pattern only applies to lines generated by an Insert_Line() , an Insert_Polyline() , or an Insert_Ink() sequence. There is a separate method of adjusting the lines that represent the edges of filled objects.

The precise length of the pattern as it finally appears on the screen depends on the display device at hand. This is true whether the pattern scales itself up or down appropriately as the view being represented changes, or whether, on a Polyline, the pattern continues without interruption around the corners, or whether the tail end of the line is marked by "backtracking" and coloring it in even if the pattern is blank at that point.

NOTES

Line cap and join attributes are device specific when applied to patterned lines. Some devices apply the cap attributes to each portion of the line. In other words, each dash of a dashed line might have round caps at both ends.

Lines may be turned off entirely with Set_Visibility() .

RESTRICTIONS

See also
Define_Line_Style, Set_Line_Pattern, Insert_Ink, Insert_Line, Insert_Polyline, Set_Color, Set_Edge_Pattern, Set_Line_Weight, Show_Line_Pattern_Explicit.
void Set_Line_Pattern_Explicit_By_Key ( HC_KEY  key,
const char *  options 
)

Similar to Set_Line_Pattern_Explicit(), but operates on a given segment rather than the currently open one.

Parameters
key- key associated with the segment to be changed.
options- A quoted string or a string variable containing a list of the desired option settings.

DETAILS

No additional details. See Set_Line_Pattern_Explicit().