# TextureEvaluator class

Namespace: [Rhino.Render](https://developer.rhino3d.com/api/rhinocommon/namespace/rhino.render.md) · Assembly: [RhinoCommon](https://developer.rhino3d.com/api/rhinocommon/assembly/rhinocommon.md)

```cs
public class TextureEvaluator : IDisposable
```

This is the interface to a lightweight object capable of evaluating texture color throughout uvw space. Derive from this class to create your own texture evaluator to return from a custom RenderTexture.

## Constructors

- [TextureEvaluator](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/ctor.md): (2 overloads) Base class constructor

## Finalizer

- [~TextureEvaluator](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/finalize.md): For Dispose pattern

## Methods

- [Dispose](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/dispose.md): (2 overloads) For Dispose pattern
- [GetColor](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/getcolor.md): (2 overloads) Optimized version of GetColor for callers. Much faster in the case of a native (C++) evaluator.
- [Initialize](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/initialize.md): Call this function before calling GetColor for the first time. Ideally, this should be on the main thread, but you can also call it on a worker thread as long as you are sure that Initialize() or GetColor() cannot be called at the same time on another thread.
- [WriteToByteArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/writetobytearray.md): (obsolete) Fast access to bitmap evaluator - supply size (which you will probably have received from CRhRdkTexture::PixelSize) to see if the data can be extracted direct to a width*height*4 array of unsigned chars.
- [WriteToByteArray2](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/writetobytearray2.md): Fast access to bitmap evaluator - supply size (which you will probably have received from CRhRdkTexture::PixelSize) to see if the data can be extracted direct to a width*height*4 array of unsigned chars.
- [WriteToFloatArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/writetofloatarray.md): (obsolete) Fast access to bitmap evaluator - supply size (which you will probably have received from CRhRdkTexture::PixelSize) to see if the data can be extracted direct to a width*height*4 array of unsigned chars.
- [WriteToFloatArray2](https://developer.rhino3d.com/api/rhinocommon/type/rhino.render.textureevaluator/writetofloatarray2.md): Fast access to bitmap evaluator - supply size (which you will probably have received from CRhRdkTexture::PixelSize) to see if the data can be extracted direct to a width*height*4 array of unsigned chars.
