| Description | Hierarchy | Fields | Methods | Properties |
type TArenaObject = class(TObject)
Abstract base class used for all arena objects. This class is only for internal use and only implements functionality needed by all arena objects. When populating an arena, the user should use the available descendants of TArenaObject.
![]() |
constructor Create(Owner: TArena); |
![]() |
destructor Destroy; override; |
![]() |
procedure AddAsStrings(Strings: TStringList); virtual; |
![]() |
function Edit(Dlg: TArenaObjectEditor = nil): Boolean; virtual; |
![]() |
procedure GenerateShapes; virtual; abstract; |
![]() |
procedure Step(TimeStep: real); |
![]() |
constructor Create(Owner: TArena); |
Constructor.
![]() |
destructor Destroy; override; |
Destructor.
![]() |
procedure AddAsStrings(Strings: TStringList); virtual; |
Adds all properties as strings to a list of strings. Used internally by TArena.SaveToFile.
![]() |
function Edit(Dlg: TArenaObjectEditor = nil): Boolean; virtual; |
Displays an edit dialog (for graphical editing of the object's properties).
Nil. (Only used internally.)True if the user clicks the OK button, False otherwise.
![]() |
procedure GenerateShapes; virtual; abstract; |
Generates a geometric representation of the object. The result of this procedure can be retrieved through the property Shapes.
This procedure is automatically called when needed and should never be called explicitly by a user.
![]() |
procedure Step(TimeStep: real); |
Updates the position of the object based on its velocity. The new position is calculated as
fPosition[1] := fPosition[1] + fVelocity[1]*TimeStep; fPosition[2] := fPosition[2] + fVelocity[2]*TimeStep; fPosition[3] := fPosition[3] + fVelocity[3]*TimeStep;
![]() |
property Angle: real; |
![]() |
property Height: real; |
![]() |
property M[i: integer]: real; |
![]() |
property Mass: real; |
![]() |
property ObjectName: string; |
![]() |
property Position: TVector; |
![]() |
property RGBColor: TIntegerVector; |
![]() |
property Shapes: TShapeList; |
![]() |
property Texture: string; |
![]() |
property Velocity: TVector; |
![]() |
property Visible: Boolean; |
![]() |
property Angle: real; |
The object's rotation angle around the Z axis (as defined in the arena definition file).
![]() |
property Height: real; |
The height of the object (along the Z axis).
![]() |
property M[i: integer]: real; |
Default property that returns the position of the object. Use index (i) 1, 2, or 3 to get the X, Y, or Z coordinates, respectively.
![]() |
property Mass: real; |
Mass of the object (in kg).
![]() |
property ObjectName: string; |
Name of the object.
![]() |
property Position: TVector; |
The position of the object.
![]() |
property RGBColor: TIntegerVector; |
The object's color.
![]() |
property Shapes: TShapeList; |
Provides access to an array of geometric shapes that represents the object.
![]() |
property Texture: string; |
Set/get the file name used as texture for the object.
![]() |
property Velocity: TVector; |
The object's velocity vector (3D).
![]() |
property Visible: Boolean; |
Toggle object visibility.