ReferenceKey
- class HPS.ReferenceKey : public HPS.GeometryKey
The ReferenceKey class is a smart pointer to a database object. It is a handle to a geometry reference returned by SegmentKey.ReferenceGeometry.
Public Functions
- override void Dispose ()
- HPS.ModellingMatrixControl GetModellingMatrixControl ()
Gets a control that allows querying and modifying modelling matrices set on this reference.
- Return
A control that allows querying and modifying modelling matrices set on this reference.
- HPS.Key GetTarget ()
Gets the geometry or segment key that was used to create this ReferenceKey. If multiple geometry are referenced only the first is returned.
- Return
The geometry or segment key that was used to create this ReferenceKey.
- 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.
- ReferenceKey ()
The default constructor creates an uninitialized ReferenceKey object. The Type() function will return Type.None.
- ReferenceKey (HPS.Key in_that)
This constructor creates an ReferenceKey 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 reference key. Otherwise the copy will fail and the resulting ReferenceKey will be invalid.
- ReferenceKey (HPS.ReferenceKey in_that)
The copy constructor creates a ReferenceKey object that shares the underlying smart-pointer of the source ReferenceKey.
- Param in_that
The source ReferenceKey to copy.
- HPS.ReferenceKey SetConditionalExpression (HPS.ConditionalExpression in_conditional)
Sets a conditional expression on this ReferenceKey. This will either make an unconditional reference into a conditional reference, or modify the condition for an existing conditional reference. The target geometry or segment referenced by this reference will only be drawn in the owning segment if a condition satisfying the given conditional expression is set above this reference in the tree.
- Param in_conditional
The conditional expression for this ReferenceKey.
- Return
A reference to this ReferenceKey.
- HPS.ReferenceKey SetGeometryMask (HPS.Search.Type[] in_geometry_types)
Sets the masked geometry types. Only the geometry types included in the mask will be processed by this ReferenceKey. Set HPS.Search.Type.Geometry to process all geometry types.
- Param in_geometry_types
The geometry types to be processed by this reference.
- HPS.ReferenceKey SetMaterialMapping (HPS.MaterialMappingKit in_kit)
Sets the specified material mappings on this ReferenceKey. This function will not override colors set directly on the original geometry. Light colors and Window colors are not valid on a ReferenceKey.
- Param in_kit
The material mappings to set on this ReferenceKey.
- Return
A reference to this ReferenceKey.
- void SetModellingMatrix (HPS.MatrixKit in_kit)
Sets the specified modelling matrix on this reference.
- Param in_kit
The modelling matrix to set on this reference.
- bool ShowConditionalExpression (out HPS.ConditionalExpression out_conditional)
Shows the conditional expression for this ReferenceKey.
- Param out_conditional
The conditional expression for this ReferenceKey.
- Return
true if a conditional expression is set on this ReferenceKey, false otherwise.
- ulong ShowGeometryMask ()
Gets the count of masked geometry types. Only the geometry types included in the mask will be processed by this ReferenceKey. If no mask was explicitly set the mask size is one and the value is HPS.Search.Type.Geometry.
- Return
A count of masked geometry types from this reference.
- ulong ShowGeometryMask (out HPS.Search.Type[] out_geometry_types)
Gets the masked geometry types. Only the geometry types included in the mask will be processed by this ReferenceKey. If no mask was explicitly set the mask size is one and the value is HPS.Search.Type.Geometry.
- Param out_geometry_types
The geometry types processed by this reference.
- Return
A count of masked geometry types from this reference.
- bool ShowMaterialMapping (out HPS.MaterialMappingKit out_kit)
Shows the material mapping settings on this segment. Returns false if no material mapping settings exist on this ReferenceKey.
- bool ShowModellingMatrix (out HPS.MatrixKit out_kit)
Shows the modelling matrix on this reference.
- Param out_kit
The modelling matrix set on this reference.
- Return
true if a modelling matrix was set, false otherwise.
- ulong ShowTargets ()
Gets the count of geometry keys or a segment key targeted by this ReferenceKey.
- Return
A count of targeted geometries or a segment from this reference.
- ulong ShowTargets (bool masked)
Gets the count of geometry keys or a segment key targeted by this ReferenceKey.
- Param masked
If true a geometry mask if present will be applied to the results.
- Return
A count of targeted geometries or a segment from this reference.
- ulong ShowTargets (out HPS.Key[] out_keys)
Gets the geometries keys or a segment key targeted by this ReferenceKey.
- Param out_keys
The keys targeted by this reference.
- Return
A count of targeted geometries or segment from this reference and populates out_keys with their keys.
- ulong ShowTargets (out HPS.Key[] out_keys, bool masked)
Gets the geometries keys or a segment key targeted by this ReferenceKey.
- Param out_keys
The keys targeted by this reference.
- Param masked
If true a geometry mask if present will be applied to the results.
- Return
A count of targeted geometries or segment from this reference and populates out_keys with their keys.
- HPS.ReferenceKey UnsetConditionalExpression ()
Removes the conditional expression on this ReferenceKey. This will turn a conditional reference into an unconditional reference.
- Return
A reference to this ReferenceKey.
- HPS.ReferenceKey UnsetGeometryMask ()
Resets the masked geometry types on this ReferenceKey to HPS.Search.Type.Geometry.
- Return
A reference to this ReferenceKey.
- HPS.ReferenceKey UnsetMaterialMapping ()
Removes all material mapping settings from this ReferenceKey.
- void UnsetModellingMatrix ()
Removes the modelling matrix on this geometry reference.