InstanceDefinition
This is the same as InstanceDefinitionGeometry, but in a Rhino document.
Inheritance Hierarchy
System.Object
Rhino.Runtime.CommonObject
Rhino.DocObjects.ModelComponent
Rhino.Geometry.InstanceDefinitionGeometry
Rhino.DocObjects.InstanceDefinition
Namespace: Rhino.DocObjects
Assembly: RhinoCommon (in RhinoCommon.dll)
Syntax
public sealed class InstanceDefinition : InstanceDefinitionGeometry
The InstanceDefinition type exposes the following members.
Properties
Name
Description
Public Property
ArchiveFileStatus
Returns the archive file status of a linked instance definition.
Public Property
ComponentStatus
Gets or sets the component status of the model component.
(Inherited from ModelComponent.)
Public Property
ComponentType
Returns InstanceDefinition.
(Overrides
InstanceDefinitionGeometry.ComponentType
.)Public Property
DeletedName
Gets the name of a component that is deleted.
(Inherited from ModelComponent.)
Public Property
Description
Gets or sets the description of the definition.
(Inherited from InstanceDefinitionGeometry.)
Public Property
Disposed
Indicates if this object has been disposed or the document it originally belonged to has been disposed.
(Inherited from CommonObject.)
Public Property
HasId
Returns a value indicating whether the component has an ID.
(Inherited from ModelComponent.)
Public Property
HasIndex
Returns a value indicating whether the component has an Index.
(Inherited from ModelComponent.)
Public Property
HasName
Returns a value indicating whether the component has a Name.
(Inherited from ModelComponent.)
Public Property
HasUserData
Gets true if this class has any custom information attached to it through UserData.
(Inherited from CommonObject.)
Public Property
Id
Gets or sets the ID of the current instance.
(Inherited from ModelComponent.)
Public Property
IdIsLocked
Returns a value indicating whether the component ID is already locked.
(Inherited from ModelComponent.)
Public Property
Index
Index of this instance definition in the index definition table.
(Overrides
ModelComponent.Index
.)Public Property
IndexIsLocked
Returns a value indicating whether the component Index is already locked.
(Inherited from ModelComponent.)
Public Property
InstanceDefinitionModelSerialNumber
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 from ModelComponent.)
Public Property
IsComponentStatusLocked
The component status itself can be locked. This returns an indication.
(Inherited from ModelComponent.)
Public Property
Code Example
IsDeleted
Returns true if this instance definition is deleted. Deleted object are not saved to a file archive.
(Overrides
ModelComponent.IsDeleted
.)Public Property
IsDocumentControlled
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 from CommonObject.)
Public Property
Code Example
IsReference
An object from a work session reference model is reference a reference object and cannot be modified. An object is a reference object if, and only if, it is on a reference layer.
(Overrides
ModelComponent.IsReference
.)Public Property
IsSystemComponent
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 from ModelComponent.)
Public Property
IsTenuous
True if this instance definition is from a linked file. It will be saved only if it is referenced by an instance reference object that is in the active geometry list and is being saved. Note that there can be multiple linked instance definitions with references to tenuous instance definitions.
Public Property
IsValid
Tests an object to see if it is valid.
(Inherited from CommonObject.)
Public Property
LayerStyle
Specifies how model components (layers, materials, dimension styles, etc.) from linked instance definition files appear in the active model.
Public Property
ModelSerialNumber
A value identifying the model that manages this component.
(Inherited from ModelComponent.)
Public Property
Code Example
Name
Gets or sets the name
(Inherited from ModelComponent.)
Public Property
NameIsLocked
Returns a value indicating whether the component Name is already locked.
(Inherited from ModelComponent.)
Public Property
ObjectCount
Number of objects this definition uses. This counts the objects that are used to define the geometry. This does NOT count the number of references to this instance definition.
Public Property
ReferenceModelSerialNumber
When a component is in a model for reference, this value identifies the reference model.
(Inherited from ModelComponent.)
Public Property
SkipNestedLinkedDefinitions
This property applies when an instance definition is linked. If true, when reading the file that defines the content of the linked instance definition, skip any linked instance definitions found in that file. If false, when reading the file that defines the content of the linked instance definition, recursively load linked instance definitions found in that file.
Public Property
SourceArchive
Gets the full file path for linked instance definitions.
Public Property
UnitSystem
Gets the unit system of the instance definition. If the instance definition was imported from another 3dm file, the unit system may differ from that of the document.
Public Property
UpdateType
Public Property
Url
Gets or sets the URL or hyperlink of the definition.
(Inherited from InstanceDefinitionGeometry.)
Public Property
UrlDescription
Gets or sets the description of the URL or hyperlink of the definition.
(Inherited from InstanceDefinitionGeometry.)
Public Property
UserData
List of custom information that is attached to this class.
(Inherited from CommonObject.)
Public Property
UserDictionary
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 from CommonObject.)
Public Property
UserStringCount
Gets the amount of user strings.
(Inherited from InstanceDefinitionGeometry.)
Methods
Name
Description
Public Method
ClearId
Resets the HasId property of the model component to false, if possible.
(Inherited from ModelComponent.)
Public Method
ClearIndex
Resets the HasIndex property of the model component to false, if possible.
(Inherited from ModelComponent.)
Public Method
ClearName
Resets the HasName property of the model component to false, if possible.
(Inherited from ModelComponent.)
Public Method
CreatePreviewBitmap(DefinedViewportProjection, Size)
Creates a wireframe preview bitmap of the instance definition.
Public Method
CreatePreviewBitmap(DefinedViewportProjection, DisplayMode, Size)
Creates a preview bitmap of the instance definition.
Public Method
CreatePreviewBitmap(DefinedViewportProjection, Size, Boolean)
Creates a wireframe preview bitmap of the instance definition.
Public Method
CreatePreviewBitmap(DefinedViewportProjection, DisplayMode, Size, Boolean)
Creates a preview bitmap of the instance definition.
Public Method
CreatePreviewBitmap(Guid, DefinedViewportProjection, DisplayMode, Size, Boolean)
Creates a preview bitmap of the instance definition.
Public Method
CreatePreviewBitmap(Guid, DefinedViewportProjection, IsometricCamera, Boolean, Size, Boolean)
Creates a preview bitmap of the instance definition.
Public Method
DataCRC
Increments the Cyclic Redundancy Check value by this instance.
(Inherited from ModelComponent.)
Public Method
DeleteAllUserStrings
(Inherited from InstanceDefinitionGeometry.)
Public Method
DeleteUserString
(Inherited from InstanceDefinitionGeometry.)
Public Method
Dispose.
Actively reclaims unmanaged resources that this instance uses.
(Inherited from CommonObject.)
Public Method
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 from CommonObject.)
Public Method
Equals
Equality is checked against InstanceDefinition.Id
(Overrides Object.Equals(Object).)
Public Method
GetContainers
Gets a list of all the InstanceDefinitions that contain a reference this InstanceDefinition.
Public Method
GetHashCode
Use Id.GetHashCode()
(Overrides Object.GetHashCode..)
Public Method
GetObjectData
Populates a System.Runtime.Serialization.SerializationInfo with the data needed to serialize the target object.
(Inherited from CommonObject.)
Public Method
GetObjectIds
list of object ids in the instance geometry table
(Inherited from InstanceDefinitionGeometry.)
Public Method
Code Example
GetObjects
Gets an array with the objects that belong to this instance definition.
Public Method
GetReferences
Gets a list of the CRhinoInstanceObjects (inserts) that contains a reference this instance definition.
Public Method
GetType
Gets the Type of the current instance.
(Inherited from Object.)
Public Method
GetUserString
Gets user string from this geometry.
(Inherited from InstanceDefinitionGeometry.)
Public Method
GetUserStrings
Gets a copy of all (user key string, user value string) pairs attached to this geometry.
(Inherited from InstanceDefinitionGeometry.)
Public Method
InUse
Determines whether the instance definition is referenced.
Public Method
IsValidWithLog
Determines if an object is valid. Also provides a report on errors if this object happens not to be valid.
(Inherited from CommonObject.)
Public Method
LockId
Locks the component Id property.
(Inherited from ModelComponent.)
Public Method
LockIndex
Locks the component Index property.
(Inherited from ModelComponent.)
Public Method
LockName
Locks the component Name property.
(Inherited from ModelComponent.)
Public Method
Object
returns an object used as part of this definition.
Public Method
SetUserString
Attach a user string (key,value combination) to this geometry.
(Inherited from InstanceDefinitionGeometry.)
Public Method
ToJSON
Create a JSON string representation of this object
(Inherited from CommonObject.)
Public Method
ToString
Returns the name of the model component type, and then its name and index.
(Inherited from ModelComponent.)
Public Method
UseCount.
Returns the number of references of this instance definition in the model. Both top-level references and nested instances are included in the count.
Public Method
UseCount(Int32., Int32.)
Returns the number of references of this instance definition in the model. Both top-level references and nested instances are included in the count.
Public Method
UsesDefinition
Determines if this instance definition contains a reference to another instance definition.
Public Method
UsesLayer
Returns true if some object in the instance definition is on the layer with the specified layer index.
Public Method
UsesLinetype
Returns true if some object in the instance definition references the linetype with the specified linetype index.