TextKey

class HPS.TextKey : public HPS.GeometryKey

The TextKey class is a smart pointer to a database object. It is a handle to text inserted via SegmentKey.InsertText.

Public Functions

void Consume (HPS.TextKit in_kit)

Completely replaces all settings on this TextKey with those set on the specified kit and resets the kit.

Param in_kit

The kit from which to get the settings to replace on this TextKey.

override void Dispose ()
HPS.TextKey EditTextByDeletion (ulong in_row, ulong in_column, ulong in_count)

Removes characters from the text at the specified offset.

Param in_row

The row offset into a multiline text string. This value must be less than the number of lines in the text string.

Param in_column

The column offset in Unicode code points into the specified row in a multiline text string. This value must be less than the number of Unicode code points within the specified row.

Param in_count

The number of Unicode code points within the given text string to remove.

Return

A reference to this TextKey.

HPS.TextKey EditTextByInsertion (ulong in_row, ulong in_column, ulong in_count, string in_text)

Adds characters to the text at the specified offset.

Param in_row

The row offset into a multiline text string. This value must be less than the number of lines in the text string.

Param in_column

The column offset in Unicode code points into the specified row in a multiline text string. This value must be less than the number of Unicode code points within the specified row.

Param in_count

The number of Unicode code points within the given text string to insert into the text.

Param in_text

UTF8-encoded text to insert into the text. This must contain at least in_count Unicode code points.

Return

A reference to this TextKey.

HPS.TextKey EditTextByReplacement (ulong in_row, ulong in_column, ulong in_count, string in_text)

Replaces characters from the text at the specified offset.

Param in_row

The row offset into a multiline text string. This value must be less than the number of lines in the text string.

Param in_column

The column offset in Unicode code points into the specified row in a multiline text string. This value must be less than the number of Unicode code points within the specified row.

Param in_count

The number of Unicode code points within the given text string to remove.

Param in_text

UTF8-encoded text to perform replacement with. This must contain at least in_count Unicode code points.

Return

A reference to this TextKey.

override HPS.Type ObjectType ()

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Return

The declared type of the object in question, which may differ from the true, underlying type.

void Set (HPS.TextKit in_kit)

Replace those settings on this TextKey with those set on the specified kit.

Param in_kit

The kit from which to get the settings to replace on this TextKey.

HPS.TextKey SetAlignment (HPS.Text.Alignment in_alignment)

Sets the alignment for the text. No aligment is set on the text by default.

Param in_alignment

The alignment for the text.

Return

A reference to this TextKey.

HPS.TextKey SetAlignment (HPS.Text.Alignment in_alignment, HPS.Text.ReferenceFrame in_reference_frame)

Sets the alignment for the text. No aligment is set on the text by default.

Param in_alignment

The alignment for the text.

Param in_reference_frame

The reference frame for the text. Defaults to Text.ReferenceFrame.WorldAligned.

Return

A reference to this TextKey.

HPS.TextKey SetAlignment (HPS.Text.Alignment in_alignment, HPS.Text.ReferenceFrame in_reference_frame, HPS.Text.Justification in_justification)

Sets the alignment for the text. No aligment is set on the text by default.

Param in_alignment

The alignment for the text.

Param in_reference_frame

The reference frame for the text. Defaults to Text.ReferenceFrame.WorldAligned.

Param in_justification

The justification for the text. Defaults to Text.Justification.Left.

Return

A reference to this TextKey.

HPS.TextKey SetBackground (bool in_state)

Sets the background to be used with text.

Param in_state

Whether a background is drawn for text.

Return

A reference to this object.

HPS.TextKey SetBackground (bool in_state, string in_name)

Sets the background to be used with text.

Param in_state

Whether a background is drawn for text.

Param in_name

The name of a shape definition.

Return

A reference to this object.

HPS.TextKey SetBackground (string in_name)

Sets the background to be used with text. The state is implicitly on.

Param in_name

The name of a shape definition.

Return

A reference to this object.

HPS.TextKey SetBackgroundMargins (float in_size)

Sets the amount of additional padding around text strings when backgrounds are used.

Param in_size

The size of the margins.

Return

A reference to this object.

HPS.TextKey SetBackgroundMargins (float in_size, HPS.Text.MarginUnits in_units)

Sets the amount of additional padding around text strings when backgrounds are used.

Param in_size

The size of the margins.

Param in_units

The units of the size.

Return

A reference to this object.

HPS.TextKey SetBackgroundMargins (float[] in_sizes, HPS.Text.MarginUnits[] in_units)

Sets the amount of additional padding around text strings when backgrounds are used. Additional margin values can also be referenced within definitions of background shapes and leader lines.

Param in_sizes

The size of the margins.

Param in_units

The units of the size.

Return

A reference to this object.

HPS.TextKey SetBackgroundStyle (string in_name)

Allows specifying a named style to be used in the drawing of text backgrounds. If no style is specified, backgrounds inherit the face and edge attributes from the containing segment.

Param in_name

The name of a style, defined in a portfolio that is accessible.

Return

A reference to this object.

HPS.TextKey SetBold (bool in_state)

Sets whether the text should be bold. For fonts which do not have a bold variant, this setting will be ignored. No bold setting is set on the text by default.

Param in_state

Whether the text should be bold.

Return

A reference to this TextKey.

HPS.TextKey SetColor (HPS.RGBAColor in_rgba_color)

Sets the RGBA color of the text. No color is set on the text by default. If the color set is opaque, an RGBColor will be set instead to improve rendering performance.

Param in_rgba_color

The RGBA color of the text.

Return

A reference to this TextKey.

HPS.TextKey SetColorByIndex (float in_index)

Sets the material index color for the text. No color is set on the text by default.

Param in_index

The material index color for the text.

Return

A reference to this TextKey.

HPS.TextKey SetExtraSpace (bool in_state)

Sets the amount of additional space to add between characters in a text string. No extra space is set on the text by default.

Param in_state

Whether to add additional space between characters in a text string.

Return

A reference to this TextKey.

HPS.TextKey SetExtraSpace (bool in_state, float in_size)

Sets the amount of additional space to add between characters in a text string. No extra space is set on the text by default.

Param in_state

Whether to add additional space between characters in a text string.

Param in_size

The size of the additional space to add between characters. Defaults to 0.0f.

Return

A reference to this TextKey.

HPS.TextKey SetExtraSpace (bool in_state, float in_size, HPS.Text.SizeUnits in_units)

Sets the amount of additional space to add between characters in a text string. No extra space is set on the text by default.

Param in_state

Whether to add additional space between characters in a text string.

Param in_size

The size of the additional space to add between characters. Defaults to 0.0f.

Param in_units

The units of the size of the additional space to add between characters. Defaults to Text.SizeUnits.ObjectSpace.

Return

A reference to this TextKey.

HPS.TextKey SetExtraSpace (float in_size, HPS.Text.SizeUnits in_units)

Sets the amount of additional space to add between characters in a text string. This function implicitly enables the addition of extra space. No extra space is set on the text by default.

Param in_size

The size of the additional space to add between characters.

Param in_units

The units of the size of the additional space to add between characters.

Return

A reference to this TextKey.

HPS.TextKey SetFont (string in_name)

Sets the font to use for the text. This must either be a builtin font or a font Visualize can locate in the directories specified by World.SetFontDirectories. If the requested font cannot be found, the stroked font will be used. No font is set on the text by default.

See

World.SetFontDirectories

Param in_name

UTF8-encoded font name to use for the text.

Return

A reference to this TextKey.

HPS.TextKey SetGreeking (bool in_state)

Sets the greeking settings to use for the text. No greeking settings are set on the text by default.

Param in_state

Whether greeking is enabled for this text.

Return

A reference to this TextKey.

HPS.TextKey SetGreeking (bool in_state, float in_size)

Sets the greeking settings to use for the text. No greeking settings are set on the text by default.

Param in_state

Whether greeking is enabled for this text.

Param in_size

The size below which to draw a simple symbol in place of a character. Defaults to 0.0f.

Return

A reference to this TextKey.

HPS.TextKey SetGreeking (bool in_state, float in_size, HPS.Text.GreekingUnits in_units)

Sets the greeking settings to use for the text. No greeking settings are set on the text by default.

Param in_state

Whether greeking is enabled for this text.

Param in_size

The size below which to draw a simple symbol in place of a character. Defaults to 0.0f.

Param in_units

The units of the size below which to draw a simple glyph in place of a character. Defaults to Text.GreekingUnits.ObjectSpace.

Return

A reference to this TextKey.

HPS.TextKey SetGreeking (bool in_state, float in_size, HPS.Text.GreekingUnits in_units, HPS.Text.GreekingMode in_mode)

Sets the greeking settings to use for the text. No greeking settings are set on the text by default.

Param in_state

Whether greeking is enabled for this text.

Param in_size

The size below which to draw a simple symbol in place of a character. Defaults to 0.0f.

Param in_units

The units of the size below which to draw a simple glyph in place of a character. Defaults to Text.GreekingUnits.ObjectSpace.

Param in_mode

The type of symbol to draw for characters which are smaller than the greeking size. Defaults to Text.GreekingMode.Lines.

Return

A reference to this TextKey.

HPS.TextKey SetGreeking (float in_size, HPS.Text.GreekingUnits in_units)

Sets the greeking settings to use for the text. This function implicitly enables text greeking. No greeking settings are set on the text by default.

Param in_size

The size below which to draw a simple symbol in place of a character.

Param in_units

The units of the size below which to draw a simple glyph in place of a character.

Return

A reference to this TextKey.

HPS.TextKey SetGreeking (float in_size, HPS.Text.GreekingUnits in_units, HPS.Text.GreekingMode in_mode)

Sets the greeking settings to use for the text. This function implicitly enables text greeking. No greeking settings are set on the text by default.

Param in_size

The size below which to draw a simple symbol in place of a character.

Param in_units

The units of the size below which to draw a simple glyph in place of a character.

Param in_mode

The type of symbol to draw for characters which are smaller than the greeking size. Defaults to Text.Gree.Lines.

Return

A reference to this TextKey.

HPS.TextKey SetItalic (bool in_state)

Sets whether the text should be italic. For fonts which do not have an italic variant, this setting will be ignored. No italic setting is set on the text by default.

Param in_state

Whether the text should be italic.

Return

A reference to this TextKey.

HPS.TextKey SetLeaderLine (HPS.Point in_position)

Inserts a leader line for this text, with one end specified by in_position and the other end calculated automatically.

Param in_position

the target position of the leader line.

Return

A reference to this object.

HPS.TextKey SetLeaderLine (HPS.Point in_position, HPS.Text.LeaderLineSpace in_space)

Inserts a leader line for this text, with one end specified by in_position and the other end calculated automatically.

Param in_position

the target position of the leader line.

Param in_space

the coordinate space in which in_position is specified.

Return

A reference to this object.

HPS.TextKey SetLeaderLines (HPS.Point[] in_positions)

Inserts leader lines for this text.

Param in_positions

the target positions of the leader lines.

Return

A reference to this object.

HPS.TextKey SetLeaderLines (HPS.Point[] in_positions, HPS.Text.LeaderLineSpace in_space)

Inserts leader lines for this text.

Param in_positions

the target positions of the leader lines.

Param in_space

the coordinate space in which in_positions is specified.

Return

A reference to this object.

HPS.TextKey SetLineSpacing (float in_multiplier)

Sets the line spacing multiplier for the text. This is a multiple of the font size that will be used to determine spacing between lines in multi-line text string. No line spacing is set on the text by default.

Param in_multiplier

The line spacing multiplier for the text.

Return

A reference to this TextKey.

HPS.TextKey SetModellingMatrix (HPS.MatrixKit in_matrix)

Sets the modelling matrix for the text. No modelling matrix is set on the text by default.

Param in_matrix

The modelling matrix for the text.

Return

A reference to this TextKey.

HPS.TextKey SetOverline (bool in_state)

Sets whether an overline should be drawn over the text. No overline setting is set on the text by default.

Param in_state

Whether an overline should be drawn over the text.

Return

A reference to this TextKey.

HPS.TextKey SetPath (HPS.Vector in_path)

Sets the path for the text. This setting controls the vector along which a text string will be displayed. No path is set on the text by default.

See

SetRegion

Param in_path

The path for the text.

Return

A reference to this TextKey.

HPS.TextKey SetPosition (HPS.Point in_position)

Repositions the text in object space. The object-space position for the text.

Return

A reference to this TextKey.

HPS.TextKey SetPreference (float in_cutoff, HPS.Text.SizeUnits in_units, HPS.Text.Preference in_smaller, HPS.Text.Preference in_larger)

Sets the preference for the text. This setting controls which font type is used for the text for “large” and “small” sizes and the cutoff at which this distinction is made. No preference is set on the text by default.

Param in_cutoff

The font size below which the smaller preference is used and above which the larger preference is used.

Param in_units

The units for the font size below which the smaller preference is used and above which the larger preference is used.

Param in_smaller

The font type preference for strings below the cutoff size.

Param in_larger

The font type preference for strings above the cutoff size.

Return

A reference to this TextKey.

HPS.TextKey SetPreference (HPS.Text.Preference in_preference)

Sets the font type preference for the text. This function implicitly sets the same font type for all text sizes. No preference is set on the text by default.

Param in_preference

The font type preference for the text.

Return

A reference to this TextKey.

HPS.TextKey SetRegion (HPS.Point[] in_region, HPS.Text.RegionAlignment in_region_alignment, HPS.Text.RegionFitting in_region_fitting, bool in_region_adjust_direction, bool in_region_relative_coordinates, bool in_region_window_space)

Sets the region for the text. This setting forces the text to be rendererd along the vector defined by two object space points. A region additionally allows control over if text should be evenly spaced between those points, or allowed to grow or shrink to avoid stretching or overlapping characters. No region is set on the text by default.

See

SetPath

Param in_region

The points defining the region for the text. This array must be of size 2 or 3. A two point region defines an implicit up vector which is rotated 90 degrees counter-clockwise from the region line. A three point region uses the first two points as the region line and the third point defines the plane in which a vector perpendicular to the region line will be computed for use as the up vector.

Param in_region_alignment

How the text will be positioned relative to the region line.

Param in_region_fitting

How the text is organized within the region.

Param in_region_adjust_direction

Whether to draw text such that it is readable regardless of camera location.

Param in_region_relative_coordinates

Whether the points defining the region are relative to the insertion point for the text.

Param in_region_window_space

Whether the points defining the region are in window space coordinates.

Return

A reference to this TextKey.

HPS.TextKey SetRenderer (HPS.Text.Renderer in_renderer)

Sets the renderer for the text. No renderer is set on the text by default.

Param in_renderer

The renderer for the text.

Return

A reference to this TextKey.

HPS.TextKey SetRotation (float in_angle)

Sets the angle characters should be rotated within the text string. This function implicitly sets a rotation state of Text.Rotation.Rotate. No rotation is set on the text by default.

Param in_angle

The angle in degrees to rotate each character within the text string.

Return

A reference to this TextKey.

HPS.TextKey SetRotation (HPS.Text.Rotation in_state)

Sets the angle characters should be rotated within the text string. No rotation is set on the text by default.

Param in_state

Whether and how to rotate the characters within the text string.

Return

A reference to this TextKey.

HPS.TextKey SetRotation (HPS.Text.Rotation in_state, float in_angle)

Sets the angle characters should be rotated within the text string. No rotation is set on the text by default.

Param in_state

Whether and how to rotate the characters within the text string.

Param in_angle

The angle in degrees to rotate each character within the text string. This is only relevant if in_state is Text.Rotation.Rotate. Defaults to 0.0f.

Return

A reference to this TextKey.

HPS.TextKey SetSize (float in_size, HPS.Text.SizeUnits in_units)

Sets the font size to use for the text. No size is set on the text by default.

Param in_size

The size for the text.

Param in_units

The units of the size for the text.

Return

A reference to this TextKey.

HPS.TextKey SetSizeTolerance (bool in_state)

Sets the size tolerance settings to use for the text. These settings control how to render text strings which request a size not available for a bitmap font. If a size tolerance is specified and enabled, Visualize will use the nearest smaller size for the bitmap font within the tolerance in place of the requested size. If a size tolerance is not enabled, Visualize will attempt to scale up the nearest bitmap font size to the requested size. This setting has no effect for True Type or Open Type fonts. No size tolerance is set on the text by default.

Param in_state

Whether a size tolerance is enabled for this text.

Return

A reference to this TextKey.

HPS.TextKey SetSizeTolerance (bool in_state, float in_size)

Sets the size tolerance settings to use for the text. These settings control how to render text strings which request a size not available for a bitmap font. If a size tolerance is specified and enabled, Visualize will use the nearest smaller size for the bitmap font within the tolerance in place of the requested size. If a size tolerance is not enabled, Visualize will attempt to scale up the nearest bitmap font size to the requested size. This setting has no effect for True Type or Open Type fonts. No size tolerance is set on the text by default.

Param in_state

Whether a size tolerance is enabled for this text.

Param in_size

The size for the tolerance. Defaults to 50.0f.

Return

A reference to this TextKey.

HPS.TextKey SetSizeTolerance (bool in_state, float in_size, HPS.Text.SizeToleranceUnits in_units)

Sets the size tolerance settings to use for the text. These settings control how to render text strings which request a size not available for a bitmap font. If a size tolerance is specified and enabled, Visualize will use the nearest smaller size for the bitmap font within the tolerance in place of the requested size. If a size tolerance is not enabled, Visualize will attempt to scale up the nearest bitmap font size to the requested size. This setting has no effect for True Type or Open Type fonts. No size tolerance is set on the text by default.

Param in_state

Whether a size tolerance is enabled for this text.

Param in_size

The size for the tolerance. Defaults to 50.0f.

Param in_units

The units of the size for the tolerance. Defaults to Text.SizeToleranceUnits.Percent.

Return

A reference to this TextKey.

HPS.TextKey SetSizeTolerance (float in_size, HPS.Text.SizeToleranceUnits in_units)

Sets the size tolerance settings to use for the text. These settings control how to render text strings which request a size not available for a bitmap font. If a size tolerance is specified and enabled, Visualize will use the nearest smaller size for the bitmap font within the tolerance in place of the requested size. If a size tolerance is not enabled, Visualize will attempt to scale up the nearest bitmap font size to the requested size. This setting has no effect for True Type or Open Type fonts. This function implicitly enables a size tolerance. No size tolerance is set on the text by default.

Param in_size

The size for the tolerance.

Param in_units

The units of the size for the tolerance.

Return

A reference to this TextKey.

HPS.TextKey SetSlant (float in_angle)

Sets the slant angle for the text. This determines how far the characters in the string are sheared to the left (negative angle) or right (positive angle) relative to the perpendicular. No slant angle is set on the text by default.

Param in_angle

The angle in degrees to slant the text. This value must be in the range [-75.0f,+75.0f].

Return

A reference to this TextKey.

HPS.TextKey SetSpacing (float in_multiplier)

Sets the spacing multiplier for the text. This setting controls the spacing between adjacent characters within a string. A value of 0.0f would result in all characters being drawn on top of each other, a value of 1.0f would be the standard spacing between characters, a value of 2.0f would insert twice as much space as would normally be between two characters, and so on.

Param in_multiplier

The spacing multiplier for the text.

Return

A reference to this TextKey.

HPS.TextKey SetStrikethrough (bool in_state)

Sets whether a strikethrough should be drawn through the text. No strikethrough setting is set on the text by default.

Param in_state

Whether a strikethrough should be drawn through the text.

Return

A reference to this TextKey.

HPS.TextKey SetText (string in_string)

Replaces the contents of the string for the text.

Param in_string

UTF8-encoded string for the text.

Return

A reference to this TextKey.

HPS.TextKey SetTextAttribute (HPS.TextAttributeKit in_kit)

Sets the text attributes designated by in_kit on this TextKey.

Param in_kit

The attribute kit from which to get the attributes for this TextKey.

HPS.TextKey SetTransform (HPS.Text.Transform in_transform)

Sets the transform state for the text. No transform state is set on the text by default.

Param in_transform

The transform state for the text.

Return

A reference to this TextKey.

HPS.TextKey SetUnderline (bool in_state)

Sets whether an underline should be drawn under the text. No underline setting is set on the text by default.

Param in_state

Whether an underline should be drawn under the text.

Return

A reference to this TextKey.

void Show (out HPS.TextKit out_kit)

Copy the contents of this TextKey into the specified kit.

Param out_kit

The kit to populate with the contents of this TextKey.

bool ShowAlignment (out HPS.Text.Alignment out_alignment, out HPS.Text.ReferenceFrame out_reference_frame, out HPS.Text.Justification out_justification)

Shows the alignment for the text.

Param out_alignment

The alignment for the text.

Param out_reference_frame

The reference frame for the text.

Param out_justification

The justification for the text.

Return

true if an alignment was set, false otherwise.

bool ShowBackground (out bool out_state, out string out_name)

Shows the background to be used with text.

Param out_state

Whether a background is drawn for text.

Param out_name

The name of a shape definition.

Return

true if a spacing multiplier was set, false otherwise.

bool ShowBackgroundMargins (out float[] out_size, out HPS.Text.MarginUnits[] out_units)

Shows the amount of additional padding around text strings when backgrounds are used.

Param out_size

The size of the margins.

Param out_units

The units of the sizes.

Return

true if a spacing multiplier was set, false otherwise.

bool ShowBackgroundStyle (out string out_name)

Shows the named style to be used in the drawing of text backgrounds.

Param out_name

The name of a style, defined in a portfolio that is accessible.

Return

true if a spacing multiplier was set, false otherwise.

bool ShowBold (out bool out_state)

Shows whether the text should be bold.

Param out_state

Whether the text should be bold.

Return

true if a bold setting was set, false otherwise.

bool ShowColor (out HPS.Material.Type out_type, out HPS.RGBAColor out_rgba_color, out float out_index)

Shows the color for the text.

Param out_type

The type of color for the text.

Param out_rgba_color

The RGBA color for the text. This is only valid if out_type is Material.Type.RGBAColor.

Param out_index

The material index for the text. This is only valid if out_type is Material.Type.MaterialIndex.

Return

true if a color was set, false otherwise.

bool ShowExtraSpace (out bool out_state, out float out_size, out HPS.Text.SizeUnits out_units)

Shows the amount of additional space to add between characters in a text string.

Param out_state

Whether to add additional space between characters in a text string.

Param out_size

The size of the additional space to add between characters.

Param out_units

The units of the size of the additional space to add between characters.

Return

true if an extra space setting was set, false otherwise.

bool ShowFont (out string out_name)

Shows the font to use for the text.

Param out_name

UTF8-encoded font name to use for the text.

Return

true if a font was set, false otherwise.

bool ShowGreeking (out bool out_state, out float out_size, out HPS.Text.GreekingUnits out_units, out HPS.Text.GreekingMode out_mode)

Shows the greeking settings to use for the text.

Param out_state

Whether greeking is enabled for this text.

Param out_size

The size below which to draw a simple symbol in place of a character.

Param out_units

The units of the size below which to draw a simple glyph in place of a character.

Param out_mode

The type of symbol to draw for characters which are smaller than the greeking size.

Return

true if greeking settings were set, false otherwise.

bool ShowItalic (out bool out_state)

Shows whether the text should be italic.

Param out_state

Whether the text should be italic.

Return

true if an italic setting was set, false otherwise.

bool ShowLeaderLines (out HPS.Point[] out_positions, out HPS.Text.LeaderLineSpace out_space)

Shows the leader lines to be used with text.

Param out_positions

the target positions of the leader lines.

Param out_space

the coordinate space in which the points in out_positions are specified

Return

true if leader lines were set, false otherwise.

bool ShowLineSpacing (out float out_multiplier)

Shows the line spacing multiplier for the text.

Param out_multiplier

The line spacing multiplier for the text.

Return

true if a line space multiplier was set, false otherwise.

bool ShowModellingMatrix (out HPS.MatrixKit out_matrix)

Shows the modelling matrix for the text.

Param out_matrix

The modelling matrix for the text.

Return

true if a modelling matrix was set, false otherwise.

bool ShowOverline (out bool out_state)

Shows whether an overline should be drawn over the text.

Param out_state

Whether an overline should be drawn over the text.

Return

true if an overline setting was set, false otherwise.

bool ShowPath (out HPS.Vector out_path)

Shows the path for the text.

Param out_path

The path for the text.

Return

true if a path was set, false otherwise.

bool ShowPosition (out HPS.Point out_position)

Shows the position for the text.

Param out_position

The object-space position for the text.

Return

true if a position was set, false otherwise.

bool ShowPreference (out float out_cutoff, out HPS.Text.SizeUnits out_units, out HPS.Text.Preference out_smaller, out HPS.Text.Preference out_larger)

Shows the preference for the text.

Param out_cutoff

The font size below which the smaller preference is used and above which the larger preference is used.

Param out_units

The units for the font size below which the smaller preference is used and above which the larger preference is used.

Param out_smaller

The font type preference for strings below the cutoff size.

Param out_larger

The font type preference for strings above the cutoff size.

Return

true if a preference was set, false otherwise.

bool ShowRegion (out HPS.Point[] out_region, out HPS.Text.RegionAlignment out_region_alignment, out HPS.Text.RegionFitting out_region_fitting, out bool out_region_adjust_direction, out bool out_region_relative_coordinates, out bool out_region_window_space)

Shows the region for the text.

Param out_region

The points defining the region for the text.

Param out_region_alignment

How the text will be positioned relative to the region line.

Param out_region_fitting

How the text will be organized within the region.

Param out_region_adjust_direction

Whether to draw text such that it is readable regardless of camera location.

Param out_region_relative_coordinates

Whether the points defining the region are relative to the insertion point for the text.

Param out_region_window_space

Whether the points defining the region are in window space coordinates.

Return

true if a region was set, false otherwise.

bool ShowRenderer (out HPS.Text.Renderer out_renderer)

Shows the renderer for the text.

Return

true if a renderer was set, false otherwise.

bool ShowRotation (out HPS.Text.Rotation out_rot, out float out_angle)

Shows the angle characters should be rotated within the text string.

Param out_rot

Whether to rotate the characters within the text string, and if so, what the angle should be measured with repect to.

Param out_angle

The angle in degrees to rotate each character within the text string.

Return

true if a rotation setting was set, false otherwise.

bool ShowSize (out float out_size, out HPS.Text.SizeUnits out_units)

Shows the font size to use for the text.

Param out_size

The size for the text.

Param out_units

The units of the size for the text.

Return

true if a size was set, false otherwise.

bool ShowSizeTolerance (out bool out_state, out float out_size, out HPS.Text.SizeToleranceUnits out_units)

Shows the size tolerance settings to use for the text.

Param out_state

Whether a size tolerance is enabled for this text.

Param out_size

The size for the tolerance.

Param out_units

The units of the size for the tolerance.

Return

true if a size tolerance was set, false otherwise.

bool ShowSlant (out float out_angle)

Shows the slant angle for the text.

Param out_angle

The angle in degrees to slant the text.

Return

true if a slang angle was set, false otherwise.

bool ShowSpacing (out float out_multiplier)

Shows the spacing multiplier for the text.

Param out_multiplier

The spacing multiplier for the text.

Return

true if a spacing multiplier was set, false otherwise.

bool ShowStrikethrough (out bool out_state)

Shows whether a strikethrough should be drawn through the text.

Param out_state

Whether a strikethrough should be drawn through the text.

Return

true if a strikethrough setting was set, false otherwise.

bool ShowText (out string out_string)

Shows the string for the text.

Param out_string

UTF8-encoded string for the text.

Return

true if a text string was set, false otherwise.

bool ShowTextAttribute (out HPS.TextAttributeKit out_kit)

Sets the text attributes designated by in_kit on this TextKey.

Param out_kit

The attribute kit to populate with the attributes for this TextKey.

Return

true if the attributes were set, false otherwise.

bool ShowTransform (out HPS.Text.Transform out_trans)

Shows the transform state for the text.

Return

true if a transform state was set, false otherwise.

bool ShowUnderline (out bool out_state)

Shows whether an underline should be drawn under the text.

Param out_state

Whether an underline should be drawn under the text.

Return

true if an underline setting was set, false otherwise.

TextKey ()

The default constructor creates an uninitialized TextKey object. The Type() function will return Type.None.

TextKey (HPS.Key in_that)

This constructor creates an TextKey object that shares the underlying smart-pointer of the source Key. The copy will only be successful if the source key is really an upcast of a text key. Otherwise the copy will fail and the resulting TextKey will be invalid.

TextKey (HPS.TextKey in_that)

The copy constructor creates a TextKey object that shares the underlying smart-pointer of the source TextKey.

Param in_that

The source TextKey to copy.

HPS.TextKey UnsetAlignment ()

Removes the alignment setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetBackground ()

Removes the background setting.

Return

A reference to this object.

HPS.TextKey UnsetBackgroundMargins ()

Removes the background margin setting.

Return

A reference to this object.

HPS.TextKey UnsetBackgroundStyle ()

Removes the background style setting.

Return

A reference to this object.

HPS.TextKey UnsetBold ()

Removes the bold setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetColor ()

Removes the color (RGBA or material index) from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetEverything ()

Removes all settings from this TextKey.

Return

A reference to this TextKey.

HPS.TextKey UnsetExtraSpace ()

Removes the extra space setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetFont ()

Removes the font setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetGreeking ()

Removes the greeking settings from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetItalic ()

Removes the italic setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetLeaderLines ()

Removes the leader line setting.

Return

A reference to this object.

HPS.TextKey UnsetLineSpacing ()

Removes the line spacing setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetModellingMatrix ()

Removes the modelling matrix from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetOverline ()

Removes the overline setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetPath ()

Removes the path from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetPreference ()

Removes the font type preference from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetRegion ()

Removes the region from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetRenderer ()

Removes the renderer setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetRotation ()

Removes the rotation setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetSize ()

Removes the size setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetSizeTolerance ()

Removes the size tolerance setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetSlant ()

Removes the slant setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetSpacing ()

Removes the spacing setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetStrikethrough ()

Removes the strikethrough setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetTransform ()

Removes the transform setting from the text.

Return

A reference to this TextKey.

HPS.TextKey UnsetUnderline ()

Removes the underline setting from the text.

Return

A reference to this TextKey.