Class TCasScriptCurve

DescriptionHierarchyFieldsMethodsProperties

Unit

Declaration

type TCasScriptCurve = class(TCurve)

Description

Curve defined by explicitly giving functions for Point(t) = x(t), y(t), z(t) as CastleScript expressions.

Hierarchy

Overview

Fields

Protected FTVariable: TCasScriptFloat;
Protected FFunction: array [0..2] of TCasScriptExpression;
Protected FBoundingBox: TBox3D;

Methods

Protected function GetFunction(const Index: Integer): TCasScriptExpression;
Protected procedure SetFunction(const Index: Integer; const Value: TCasScriptExpression);
Protected procedure UpdateBoundingBox;
Public function Point(const t: Float): TVector3Single; override;
Public function BoundingBox: TBox3D; override;
Public constructor Create(AOwner: TComponent); override;
Public destructor Destroy; override;

Properties

Public property XFunction: TCasScriptExpression index 0 read GetFunction write SetFunction;
Public property YFunction: TCasScriptExpression index 1 read GetFunction write SetFunction;
Public property ZFunction: TCasScriptExpression index 2 read GetFunction write SetFunction;
Public property TVariable: TCasScriptFloat read FTVariable write SetTVariable;
Public property SegmentsForBoundingBox: Cardinal read FSegmentsForBoundingBox write SetSegmentsForBoundingBox default 100;

Description

Fields

Protected FTVariable: TCasScriptFloat;
 
Protected FFunction: array [0..2] of TCasScriptExpression;
 
Protected FBoundingBox: TBox3D;
 

Methods

Protected function GetFunction(const Index: Integer): TCasScriptExpression;
 
Protected procedure SetFunction(const Index: Integer; const Value: TCasScriptExpression);
 
Protected procedure UpdateBoundingBox;
 
Public function Point(const t: Float): TVector3Single; override;
 
Public function BoundingBox: TBox3D; override;

Simple bounding box. It is simply a BoundingBox of Point(i, SegmentsForBoundingBox) for i in [0 .. SegmentsForBoundingBox]. Subclasses may override this to calculate something more accurate.

Public constructor Create(AOwner: TComponent); override;
 
Public destructor Destroy; override;
 

Properties

Public property XFunction: TCasScriptExpression index 0 read GetFunction write SetFunction;

XFunction, YFunction, ZFunction are functions based on variable 't'. Once set, these instances become owned by this class, do not free them yourself!

Public property YFunction: TCasScriptExpression index 1 read GetFunction write SetFunction;
 
Public property ZFunction: TCasScriptExpression index 2 read GetFunction write SetFunction;
 
Public property TVariable: TCasScriptFloat read FTVariable write SetTVariable;

This is the variable controlling 't' value, embedded also in XFunction, YFunction, ZFunction. This is NOT owned by this class, make sure to free it yourself!

Public property SegmentsForBoundingBox: Cardinal read FSegmentsForBoundingBox write SetSegmentsForBoundingBox default 100;
 

Generated by PasDoc 0.14.0.