Class TCellElementSegmentList

DescriptionHierarchyFieldsMethodsProperties

Unit

Declaration

type TCellElementSegmentList = class(TObjectList)

Description

TCellElementSegmentList is a list of the TCellElementSegments of a TScreenObject. Each segment is the 2D intersection of one segment of the TScreenObject with an individual cell or element in the grid.

Hierarchy

Overview

Fields

Private FGettingSegments: Boolean;
Private FHigher3DElevations: T3DSparseRealArray;
Private FHigher3DElevationsNeedsUpdating: boolean;
Private FLower3DElevations: T3DSparseRealArray;
Private FLower3DElevationsNeedsUpdating: boolean;
Private FStartPoints: TRbwQuadTree;
Private FEndPoints: TRbwQuadTree;
Private FScreenObject: TScreenObject;
Private FModel: TBaseModel;
Private FUpToDate: boolean;
Private FTempMemoryStream: TMemoryStream;
Private FCached: Boolean;
Private FCleared: Boolean;
Private FMinDistance: double;
Private FRangeTree: TRbwRangeTree;

Methods

Private function GetSegment(Index: Integer): TCellElementSegment;
Private procedure SetSegment(Index: Integer; const Value: TCellElementSegment);
Private procedure SetUpToDate(const Value: boolean);
Private procedure RestoreData;
Public procedure CacheData;
Public function Add(ASegment: TCellElementSegment): Integer;
Public constructor Create(Model: TBaseModel; ScreenObject: TScreenObject);
Public destructor Destroy; override;
Public function ClosestSegment(Location: TPoint2D; Anisotropy: double): TCellElementSegment;

Properties

Public property UpToDate: boolean read FUpToDate write SetUpToDate;
Public property Items[Index:Integer]: TCellElementSegment read GetSegment write SetSegment;

Description

Fields

Private FGettingSegments: Boolean;
 
Private FHigher3DElevations: T3DSparseRealArray;
 
Private FHigher3DElevationsNeedsUpdating: boolean;

FHigher3DElevationsNeedsUpdating indicates whether or not FHigher3DElevations are up-to-date. If they aren't, they will be recalculated when needed.

Private FLower3DElevations: T3DSparseRealArray;
 
Private FLower3DElevationsNeedsUpdating: boolean;

FLower3DElevationsNeedsUpdating indicates whether or not FLower3DElevations are up-to-date. If they aren't, they will be recalculated when needed.

Private FStartPoints: TRbwQuadTree;
 
Private FEndPoints: TRbwQuadTree;
 
Private FScreenObject: TScreenObject;
 
Private FModel: TBaseModel;

FModel is a TPhastModel or nil.

Private FUpToDate: boolean;

See UpToDate.

Private FTempMemoryStream: TMemoryStream;
 
Private FCached: Boolean;
 
Private FCleared: Boolean;
 
Private FMinDistance: double;

FMinDistance is set and used in ClosestSegment to help find the closest segment to the point of interest.

Private FRangeTree: TRbwRangeTree;
 

Methods

Private function GetSegment(Index: Integer): TCellElementSegment;

See Items.

Parameters
Index
indicates the position of the TCellElementSegment.
Private procedure SetSegment(Index: Integer; const Value: TCellElementSegment);

See Items.

Parameters
Index
indicates the position of the TCellElementSegment.
Value
is the TCellElementSegment to be stored.
Private procedure SetUpToDate(const Value: boolean);

See UpToDate.

Private procedure RestoreData;
 
Public procedure CacheData;
 
Public function Add(ASegment: TCellElementSegment): Integer;

Add adds a TCellElementSegment to the current TCellElementSegmentList and returns the position of it in the TCellElementSegmentList.

Parameters
ASegment
is the TCellElementSegment to be added.
Public constructor Create(Model: TBaseModel; ScreenObject: TScreenObject);

Create creates an instance of TCellElementSegmentList and assigns Model to FModel.

Public destructor Destroy; override;
 
Public function ClosestSegment(Location: TPoint2D; Anisotropy: double): TCellElementSegment;

ClosestSegment returns the TCellElementSegment that is closes to Location.

Location is in real-world coordinates;

Properties

Public property UpToDate: boolean read FUpToDate write SetUpToDate;

UpToDate indicates that the TCellElementSegments in this class name are up-to-date and do not need to be recalculated.

Public property Items[Index:Integer]: TCellElementSegment read GetSegment write SetSegment;

Items is used to access the TCellElementSegments in the list.


Generated by PasDoc 0.12.1 on 2013-05-13 15:42:00