# StyleExpression

#### new Cesium.StyleExpression()
Scene/StyleExpression.js 19

An expression for a style applied to a `Cesium3DTileset`.

Derived classes of this interface evaluate expressions in the 3D Tiles Styling language.

This type describes an interface and is not intended to be instantiated directly.

##### See:

- Expression
- ConditionsExpression

### Methods

#### evaluate(feature, result) → Boolean|Number|String|RegExp|Cartesian2|Cartesian3|Cartesian4|Color
Scene/StyleExpression.js 35

Evaluates the result of an expression, optionally using the provided feature's properties. If the result of the expression in the 3D Tiles Styling language is of type `Boolean`, `Number`, or `String`, the corresponding JavaScript primitive type will be returned. If the result is a `RegExp`, a Javascript `RegExp` object will be returned. If the result is a `Cartesian2`, `Cartesian3`, or `Cartesian4`, a `Cartesian2`, `Cartesian3`, or `Cartesian4` object will be returned. If the `result` argument is a `Color`, the `Cartesian4` value is converted to a `Color` and then returned.

Name | Type | Description
--- | --- | ---
`feature` | Cesium3DTileFeature | The feature whose properties may be used as variables in the expression.
`result` | Object | optional The object onto which to store the result.

##### Returns:

The result of evaluating the expression.

#### evaluateColor(feature, result) → Color
Scene/StyleExpression.js 49

Evaluates the result of a Color expression, optionally using the provided feature's properties.

This is equivalent to `StyleExpression#evaluate` but always returns a `Color` object.

Name | Type | Description
--- | --- | ---
`feature` | Cesium3DTileFeature | The feature whose properties may be used as variables in the expression.
`result` | Color | optional The object in which to store the result.

##### Returns:

The modified result parameter or a new Color instance if one was not provided.