T

Constructors

GH_GeometricGoo

#
protected GH_GeometricGoo()
Blank constructor, m_value will be set to default (null for reference types, zeroes for value types)

GH_GeometricGoo

#
protected GH_GeometricGoo(T internal_data)
Data constructor, m_value will be set to internal_data.
internal_data (T)Value to store inside this Goo instance.

Fields

m_value

protected T m_value
inherited fromGH_Goo<T>

Properties

Boundingbox

#
public abstract BoundingBox Boundingbox { get; }
Gets the boundingbox for this geometry.
The boundingbox for this piece of geometry or Boundingbox.Empty if the geometry is null or invalid.
Boundingbox

IsGeometryLoaded

#
public virtual bool IsGeometryLoaded { get; }
Gets a value indicating whether or not this geometry is currently loaded (assuming it is referenced). Not all IGH_GeometricGoo implementations support referenced geometry. The default is to always return True.
IsGeometryLoaded

IsReferencedGeometry

#
public virtual bool IsReferencedGeometry { get; }
Gets a value indicating whether or not this geometry is referenced. Not all IGH_GeometricGoo implementations support referenced geometry.

IsValid

#
public override bool IsValid { get; }
Gets a value indicating whether or not the current value is valid.

IsValidWhyNot

public virtual string IsValidWhyNot { get; }
Gets a string describing the state of "invalidness". If the instance is valid, then this property should return Nothing or String.Empty.
inherited fromGH_Goo<T>
IsValidWhyNot

ReferenceID

#
public virtual Guid ReferenceID { get; set; }
Gets or sets the Guid of the object that is referenced. Not all IGH_GeometricGoo implementations support referenced geometry. The default implementation is to always return Guid.Empty.
ReferenceID

TypeDescription

public abstract string TypeDescription { get; }
Gets a description of the type of the implementation.
inherited fromGH_Goo<T>
TypeDescription

TypeName

public abstract string TypeName { get; }
Gets the name of the type of the implementation.
inherited fromGH_Goo<T>
TypeName

Value

#
public override T Value { get; set; }
Gets or sets the value of this type. Note that if the type has a ReferenceID this value might get destroyed in the future.
GH_Goo<T>.Value

Methods

CastFrom

#
public override bool CastFrom(object source)
Attempt a cast from generic object.
Remarks: If False, the contents of this instance are not to be trusted.
source (object)Reference to source of cast.
True on success, false on failure.

CastTo<Q>

#
public override bool CastTo<Q>(ref Q target)
Attempt a cast to type T.
Remarks: If false, the target instance contents are not guaranteed to be valid.
target (ref Q)Pointer to target of cast.
True on success, false on failure.
GH_Goo<T>.CastTo

ClearCaches

#
public virtual void ClearCaches()
Clears all caches. Typically if the geometry is referenced, this will erase the local copy. If your T is a value-type, you must override this function and specifically unset the local value.
ClearCaches

Duplicate

#
public override IGH_Goo Duplicate()
Make a complete duplicate of this instance. No shallow copies.
Remarks: Classes which implement this interface should also provide type specific Duplicate methods

DuplicateGeometry

#
public abstract IGH_GeometricGoo DuplicateGeometry()
Make a complete duplicate of this geometry. No shallow copies.
Remarks: Each class that implements this interface should also provide a type specific duplication method
DuplicateGeometry

EmitProxy

#
public override IGH_GooProxy EmitProxy()
Create a new proxy for this instance. Return Null if this class does not support proxies.

GetBoundingBox

#
public abstract BoundingBox GetBoundingBox(Transform xform)
Compute an aligned boundingbox.
xform (Transform)Transformation to apply to geometry for BoundingBox computation.
The world aligned boundingbox of the transformed geometry.
GetBoundingBox

LoadGeometry

#
public virtual bool LoadGeometry()
If the geometry is referenced and currently unloaded, forces loading of the geometry. Not all IGH_GeometricGoo implementations support referenced geometry.
LoadGeometry

LoadGeometry

#
public virtual bool LoadGeometry(RhinoDoc doc)
If the geometry is referenced and currently unloaded, forces loading of the geometry. Not all IGH_GeometricGoo implementations support referenced geometry. The default is to always return True.
doc (RhinoDoc)Document to use for loading.
LoadGeometry

Morph

#
public abstract IGH_GeometricGoo Morph(SpaceMorph xmorph)
Morph the object or a deformable representation of the object.
xmorph (SpaceMorph)Spatial deform.
Deformed geometry. If the local geometry can be deformed accurately, then the returned instance equals this instance. Not all geometry types can be accurately deformed though, if this is the case, this function will return an instance of another IGH_GeometricGoo derived type which can be deformed.
Morph

Read

public virtual bool Read(GH_IReader reader)
Default behaviour is to return True.
inherited fromGH_Goo<T>
reader (GH_IReader)
Read

ScriptVariable

public virtual object ScriptVariable()
This function will be called when the local IGH_Goo instance disappears into a user Script. This would be an excellent place to cast your IGH_Goo type to a simple data type.
inherited fromGH_Goo<T>
The default implementation of this function returns the Value instance.
ScriptVariable

ToString

public abstract override string ToString()
Creates a string description of the current instance value.
inherited fromGH_Goo<T>
Object.ToString
ToString

Transform

#
public abstract IGH_GeometricGoo Transform(Transform xform)
Transforms the object or a deformable representation of the object.
xform (Transform)Transformation matrix.
Transformed geometry. If the local geometry can be transformed accurately, then the returned instance equals this instance. Not all geometry types can be accurately transformed under all circumstances though, if this is the case, this function will return an instance of another IGH_GeometricGoo derived type which can be transformed.
Transform

Write

public virtual bool Write(GH_IWriter writer)
Default behaviour is to return True.
inherited fromGH_Goo<T>
writer (GH_IWriter)
Write