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

Composite Cubic Bezier Curve. More...

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

Public Member Functions

 BezierSpline (Evaluator< ContextType > childEvaluator, IEnumerable< Vector2 > points, IEnumerable< Vector2 > tangents)
 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_BEZIER
 

Properties

List< Vector2 > Points [get]
 
List< Vector2 > Tangents = new List<Vector2>() [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

Composite Cubic Bezier Curve.

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

Constructor & Destructor Documentation

◆ BezierSpline()

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

Constructor.

Parameters
childEvaluatorEvaluator which output will be transformed by this curve.
pointsCollection of points. Each two sequenced pair of points describe P0 and P3 of partial spline.
tangentsCollection of tangent vectors. Each two sequenced pair of vector, added to corresponding points describe P1 and P2 of partial spline.

Member Function Documentation

◆ Sample()

sealed override float Grail.Evaluators.Curves.BezierSpline< 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: