Back
to the beginning of class HT_Rendition
HT_Rendition::line_cap,
set_line_cap
Purpose
Sets or queries the line cap attribute in this rendition
object.
Synopsis
HT_Line_Cap line_cap ()
void set_line_cap (HT_Line_Cap x, HT_Boolean shared = HK_False) alter
Details
The line cap attribute controls the treatment of the
ends of lines and the ends of the end segments of non closed polylines.
It must have one of the enumerated values defined in the class HT_Line_Cap.
HT_Line_Cap::Butt
Line end is specified as the line
perpendicular to the relevant segment of the polyline and going through
the endpoint of the line (or dash in the case of dash lines) .
HT_Line_Cap::Round
Line end formed by a semi circle
centered at the endpoint of the line (or dash in the case of dash lines).
HT_Line_Cap::Square
Line end formed by a square centered
at the endpoint of the line (or dash in the case of dash lines).
HT_Line_Cap::Diamond
Line end formed by a triangle centered at the endpoint
of the line.
For more information on line caps and illustrations,
see the section "line
Caps and Joins," in chapter 2, "Heidi Architecture."
See also
The following are related line cap methods: line_start_cap,
line_end_cap,
line_end_cap_solid,
dash_cap,
dash_start_cap,
dash_end_cap;
and, the related line join methods line_join
and line_joins_solid.
HT_Rendition::line_end_cap,
set_ line_end_cap
Purpose
Controls the type
of end cap used for lines.
Synopsis
HT_Line_Cap
line_end_cap () const
void
set_line_end_cap (HT_Line_Cap x, HT_Boolean shared = HK_False) alter
Details
The line_end_cap
method specifies the type of end cap
for whole lines, in the case that the start and end caps are different.
It
must have one of the enumerated values defined in the class
HT_Line_Cap
¾
Butt,
Round,
Diamond or Square.
It applies to lines greater than one pixel wide.
For more information on line caps, see the section
"line Caps
and Joins," in chapter 2, "Heidi Architecture," and
class HT_Line_Cap.
See also
The following are related line cap methods: line_cap,
line_start_cap,
line_end_cap_solid,
dash_cap,
dash_start_cap,
dash_end_cap;
and, the related line join methods line_join
and line_joins_solid.
HT_Rendition::line_end_cap_solid,
set_ line_end_cap_solid
Purpose
Controls the drawing
of solid end caps for non closed polylines lines.
Synopsis
HT_Boolean
line_end_cap_solid () const
void
set_line_end_cap_solid (HT_Boolean x, HT_Boolean shared = HK_False) alter
Details
The line_end_cap_solid
method specifies the type of solid end
cap for non closed polylines. The handling
of the end cap depends on the position of the cap in a dash line pattern.
If the position is in a "solid" section, the cap is drawn normally. If
the position is in a gap between dashes, the Heidi program checks to see
if the matching
line_xxx_solid
value is set. If it is set, then the dash is drawn normally; otherwise
if it is not set and the line is in filled mode, the dash is drawn in the
contrast color or if it is not set and the line is in "hollow" mode then
the Heidi program does nothing. Basically all caps default to Butt (none)
and the line_xxx_solid
flags default to False (don't draw in the gap unless in filled mode, and
in that case use contrast).
For more information on line caps, see the section
"line Caps
and Joins," in chapter 2, "Heidi Architecture," and
class HT_Line_Cap.
See also
The following are related line cap methods: line_cap,
line_start_cap,
dash_cap,
dash_start_cap,
dash_end_cap;
and, the related line join methods line_join
and line_joins_solid.
HT_Rendition::line_incarnation
Purpose
Queries the line incarnation in this HT_Rendition
object¾
not
for use by applications.
Synopsis
HT_Incarnation line_incarnation ()
Details
typedef long HT_Incarnation;
This value uniquely characterizes the set of values of all
the line attributes in this HT_Rendition object. Any other HT_Rendition
object with the same value of the line incarnation has the same values
for all the line attributes as this one.
It can be used by drivers to optimize the process of setting
attributes to the hardware. If the incarnation value has not changed, then
the driver may assume that the attributes for this group have not changed
since the last call to this routine.
HT_Rendition::line_join,
set_line_join
Purpose
Sets or queries the line join attribute in this rendition
object
Synopsis
HT_Line_Join line_join ()
void set_line_join (HT_Line_Join x, HT_Boolean shared = HK_False) alter
Details
The line join attribute affects the treatment of the
interior vertices of polylines. It must have one of the enumerated values
defined in the class HT_Line_Join.
HT_Line_Join::Miter
The two edges of the nominal segment on the exterior
side of the angle are extended to where they intersect and the polyline
image is filled out to the boundary formed by those extended edges. Thus,
the miter case involves adding another kite-shaped area to the line at
each join.
HT_Line_Join::Bevel
A line is drawn between the corners of the two nominal
segments exterior to the angle of the join, and the polyline image
is filled out to this line. Thus, the bevel case involves adding an equilateral
triangular area to the line at each joint.
HT_Line_Join::Round
An arc of a circle is drawn tangent to the two edges
of the nominal segments exterior to the angle of the join,
and the polyline image is filled out to this arc.
HT_Line_Join::Diamond
Two lines are drawn from the corners of the two
nominal segments exterior to the angle of the join. These lines extend
to a point, and the polyline image is filled out to them. The "vertex"
point of these lines is 1/2 line width from the intersection of the midpoints
of the ends of the nominal segments.
For diagrams and further definitions of the line join
styles, see the "Line
Caps and Joins" section in chapter 2, "Heidi Architecture."
See also
line_joins_solid
and the following related line and dash cap methods of class HT_Rendition:
line_cap,
line_start_cap,
line_end_cap,
line_end_cap_solid,
dash_cap,
dash_start_cap
and dash_end_cap.
HT_Rendition::line_joins_solid,
set_line_joins_solid
Purpose
Sets or queries the line join attribute to solid in
this rendition object.
Synopsis
HT_Boolean
line_joins_solid () const
void
set_line_joins_solid (HT_Boolean x, HT_Boolean shared = HK_False) alter
Details
The line_joins_solid attribute displays the
interior vertices of polylines as solid. It must have one of the enumerated
values defined in the class HT_Line_Join
¾
Miter, Bevel, Diamond or
Round.
The handling of the join depends on the
position of the join in a dash line pattern. If the position is in a "solid"
section, the cap is drawn normally. If the position is in a gap between
joins, the Heidi program checks to see if the matching
line_xxx_solid
value is set. If it is set, then the join is drawn normally; otherwise
if it is not set and the line is in filled mode, the join is drawn in the
contrast color or if it is not set and the line is in "hollow" mode then
the Heidi program does nothing.
For diagrams and further definitions of the line join
styles, see the "Line
Caps and Joins" section in chapter 2, "Heidi Architecture."
See also
line_join
and the following related line and dash cap methods of class HT_Rendition:
line_cap,
line_start_cap,
line_end_cap,
line_end_cap_solid,
dash_cap,
dash_start_cap
and dash_end_cap.
HT_Rendition::line_pattern,
set_line_pattern
Purpose
Sets the line pattern attribute in this rendition object.
Synopsis
HT_Line_Pattern line_pattern ()
void set_line_pattern (HT_Line_Pattern x, HT_Boolean shared = HK_False) alter
void set_line_pattern (HT_Line_Shape const & x, HT_Boolean shared = HK_False) alter
void set_line_pattern (HT_Dash_Pattern const & x, HT_Boolean shared = HK_False) alter
Details
npattern must have one of the enumerated values
defined in the class HT_Line_Pattern. See HT_Line_Pattern
for the valid styles.
The pattern is applied to all line primitives, including
elliptical arc and outline ellipse. The pattern is applied as voids to
the line. That is, the background color or color of primitives lying under
the line shows through. The pattern is applied as a "decal" in screen space
and is not subject to coordinate transformations.
In the second form HT_Line_Pattern refers to
the enum for built-in patterns.
In the third form HT_Line_Shape refers to a routine
or shape engine. For more information see the line_shape
method.
In the fourth form HT_Dash_Pattern refers to
a user defined line pattern.
See Also
For more information and an example, see the section,
Line
Patterns, in chapter 2, "Heidi Architecture, Renditions," line_pattern_scale,
line_pattern_adaptive
and pattern_scale.
HT_ Rendition::line_pattern_adaptive,
set_line_pattern_adaptive
Purpose
Sets or queries whether the current line pattern should
be adaptable
Synopsis
HT_Boolean
line_pattern_adaptive () const
void
set_line_pattern_adaptive (HT_Boolean x, HT_Boolean shared = HK_False)
Details
Set this flag if line patterns should be scaled to make
the pattern fit within the vertices of a line segment.
The pattern is shifted by one half the size of the first
dash so that the line segment always begins and ends with a dash.
For example in a dashed
line pattern description, the first number in the packed array is the
nominal_length.
This is a scaling factor for adaptive patterns¾the
actual length or a percentage length that will display a line type pattern
array within the varying segments of a polyline. Thus, as the polyline
changes direction at each vertex, it is possible to display whole line
patterns within varying line segment lengths. This is important in many
applications for indicating property lines, contour lines, and so forth.
HT_ Rendition::line_pattern_scale,
set_ line_pattern_scale
Purpose
Retrieves or sets
the amount that patterned lines are scaled. It is a factor to change the
lengths of dashes.
Synopsis
float
line_pattern_scale (void) const
void
set_line_pattern_scale (float in, HT_Boolean shared = HK_False) alter
Details
HT_ Rendition::line_shape
Purpose
Returns a line shape
from a user defined shape engine.
Synopsis
HT_Line_Shape const & line_shape () const
Details
These user defined shape engines are small plug-ins used
to process data, similar to small renderers that can be coded on the fly.
For more information see set_line_pattern.
An example can be seen in the sample application Stdtest.
HT_Rendition::line_start_cap,
set_ line_start_cap
Purpose
Controls the type
of beginning, start, cap used for lines.
Synopsis
HT_Line_Cap
line_start_cap () const
void
set_line_start_cap (HT_Line_Cap x, HT_Boolean shared = HK_False) alter
Details
The line_start_cap
method specifies the type of start cap
for lines, in the case that the start and end caps are different. It
must have one of the enumerated values defined in the class HT_Line_Cap
¾
Butt,
Round,
Diamond or Square.
For more information on line caps, see the section
"line Caps
and Joins," in chapter 2, "Heidi Architecture," and
class HT_Line_Cap.
See also
HT_Rendition::line_weight,
set_line_weight
Purpose
Sets the line weight attribute in this rendition object.
Synopsis
int line_weight ()
void set_line_weight (int x, HT_Boolean shared = HK_False) alter
Details
weight represents line thickness in pixel units.
It is applied to all line primitives, including elliptical arc and outline
ellipse. When weight == 0, this signifies the driver should draw
the thinnest line possible, which in most cases is the same as weight
== 1.
HT_Rendition::marker_incarnation
Purpose
Queries the marker incarnation in this HT_Rendition
object¾
not
for use by applications.
Synopsis
HT_Incarnation marker_incarnation ()
Details
typedef long HT_Incarnation;
This value uniquely characterizes the set of values of all
the marker attributes in this HT_Rendition object. Any other HT_Rendition
object with the same value of the marker incarnation has the same values
for all the marker attributes as this one.
It can be used by drivers to optimize the process of setting
attributes to the hardware. If the incarnation value has not changed, then
the driver may assume that the attributes for this group have not changed
since the last call to this routine.
HT_Rendition::marker_size,
set_marker_size
Purpose
Sets or queries the marker size attribute in this rendition
object.
Synopsis
int marker_size ()
void set_marker_size (int x, HT_Boolean shared = HK_False) alter
Details
x gives the marker radius in pixel units.
HT_Rendition::marker_symbol,
set_marker_symbol
Purpose
Sets or queries the marker symbol attribute in this
rendition object.
Synopsis
HT_Marker_Symbol marker_symbol ()
void set_marker_symbol (HT_Marker_Shape const & x, HT_Boolean shared = HK_False) alter
void set_marker_symbol (HT_Marker_Symbol x, HT_Boolean shared = HK_False) alter
Details
x, in the previous example, must have one of
the enumerated values defined in the class HT_Marker_Symbol.
This is a list of those enumerations.
Dot,
Plus,
X,
Star,
Circle,
Circle_With_Dot,
Circle_With_Plus,
Circle_With_X,
Circle_With_Circle,
Circle_Filled,
Box,
Box_With_Dot,
Box_With_X,
Box_Filled,
Diamond,
Diamond_With_Dot,
Diamond_With_Plus,
Diamond_Filled,
Triangle_Up,
Triangle_Up_With_Dot,
Triangle_Up_Filled,
Triangle_Up_Vertex,
Triangle_Up_Vertex_Filled,
Triangle_Down,
Triangle_Down_With_Dot,
Triangle_Down_Filled,
Triangle_Down_Vertex,
Triangle_Down_Vertex_Filled,
Triangle_Left,
Triangle_Left_With_Dot,
Triangle_Left_Filled,
Triangle_Left_Vertex,
Triangle_Left_Vertex_Filled,
Triangle_Right,
Triangle_Right_With_Dot,
Triangle_Right_Filled,
Triangle_Right_Vertex,
Triangle_Right_Vertex_Filled,
Count,
Undefined = -1
HT_Rendition::matched_back_color
Purpose
Queries the matched color attribute, in this rendition
object, for the back face of the geometry.
Synopsis
HT_RGB32 const
matched_back_color () const
{return m_nr->m_color->m_back_color.matched_rgb();}
Details
See HT_Rendition::matched_color
for details.
HT_Rendition::matched_background_color
Purpose
Queries for the matched background color.
Synopsis
HT_RGB32 const matched_background_color () const
Details
Matched background color will choose the closest match
that approximates the original background color.
For more information, see the background
color method, in this class.
HT_Rendition:: matched_color
Purpose
Queries for the matched color attribute in this rendition
object.
Synopsis
HT_RGB32 const matched_color ()
Details
matched_color chooses the closest match that
approximates the original color that was set for the driver.
For more information, see the color
method,
in this class.
HT_Rendition:: matched_contrast_color
Purpose
Face, matched, contrast color is approximated in this
rendition object.
Synopsis
HT_RGB32 const & matched_contrast_color ()
Details
matched_contrast_color will choose the closest
match that approximates the original face contrast color.
For more information, see the contrast_color
method, in this class.
HT_Rendition::matched_front_color
Purpose
Queries the matched color attribute, in this rendition
object, for the front face of the geometry.
Synopsis
HT_RGB32 const
matched_front_color () const
{return m_nr->m_color->m_front_color.matched_rgb();}
Details
See HT_Rendition::matched_color
for details.
HT_Rendition::misc_incarnation
Purpose
Queries the miscellaneous incarnation in this HT_Rendition
object. Not for use by applications.
Synopsis
HT_Incarnation color_incarnation ()
Details
typedef long HT_Incarnation
This value uniquely characterizes the set of values of all
the miscellaneous attributes in this HT_Rendition object. Any
other HT_Rendition object with the same value of the miscellaneous
incarnation has the same values for all the miscellaneous attributes as
this one.
It can be used by drivers to optimize the process of setting
attributes to the hardware. If the incarnation value has not changed, then
the driver may assume that the attributes for this group have not changed
since the last call to this routine.
HT_Rendition::miter_angle,
set_miter_angle
Purpose
Cuts off the point of a miter at
a percentage limit and creates a bevel.
Synopsis
float miter_angle () const
void set_miter_angle (float x, HT_Boolean shared = HK_False) alter
Details
The acute point of small angled, wide, mitered lines
is cut and replaced by a bevel at a certain percentage limit. The default
limit is 10%.
HT_Rendition::miter_length,
set_miter_length
Purpose
Cuts off the point of a miter at a multiple of the line
weight.
Synopsis
float miter_length () const
void set_miter_length (float x, HT_Boolean shared = HK_False) alter
Details
Similar to miter_angle, but
less drastic, this method cuts off the point without eliminating the miter.
The default is 6 times the line weight.
HT_Rendition::mixing_mode,
set_mixing_mode
Purpose
Sets or queries the mixing mode attribute in this rendition
object.
Synopsis
HT_Mixing_Mode mixing_mode () const
void set_mixing_mode (HT_Mixing_Mode x, HT_Boolean shared = HK_False) alter
Details
Defines the logical operation used when drawing filled
primitives such as faces and text. The logical operation is an enumeration
value defined in the class HT_Mixing_Mode.
Currently two values are supported, Exclusive_Or
and Copy. The Exclusive_Or mode
means that the destination pixel should be the XOR of the source pixel
and the destination pixel. The Copy mode specifies that destination pixel
should be replaced by the source pixel. For more information see the section,
Miscellaneous
Attributes, in chapter 2, Heidi Architecture.
HT_Rendition::modelling_matrix,
set_modelling_matrix
Purpose
Sets or queries the modeling matrix in this HT_Rendition
object.
Synopsis
HT_Matrix const & modelling_matrix (void) const
void set_modelling_matrix (HT_Matrix const & x, HT_Boolean shared = HK_False) alter;
Details
The first form returns a reference to the modeling matrix
in this HT_Rendition object.
The second form sets the modeling matrix to the argument
value.
The modeling matrix defines the transformation from object
coordinates to World Coordinates, the first stage of the 3D transformation
pipeline.
HT_Rendition::net_incarnation
Purpose
Queries the value of the net incarnation in this HT_Rendition
object. Not for use by applications.
Synopsis
HT_Incarnation net_incarnation ()
Details
typedef long HT_Incarnation;
If there is a change in any of the rendition values, the
net rendition has a new incarnation value.
This value uniquely characterizes the set of values of
all the attributes in this HT_Rendition object. Any other HT_Rendition
object with the same value of the net incarnation has the same values for
all the attributes as this one.
HT_Rendition::object_to_device
Purpose
Queries the object to device transformation matrix in
this HT_Rendition object.
Synopsis
HT_Matrix const & object_to_device ()
Details
This returns the matrix that represents the transformation
from object coordinates to device coordinates, and thus includes the effects
of the entire 3D transformation
pipeline.
HT_Rendition::operator
Purpose
Compares or sets the rendition to null.
Synopsis
HT_Boolean operator== (void * ptr) const
HT_Boolean operator!= (void * ptr) const
HT_Rendition & operator= (void * ptr)
Details
These operators do not support comparisons between two
HT_Rendition
objects. However, they do support comparisons to null.
HT_Rendition::pattern_mode,
set_pattern_mode
Purpose
Sets or queries the pattern mode attribute in this rendition
object.
Synopsis
HT_Pattern_Mode pattern_mode ()
void set_pattern_mode (HT_Pattern_Mode x, HT_Boolean shared = HK_False) alter
Details
Defines the drawing mode to use when drawing filled
primitives such as faces and text. The drawing mode is an enumeration value
defined in the class HT_Pattern_Mode.
Here is a list of supported values:
Hollow = 0,
Filled = 1,
Hollow_Reversed = 2,
Filled_Reversed = 3,
Fill_Mask = 1,
Reverse_Mask = 2,
Undefined = -1
The Hollow pattern mode means that the on bits
in the face patterns are filled with the drawing color and the off
bits
are not touched; Hollow_Reversed fills the off bits with
the drawing colors and leaves the on bits untouched. The
Filled
pattern
mode fills the off bits with the contrast color in addition to
filling the on bits with the drawing colors; Filled_Reversed fills
the off bits with the drawing color and on bits with
the contrast color. Fill_Mask is a bit mask determining if either
Filled_Reversed
or Filled is in effect. Similarly
Reverse_Mask is a bit
mask determining if either Filled_Reversed or Hollow_Reversed
is in effect.
HT_Rendition::perspective_correction,
set_perspective_correction
Purpose
Queries and sets the perspective correction flag in
this HT_Rendition object.
Synopsis
HT_Perspective_Correction perspective_correction () const
void set_perspective_correction (HT_Perspective_Correction x, HT_Boolean shared = HK_False) alter
Details
The flag indicates which of the following perspective
correction method is used.
None = 0,
Parameter = 1,
Color = 2,
World = 4,
All = 7
None, the default, disables the operation all together.
Parameter
performs perspective correction on the texture coordinate interpolation;
Color
on the color interpolation; World on the World coordinate vertices;
All
on all three interpolations.
For more information, see class HT_Perspective_Correction
HT_Rendition::projection_matrix
Purpose
Queries the projection matrix in this HT_Rendition
object.
Synopsis
HT_Matrix const & projection_matrix ( )
Details
The projection_matrix defines the transformation
from viewing coordinates to normalized projection coordinates. It is determined
by the camera parameters.
HT_Rendition::renderer_data
Purpose
A reference to the renderer from which the rendition
was constructed.
Synopsis
HT_Renderer_Data const * renderer_data (void)
Details
This is an internal function that ensures appropriately
shared data for changes. It is usually applied to the setting up of clipping
bounds.
HT_Rendition::renew_renderer
Purpose
renew_renderer
is called in order to associate a new renderer with a rendition.
Synopsis
HEIDI_API void renew_renderer (HT_Renderer_Data const * rd, HT_Boolean shared = HK_False) alter
HT_Rendition::reset_hard_clip
Purpose
Resets the hard clip rectangle to the window extent.
Synopsis
HEIDI_API void
reset_hard_clip (HT_Boolean shared = HK_False) alter
Details
This method resets the hard clip rectangle to the window
extent specified in the current renderer configuration by setting the backup
to the full value, as though it was never changed.
See Also
hard_clip,
restrict_hard_clip
For more information on clipping, see the section "Clipping,"
in chapter 2, "Heidi Architecture, The Transformation Pipeline."
HT_Rendition::restrict_hard_clip
Purpose
Merges the specified rectangle with the existing one.
Synopsis
void
restrict_hard_clip (int l, int r, int b, int t, HT_Boolean shared = HK_False) alter
HEIDI_API void
restrict_hard_clip (HT_Int_Rectangle const & rect, HT_Boolean shared = HK_False) alter
Details
The extent of the hard clip rectangle in this HT_Rendition
object is changed according to the arguments, as long as the result is
the intersection of the two rectangles and it will always be within the
old one. That is, the new left limit replaces the current one if it is
no smaller than the current one; the new right limit replaces the current
one if it is no greater, and so forth.
See Also
hard_clip,
reset_hard_clip
For more information on clipping, see the section "Clipping,"
in chapter 2, "Heidi Architecture, The Transformation Pipeline."
HT_Rendition::screen_matrix
Purpose
Queries the screen matrix in this HT_Rendition
object.
Synopsis
HT_Matrix const & screen_matrix ( )
Details
The screen matrix represents the transformation from
normalized projection coordinates to display viewport coordinates. It is
determined by camera parameters plus the viewport.
HT_Rendition::set_back_material
Purpose
Sets the material, in this HT_Rendition object,
for the back face of the geometry.
Synopsis
void
set_back_material (HT_Material const & x, HT_Boolean shared = HK_False) alter
{set_back_shader (x, shared);}
Details
See HT_Material
for details on the material attribute.
HT_Rendition::set_front_material
Purpose
Sets the material, in this HT_Rendition object,
for the front face of the geometry.
Synopsis
void
set_front_material (HT_Material const & x, HT_Boolean shared = HK_False) alter
{set_front_shader (x, shared);}
Details
See HT_Material for
details on the material attribute.
HT_ Rendition::set_material
Purpose
Sets the current material .
Synopsis:
void set_material (HT_Material const & x, HT_Boolean shared = HK_False)
Details:
See HT_Material for
details on the material attribute.
HT_Rendition::shader,
set_shader
Purpose
Queries and sets the shader in this HT_Rendition
object.
Synopsis
HT_Shader const & shader () const
void set_shader (HT_Shader const & x, HT_Boolean shared = HK_False) alter
Details
A shader, that is, a type of material, can be associated
with the rendition. It is part of the shading computation. These two functions
query and set the shader in this HT_Rendition object. They are
typically used in conjunction with lights in 3D.
HT_Rendition::swap_backface_color
Purpose:
Sets the front face color to the back face color and
the back face color to the front face color.
Synopsis:
void HT_Rendition::swap_backface_color ()
HT_Rendition::swap_contrast_color
Purpose
Sets the front face color to the contrast
color and the contrast color to the front face color.
Synopsis
void HT_Rendition::swap_contrast_color ()
HT_Rendition::text_draw_mode,
set_text_draw_mode
Purpose
Advises the font engine to either emit raster, stroked,
or outlined versions of the font.
Synopsis
text_draw_mode () const
set_text_draw_mode (int /* Font_Draw_Modes */ x, HT_Boolean shared = HK_False) alter
Details
This is done mainly for software font engines that can
switch between these modes.
HT_Rendition::text_incarnation
Purpose
Queries the text incarnation in this HT_Rendition
object. Not for use by applications.
Synopsis
HT_Incarnation text_incarnation () const
Details
typedef long HT_Incarnation;
This value uniquely characterizes the set of values of all
the text attributes in this HT_Rendition object. Any other HT_Rendition
object with the same value of the text incarnation has the same values
for all the text attributes as this one.
HT_Rendition::text_path,
set_text_path
Purpose
Sets or queries the text path attribute in this
HT_Rendition
object.
Synopsis
text_path () const
voidset_text_path(HT_Vector & x, HT_Boolean shared = HK_False) alter
Details
.
HT_Rendition::text_rotation,
set_text_rotation
Purpose
Sets or queries the text rotation attribute in this
HT_Rendition
object.
Synopsis
float text_rotation () const
void set_text_rotation (float x, HT_Boolean shared = HK_False) alter
Details
It defines the degree of text rotation in radians.
Note: Make sure that the rotation value is positive
and falls between 0 and 2Pi.
HT_Rendition::text_scale,
set_text_scale
Purpose
Sets or queries the text scale attribute in this HT_Rendition
object.
Synopsis
float text_scale () const
void set_text_scale (float x, HT_Boolean shared = HK_False) alter
Details
It defines the size of the text.
HT_Rendition::text_spacing,
set_text_spacing
Purpose
Sets or queries the text spacing attribute in this HT_Rendition
object.
Synopsis
float text_spacing ()const
void set_text_spacing (float x, HT_Boolean shared = HK_False) alter
Details
It defines inter-character spacing of the text.
HT_Rendition::transform_incarnation
Purpose
Queries the transform incarnation in this HT_Rendition
object. Not for use by applications.
Synopsis
HT_Incarnation transform_incarnation () const
Details
typedef long HT_Incarnation;
This value uniquely characterizes the set of values of all
of the transformation attributes—modeling matrix, camera parameters, and
so forth—in this HT_Rendition object. Any other HT_Rendition
object with the same value of the transform incarnation has the same values
for all of the transformation attributes as this one.
HT_Rendition::use_plain_form
Purpose
Sets the line pattern to Solid, line cap to
Butt,
line join to Miter, and face pattern to Solid.
Synopsis
void HT_Rendition::use_plain_form (int weight)
Details
This is a convenient function to set the face and line
rendition to the above values.
HT_Rendition::viewing_matrix
Purpose
Queries the viewing_matrix in this HT_Rendition
object.
Synopsis
HT_Matrix const & viewing_matrix (void) const
Details
The viewing_matrix defines the transformation
from
World Coordinates to viewing coordinates. It is determined by
camera
parameters.
HT_Rendition::viewport,
set_viewport
Purpose
Queries or sets the viewport in the HT_Rendition
object.
Synopsis
HT_Int_Rectangle const & viewport (void) const
void set_viewport (HT_Int_Rectangle const & x, HT_Boolean shared = HK_False) alter;
Details
The first form returns the current viewport, the second
form sets it.
The viewport is a rectangle in device coordinates onto
which the camera field of view rectangle,
in the image plane, is mapped.
HT_Rendition::world_to_device
Purpose
Queries the world-to-device matrix in this HT_Rendition
object.
Synopsis
HT_Matrix const & world_to_device (void) const
Details
Returns the matrix that represents the transformation
from World Coordinates to device coordinates. Thus, it returns the effects
of all of the 3D transformation pipeline, after the modeling transformation.