# SubDSurfaceAssistant class

Namespace: [Grasshopper2.Types.Assistants](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.types.assistants.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public sealed class SubDSurfaceAssistant : SurfaceAssistant<SubD>
```

SurfaceAssistant implementation for [SubD](https://mcneel-apidocs-rhinocommon-7f6eb10c6967.herokuapp.com/api/rhinocommon/type/rhino.geometry.subd/).

## Methods

- [BoundingBox](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/boundingbox.md)
- [ConvertToBrep](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/converttobrep.md)
- [EvaluateCurvature](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/evaluatecurvature.md)
- [EvaluateNormal](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/evaluatenormal.md)
- [EvaluatePosition](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/evaluateposition.md)
- [EvaluateTangent](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/evaluatetangent.md)
- [EvaluateUV](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/evaluateuv.md)
- [Explode](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/explode.md)
- [FindClosestParameter](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/findclosestparameter.md)
- [FlipDirection](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/flipdirection.md)
- [IsClosed](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/isclosed.md)
- [IsPlanar](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/isplanar.md): (2 overloads)
- [RiskyButCachedBrepConversion](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/riskybutcachedbrepconversion.md): (static) Convert a subd to a brep and cache the result. This makes repeated conversions significantly more efficient, but due to the shared nature of the cache the returned breps MAY NEVER BE MODIFIED. ONLY USE THIS FUNCTION IF YOU ARE 100% SURE YOU WILL NOT MODIFY THE BREP IN ANY WAY, SHAPE, OR FORM. There is also no point in calling this method if you're reasonably sure the given subd will only need to be converted once. This method is all about speeding up repeated conversions.
- [Slice](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistants.subdsurfaceassistant/slice.md)

## Inherited Members

- From [SurfaceAssistant<T>](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistant.surfaceassistant-1.md): [IsReimplementation](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistant.surfaceassistant-1/isreimplementation.md), [ReimplementationBase](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistant.surfaceassistant-1/reimplementationbase.md), [Type](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistant.surfaceassistant-1/type.md), [ExplodeRecursive](https://developer.rhino3d.com/api/gh2/type/grasshopper2.types.assistant.surfaceassistant-1/exploderecursive.md)
