Class TLineList

DescriptionHierarchyFieldsMethodsProperties

Unit

Declaration

type TLineList = class(TObject)

Description

TLineList stores a series of TLines for a set of points.

Hierarchy

Overview

Fields

Private FLines: TObjectList;
Private FNumbers: TNumberList;
Private FSymbols: TSymbolList;
Private FTriangles: TIntArray;
Private FXD: TRealArray;
Private FYD: TRealArray;

Methods

Private procedure JoinLineEndToClosestEnd(const ClosestEnd: TLine; const LineEndPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
Private procedure JoinLineEndToClosestStart(const ClosestStart: TLine; const LineEndPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
Private procedure JoinLineStartToClosestEnd(const ClosestEnd: TLine; const LineStartPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
Private procedure JoinLineStartToClosestStart(const ClosestStart: TLine; const LineStartPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
Private procedure FillQuadTreeList(QuadTrees: TList; ContourLevels: TRealList);
Private function GetCount: integer;
Private function GetItems(const Index: integer): TLine;
Private function GetMaxX: double;
Private function GetMaxY: double;
Private function GetMinX: double;
Private function GetMinY: double;
Private procedure RemoveDuplicates(var ContourLevels: TRealList);
Private procedure SetTriangles(const Value: TIntArray);
Private procedure SetXD(const Value: TRealArray);
Private procedure SetYD(const Value: TRealArray);
Public Constructor Create;
Public Destructor Destroy; override;
Public procedure Add(Line: TLine);
Public Procedure Clear;
Public Function Equal(const LineList: TLineList): boolean;
Public procedure MergeLines;

Properties

Public property Numbers: TNumberList read FNumbers;
Public property Symbols: TSymbolList read FSymbols;
Public property XD: TRealArray read FXD write SetXD;
Public property YD: TRealArray read FYD write SetYD;
Public property Triangles: TIntArray read FTriangles write SetTriangles;
Public property Count: integer read GetCount;
Public property Items[constIndex:integer]: TLine read GetItems;
Public property MaxX: Double read GetMaxX;
Public property MinX: Double read GetMinX;
Public property MaxY: Double read GetMaxY;
Public property MinY: Double read GetMinY;

Description

Fields

Private FLines: TObjectList;

implemented as TObjectList

Private FNumbers: TNumberList;
 
Private FSymbols: TSymbolList;
 
Private FTriangles: TIntArray;
 
Private FXD: TRealArray;
 
Private FYD: TRealArray;
 

Methods

Private procedure JoinLineEndToClosestEnd(const ClosestEnd: TLine; const LineEndPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
 
Private procedure JoinLineEndToClosestStart(const ClosestStart: TLine; const LineEndPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
 
Private procedure JoinLineStartToClosestEnd(const ClosestEnd: TLine; const LineStartPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
 
Private procedure JoinLineStartToClosestStart(const ClosestStart: TLine; const LineStartPoint: TLocation; const Line: TLine; var MergedLines: Boolean; const QuadTree: TRbwQuadTree);
 
Private procedure FillQuadTreeList(QuadTrees: TList; ContourLevels: TRealList);
 
Private function GetCount: integer;
 
Private function GetItems(const Index: integer): TLine;
 
Private function GetMaxX: double;
 
Private function GetMaxY: double;
 
Private function GetMinX: double;
 
Private function GetMinY: double;
 
Private procedure RemoveDuplicates(var ContourLevels: TRealList);
 
Private procedure SetTriangles(const Value: TIntArray);
 
Private procedure SetXD(const Value: TRealArray);
 
Private procedure SetYD(const Value: TRealArray);
 
Public Constructor Create;
 
Public Destructor Destroy; override;
 
Public procedure Add(Line: TLine);
 
Public Procedure Clear;
 
Public Function Equal(const LineList: TLineList): boolean;

Equal is used to test whether two TLineList are the same or nearly the same as each other.

Public procedure MergeLines;

MergeLines merges lines that have the same contour value if the ends of the lines are at the same or nearly the same location. TriangleNumber is no longer valid after MergeLines is called.

Properties

Public property Numbers: TNumberList read FNumbers;

Numbers stores a list of numbers to be plotted along with the locations where they should be plotted.

Public property Symbols: TSymbolList read FSymbols;

Symbols stores the locations where a symbol should be plotted.

Public property XD: TRealArray read FXD write SetXD;

XD represents the X-coordinates of the triangles used to determine the contour lines.

Public property YD: TRealArray read FYD write SetYD;

YD represents the Y-coordinates of the triangles used to determine the contour lines.

Public property Triangles: TIntArray read FTriangles write SetTriangles;

Integer array. the dimension is 3*the number of triangles. Point numbers for the triangles. The first 3 numbers determine the vertices of the first triangle, the next 3 for the second and so on. The numbers Correspond to the indices of the XD and YD arrays PLUS 1. they are arranged counter- clockwise within a triangle.

For instance if the first three values in Triangles were 2, 4, and 6, the triangle vertices would be at (XD[1], YD[1]), (XD[3], YD[3]), and (XD[5], YD[5]).

Public property Count: integer read GetCount;
 
Public property Items[constIndex:integer]: TLine read GetItems;
 
Public property MaxX: Double read GetMaxX;
 
Public property MinX: Double read GetMinX;
 
Public property MaxY: Double read GetMaxY;
 
Public property MinY: Double read GetMinY;
 

Generated by PasDoc 0.12.1 on 2013-05-13 15:41:43