PlanarConvolution modifies an objective value based on its neighbours (back-end class).
It provides the possibility to modify a Problem<T>.Objective with a convolution matrix named kernel. This might be required in order to smooth the Problem<T>.Objective, for example, with a GaussianKernel.
In its concrete implementation of Behave, the objective values are modified by weighting its neighbours. In contrast to the SteeringBehaviour, you can modify more than one Problem<T>.Objective in order to avoid an unnecessary extra Component. For that, a List<T> of type int can be set. Its entries correspond to the desired target objectives in Context. Note, you must pay attention to the size of the kernel if you set it directly. The kernel size must be odd and greater than two. Optionally, a 'Gaussian' kernel can be computed with ComputeGaussianKernel(int, float).
Back-end class of AIMPlanarConvolution. This behaviour is thread-safe.
|
float | MapBySensitivity (MappingType mapping, Structure structure, Vector3 direction, float sensitivityOffset=0.0f) |
| Maps (magnitude) values by sensitivity so that the Structure.Sensitivity (plus the given sensitivityOffset ) is used as similarity threshold for the angle between the given direction and the Structure.Direction. More...
|
|
float | MapBySensitivityPlane (MappingType mapping, Structure structure, Vector3 planeDirection1, Vector3 planeDirection2, float offset, float sensitivityOffset=0.0f) |
| Maps (magnitude) values by sensitivity so that the Structure.Sensitivity (plus the given sensitivityOffset ) is used as similarity threshold for the smallest angle between a plane defined by planeDirection1 , planeDirection2 and the Structure.Direction. More...
|
|
void | WriteValue (ValueWritingType valueWriting, int objectiveIndex, int valueIndex, float value, bool intermediate=false) |
| Writes objective values to the Context.Problem as specified with valueWriting . More...
|
|
void | BlendValues (LayerBlendingType layerBlending, int objectiveIndex) |
| Writes the values of the intermediate to the actual Context.Problem. More...
|
|