# Grasshopper2.Types.Shapes namespace

Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

## Classes

- [Asset](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.asset.md): A 3d mesh asset.
- [AssetCache<TKey>](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetcache-1.md): A cache for complete assets.
- [AssetColourExtensions](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetcolourextensions.md)
- [AssetMesh](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetmesh.md): A minimal mesh type used for fully unwelded model shapes. This type only stores vertices and faces.
- [AssetMeshCache](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetmeshcache.md): A cache for asset meshes which are read from assembly resources or files.
- [AssetPart](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetpart.md): A monotone part of an asset.
- [BendDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.benddeform.md)
- [BiArc](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.biarc.md): A bi-arc defined by end-points, tangents and a ratio balance.
- [BiArcSegment](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.biarcsegment.md): Represents a segment of a bi-arc curve, or the family of transition points of a bi-arc family. A [BiArcSegment](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.biarcsegment.md) is always either a line, or an arc.
- [Cage](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.cage.md): Twisted box for Grasshopper 2. It supports bezier volumes with curvature.
- [CageDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.cagedeform.md)
- [CageMorph](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.cagemorph.md)
- [CombinedDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.combineddeform.md)
- [CurlDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.curldeform.md)
- [CurveFlowDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.curveflowdeform.md)
- [CurveMirrorDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.curvemirrordeform.md)
- [Deform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.deform.md): A wrapper class hierarchy around the Rhino SpaceMorph types. This wrapper stuff is supposed to make it possible to reliably (de)serialise spacemorphs.
- [ExpandDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.expanddeform.md)
- [FieldDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.fielddeform.md)
- [IdentityDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.identitydeform.md)
- [MaelstromDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.maelstromdeform.md)
- [MiniMesh](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.minimesh.md): A mesh from a *.minimesh file stored in resources. This is typically used for embedding small meshes for UI purposes.
- [OffsetDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.offsetdeform.md)
- [PatternTile](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.patterntile.md): A single tile in a hatch pattern.
- [Region](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.region.md): A two-dimensional bounded region with optional holes.
- [RegionLoop](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.regionloop.md): One closed loop of a rolling-ball region boundary.
- [SplopDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.splopdeform.md)
- [SporphDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.sporphdeform.md)
- [StairCase](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.staircase.md): A staircase consisting of a sequence of [StairStep](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.stairstep.md)s.
- [StairStep](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.stairstep.md): A single step within a [StairCase](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.staircase.md). A step is a planar, horizontal surface.
- [StretchDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.stretchdeform.md)
- [SurfaceFlowDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfaceflowdeform.md)
- [SurfaceLocus](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfacelocus.md): Represents a parameter or locus on or near a surface. This type replaces the simple (u,v) surface parameters as used in RhinoCommon and Grasshopper 1.0 with a more flexible and forgiving approach. The [SurfaceLocus.Kind](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfacelocus/kind.md) says exactly how the coordinates and the indices are to be read; no meaning is hidden inside the index array. Every parametric locus stores two coordinates and every point three. Kinds which need fewer, SubD edges and vertices, pad the remainder with zeroes so that [SurfaceLocus.UV](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfacelocus/uv.md) means something no matter which kind it is asked of.
- [SurfaceMirrorDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfacemirrordeform.md)
- [TaperDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.taperdeform.md)
- [TransformedDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.transformeddeform.md)
- [TwistDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.twistdeform.md)
- [VoxelSpace](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.voxelspace.md): A sparse voxel volume.
- [WringDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.wringdeform.md)

## Enums

- [AssetColour](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetcolour.md): List of special colours available to asset parts.
- [AssetColouring](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetcolouring.md): The colour filter to apply to meshes.
- [AssetSeason](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetseason.md): Enumerates the seasons for model object properties such as canopy colour and clothes.
- [AssetShading](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetshading.md): The colour filter to apply to meshes.
- [CurveLocusKind](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.curvelocuskind.md): Enumerates the various kinds of [CurveLocus](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.curvelocus.md).
- [ExpandDeform.Seed](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.expanddeform.seed.md)
- [FlightFill](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.flightfill.md): Enumerates the possible ways in which flghts can be filled with steps.
- [LandingFill](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.landingfill.md): Enumerates the possible ways in which landings can be filled with steps.
- [OffsetDeform.Seed](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.offsetdeform.seed.md)
- [RegionRelation](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.regionrelation.md): Enumerates the possible containment relationships between a point and a region.
- [SurfaceLocusKind](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfacelocuskind.md): Enumerates the various kinds of [SurfaceLocus](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.surfacelocus.md). These values are stored in files and must not be changed. None of them is zero, one or two, which were the only values in existence before the kinds were split apart. A locus written by an older version is therefore always recognisable as an old locus, and a locus written by a newer version is never mistaken by an older one for a kind it isn't; it merely fails to resolve.
- [TileBoundaryBehaviour](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.tileboundarybehaviour.md)
- [TwistProfile](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.twistprofile.md): How the twist angle progresses along the axis of a [TwistDeform](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.twistdeform.md). Sudden and Infinite are 0 and 1 to match the legacy boolean flag.

## Structs

- [AssetPalette](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetpalette.md): Wraps up all colour logic for asset instancing.
- [AssetStyling](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.assetstyling.md)
- [CurveLocus](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.curvelocus.md): Represents a parameter or locus on or near a curve. This type replaces the simple numeric curve parameter as used in RhinoCommon and Grasshopper 1.0 with a more flexible and forgiving approach.
- [RegionSegment](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.regionsegment.md): One piece of a rolling-ball region boundary: a trimmed input curve or a fillet arc.
- [Triangle](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.triangle.md): A 3D triangle defined by corner points.
- [Tube](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.shapes.tube.md): A conical shape with an optional wall thickness. Tubes can represent cylinders, cones, trucated-cones, all with and without wall thicknesses.
