Grail (C#)  1.3.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
Grail.Evaluators.Curves.LinearlyInterpolatedCurve< ContextType > Class Template Reference

Curve consisting of multiple linear segments. More...

Inheritance diagram for Grail.Evaluators.Curves.LinearlyInterpolatedCurve< ContextType >:
Collaboration diagram for Grail.Evaluators.Curves.LinearlyInterpolatedCurve< ContextType >:

Public Member Functions

 LinearlyInterpolatedCurve (Evaluator< ContextType > childEvaluator, IEnumerable< Vector2 > points)
 Constructor. More...
 
sealed override float Sample (float argument)
 Transforms argument into output value depending on the type of Curve. More...
 
- Public Member Functions inherited from Grail.Evaluators.Curves.Curve< ContextType >
 Curve (Evaluator< ContextType > childEvaluator)
 Constructor. More...
 
- Public Member Functions inherited from Grail.Evaluators.Evaluator< ContextType >
float EvaluateContext (ContextType context, in UtilityEvaluatorSnapshot snapshot)
 Evaluates provided context and if provided snapshot is not empty, fills it with debug data describing this node. More...
 

Public Attributes

sealed override EvaluatorType EvaluatorType => EvaluatorType.CURVE_LINEAR_INTERPOLATED
 

Properties

List< Vector2 > Points [get]
 
- Properties inherited from Grail.Evaluators.Evaluator< ContextType >
abstract EvaluatorType EvaluatorType [get]
 

Additional Inherited Members

- Protected Member Functions inherited from Grail.Evaluators.Curves.Curve< ContextType >
sealed override float Evaluate (ContextType context, in UtilityEvaluatorSnapshot snapshot)
 Called from EvaluateContext which also evaluates context, but without automatically filling snapshot with debug data. Should be overriden for each derived Evaluator. More...
 
sealed override void DebugDump (IReadOnlyDictionary< object, int > nodeMapping, ref EvaluationDebugData debugData)
 Called from EvaluateContext, which generates additional debug data for each evaluator. Should be overriden in each derived evaluator to better reflect debug tree topology. More...
 

Detailed Description

Curve consisting of multiple linear segments.

Template Parameters
ContextTypeType of evaluated object. By default - ValueTuple(AIEntity, Blackboard).

Constructor & Destructor Documentation

◆ LinearlyInterpolatedCurve()

Grail.Evaluators.Curves.LinearlyInterpolatedCurve< ContextType >.LinearlyInterpolatedCurve ( Evaluator< ContextType >  childEvaluator,
IEnumerable< Vector2 >  points 
)
inline

Constructor.

Parameters
childEvaluatorEvaluator which output will be transformed by this curve.
pointsCollection of points defining segments.

Member Function Documentation

◆ Sample()

sealed override float Grail.Evaluators.Curves.LinearlyInterpolatedCurve< ContextType >.Sample ( float  argument)
inlinevirtual

Transforms argument into output value depending on the type of Curve.

Parameters
argumentValue of a curve argument belonging to its domain.
Returns
Transformed argument.

Implements Grail.Evaluators.Curves.Curve< ContextType >.


The documentation for this class was generated from the following file: