# GH_Line class

Namespace: [Grasshopper.Kernel.Types](https://developer.rhino3d.com/api/gh1/namespace/grasshopper.kernel.types.md) · Assembly: [Grasshopper](https://developer.rhino3d.com/api/gh1/assembly/grasshopper.md)

```cs
public class GH_Line : GH_GeometricGoo<Line>, IGH_BakeAwareData, IGH_PreviewData
```

Represents a 3D line segment. GH_Line re-implements the OpenNURBS OnLine class.

## Constructors

- [GH_Line](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/ctor.md): (3 overloads) Default constructor

## Properties

- [Boundingbox](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/boundingbox.md)
- [ClippingBox](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/clippingbox.md)
- [IsValid](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/isvalid.md): Gets the validity of this instance. Lines with zero length are not considered to be valid.
- [IsValidWhyNot](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/isvalidwhynot.md): Gets a string describing the state of "invalidness". If the instance is valid, then this property should return Nothing or String.Empty.
- [TypeDescription](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/typedescription.md)
- [TypeName](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/typename.md)

## Methods

- [BakeGeometry](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/bakegeometry.md)
- [CastFrom](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/castfrom.md): Remote to Local caster function. This stuff is complex, don't concern yourself with casting logic.
- [CastTo<T>](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/castto.md): Local to Remote caster function. This stuff is complex, don't concern yourself with casting logic.
- [DrawViewportMeshes](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/drawviewportmeshes.md)
- [DrawViewportWires](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/drawviewportwires.md)
- [Duplicate](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/duplicate.md)
- [DuplicateGeometry](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/duplicategeometry.md): Create a duplicate of this line.
- [DuplicateLine](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/duplicateline.md): Create a duplicate of this line.
- [EmitProxy](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/emitproxy.md): Returns a proxy that represents this line. Do not call this function unless you're
- [GetBoundingBox](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/getboundingbox.md)
- [Morph](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/morph.md)
- [Read](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/read.md)
- [ToString](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/tostring.md): Format the line using default grasshopper formatting logic.
- [Transform](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/transform.md)
- [Write](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-line/write.md)

## Inherited Members

- From [GH_GeometricGoo<T>](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1.md): [IsGeometryLoaded](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1/isgeometryloaded.md), [IsReferencedGeometry](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1/isreferencedgeometry.md), [ReferenceID](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1/referenceid.md), [Value](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1/value.md), [ClearCaches](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1/clearcaches.md), [LoadGeometry](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-geometricgoo-1/loadgeometry.md)
- From [GH_Goo<T>](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-goo-1.md): [m_value](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-goo-1/m-value.md), [CastTo<Q>](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-goo-1/castto.md), [ScriptVariable](https://developer.rhino3d.com/api/gh1/type/grasshopper.kernel.types.gh-goo-1/scriptvariable.md)
