Represents the object of a clipping plane, stored in the Rhino document and with attributes.

Properties

Attributes

public virtual ObjectAttributes Attributes { get; set; }
Gets or sets the object attributes.
inherited fromRhinoObject

ClippingPlaneGeometry

#Since v5.0
public ClippingPlaneSurface ClippingPlaneGeometry { get; }
Gets the clipping plane surface.

ComponentStatus

public virtual ComponentStatus ComponentStatus { get; set; }
Gets or sets the component status of the model component.
inherited fromModelComponent

ComponentType

public override ModelComponentType ComponentType { get; }
inherited fromRhinoObject

DeletedName

public string DeletedName { get; }
Gets the name of a component that is deleted.
inherited fromModelComponent

Disposed

public bool Disposed { get; }
Indicates if this object has been disposed or the document it originally belonged to has been disposed.
inherited fromCommonObject

Document

public RhinoDoc Document { get; }
Gets the document that owns this object.
inherited fromRhinoObject

EditPointGripsOn

public bool EditPointGripsOn { get; }
true when the grips this object has on are edit points, of either kind.
inherited fromRhinoObject
Remarks: The read-side companion of RhinoObject.EnableEditPointGrips(). RhinoObject.EnabledGripsId answers the same question for a plug-in's own kind, by comparing the id it registered.

EnabledGripsId

public Guid EnabledGripsId { get; }
Which kind of grips this object currently has on.
inherited fromRhinoObject
Remarks: Guid.Empty both for default grips and for no grips at all. RhinoObject.GripsOn tells those two apart. Record it to replay a grip selection later: handing it back to RhinoObject.EnableGrips(Guid) restores the same kind. From a grip, reach it as GripObject.Owner.RhinoObject.EnabledGripsId.

Geometry

public virtual GeometryBase Geometry { get; }
Gets the underlying geometry for this object.

All rhino objects are composed of geometry and attributes.

inherited fromRhinoObject

GripsOn

public bool GripsOn { get; set; }
Gets or sets the activation state of object default editing grips.
inherited fromRhinoObject

GripsSelected

public bool GripsSelected { get; }
true if grips are turned on and at least one is selected.
inherited fromRhinoObject

GroupCount

public int GroupCount { get; }
Number of groups object belongs to.
inherited fromRhinoObject

HasDynamicTransform

public bool HasDynamicTransform { get; }
True if the object has a dynamic transformation
inherited fromRhinoObject

HasId

public bool HasId { get; }
Returns a value indicating whether the component has an ID.
inherited fromModelComponent

HasIndex

public bool HasIndex { get; }
Returns a value indicating whether the component has an Index.
inherited fromModelComponent

HasName

public bool HasName { get; }
Returns a value indicating whether the component has a Name.
inherited fromModelComponent

HasSubobjectMaterials

public bool HasSubobjectMaterials { get; }
Will be true if the object contains sub object meshes with materials that are different than the top level object.
inherited fromRhinoObject

HasUserData

public bool HasUserData { get; }
Gets true if this class has any custom information attached to it through UserData.
inherited fromCommonObject

Id

public override Guid Id { get; set; }
Every object has a Guid (globally unique identifier, also known as UUID, or universally unique identifier). The default value is Guid.Empty.

When an object is added to a model, the value is checked. If the value is Guid.Empty, a new Guid is created. If the value is not null but it is already used by another object in the model, a new Guid is created. If the value is not Guid.Empty and it is not used by another object in the model, then that value persists. When an object is updated, by a move for example, the value of ObjectId persists.

This value is the same as the one returned by this.Attributes.ObjectId.

inherited fromRhinoObject

IdIsLocked

public bool IdIsLocked { get; }
Returns a value indicating whether the component ID is already locked.
inherited fromModelComponent

Index

public virtual int Index { get; set; }
Gets or sets the model component index attribute.
inherited fromModelComponent
InvalidOperationExceptionWhen setting the Index failed. This usually happens because the instance Index is already locked.

IndexIsLocked

public bool IndexIsLocked { get; }
Returns a value indicating whether the component Index is already locked.
inherited fromModelComponent

InstanceDefinitionModelSerialNumber

[CLSCompliant(false)] public override uint InstanceDefinitionModelSerialNumber { get; }
When a component is in a model as part of the information required for a linked instance definition, this value identifies the linked instance definition reference model.
inherited fromRhinoObject
Remarks: Reference components are not saved in .3dm archives. Typically this value is set and locked by the code that adds a component to a model. This value is not saved in .3dm archives.

IsComponentStatusLocked

public bool IsComponentStatusLocked { get; }
The component status itself can be locked. This returns an indication.
inherited fromModelComponent

IsDeletable

public bool IsDeletable { get; protected set; }
Some objects cannot be deleted, like grips on lights and annotation objects.
inherited fromRhinoObject

IsDeleted

public override bool IsDeleted { get; }
true if the object is deleted. Deleted objects are kept by the document for undo purposes. Call RhinoDoc.UndeleteObject to undelete an object.
inherited fromRhinoObject

IsDocumentControlled

public virtual bool IsDocumentControlled { get; }
If true this object may not be modified. Any properties or functions that attempt to modify this object when it is set to "IsReadOnly" will throw a NotSupportedException.
inherited fromCommonObject

IsHidden

public bool IsHidden { get; }
An object must be in one of three modes: normal, locked or hidden. If an object is in normal mode, then the object's layer controls visibility and selectability. If an object is locked, then the object's layer controls visibility by the object cannot be selected. If the object is hidden, it is not visible and it cannot be selected.
inherited fromRhinoObject

IsInstanceDefinitionGeometry

public bool IsInstanceDefinitionGeometry { get; }
true if the object is used as part of an instance definition.
inherited fromRhinoObject

IsLocked

public bool IsLocked { get; }
An object must be in one of three modes: normal, locked or hidden. If an object is in normal mode, then the object's layer controls visibility and selectability. If an object is locked, then the object's layer controls visibility by the object cannot be selected. If the object is hidden, it is not visible and it cannot be selected.
inherited fromRhinoObject

IsNormal

public bool IsNormal { get; }
An object must be in one of three modes: normal, locked or hidden. If an object is in normal mode, then the object's layer controls visibility and selectability. If an object is locked, then the object's layer controls visibility by the object cannot be selected. If the object is hidden, it is not visible and it cannot be selected.
inherited fromRhinoObject

IsPictureFrame

public bool IsPictureFrame { get; }
Returns true if the object is a picture frame. A picture frame object is an object that displays a texture map in all views.
inherited fromRhinoObject

IsReference

public override bool IsReference { get; }
Gets a value indicating if an object is a reference object. An object from a work session reference model is a reference object and cannot be modified. An object is a reference object if, and only if, it is on a reference layer.
inherited fromRhinoObject

IsSolid

public bool IsSolid { get; }
Returns true if object is a closed solid, otherwise false.
inherited fromRhinoObject

IsSystemComponent

public bool IsSystemComponent { get; }
True if this model component is a system constant.

An incomplete list of system constant model components is below:

  • ON_ModelComponent::Unset

  • ON_InstanceDefinition::Empty

  • ON_Linetype::Unset
  • ON_Linetype::Continuous
  • ON_Linetype::ByLayer
  • ON_Linetype::ByParent

  • ON_Layer::Unset
  • ON_Layer::Default

  • ON_TextStyle::Unset
  • ON_TextStyle::Default
  • ON_TextStyle::ByLayer
  • ON_TextStyle::ByParent

  • ON_DimStyle::Unset
  • ON_DimStyle::Default
  • ON_DimStyle::DefaultInchDecimal
  • ON_DimStyle::DefaultInchFractional
  • ON_DimStyle::DefaultFootInchArchitecture
  • ON_DimStyle::DefaultMillimeterSmall
  • ON_DimStyle::DefaultMillimeterLarge
  • ON_DimStyle::DefaultMillimeterArchitecture
inherited fromModelComponent

IsValid

public virtual bool IsValid { get; }
Tests an object to see if it is valid.
inherited fromCommonObject

ModelSerialNumber

[CLSCompliant(false)] public virtual uint ModelSerialNumber { get; }
A value identifying the model that manages this component.
inherited fromModelComponent
Remarks: If the component is being managed by a model, this value identifies the model. In Rhino, this value is the document runtime serial number. Typically this value is set and locked by the code that adds a component to a model. This value is not saved in .3dm archives.

Name

public override string Name { get; set; }
Rhino objects have optional text names. More than one object in a model can have the same name and some objects may have no name.
inherited fromRhinoObject

NameIsLocked

public bool NameIsLocked { get; }
Returns a value indicating whether the component Name is already locked.
inherited fromModelComponent

ObjectType

[CLSCompliant(false)] public ObjectType ObjectType { get; }
Gets the Rhino-based object type.
inherited fromRhinoObject

ReferenceModelSerialNumber

[CLSCompliant(false)] public override uint ReferenceModelSerialNumber { get; }
When a component is in a model for reference, this value identifies the reference model.
inherited fromRhinoObject
Remarks: Reference components are not saved in .3dm archives. Typically this value is set and locked by the code that adds a component to a model. This value is not saved in .3dm archives.

RenderMaterial

public RenderMaterial RenderMaterial { get; set; }
Gets the render material associated with this object or null if there is none. This does not pay attention to the material source and will not check parent objects or layers for a RenderMaterial.
inherited fromRhinoObject

RuntimeSerialNumber

[CLSCompliant(false)] public uint RuntimeSerialNumber { get; }
Gets the objects runtime serial number.
inherited fromRhinoObject

SubobjectMaterialComponents

public ComponentIndex[] SubobjectMaterialComponents { get; }
inherited fromRhinoObject

UsePreviewMesh

public bool UsePreviewMesh { get; }
True when the display should draw this object's preview mesh instead of its render or analysis mesh.
inherited fromRhinoObject
Remarks: Only meaningful while drawing: the meshing worker thread raises this for the objects it is previewing and it is false the rest of the time. A texture or false colour VisualAnalysisMode reads it from SetUpDisplayAttributes to decide whether to show mesh wires, which is what the built-in analysis modes do.

UserData

public UserDataList UserData { get; }
List of custom information that is attached to this class.
inherited fromCommonObject

UserDictionary

public ArchivableDictionary UserDictionary { get; }
Dictionary of custom information attached to this class. The dictionary is actually user data provided as an easy to use shareable set of information.
inherited fromCommonObject

Visible

public bool Visible { get; }
Gets the object visibility.
inherited fromRhinoObject

WorksessionReferenceSerialNumber

[EditorBrowsable(EditorBrowsableState.Never)] [CLSCompliant(false)] public uint WorksessionReferenceSerialNumber { get; }
Obsolete - use ReferenceModelSerialNumber
inherited fromRhinoObject

Methods

AddClipViewport

#Since v6.1
public bool AddClipViewport(RhinoViewport viewport, bool commit)
Adds a viewport to the list of viewports that this clipping plane clips.
viewport (RhinoViewport)The viewport to add.
commit (bool)Commit the change. When in doubt, set this parameter to true.
true if the viewport was added, false if the viewport is already in the list.

ClearId

public void ClearId()
Resets the HasId property of the model component to false, if possible.
inherited fromModelComponent
InvalidOperationExceptionIf the ID is locked.

ClearIndex

public void ClearIndex()
Resets the HasIndex property of the model component to false, if possible.
inherited fromModelComponent
InvalidOperationExceptionIf the index is locked.

ClearName

public void ClearName()
Resets the HasName property of the model component to false, if possible.
inherited fromModelComponent
InvalidOperationExceptionIf the name is locked.

CommitChanges

public bool CommitChanges()
Moves changes made to this RhinoObject into the RhinoDoc.
inherited fromRhinoObject
true if changes were made.

ConstructConstObject

protected void ConstructConstObject(object parentObject, int subobjectIndex)
Assigns a parent object and a sub-object index to this.
inherited fromCommonObject
parentObject (object)The parent object.
subobjectIndex (int)The sub-object index.

CopyHistoryOnReplace

public bool CopyHistoryOnReplace()
Gets the setting of the CopyOnReplace field in this object's history
inherited fromRhinoObject
true if this object has history and the field is set false otherwise

CreateMeshes

public virtual int CreateMeshes(MeshType meshType, MeshingParameters parameters, bool ignoreCustomParameters)
Create meshes used to render and analyze surface and polysurface objects.
inherited fromRhinoObject
meshType (MeshType)type of meshes to create
parameters (MeshingParameters)in parameters that control the quality of the meshes that are created
ignoreCustomParameters (bool)Default should be false. Should the object ignore any custom meshing parameters on the object's attributes
number of meshes created

CreateSections

public GeometryBase[] CreateSections(Plane plane, string name, double tolerance, out ObjectAttributes[] objectAttributes)
Generate section curves by intersecting a plane with an object of type Brep, Extrusion, SubD ,Mesh or Block Instance.
inherited fromRhinoObject
plane (Plane)Intersecting plane.
name (string)Name for section of objects.
tolerance (double)The intersection tolerance. When in doubt, use the document's model absolute tolerance.
objectAttributes (out ObjectAttributes[])Object attributes, one for each returned geometry item.
Section geometry in the form of Breps, Extrusions, Meshes, and Curves if successful. An empty array if unsuccessful.

CreateSlices

public GeometryBase[] CreateSlices(Plane centerPlane, string name, double thickness, double tolerance, out ObjectAttributes[] objectAttributes)
Generate slices by intersecting a plane with an object of type Brep, Extrusion, SubD , Mesh, or Block Instance.
inherited fromRhinoObject
centerPlane (Plane)Intesecting plane.
name (string)Name for section of objects.
thickness (double)Thickness of the slice. If thickness is less than tolerance, a surface will be created instead of a solid slice.
tolerance (double)The intersection tolerance. When in doubt, use the document's model absolute tolerance.
objectAttributes (out ObjectAttributes[])Object attributes, one for each returned geometry item.
Slice geometry in the form of Breps, Extrusions, Meshes, and Curves if successful. An empty array if unsuccessful.

CustomRenderMeshesBoundingBox

public bool CustomRenderMeshesBoundingBox(MeshType mt, ViewportInfo vp, ref Flags flags, PlugIn plugin, DisplayPipelineAttributes attrs, out BoundingBox boundingBox)
Returns the bounding box of custom render primitives for this object .
inherited fromRhinoObject
mt (MeshType)The mesh type requested (render or analysis).
vp (ViewportInfo)The viewport being rendered
flags (ref RenderMeshProvider.Flags)See RenderMeshProvider.Flags. This is an in/out parameter: on return it also carries any status flags, so reset it before each call. See RhinoObject.RenderMeshes(MeshType, ViewportInfo, List<InstanceObject>, RenderMeshProvider.Flags, PlugIn, DisplayPipelineAttributes) for how to wait for an asynchronous provider.
plugin (PlugIn)The requesting plug-in (typically the calling plugin)
attrs (DisplayPipelineAttributes)Display attributes for the caller - null if this is a full rendering.
boundingBox (out BoundingBox)The requested bounding box
True if the process was a success

DataCRC

[CLSCompliant(false)] public uint DataCRC(uint currentRemainder)
Increments the Cyclic Redundancy Check value by this instance.
inherited fromModelComponent
currentRemainder (uint)The current remainder value.
The updated remainder value.

DeleteHistoryRecord

public bool DeleteHistoryRecord()
For expert use only. Deletes existing history record
inherited fromRhinoObject
true if history record was purged

Description

public void Description(TextLog textLog)
Get a brief description of a object, including it's attributes and geometry.
inherited fromRhinoObject
textLog (TextLog)A text log for collecting the description.

DestroyMeshes

public virtual void DestroyMeshes(MeshType meshType)
Destroys cached meshes of type meshType
inherited fromRhinoObject
meshType (MeshType)type of meshes to create
number of meshes created

Dispose

public void Dispose()
Actively reclaims unmanaged resources that this instance uses.
inherited fromCommonObject

Dispose

protected virtual void Dispose(bool disposing)
For derived class implementers.

This method is called with argument true when class user calls Dispose(), while with argument false when the Garbage Collector invokes the finalizer, or Finalize() method.

You must reclaim all used unmanaged resources in both cases, and can use this chance to call Dispose on disposable fields if the argument is true.

Also, you must call the base virtual method within your overriding method.

inherited fromCommonObject
disposing (bool)true if the call comes from the Dispose() method; false if it comes from the Garbage Collector finalizer.

DuplicateGeometry

public GeometryBase DuplicateGeometry()
Constructs a deep (full) copy of the geometry.
inherited fromRhinoObject
A copy of the internal geometry.

EnableCustomGrips

public bool EnableCustomGrips(CustomObjectGrips customGrips)
Turns on/off the object's editing grips.
inherited fromRhinoObject
customGrips (CustomObjectGrips)The custom object grips.
true if the call succeeded. If you attempt to add custom grips to an object that does not support custom grips, then false is returned.

EnableEditPointGrips

public bool EnableEditPointGrips()
Turns on edit point grips, the ones the EditPtOn command turns on.
inherited fromRhinoObject
Remarks: Curves and SubDs carry separate kinds of edit point grips. This picks the one that suits the object, as EditPtOn does, so a caller does not have to. An object that is neither is left exactly as it was. For a curve or a SubD, what happens to grips already on is described by RhinoObject.EnableGrips(Guid).
true if the object has edit point grips when this returns. false for an object that has none: anything that is not a curve or a SubD, a curve with more than 1000 edit points or too few control points to have any, an empty SubD, and the cases RhinoObject.EnableGrips(Guid) returns false for.

EnableGrips

public bool EnableGrips(Guid gripsId)
Turns on grips of one particular kind, replacing grips of any other kind.
inherited fromRhinoObject
Remarks:

Grips that were on are put back when the requested kind cannot be made, so a false return leaves the object with the grips it had.

Except when the requested kind is already on, the grips are new objects afterwards and a GripObject held across this call is stale.

Grips this turns on are not subject to Automatic Points On. They stay on until something turns them off, as with PointsOn and EditPtOn.

gripsId (Guid)Id of a grips enabler registered with CustomObjectGrips.RegisterGripsEnabler(TurnOnGripsEventHandler, Type). Guid.Empty means no custom grips: the object's own default grips, which is what the PointsOn command turns on. For edit points call RhinoObject.EnableEditPointGrips() rather than naming a kind here; curves and SubDs use different ones and it picks between them.
true if the object has grips of the requested kind when this returns. false if nothing is registered for gripsId, if the object has no grips of that kind (a polysurface has no default grips), or if the grips already on refused to turn off, which they do while they are being dragged.

EnableVisualAnalysisMode

public bool EnableVisualAnalysisMode(VisualAnalysisMode mode, bool enable)
Used to turn analysis modes on and off.
inherited fromRhinoObject
mode (VisualAnalysisMode)A visual analysis mode.
enable (bool)true if the mode should be activated; false otherwise.
true if this object supports the analysis mode.

EnsurePrivateCopy

public void EnsurePrivateCopy()
If you want to keep a copy of this class around by holding onto it in a variable after a command completes, call EnsurePrivateCopy to make sure that this class is not tied to the document. You can call this function as many times as you want.
inherited fromCommonObject

GetActiveVisualAnalysisModes

public VisualAnalysisMode[] GetActiveVisualAnalysisModes()
Gets a list of currently enabled analysis modes for this object.
inherited fromRhinoObject
An array of visual analysis modes. The array can be empty, but not null.

GetBoundingBox

protected virtual BoundingBox GetBoundingBox(RhinoViewport viewport)
Called when Rhino wants the bounding box of this object. Viewpoert can be null. This is the default base class version that will go through to the C++ base class if it is called from the custom object
inherited fromRhinoObject
viewport (RhinoViewport)For objects like labels or lights, the viewport in which the bounding box should be calculated. Otherwise null.
The bounding box.

GetCustomRenderMeshParameter

[CLSCompliant(false)] public virtual IConvertible GetCustomRenderMeshParameter(Guid providerId, string parameterName)
Query the object for the value of a given named custom render mesh parameter.
inherited fromRhinoObject
providerId (Guid)Id of the custom render mesh provider
parameterName (string)Name of the parameter
IConvertible. Note that you can't directly cast from object, instead you have to use the Convert mechanism.

GetDynamicTransform

public bool GetDynamicTransform(out Transform transform)
While an object is being dynamically transformed (dragged, rotated, ...), the current transformation can be retrieved and used for creating dynamic display.
inherited fromRhinoObject
transform (out Transform)
True if the object is being edited and its transformation is available. False if the object is not being edited, in which case the identity transform is returned.

GetGrips

public GripObject[] GetGrips()
Returns grips for this object If grips are enabled. If grips are not enabled, returns null.
inherited fromRhinoObject
An array of grip objects; or null if there are no grips.

GetGroupList

public int[] GetGroupList()
Allocates an array of group indices of length GroupCount. If RhinoObject.GroupCount is 0, then this method returns null.
inherited fromRhinoObject
An array of group indices, or null if RhinoObject.GroupCount is 0.

GetHighlightedSubObjects

public ComponentIndex[] GetHighlightedSubObjects()
Gets a list of all highlighted sub-objects.
inherited fromRhinoObject
An array of all highlighted sub-objects; or null is there are none.

GetMaterial

public Material GetMaterial(bool frontMaterial)
Gets material that this object uses based on it's attributes and the document that the object is associated with. In the rare case that a document is not associated with this object, null will be returned.
inherited fromRhinoObject
frontMaterial (bool)If true, gets the material used to render the object's front side

GetMaterial

public Material GetMaterial(ComponentIndex componentIndex, Guid plugInId, ObjectAttributes attributes)
Get the Material associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level material is returned.
inherited fromRhinoObject
componentIndex (ComponentIndex)Returns the material associated with the specified sub object or the objects top level material if it is set to ComponentIndex.Unset
plugInId (Guid)The plug-in specific material to look for.
attributes (ObjectAttributes)Optional object attributes used to determine the material source, if null the objects attributes are used.
Returns the Material associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level material is returned.

GetMaterial

public Material GetMaterial(ComponentIndex componentIndex, Guid plugInId)
Get the Material associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level material is returned.
inherited fromRhinoObject
componentIndex (ComponentIndex)Returns the material associated with the specified sub object or the objects top level material if it is set to ComponentIndex.Unset
plugInId (Guid)The plug-in specific material to look for.
Returns the Material associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level material is returned.

GetMaterial

public Material GetMaterial(ComponentIndex componentIndex)
Get the Material associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level material is returned.
inherited fromRhinoObject
componentIndex (ComponentIndex)Returns the material associated with the specified sub object or the objects top level material if it is set to ComponentIndex.Unset
Returns the Material associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level material is returned.

GetMeshes

public virtual Mesh[] GetMeshes(MeshType meshType)
Get existing meshes used to render and analyze surface and polysurface objects.
inherited fromRhinoObject
meshType (MeshType)
An array of meshes.

GetObjectData

[SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)] public virtual void GetObjectData(SerializationInfo info, StreamingContext context)
Populates a System.Runtime.Serialization.SerializationInfo with the data needed to serialize the target object.
inherited fromCommonObject
info (SerializationInfo)The System.Runtime.Serialization.SerializationInfo to populate with data.
context (StreamingContext)The destination (see System.Runtime.Serialization.StreamingContext) for this serialization.

GetRenderMaterial

public RenderMaterial GetRenderMaterial(bool frontMaterial)
Gets the RenderMaterial that this object uses based on it's attributes and the document that the object is associated with. If there is no RenderMaterial associated with this object then null is returned. If null is returned you should call GetMaterial to get the material used to render this object.
inherited fromRhinoObject
frontMaterial (bool)If true, gets the material used to render the object's front side otherwise; gets the material used to render the back side of the object.
If there is a RenderMaterial associated with this objects' associated Material then it is returned otherwise; null is returned.

GetRenderMaterial

public RenderMaterial GetRenderMaterial(ComponentIndex componentIndex, Guid plugInId, ObjectAttributes attributes)
Gets the RenderMaterial associated with this object if there is one. If there is no RenderMaterial associated with this object then null is returned. If null is returned you should call GetMaterial to get the material used to render this object.
inherited fromRhinoObject
componentIndex (ComponentIndex)Returns the RenderMaterial associated with the specified sub object or the objects top level material if it is set to ComponentIndex.Unset
plugInId (Guid)The plug-in specific material to look for.
attributes (ObjectAttributes)Optional object attributes used to determine the material source, if null the objects attributes are used.
Returns the RhinoObject.RenderMaterial associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level RenderMaterail is returned. If this method returns null it means there is no RenderMaterial associated with the object or sub object so you should may GetMaterial get the objects generic material.

GetRenderMaterial

public RenderMaterial GetRenderMaterial(ComponentIndex componentIndex, Guid plugInId)
Gets the RenderMaterial associated with this object if there is one. If there is no RenderMaterial associated with this object then null is returned. If null is returned you should call GetMaterial to get the material used to render this object.
inherited fromRhinoObject
componentIndex (ComponentIndex)Returns the RenderMaterial associated with the specified sub object or the objects top level material if it is set to ComponentIndex.Unset
plugInId (Guid)The plug-in specific material to look for.
Returns the RhinoObject.RenderMaterial associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level RenderMaterail is returned. If this method returns null it means there is no RenderMaterial associated with the object or sub object so you should may GetMaterial get the objects generic material.

GetRenderMaterial

public RenderMaterial GetRenderMaterial(ComponentIndex componentIndex)
Gets the RenderMaterial associated with this object if there is one. If there is no RenderMaterial associated with this object then null is returned. If null is returned you should call GetMaterial to get the material used to render this object.
inherited fromRhinoObject
componentIndex (ComponentIndex)Returns the RenderMaterial associated with the specified sub object or the objects top level material if it is set to ComponentIndex.Unset
Returns the RhinoObject.RenderMaterial associated with the sub object identified by componentIndex if the component index is set to ComponentIndex.Unset then the top level RenderMaterail is returned. If this method returns null it means there is no RenderMaterial associated with the object or sub object so you should may GetMaterial get the objects generic material.

GetRenderMeshParameters

public MeshingParameters GetRenderMeshParameters()
Returns the meshing parameters that this object uses for generating render meshes. If this object does not have per-object meshing parameters, then the document's meshing parameters are returned.
inherited fromRhinoObject
The render meshing parameters.

GetRenderMeshParameters

public MeshingParameters GetRenderMeshParameters(bool returnDocumentParametersIfUnset)
Returns the meshing parameters that this object uses for generating render meshes.
inherited fromRhinoObject
returnDocumentParametersIfUnset (bool)If true, then return the per-object meshing parameters for this object. If this object does not have per-object meshing parameters, then the document's meshing parameters are returned. If false, then return the per-object meshing parameters for this object. If this object does not have per-object meshing parameters, then null is returned.
The render meshing parameters if successful, null otherwise.

GetRenderPrimitiveList

public RenderPrimitiveList GetRenderPrimitiveList(ViewportInfo viewport, bool preview)
obsoleteThis version is obsolete because it returns the obsolete RenderPrimitiveList - ie, the old school custom render meshes. Use CustomRenderMeshes instead.
Build custom render mesh(es) for this object.
Obsoleteinherited fromRhinoObject
viewport (ViewportInfo)The viewport being rendered.
preview (bool)Type of mesh to build, if preview is true then a smaller mesh may be generated in less time, false is meant when actually rendering.
Returns a RenderPrimitiveList if successful otherwise returns null.

GetRenderPrimitiveList

public RenderPrimitiveList GetRenderPrimitiveList(ViewportInfo viewport, DisplayPipelineAttributes attrs)
obsoleteThis version is obsolete because it returns the obsolete RenderPrimitiveList - ie, the old school custom render meshes. Use CustomRenderMeshes instead.
Build custom render mesh(es) for this object.
Obsoleteinherited fromRhinoObject
viewport (ViewportInfo)The viewport being rendered.
attrs (DisplayPipelineAttributes)Attributes for the view mode you are supplying meshes for. Will be null if this is a modal rendering.
Returns a RenderPrimitiveList if successful otherwise returns null.

GetSelectedSubObjects

public ComponentIndex[] GetSelectedSubObjects()
Get a list of all selected sub-objects.
inherited fromRhinoObject
An array of sub-object indices, or null if there are none.

GetSubObjects

public RhinoObject[] GetSubObjects()
Explodes the object into sub-objects. It is up to the caller to add the returned objects to the document.
inherited fromRhinoObject
An array of Rhino objects, or null if this object cannot be exploded.

GetTextureChannels

public int[] GetTextureChannels()
Get a list of the texture mapping channel Id's associated with object.
inherited fromRhinoObject
Returns an array of channel Id's or an empty list if there are not mappings.

GetTextureMapping

public TextureMapping GetTextureMapping(int channel, out Transform objectTransform)
Get objects texture mapping
inherited fromRhinoObject
channel (int)
objectTransform (out Transform)

GetTextureMapping

public TextureMapping GetTextureMapping(int channel)
inherited fromRhinoObject
channel (int)

GetTightBoundingBox

protected virtual bool GetTightBoundingBox(ref BoundingBox tightBox, bool growBox, Transform xform)
Get tight bounding box of this Rhino object. The Rhino object is not modified.
inherited fromRhinoObject
tightBox (ref BoundingBox)Beginning and resulting tight box
growBox (bool)If true and the input tight_bbox is valid, then returned tight_bbox is the union of the input tight_bbox and the tight bounding box of this Rhino object.
xform (Transform)If useXform==true, the tight bounding box of the transformed Rhino object is calculated.
true if the returned tight_bbox is set to a valid bounding box.

HasCustomRenderMeshes

public bool HasCustomRenderMeshes(MeshType mt, ViewportInfo vp, ref Flags flags, PlugIn plugin, DisplayPipelineAttributes attrs)
Returns true if the object will has a set of custom render primitives - ie, CustomRenderMeshes will return non-null.
inherited fromRhinoObject
mt (MeshType)The mesh type requested (render or analysis).
vp (ViewportInfo)The viewport being rendered.
flags (ref RenderMeshProvider.Flags)See RenderMeshProvider.Flags. This is an in/out parameter: on return it also carries any status flags, so reset it before each call. See RhinoObject.RenderMeshes(MeshType, ViewportInfo, List<InstanceObject>, RenderMeshProvider.Flags, PlugIn, DisplayPipelineAttributes) for how to wait for an asynchronous provider.
plugin (PlugIn)The requesting plug-in (typically the calling plugin)
attrs (DisplayPipelineAttributes)Display attributes for the caller - null if this is a full rendering.
Returns true if the object will has a set of custom render primitives

HasHistoryRecord

public bool HasHistoryRecord()
Returns whether this object has a history record
inherited fromRhinoObject

HasTextureMapping

public bool HasTextureMapping()
Returns true if this object has a texture mapping form any source (pluginId)
inherited fromRhinoObject

Highlight

public bool Highlight(bool enable)
Modifies the highlighting of the object.
inherited fromRhinoObject
enable (bool)true if highlighting should be enabled.
true if the object is now highlighted.

HighlightSubObject

public bool HighlightSubObject(ComponentIndex componentIndex, bool highlight)
Highlights a sub-object.
inherited fromRhinoObject
componentIndex (ComponentIndex)A sub-object component index.
highlight (bool)true if the sub-object should be highlighted.
true if the sub-object is now highlighted.

HistoryChildren

public Guid[] HistoryChildren()
Gets the ids of the child Rhino objects of this object.
inherited fromRhinoObject
An array of Rhino object ids if successful, an empty array if the object has no children or on error.

HistoryParents

public Guid[] HistoryParents()
Gets the ids of the parent Rhino objects of this object.
inherited fromRhinoObject
An array of Rhino object ids if successful, an empty array if the object has no parents or on error.

InVisualAnalysisMode

public bool InVisualAnalysisMode()
Reports if any visual analysis mode is currently active for an object.
inherited fromRhinoObject
true if an analysis mode is active; otherwise false.

InVisualAnalysisMode

public bool InVisualAnalysisMode(VisualAnalysisMode mode)
Reports if a visual analysis mode is currently active for an object.
inherited fromRhinoObject
mode (VisualAnalysisMode)The mode to check for.

Use null if you want to see if any mode is active.

true if the specified analysis mode is active; otherwise false.

IsActiveInViewport

public virtual bool IsActiveInViewport(RhinoViewport viewport)
Determine if this object is active in a particular viewport.
inherited fromRhinoObject
Remarks: The default implementation tests for space and viewport id. This handles things like testing if a page space object is visible in a modeling view.
viewport (RhinoViewport)
True if the object is active in viewport

IsHighlighted

public int IsHighlighted(bool checkSubObjects)
Check highlight state.
inherited fromRhinoObject
checkSubObjects (bool)If true and the entire object is not highlighted, and some subset of the object is highlighted, like some edges of a surface, then 3 is returned. If false and the entire object is not highlighted, then zero is returned.

0: object is not highlighted.

1: entire object is highlighted.

3: one or more proper sub-objects are highlighted.

IsMeshable

public virtual bool IsMeshable(MeshType meshType)
Returns true if the object is capable of having a mesh of the specified type
inherited fromRhinoObject
meshType (MeshType)

IsSelectable

public bool IsSelectable()
Reports if an object can be selected.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
true if object is capable of being selected.

IsSelectable

public bool IsSelectable(bool ignoreSelectionState, bool ignoreGripsState, bool ignoreLayerLocking, bool ignoreLayerVisibility)
Reports if an object can be selected.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
ignoreSelectionState (bool)If true, then selected objects are selectable. If false, then selected objects are not selectable.
ignoreGripsState (bool)If true, then objects with grips on can be selected. If false, then the value returned by the object's IsSelectableWithGripsOn() function decides if the object can be selected.
ignoreLayerLocking (bool)If true, then objects on locked layers are selectable. If false, then objects on locked layers are not selectable.
ignoreLayerVisibility (bool)If true, then objects on hidden layers are selectable. If false, then objects on hidden layers are not selectable.
true if object is capable of being selected.

IsSelected

public int IsSelected(bool checkSubObjects)
Check selection state.
inherited fromRhinoObject
checkSubObjects (bool)(false is good default) If true and the entire object is not selected, and some subset of the object is selected, like some edges of a surface, then 3 is returned. If false and the entire object is not selected, then zero is returned.
0 = object is not selected. 1 = object is selected. 2 = entire object is selected persistently. 3 = one or more proper sub-objects are selected.

IsSubObjectHighlighted

public bool IsSubObjectHighlighted(ComponentIndex componentIndex)
Determines if a sub-object is highlighted.
inherited fromRhinoObject
componentIndex (ComponentIndex)A sub-object component index.
true if the sub-object is highlighted.

IsSubObjectSelectable

public bool IsSubObjectSelectable(ComponentIndex componentIndex, bool ignoreSelectionState)
Reports if a sub-object can be selected.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then that object is not selectable if it has grips turned on.
componentIndex (ComponentIndex)index of sub-object to check.
ignoreSelectionState (bool)If true, then selected objects are selectable. If false, then selected objects are not selectable.
true if the specified sub-object can be selected.

IsSubObjectSelected

public bool IsSubObjectSelected(ComponentIndex componentIndex)
Check sub-object selection state.
inherited fromRhinoObject
Remarks: A sub-object cannot be persistently selected.
componentIndex (ComponentIndex)Index of sub-object to check.
true if the sub-object is selected.

IsValidWithLog

public bool IsValidWithLog(out string log)
Determines if an object is valid. Also provides a report on errors if this object happens not to be valid.
inherited fromCommonObject
log (out string)A textual log. This out parameter is assigned during this call.
true if this object is valid; false otherwise.

LockId

public void LockId()
Locks the component Id property.
inherited fromModelComponent

LockIndex

public void LockIndex()
Locks the component Index property.
inherited fromModelComponent

LockName

public void LockName()
Locks the component Name property.
inherited fromModelComponent

MemoryEstimate

[CLSCompliant(false)] public uint MemoryEstimate()
Computes an estimate of the number of bytes that this object is using in memory. Note that this is a runtime memory estimate and does not directly compare to the amount of space take up by the object when saved to a file.
inherited fromRhinoObject
The estimated number of bytes this object occupies in memory.

MeshCount

public virtual int MeshCount(MeshType meshType, MeshingParameters parameters)
RhinoObjects can have several different types of meshes and different numbers of meshes. A b-rep can have a render and an analysis mesh on each face. A mesh object has a single render mesh and no analysis mesh. Curve, point, and annotation objects have no meshes.
inherited fromRhinoObject
meshType (MeshType)type of mesh to count
parameters (MeshingParameters)if not null and if the object can change its mesh (like a brep), then only meshes that were created with these mesh parameters are counted.
number of meshes

NonConstOperation

protected virtual void NonConstOperation()
For derived classes implementers.

Defines the necessary implementation to free the instance from being constant.

inherited fromCommonObject

ObjectFrame

public Plane ObjectFrame()
inherited fromRhinoObject

ObjectFrame

public Plane ObjectFrame(ObjectFrameFlags flags)
inherited fromRhinoObject
flags (RhinoObject.ObjectFrameFlags)

ObjectParticipates

#Since v9.0
public bool ObjectParticipates(Guid objectId)
Determines whether an object is clipped by this clipping plane, taking the clip participation (inclusion/exclusion) lists into account. This is the same test the display uses.
objectId (Guid)Id of the object to test.
true if the object is clipped by this clipping plane.

OnAddToDocument

protected virtual void OnAddToDocument(RhinoDoc doc)
This call informs an object it is about to be added to the list of active objects in the document.
inherited fromRhinoObject
doc (RhinoDoc)

OnDeleteFromDocument

protected virtual void OnDeleteFromDocument(RhinoDoc doc)
This call informs an object it is about to be deleted. Some objects, like clipping planes, need to do a little extra cleanup before they are deleted.
inherited fromRhinoObject
doc (RhinoDoc)

OnDraw

protected virtual void OnDraw(DrawEventArgs e)
Called when Rhino wants to draw this object
inherited fromRhinoObject
e (DrawEventArgs)

OnDuplicate

protected virtual void OnDuplicate(RhinoObject source)
Called when this a new instance of this object is created and copied from an existing object
inherited fromRhinoObject
source (RhinoObject)

OnPick

protected virtual IEnumerable<ObjRef> OnPick(PickContext context)
Called to determine if this object or some sub-portion of this object should be picked given a pick context.
inherited fromRhinoObject
context (PickContext)

OnPicked

protected virtual void OnPicked(PickContext context, IEnumerable<ObjRef> pickedItems)
Called when this object has been picked
inherited fromRhinoObject
context (PickContext)
pickedItems (IEnumerable<ObjRef>)Items that were picked. This parameter is enumerable because there may have been multiple sub-objects picked

OnSelectionChanged

protected virtual void OnSelectionChanged()
Called when the selection state of this object has changed
inherited fromRhinoObject

OnSpaceMorph

protected virtual void OnSpaceMorph(SpaceMorph morph)
Called when a space morph has been applied to the geometry. Currently this only works for CustomMeshObject instances
inherited fromRhinoObject
morph (SpaceMorph)

OnSwitchToNonConst

protected virtual void OnSwitchToNonConst()
Is called when a non-constant operation first occurs.
inherited fromCommonObject

OnTransform

protected virtual void OnTransform(Transform transform)
Called when a transformation has been applied to the geometry
inherited fromRhinoObject
transform (Transform)

RemoveClipViewport

#Since v6.1
public bool RemoveClipViewport(RhinoViewport viewport, bool commit)
Removes a viewport from the list of viewports that this clipping plane clips.
viewport (RhinoViewport)The viewport to remove.
commit (bool)Commit the change. When in doubt, set this parameter to true.
true if the viewport was removed, false if the viewport was not in the list.

RenderMeshes

public RenderMeshes RenderMeshes(MeshType mt, ViewportInfo vp, List<InstanceObject> ancestry, ref Flags flags, PlugIn plugin, DisplayPipelineAttributes attrs)
Returns a set of custom render primitives for this object.

Some providers - Displacement in particular - compute their meshes asynchronously. Until that work finishes, this method returns the object's ordinary render mesh instead of the custom one and reports that by setting RenderMeshProvider.Flags.Incomplete in flags. That mesh is valid geometry but does not yet reflect the provider, so a caller that measures it will see the object as it was beforehand. Test for the flag rather than trusting the first result.

inherited fromRhinoObject
mt (MeshType)The mesh type requested (render or analysis).
vp (ViewportInfo)The viewport being rendered
ancestry (List<InstanceObject>)The ancestry tree - only used for by-parent object properties assignments.
flags (ref RenderMeshProvider.Flags)On input, the options to apply; on return, the same value with any status flags added. Reset it before each call rather than passing the returned value back in. To wait for an asynchronous provider, call again while RenderMeshProvider.Flags.Incomplete remains set, calling RhinoApp.Wait() in between: the provider needs the main thread's message queue pumped before it can publish its result, so a retry loop that does not pump will never see the flag clear.
plugin (PlugIn)The requesting plug-in (typically the calling plugin)
attrs (DisplayPipelineAttributes)Display attributes for the caller - null if this is a full rendering.
A set of custom render primitives for this object, or the object's ordinary render mesh if an asynchronous provider has not finished - see flags. Null if the object is not in a document.

Select

public int Select(bool on, bool syncHighlight, bool persistentSelect, bool ignoreGripsState, bool ignoreLayerLocking, bool ignoreLayerVisibility)
Selects an object.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
on (bool)The new selection state; true activates selection.
syncHighlight (bool)If true, then the object is highlighted if it is selected and unhighlighted if is not selected.

Highlighting can be and stay out of sync, as its specification is independent.

persistentSelect (bool)Objects that are persistently selected stay selected when a command terminates.
ignoreGripsState (bool)If true, then objects with grips on can be selected. If false, then the value returned by the object's IsSelectableWithGripsOn() function decides if the object can be selected when it has grips turned on.
ignoreLayerLocking (bool)If true, then objects on locked layers can be selected. If false, then objects on locked layers cannot be selected.
ignoreLayerVisibility (bool)If true, then objects on hidden layers can be selectable. If false, then objects on hidden layers cannot be selected.

0: object is not selected.

1: object is selected.

2: object is selected persistently.

Select

public int Select(bool on, bool syncHighlight)
Selects an object.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
on (bool)The new selection state; true activates selection.
syncHighlight (bool)If true, then the object is highlighted if it is selected and not highlighted if is not selected.

Highlighting can be and stay out of sync, as its specification is independent.

0: object is not selected.

1: object is selected.

2: object is selected persistently.

Select

public int Select(bool on)
Selects an object.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
on (bool)The new selection state; true activates selection.

0: object is not selected.

1: object is selected.

2: object is selected persistently.

SelectSubObject

public int SelectSubObject(ComponentIndex componentIndex, bool select, bool syncHighlight, bool persistentSelect)
Reports if an object can be selected.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
componentIndex (ComponentIndex)Index of sub-object to check.
select (bool)The new selection state; true activates selection.
syncHighlight (bool)(default=true) If true, then the object is highlighted if it is selected and unhighlighted if is not selected.
persistentSelect (bool)When true, selection persists even after the current command terminates.

0: object is not selected

1: object is selected

2: object is selected persistently.

SelectSubObject

public int SelectSubObject(ComponentIndex componentIndex, bool select, bool syncHighlight)
Reports if an object can be selected.
inherited fromRhinoObject
Remarks: Objects that are locked, hidden, or on locked or hidden layers cannot be selected. If IsSelectableWithGripsOn() returns false, then an that object is not selectable if it has grips turned on.
componentIndex (ComponentIndex)Index of sub-object to check.
select (bool)The new selection state; true activates selection.
syncHighlight (bool)(default=true) If true, then the object is highlighted if it is selected and unhighlighted if is not selected.
0: object is not selected 1: object is selected 2: object is selected persistently.

SetCopyHistoryOnReplace

public void SetCopyHistoryOnReplace(bool bCopy)
If this object has a history record, the CopyOnReplace field is set When an object is replaced in a document and the old object has a history record with this field set, the history record is copied and attached to the new object. That allows a descendant object to continue the history linkage after it is edited.
inherited fromRhinoObject
bCopy (bool)

SetCustomRenderMeshParameter

public virtual void SetCustomRenderMeshParameter(Guid providerId, string parameterName, object value)
Set the named custom render mesh parameter value for this object.
inherited fromRhinoObject
providerId (Guid)Id of the custom render mesh provider
parameterName (string)
value (object)

SetHistory

public bool SetHistory(HistoryRecord history)
For expert use only. Sets the history record that describes how this object was created. This information is used to update this object when Rhino history is enabled and an input object changes.
inherited fromRhinoObject
history (HistoryRecord)The history record.
true if successful, otherwise false.

SetObjectFrame

public void SetObjectFrame(Plane plane)
obsoleteUse Attributes.SetObjectFrame instead
Obsoleteinherited fromRhinoObject
plane (Plane)

SetObjectFrame

public void SetObjectFrame(Transform xform)
obsoleteUse Attributes.SetObjectFrame instead
Obsoleteinherited fromRhinoObject
xform (Transform)

SetRenderMeshParameters

public bool SetRenderMeshParameters(MeshingParameters mp)
Sets the per-object meshing parameters for this object. When set, this object will use these meshing parameters when generating a render mesh, instead of those provided by the document.
inherited fromRhinoObject
mp (MeshingParameters)The per-object meshing parameters. Note: if null, then the per-object meshing parameters will be removed, and this object will revert to using the meshing parameters provided by the document.
True if successful, false otherwise.

SetTextureMapping

public int SetTextureMapping(int channel, TextureMapping tm, Transform objectTransform)
Sets texture mapping and mapping object transform for a channel
inherited fromRhinoObject
channel (int)
tm (TextureMapping)The TextureMapping to set into this channel, or null to remove a texture mapping from a channel.
objectTransform (Transform)Mapping channel object transform

SetTextureMapping

public int SetTextureMapping(int channel, TextureMapping tm)
inherited fromRhinoObject
channel (int)
tm (TextureMapping)

ShortDescription

public virtual string ShortDescription(bool plural)
Gets a localized short descriptive name of the object.
inherited fromRhinoObject
plural (bool)true if the descriptive name should in plural.
A string with the short localized descriptive name.

ShortDescriptionWithClosedStatus

public string ShortDescriptionWithClosedStatus(bool prepend, bool plural, out int status)
Gets a localized short descriptive name of the object, along with it's open/closed status.
inherited fromRhinoObject
prepend (bool)true if "open" or "closed" should be prepended to the descriptive name.
plural (bool)true if the descriptive name should in plural.
status (out int)The open/closed status, where: 0 = undefined, 1 = open, 2 = closed.
A string with the short localized descriptive name.

SupportsRenderPrimitiveList

public bool SupportsRenderPrimitiveList(ViewportInfo viewport, bool preview)
obsoleteUse HasCustomRenderPrimitives instead
Determines if custom render meshes will be built for a particular object.
Obsoleteinherited fromRhinoObject
viewport (ViewportInfo)The viewport being rendered.
preview (bool)Type of mesh to build. If attributes is non-null then a smaller mesh may be generated in less time, false is meant when actually rendering.
Returns true if custom render mesh(es) will get built for this object.

SupportsRenderPrimitiveList

public bool SupportsRenderPrimitiveList(ViewportInfo viewport, DisplayPipelineAttributes attrs)
obsoleteUse HasCustomRenderPrimitives instead
Determines if custom render meshes will be built for a particular object.
Obsoleteinherited fromRhinoObject
viewport (ViewportInfo)The viewport being rendered.
attrs (DisplayPipelineAttributes)Type of mesh to build. If attributes is non-null then a smaller mesh may be generated in less time, false is meant when actually rendering.
Returns true if custom render mesh(es) will get built for this object.

ToJSON

public string ToJSON(SerializationOptions options)
Create a JSON string representation of this object
inherited fromCommonObject
options (SerializationOptions)

ToString

public override string ToString()
Returns the name of the model component type, and then its name and index.
inherited fromModelComponent
Remarks: This is provided as a visual aid. Do not rely on this for serialization.
Object.ToString

TryGetGumballFrame

public bool TryGetGumballFrame(out GumballFrame frame)
If a Rhino object has been manipulated by Rhino's gumball, and the gumball is not in its default position, then the object's repositioned gumball frame is returned.
inherited fromRhinoObject
frame (out GumballFrame)The gumball frame.
true if the object has a gumball frame, otherwise false.

TryGetGumballFrameForCurrentAlignment

public bool TryGetGumballFrameForCurrentAlignment(out GumballFrame frame)
Gets the gumball frame for this object under the current gumball alignment mode (Object / World / CPlane). For Object mode the frame always reflects the object's orientation (including any user relocation in that mode). For World and CPlane mode the frame is only returned when the user has manually repositioned the gumball for this object; if it has never been moved in that mode, the method returns false. Sub-object selections are not taken into account; this is a whole-object helper.
inherited fromRhinoObject
frame (out GumballFrame)The gumball frame for the current alignment mode.
true if a frame is available for the current alignment mode; false when the gumball has not been repositioned in the active World or CPlane mode.

TryGetRenderPrimitiveBoundingBox

public bool TryGetRenderPrimitiveBoundingBox(ViewportInfo viewport, bool preview, out BoundingBox boundingBox)
obsoleteUse CustomRenderMeshesBoundingBox instead
Get the bounding box for the custom render meshes associated with this object.
Obsoleteinherited fromRhinoObject
viewport (ViewportInfo)The viewport being rendered.
preview (bool)Type of mesh to build, if preview is true then a smaller mesh may be generated in less time, false is meant when actually rendering.
boundingBox (out BoundingBox)This will be set to BoundingBox.Unset on failure otherwise it will be the bounding box for the custom render meshes associated with this object.
Returns true if the bounding box was successfully calculated otherwise returns false on error.

TryGetRenderPrimitiveBoundingBox

public bool TryGetRenderPrimitiveBoundingBox(ViewportInfo viewport, DisplayPipelineAttributes attrs, out BoundingBox boundingBox)
obsoleteUse CustomRenderMeshesBoundingBox instead
Get the bounding box for the custom render meshes associated with this object.
Obsoleteinherited fromRhinoObject
viewport (ViewportInfo)The viewport being rendered.
attrs (DisplayPipelineAttributes)Attributes for the view mode you are supplying meshes for. Will be null if this is a modal rendering.
boundingBox (out BoundingBox)This will be set to BoundingBox.Unset on failure otherwise it will be the bounding box for the custom render meshes associated with this object.
Returns true if the bounding box was successfully calculated otherwise returns false on error.

UnhighlightAllSubObjects

public int UnhighlightAllSubObjects()
Removes highlighting from all sub-objects.
inherited fromRhinoObject
The number of changed sub-objects.

UnselectAllSubObjects

public int UnselectAllSubObjects()
Removes selection from all sub-objects.
inherited fromRhinoObject
The number of unselected sub-objects.