< Home

< Table of Contents

REFERENCE MANUAL

Text Class Reference

#include <hps.h>

Public Types

enum  Alignment {
  Alignment::TopLeft, Alignment::CenterLeft, Alignment::BottomLeft, Alignment::TopCenter,
  Alignment::Center, Alignment::BottomCenter, Alignment::TopRight, Alignment::CenterRight,
  Alignment::BottomRight
}
 
enum  GreekingMode { GreekingMode::Nothing, GreekingMode::Lines, GreekingMode::Box }
 
enum  GreekingUnits {
  GreekingUnits::ObjectSpace, GreekingUnits::SubscreenRelative, GreekingUnits::WindowRelative, GreekingUnits::WorldSpace,
  GreekingUnits::Points, GreekingUnits::Pixels
}
 
enum  Justification { Justification::LeftJustified, Justification::RightJustified, Justification::CenterJustified }
 
enum  Preference { Preference::Default, Preference::Vector, Preference::Raster, Preference::Exterior }
 
enum  ReferenceFrame { ReferenceFrame::WorldAligned, ReferenceFrame::PathAligned }
 
enum  RegionAlignment { RegionAlignment::RegionTop, RegionAlignment::RegionCenter, RegionAlignment::RegionBottom }
 
enum  Renderer { Renderer::DefaultRenderer, Renderer::DriverRenderer, Renderer::TruetypeRenderer }
 
enum  Rotation { Rotation::NoRotation, Rotation::Rotate, Rotation::FollowPath }
 
enum  SizeToleranceUnits {
  SizeToleranceUnits::ObjectSpace, SizeToleranceUnits::SubscreenRelative, SizeToleranceUnits::WindowRelative, SizeToleranceUnits::WorldSpace,
  SizeToleranceUnits::Points, SizeToleranceUnits::Pixels, SizeToleranceUnits::Percent
}
 
enum  SizeUnits {
  SizeUnits::ObjectSpace, SizeUnits::SubscreenRelative, SizeUnits::WindowRelative, SizeUnits::WorldSpace,
  SizeUnits::Points, SizeUnits::Pixels
}
 
enum  Transform { Transform::Transformable, Transform::NonTransformable, Transform::CharacterPositionOnly, Transform::CharacterPositionAdjusted }
 

Detailed Description

The Text class is a concept class for text-related enum classes.

Member Enumeration Documentation

enum Text::Alignment
strong

Enumeration of the alignments used for text string. These define what the insertion point for a text string is measured with respect to.

Enumerator
TopLeft 

Insertion point is the top left corner of the text string.

CenterLeft 

Insertion point is the center of the left side of the text string.

BottomLeft 

Insertion point is the bottom left corner of the text string.

TopCenter 

Insertion point is the center of the top side of the text string.

Center 

Insertion point is the vertical and horizontal center of the text string.

BottomCenter 

Insertion point is the center of the bottom side of the text string.

TopRight 

Insertion point is the top right corner of the text string.

CenterRight 

Insertion point is the center of the right side of the text string.

BottomRight 

Insertion point is the bottom right corner of the text string.

enum Text::GreekingMode
strong

Enumerates the greeking modes. These define what to draw in place of characters once they fall below the greeking limit.

Enumerator
Nothing 

Nothing will be drawn for characters below the greeking limit.

Lines 

A grid of lines will be drawn in place of characters below the greeking limit.

Box 

A filled box will be drawn in place of characters below the greeking limit.

enum Text::GreekingUnits
strong

Enumerates the units for greeking limits.

Enumerator
ObjectSpace 

Object space units ignoring any scaling components in modelling matrices.

SubscreenRelative 

Fraction of the height of the outermost window.

WindowRelative 

Fraction of the height of the local window.

WorldSpace 

Object space units including any scaling components in modelling matrices and cameras.

Points 

Points units typically used for text size. 1 point corresponds to 1/72 inch.

Pixels 

Number of pixels.

enum Text::Justification
strong

Enumerates the justifications used for multiline text strings.

Enumerator
LeftJustified 

Multiline strings will be left justfied.

RightJustified 

Multiline strings will be right justfied.

CenterJustified 

Multiline strings will be center justfied.

enum Text::Preference
strong

Enumerates the font type preferences for text strings. These define the types of fonts Visualize will use.

Enumerator
Default 

Use the default font type for the current driver.

Vector 

Use vector fonts.

Raster 

Use raster or bitmap fonts.

Exterior 

Use the font outline (characters will be unfilled).

enum Text::ReferenceFrame
strong

Enumeration of the reference frames for text alignment and justification.

Enumerator
WorldAligned 

Alignment and justification will be defined relative to a screen-facing box around the text.

PathAligned 

Alignment and justification will be defined relative to a text-path-aligned box around the text.

enum Text::RegionAlignment
strong

Enumerates the alignments for text regions. These define how text strings will be positioned relative to the line defining the text region.

Enumerator
RegionTop 

Text will be drawn below the region line.

RegionCenter 

Text will be drawn such that the region line passes through its center.

RegionBottom 

Text will be drawn above the region line.

enum Text::Renderer
strong

Enumerates the renderers for text strings. These define the font-handling subsystems Visualize uses to find and render fonts.

Enumerator
DefaultRenderer 

All font-handling subsystems will be used.

DriverRenderer 

Only driver fonts will be used. If a non-driver font is requested, the stroked font will be used instead.

TruetypeRenderer 

Only TrueType fonts will be used. If a non-TrueType font is requested, the stroked font will be used instead.

enum Text::Rotation
strong
Enumerator
NoRotation 

Characters are not rotated.

Rotate 

Characters are rotated clockwise by a specified angle.

FollowPath 

Characters are rotated such that they will be perpendicular to the text path.

Enumerates the units for size tolerances.

Enumerator
ObjectSpace 

Object space units ignoring any scaling components in modelling matrices.

SubscreenRelative 

Fraction of the height of the outermost window.

WindowRelative 

Fraction of the height of the local window.

WorldSpace 

Object space units including any scaling components in modelling matrices and cameras.

Points 

Points units typically used for text size. 1 point corresponds to 1/72 inch.

Pixels 

Number of pixels.

Percent 

Percentage of the requested font size defining the lower limit on the smallest font size that can be substituted in the requested's place.

enum Text::SizeUnits
strong

Enumerates the units for font sizes.

Enumerator
ObjectSpace 

Object space units ignoring any scaling components in modelling matrices.

SubscreenRelative 

Fraction of the height of the outermost window.

WindowRelative 

Fraction of the height of the local window.

WorldSpace 

Object space units including any scaling components in modelling matrices and cameras.

Points 

Points units typically used for text size. 1 point corresponds to 1/72 inch.

Pixels 

Number of pixels.

enum Text::Transform
strong

Enumerates the transform behaviors for text strings. These define how the entire string will be positioned within 3D space.

Enumerator
Transformable 

Text will be subject to all modelling and projection matrices, essentially acting as a textured quad. Text paths will be act as transformations in 3D space.

NonTransformable 

Only the text insertion point (see also Text::Alignment) will be subject to modelling and projection matrices. Text will always be drawn in screen space. Text paths will act as transformations in screen space.

CharacterPositionOnly 

Text will be subject to all modelling and projection matrices, however characters will always be drawn in screen space.

CharacterPositionAdjusted 

Equivalent to CharacterPositionOnly, but additionally will draw text upright when it would otherwise appear upside down based on the camera. To get this behavior Text::ReferenceFrame::PathAligned and Text::Rotation::FollowPath must be set, otherwise this will be equivalent to CharacterPositionOnly.


The documentation for this class was generated from the following file: