RhinoCurveTypeAssistant

TypeAssistant<1>
ITypeAssistant implementation for Curve.

Constructors

RhinoCurveTypeAssistant

#
public RhinoCurveTypeAssistant()

Properties

Constructors

public virtual IEnumerable<string> Constructors { get; }
Enumerate all defined constructors for this type.
inherited fromTypeAssistant<T>
Constructors

Icon

#
public override IIcon Icon { get; }

IsReimplementation

public bool IsReimplementation { get; }
Gets whether or not this assistant is a type-safe re-implementation of a more generic assistant.
inherited fromTypeAssistant<T>
IsReimplementation

Name

public string Name { get; }
Gets the parameter description associated with this type.
inherited fromTypeAssistant<T>
Name

ReimplementationBase

public ITypeAssistant ReimplementationBase { get; }
Gets the base assistant (if any) this assistant is a re-implementation of.
inherited fromTypeAssistant<T>

Type

public Type Type { get; }
Gets the type associated with this assistant.
inherited fromTypeAssistant<T>
Type

ZupportsArea

public bool ZupportsArea { get; }
Gets whether this type assistant has support for Area metrics.
inherited fromTypeAssistant<T>
ZupportsArea

ZupportsAreaCentroid

public bool ZupportsAreaCentroid { get; }
Gets whether this type assistant has support for Area centroid metrics.
inherited fromTypeAssistant<T>

ZupportsBake

public bool ZupportsBake { get; }
Gets whether this type assistant has support for geometry baking.
inherited fromTypeAssistant<T>
ZupportsBake

ZupportsBoundingBox

public bool ZupportsBoundingBox { get; }
Gets whether this type assistant has support for BoundingBox metrics.
inherited fromTypeAssistant<T>

ZupportsClosestPoint

public bool ZupportsClosestPoint { get; }
Gets whether this type assistant has support for closest point resolution.
inherited fromTypeAssistant<T>

ZupportsDeform

public bool ZupportsDeform { get; }
Gets whether this type assistant has support for spatial morphs.
inherited fromTypeAssistant<T>
ZupportsDeform

ZupportsDraw

public bool ZupportsDraw { get; }
Gets whether this type assistant has support for geometry display.
inherited fromTypeAssistant<T>
ZupportsDraw

ZupportsFurthestPoint

public bool ZupportsFurthestPoint { get; }
Gets whether this type assistant has support for furthest point resolution.
inherited fromTypeAssistant<T>

ZupportsLength

public bool ZupportsLength { get; }
Gets whether this type assistant has support for Length metrics.
inherited fromTypeAssistant<T>
ZupportsLength

ZupportsPick

public bool ZupportsPick { get; }
Gets whether the assistants supports UI for specifying new values. Note that if the TypeAssistant<T>.Pick(Pear<T>, Pear<T>) method hasn't been overwritten but the TypeAssistant<T>.ZupportsRoundTripping is true, then values can be specified using the TypeAssistant<T>.Format(T) and TypeAssistant<T>.Parse(string, string, Pear<T>) methods.
inherited fromTypeAssistant<T>
ZupportsPick

ZupportsReadWrite

public bool ZupportsReadWrite { get; }
Gets whether this assistant supports (de)serializing instances of T.
inherited fromTypeAssistant<T>
ZupportsReadWrite

ZupportsRoundTripping

public bool ZupportsRoundTripping { get; }
Gets whether this assistant supports round-tripping from T to string to T. For this to be true, both TypeAssistant<T>.Format(T) and TypeAssistant<T>.Parse(string, string, Pear<T>) must be implemented.
inherited fromTypeAssistant<T>

ZupportsTransform

public bool ZupportsTransform { get; }
Gets whether this type assistant has support for transformations.
inherited fromTypeAssistant<T>
ZupportsTransform

ZupportsTransformBox

public bool ZupportsTransformBox { get; }
Gets whether this type assistant has support for aligned BoundingBox metrics.
inherited fromTypeAssistant<T>

ZupportsVolume

public bool ZupportsVolume { get; }
Gets whether this type assistant has support for Volume metrics.
inherited fromTypeAssistant<T>
ZupportsVolume

ZupportsVolumeCentroid

public bool ZupportsVolumeCentroid { get; }
Gets whether this type assistant has support for Volume centroid metrics.
inherited fromTypeAssistant<T>

Methods

Area

#
public override bool Area(Curve instance, out double area)
instance (Curve)
area (out double)

AreaCentroid

#
public override bool AreaCentroid(Curve instance, out double area, out Point3d centroid)
instance (Curve)
area (out double)
centroid (out Point3d)

BoundingBox

#
public override BoundingBox BoundingBox(Curve instance)
instance (Curve)

ClosestPoint

#
public override bool ClosestPoint(Curve instance, Point3d locus, out Point3d site)
instance (Curve)
locus (Point3d)
site (out Point3d)

Copy

#
public override Curve Copy(Curve instance)
instance (Curve)

CreateComparer

public IEqualityComparer<T> CreateComparer()
Create an equality comparer for this type. It depends on the implementation of Hash() and Same().
inherited fromTypeAssistant<T>

Deform

#
public override object Deform(Curve instance, SpaceMorph morph)
instance (Curve)
morph (SpaceMorph)

DescribePrimary

#
public override string DescribePrimary(Pear<Curve> pear)
pear (Pear<Curve>)

DescribeSecondary

#
public override string DescribeSecondary(Pear<Curve> pear)
pear (Pear<Curve>)

Draw

#
public override void Draw(Pear<Curve> pear, DisplayBag bag)
pear (Pear<Curve>)
bag (DisplayBag)

Format

public virtual string Format(T instance)
Format an instance partially so that it can be modified via text.
inherited fromTypeAssistant<T>
instance (T)Instance to format.
Format

FurthestPoint

#
public override bool FurthestPoint(Curve instance, Point3d locus, out Point3d site)
instance (Curve)
locus (Point3d)
site (out Point3d)

Hash

public virtual int Hash(T instance)
Hash an instance of the object. The default implementation calls GetHash() on the instance.
inherited fromTypeAssistant<T>
instance (T)
Hash

HashUsingWriteMethod

protected int HashUsingWriteMethod(T instance)
Utility method for hashing a value based on the Write() implementation.
inherited fromTypeAssistant<T>
instance (T)

Length

#
public override bool Length(Curve instance, out double length)
instance (Curve)
length (out double)

ModifyBakeAttributes

public virtual ObjectAttributes ModifyBakeAttributes(Pear<T> pear, File3dm file, ObjectAttributes initial)
By overriding this method, the type implementor may add modifications to the attributes of objects baked to Rhino files. For example, vectors when baked require an arrowhead to be set at the curve end, and this must be specified via the object attributes.
inherited fromTypeAssistant<T>
pear (Pear<T>)The pear associated with the attributes.
file (File3dm)The Rhino 3dm file into which the geometry will be baked.
initial (ObjectAttributes)The attributes to be used.
Modified attributes.

ModifyBakeAttributes

public virtual ObjectAttributes ModifyBakeAttributes(Pear<T> pear, RhinoDoc document, ObjectAttributes initial)
By overriding this method, the type implementor may add modifications to the attributes of objects baked to Rhino documents. For example, vectors when baked require an arrowhead to be set at the curve end, and this must be specified via the object attributes.
inherited fromTypeAssistant<T>
pear (Pear<T>)The pear associated with the attributes.
document (RhinoDoc)The Rhino document into which the geometry will be baked.
initial (ObjectAttributes)The attributes to be used.
Modified attributes.

Parse

public virtual Result<T> Parse(string constructor, string text, Pear<T> existing)
Parse a (possibly partial) description of a value.
inherited fromTypeAssistant<T>
constructor (string)Constructor name, if applicable.
text (string)Text to parse.
existing (Pear<T>)Pre-existing instance to modify, may be null.
Parse

Pick

public virtual bool Pick(Pear<T> existing, out Pear<T> pear)
Ask the user to specify (or pick) a new value. When this method is invoked, it is assumed that it will start a RhinoGet operation or otherwise pop some kind of UI on the screen.
inherited fromTypeAssistant<T>
existing (Pear<T>)Existing value to be overwritten, if any.
pear (out Pear<T>)Pear which was picked.
True if a value was picked.
Pick

Read

#
public override bool Read(IReader reader, Name location, out Curve instance)
reader (IReader)
location (Name)
instance (out Curve)

RelinkMetaDataFromUserStrings

protected MetaData RelinkMetaDataFromUserStrings(MetaData metaOriginal, NameValueCollection userStrings, bool aggressive = true)
Utility method for updating metadata from userstrings after relinking a value.
inherited fromTypeAssistant<T>
metaOriginal (MetaData)Meta data of original value.
userStrings (NameValueCollection)User strings collection.
aggressive (bool = true)If true, all original data except the 'Rhino.Id' and 'Rhino.IdOrigin' will be wiped.
Updated metadata.

RelinkMetaDataFromUserStrings

protected MetaData RelinkMetaDataFromUserStrings(MetaData metaOriginal, ObjectAttributes attributes, bool aggressive = true)
Utility method for updating metadata from userstrings after relinking a value.
inherited fromTypeAssistant<T>
metaOriginal (MetaData)Meta data of original value.
attributes (ObjectAttributes)Rhino object attributes.
aggressive (bool = true)If true, all original data except the 'Rhino.Id', 'Rhino.IdOrigin', and 'Rhino.Index' will be wiped.
Updated metadata.

Same

#
public override bool Same(Curve a, Curve b)
a (Curve)
b (Curve)

Show

public virtual IValueDisplay Show(Pear<T> pear)
Create a Grasshopper display proxy.
inherited fromTypeAssistant<T>
pear (Pear<T>)(value, meta) pear to display.
Display proxy.
Show

Sort

#
public override int Sort(Curve a, Curve b)
a (Curve)
b (Curve)

Test

#
public override bool Test(Curve instance, out string invalidReason)
instance (Curve)
invalidReason (out string)

Test

public bool Test(T instance)
Determine the validity of an instance.
inherited fromTypeAssistant<T>
instance (T)Instance.
True if the instance is valid, false if otherwise.
Test

Text

#
public override Prose.Text Text(Curve instance)
instance (Curve)

ToGeometry

#
public override IEnumerable<GeometryBase> ToGeometry(Pear<Curve> pear)
pear (Pear<Curve>)

Transform

#
public override object Transform(Curve instance, Transform matrix)
instance (Curve)
matrix (Transform)

TransformBox

#
public override BoundingBox TransformBox(Curve instance, Transform transformation)
instance (Curve)
transformation (Transform)

Volume

#
public override bool Volume(Curve instance, out double volume)
instance (Curve)
volume (out double)

VolumeCentroid

public virtual bool VolumeCentroid(T instance, out double volume, out Point3d centroid)
Measure the volume of an instance.
inherited fromTypeAssistant<T>
instance (T)Instance to measure.
volume (out double)Measured volume.
centroid (out Point3d)Volume centroid.
Success or failure.
VolumeCentroid

Write

#
public override bool Write(IWriter writer, Name location, Curve instance)
writer (IWriter)
location (Name)
instance (Curve)