The KeyPath contains an array of keys, organized from leaf to root. It allows the user to perform a number of queries along that path including accumulating net attributes and converting coordinates. More...

Inheritance diagram for HPS.KeyPath:
HPS.Object

Public Member Functions

HPS.KeyPath Append (HPS.Key in_key)
 Appends the supplied Key into this object. Same as operator+= function. More...
 
HPS.KeyPath Append (HPS.KeyPath in_key_path)
 Appends the supplied key into this object. Same as operator+= function. More...
 
HPS.KeyPath Append (HPS.Key[] in_key_array)
 Appends the supplied key into this object. Same as operator+= function. More...
 
bool ComputeTextExtent (string in_text, out float out_xfrac, out float out_yfrac)
 Computes the text extent of the objects as a fraction of the segment window from 0.0 to 1.0 (or more) along this key path. More...
 
bool ComputeTransform (HPS.Coordinate.Space in_space, HPS.Coordinate.Space in_output_space, out HPS.MatrixKit out_matrix)
 Computes the matrix which transforms objects from the input space to the output space along this key path. More...
 
bool ConvertCoordinate (HPS.Coordinate.Space in_space, HPS.Point in_point, HPS.Coordinate.Space in_output_space, out HPS.Point out_point)
 Converts a point from one coordinate space to another using the transforms along this key path. More...
 
bool ConvertCoordinate (HPS.Coordinate.Space in_space, HPS.Point[] in_points, HPS.Coordinate.Space in_output_space, out HPS.Point[] out_points)
 Converts a point from one coordinate space to another using the transforms along this key path. More...
 
override void Dispose ()
 
override bool Equals (System.Object obj)
 
bool Equals (HPS.KeyPath in_that)
 Check if the source KeyPath is equivalent to this object. More...
 
ulong GatherCutGeometry (HPS.SegmentKey in_destination, HPS.CutGeometryGatheringOptionsKit in_options)
 Collects capping geometry generated by cutting planes. Geometry is deposited in the segment you specify. Note: Capping geometry is generated during an update. Until an update is completed, no geometry will be present to gather. More...
 
override int GetHashCode ()
 
 KeyPath ()
 Creates an uninitialized key path that refers to no database objects. More...
 
 KeyPath (HPS.Key[] in_path)
 Creates a new KeyPath object based on the supplied path. More...
 
 KeyPath (HPS.KeyPath in_that)
 Copies in_that into this key path. More...
 
override HPS.Type ObjectType ()
 This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object. More...
 
void Set (HPS.KeyPath in_that)
 Copies the supplied path into this object. More...
 
HPS.KeyPath SetKeys (HPS.Key[] in_keys)
 Copies an array of keys into this object. More...
 
bool ShowEffectiveGlyphDefinition (string in_name, out HPS.GlyphDefinition out_def)
 Shows the effective glyph definition belonging to the input name along this key path. More...
 
bool ShowEffectiveImageDefinition (string in_name, out HPS.ImageDefinition out_def)
 Shows the effective image definition belonging to the input name along this key path. More...
 
bool ShowEffectiveLinePatternDefinition (string in_name, out HPS.LinePatternDefinition out_def)
 Shows the effective line pattern definition belonging to the input name along this key path. More...
 
bool ShowEffectiveMaterialPaletteDefinition (string in_name, out HPS.MaterialPaletteDefinition out_def)
 Shows the effective material palette definition belonging to the input name along this key path. More...
 
bool ShowEffectiveShaderDefinition (string in_name, out HPS.ShaderDefinition out_def)
 Shows the effective shader definition belonging to the input name along this key path. More...
 
bool ShowEffectiveTextureDefinition (string in_name, out HPS.TextureDefinition out_def)
 Shows the effective texture definition belonging to the input name along this key path. More...
 
bool ShowKeys (out HPS.Key[] out_keys)
 Shows the keys defining this key path. More...
 
bool ShowNetAttributeLock (out HPS.AttributeLockKit out_kit)
 Shows the net attribute lock settings along this key path. More...
 
bool ShowNetBounding (out HPS.BoundingKit out_kit)
 Shows the net bounding along this key path. More...
 
bool ShowNetCamera (out HPS.CameraKit out_kit)
 Shows the net camera attribute settings along this key path. More...
 
bool ShowNetColorInterpolation (out HPS.ColorInterpolationKit out_kit)
 Shows the net color interpolation attribute settings along this key path. More...
 
bool ShowNetConditions (out string[] out_conditions)
 Shows the net condition settings along this key path. More...
 
bool ShowNetContourLine (out HPS.ContourLineKit out_kit)
 Shows the net contour line attribute settings along this key path. More...
 
bool ShowNetCulling (out HPS.CullingKit out_kit)
 Shows the net culling attribute settings along this key path. More...
 
bool ShowNetCurveAttribute (out HPS.CurveAttributeKit out_kit)
 Shows the net curve attribute settings along this key path. More...
 
bool ShowNetCuttingSectionAttribute (out HPS.CuttingSectionAttributeKit out_kit)
 Shows the net cutting section attribute settings along this key path. More...
 
bool ShowNetCylinderAttribute (out HPS.CylinderAttributeKit out_kit)
 Shows the net cylinder attribute settings along this key path. More...
 
bool ShowNetDrawingAttribute (out HPS.DrawingAttributeKit out_kit)
 Shows the net drawing attribute settings along this key path. More...
 
bool ShowNetEdgeAttribute (out HPS.EdgeAttributeKit out_kit)
 Shows the net edge attribute settings along this key path. More...
 
bool ShowNetHiddenLineAttribute (out HPS.HiddenLineAttributeKit out_kit)
 Shows the net hidden line attribute settings along this key path. More...
 
bool ShowNetLightingAttribute (out HPS.LightingAttributeKit out_kit)
 Shows the net lighting attribute settings along this key path. More...
 
bool ShowNetLineAttribute (out HPS.LineAttributeKit out_kit)
 Shows the net line attribute settings along this key path. More...
 
bool ShowNetMarkerAttribute (out HPS.MarkerAttributeKit out_kit)
 Shows the net marker attribute settings along this key path. More...
 
bool ShowNetMaterialMapping (out HPS.MaterialMappingKit out_kit)
 Shows the net material mapping attribute settings along this key path. More...
 
bool ShowNetMaterialPalette (out string out_name)
 Shows the material palette name along this key path. More...
 
bool ShowNetModellingMatrix (out HPS.MatrixKit out_kit)
 Shows the net modelling matrix attribute settings along this key path. More...
 
bool ShowNetNURBSSurfaceAttribute (out HPS.NURBSSurfaceAttributeKit out_kit)
 Shows the net NURBS surface attribute settings along this key path. More...
 
bool ShowNetPerformance (out HPS.PerformanceKit out_kit)
 Shows the net performance attribute settings along this key path. More...
 
bool ShowNetSelectability (out HPS.SelectabilityKit out_kit)
 Shows the net selectability attribute settings along this key path. More...
 
bool ShowNetSphereAttribute (out HPS.SphereAttributeKit out_kit)
 Shows the net sphere attribute settings along this key path. More...
 
bool ShowNetSubwindow (out HPS.SubwindowKit out_kit)
 Shows the net subwindow attribute settings along this key path. More...
 
bool ShowNetTextAttribute (out HPS.TextAttributeKit out_kit)
 Shows the net text attribute settings along this key path. More...
 
bool ShowNetTextureMatrix (out HPS.MatrixKit out_kit)
 Shows the net texture matrix attribute settings along this key path. More...
 
bool ShowNetTransformMask (out HPS.TransformMaskKit out_kit)
 Shows the net transform mask attribute settings along this key path. More...
 
bool ShowNetTransparency (out HPS.TransparencyKit out_kit)
 Shows the net transparency attribute settings along this key path. More...
 
bool ShowNetVisibility (out HPS.VisibilityKit out_kit)
 Shows the net visibility attribute settings along this key path. More...
 
bool ShowNetVisualEffects (out HPS.VisualEffectsKit out_kit)
 Shows the net visual effects attribute settings along this key path. More...
 
HPS.KeyPath UnsetKeys ()
 Removes the keys defining this key path. More...
 
- Public Member Functions inherited from HPS.Object
virtual bool Empty ()
 Indicates whether this object has any values set on it. More...
 
IntPtr GetClassID ()
 
IntPtr GetInstanceID ()
 Returns an identifier that can be used to identify which instance of a class an object is. Different keys and controls will return the same value if they are backed by the same database resource. More...
 
bool HasType (HPS.Type in_mask)
 This function indicates whether this Object has the given Type mask. More...
 
 Object (HPS.Object that)
 
virtual void Reset ()
 Resets this object to its initial, uninitialized state. More...
 
HPS.Type Type ()
 This function returns the true type of the underlying object. This function is useful for finding the type of smart pointer objects that have been cast to more generic types. More...
 

Static Public Member Functions

static bool operator!= (HPS.KeyPath a, HPS.KeyPath b)
 
static bool operator== (HPS.KeyPath a, HPS.KeyPath b)
 
- Static Public Member Functions inherited from HPS.Object
static IntPtr ClassID< T > ()
 

Protected Member Functions

override void deleteCptr ()
 
- Protected Member Functions inherited from HPS.Object
virtual IntPtr GetNonDirectorClassID ()
 

Additional Inherited Members

- Protected Attributes inherited from HPS.Object
bool cMemOwn
 
HandleRef cptr
 
HandleRef scptr
 

Detailed Description

The KeyPath contains an array of keys, organized from leaf to root. It allows the user to perform a number of queries along that path including accumulating net attributes and converting coordinates.

Constructor & Destructor Documentation

HPS.KeyPath.KeyPath ( )
inline

Creates an uninitialized key path that refers to no database objects.

HPS.KeyPath.KeyPath ( HPS.Key[]  in_path)
inline

Creates a new KeyPath object based on the supplied path.

Parameters
in_pathAn array of keys arranged from leaf to root.
HPS.KeyPath.KeyPath ( HPS.KeyPath  in_that)
inline

Copies in_that into this key path.

Member Function Documentation

HPS.KeyPath HPS.KeyPath.Append ( HPS.Key  in_key)
inline

Appends the supplied Key into this object. Same as operator+= function.

Parameters
in_keyThe Key to be appended to this.
Returns
A reference to this object.
HPS.KeyPath HPS.KeyPath.Append ( HPS.KeyPath  in_key_path)
inline

Appends the supplied key into this object. Same as operator+= function.

Parameters
in_key_pathThe KeyPath to be appended to this.
Returns
A reference to this object.
HPS.KeyPath HPS.KeyPath.Append ( HPS.Key[]  in_key_array)
inline

Appends the supplied key into this object. Same as operator+= function.

Parameters
in_key_arrayThe KeyArray to be appended to this.
Returns
A reference to this object.
bool HPS.KeyPath.ComputeTextExtent ( string  in_text,
out float  out_xfrac,
out float  out_yfrac 
)
inline

Computes the text extent of the objects as a fraction of the segment window from 0.0 to 1.0 (or more) along this key path.

Parameters
in_textThe text to measure along this keypath
out_xfracThe width fraction of the text extent
out_yfracThe height fraction of the text extent
Returns
true if the operation succeeded, false otherwise.
bool HPS.KeyPath.ComputeTransform ( HPS.Coordinate.Space  in_space,
HPS.Coordinate.Space  in_output_space,
out HPS.MatrixKit  out_matrix 
)
inline

Computes the matrix which transforms objects from the input space to the output space along this key path.

Parameters
in_spaceThe starting or input coordinate space.
in_output_spaceThe final or output coordinate space.
out_matrixThe matrix which transforms objects from the input space to the output space.
Returns
true if the operation succeeded, false otherwise.
bool HPS.KeyPath.ConvertCoordinate ( HPS.Coordinate.Space  in_space,
HPS.Point  in_point,
HPS.Coordinate.Space  in_output_space,
out HPS.Point  out_point 
)
inline

Converts a point from one coordinate space to another using the transforms along this key path.

Parameters
in_spaceThe coordinate space of the input point.
in_pointThe input point to convert.
in_output_spaceThe coordinate space to convert the input point into.
out_pointThe output point, after conversion.
Returns
true if the operation succeeded, false otherwise.
bool HPS.KeyPath.ConvertCoordinate ( HPS.Coordinate.Space  in_space,
HPS.Point[]  in_points,
HPS.Coordinate.Space  in_output_space,
out HPS.Point[]  out_points 
)
inline

Converts a point from one coordinate space to another using the transforms along this key path.

Parameters
in_spaceThe coordinate space of the input point.
in_pointsThe input points to convert.
in_output_spaceThe coordinate space to convert the input point into.
out_pointsThe output points, after conversion.
Returns
true if the operation succeeded, false otherwise.
bool HPS.KeyPath.Equals ( HPS.KeyPath  in_that)
inline

Check if the source KeyPath is equivalent to this object.

Parameters
in_thatThe source KeyPath to compare to this object.
Returns
true if the objects are equivalent, false otherwise.
ulong HPS.KeyPath.GatherCutGeometry ( HPS.SegmentKey  in_destination,
HPS.CutGeometryGatheringOptionsKit  in_options 
)
inline

Collects capping geometry generated by cutting planes. Geometry is deposited in the segment you specify. Note: Capping geometry is generated during an update. Until an update is completed, no geometry will be present to gather.

Parameters
in_destinationA segment that the capping geometry will be deposited into.
in_optionsOptions for the gathering operation.
Returns
The number of individual caps created.
override HPS.Type HPS.KeyPath.ObjectType ( )
inlinevirtual

This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.

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

Reimplemented from HPS.Object.

void HPS.KeyPath.Set ( HPS.KeyPath  in_that)
inline

Copies the supplied path into this object.

Parameters
in_thatThe source of the copy.
HPS.KeyPath HPS.KeyPath.SetKeys ( HPS.Key[]  in_keys)
inline

Copies an array of keys into this object.

Parameters
in_keysThe source array, assumed to be arranged from leaf to root.
Returns
A reference to this object.
bool HPS.KeyPath.ShowEffectiveGlyphDefinition ( string  in_name,
out HPS.GlyphDefinition  out_def 
)
inline

Shows the effective glyph definition belonging to the input name along this key path.

Parameters
in_nameUTF8-encoded name of the glyph to find along this key path.
out_defThe effective glyph definition, if any, with the specified name along this key path.
Returns
true if the glyph definition exists along this path, false otherwise.
bool HPS.KeyPath.ShowEffectiveImageDefinition ( string  in_name,
out HPS.ImageDefinition  out_def 
)
inline

Shows the effective image definition belonging to the input name along this key path.

Parameters
in_nameUTF8-encoded name of the image to find along this key path.
out_defThe effective image definition, if any, with the specified name along this key path.
Returns
true if the image definition exists along this path, false otherwise.
bool HPS.KeyPath.ShowEffectiveLinePatternDefinition ( string  in_name,
out HPS.LinePatternDefinition  out_def 
)
inline

Shows the effective line pattern definition belonging to the input name along this key path.

Parameters
in_nameUTF8-encoded name of the line pattern to find along this key path.
out_defThe effective material line pattern, if any, with the specified name along this key path.
Returns
true if the line pattern definition exists along this path, false otherwise.
bool HPS.KeyPath.ShowEffectiveMaterialPaletteDefinition ( string  in_name,
out HPS.MaterialPaletteDefinition  out_def 
)
inline

Shows the effective material palette definition belonging to the input name along this key path.

Parameters
in_nameUTF8-encoded name of the material palette to find along this key path.
out_defThe effective material palette definition, if any, with the specified name along this key path.
Returns
true if the material palette definition exists along this path, false otherwise.
bool HPS.KeyPath.ShowEffectiveShaderDefinition ( string  in_name,
out HPS.ShaderDefinition  out_def 
)
inline

Shows the effective shader definition belonging to the input name along this key path.

Parameters
in_nameUTF8-encoded name of the shader to find along this key path.
out_defThe effective shader definition, if any, with the specified name along this key path.
Returns
true if the shader definition exists along this path, false otherwise.
bool HPS.KeyPath.ShowEffectiveTextureDefinition ( string  in_name,
out HPS.TextureDefinition  out_def 
)
inline

Shows the effective texture definition belonging to the input name along this key path.

Parameters
in_nameUTF8-encoded name of the texture to find along this key path.
out_defThe effective texture definition, if any, with the specified name along this key path.
Returns
true if the texture definition exists along this path, false otherwise.
bool HPS.KeyPath.ShowKeys ( out HPS.Key[]  out_keys)
inline

Shows the keys defining this key path.

Returns
true if the setting is valid, false otherwise.
bool HPS.KeyPath.ShowNetAttributeLock ( out HPS.AttributeLockKit  out_kit)
inline

Shows the net attribute lock settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetBounding ( out HPS.BoundingKit  out_kit)
inline

Shows the net bounding along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetCamera ( out HPS.CameraKit  out_kit)
inline

Shows the net camera attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetColorInterpolation ( out HPS.ColorInterpolationKit  out_kit)
inline

Shows the net color interpolation attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetConditions ( out string[]  out_conditions)
inline

Shows the net condition settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetContourLine ( out HPS.ContourLineKit  out_kit)
inline

Shows the net contour line attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetCulling ( out HPS.CullingKit  out_kit)
inline

Shows the net culling attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetCurveAttribute ( out HPS.CurveAttributeKit  out_kit)
inline

Shows the net curve attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetCuttingSectionAttribute ( out HPS.CuttingSectionAttributeKit  out_kit)
inline

Shows the net cutting section attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetCylinderAttribute ( out HPS.CylinderAttributeKit  out_kit)
inline

Shows the net cylinder attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetDrawingAttribute ( out HPS.DrawingAttributeKit  out_kit)
inline

Shows the net drawing attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetEdgeAttribute ( out HPS.EdgeAttributeKit  out_kit)
inline

Shows the net edge attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetHiddenLineAttribute ( out HPS.HiddenLineAttributeKit  out_kit)
inline

Shows the net hidden line attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetLightingAttribute ( out HPS.LightingAttributeKit  out_kit)
inline

Shows the net lighting attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetLineAttribute ( out HPS.LineAttributeKit  out_kit)
inline

Shows the net line attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetMarkerAttribute ( out HPS.MarkerAttributeKit  out_kit)
inline

Shows the net marker attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetMaterialMapping ( out HPS.MaterialMappingKit  out_kit)
inline

Shows the net material mapping attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetMaterialPalette ( out string  out_name)
inline

Shows the material palette name along this key path.

Returns
true if a material palette is set along this path, false otherwise.
bool HPS.KeyPath.ShowNetModellingMatrix ( out HPS.MatrixKit  out_kit)
inline

Shows the net modelling matrix attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetNURBSSurfaceAttribute ( out HPS.NURBSSurfaceAttributeKit  out_kit)
inline

Shows the net NURBS surface attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetPerformance ( out HPS.PerformanceKit  out_kit)
inline

Shows the net performance attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetSelectability ( out HPS.SelectabilityKit  out_kit)
inline

Shows the net selectability attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetSphereAttribute ( out HPS.SphereAttributeKit  out_kit)
inline

Shows the net sphere attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetSubwindow ( out HPS.SubwindowKit  out_kit)
inline

Shows the net subwindow attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetTextAttribute ( out HPS.TextAttributeKit  out_kit)
inline

Shows the net text attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetTextureMatrix ( out HPS.MatrixKit  out_kit)
inline

Shows the net texture matrix attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetTransformMask ( out HPS.TransformMaskKit  out_kit)
inline

Shows the net transform mask attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetTransparency ( out HPS.TransparencyKit  out_kit)
inline

Shows the net transparency attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetVisibility ( out HPS.VisibilityKit  out_kit)
inline

Shows the net visibility attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
bool HPS.KeyPath.ShowNetVisualEffects ( out HPS.VisualEffectsKit  out_kit)
inline

Shows the net visual effects attribute settings along this key path.

Returns
true if the setting is valid along this path, false otherwise.
HPS.KeyPath HPS.KeyPath.UnsetKeys ( )
inline

Removes the keys defining this key path.

Returns
A reference to this object.

The documentation for this class was generated from the following file:
  • internals/hps_core/source/cs/HPS.KeyPath.cs