Description | Hierarchy | Fields | Methods | Properties |
type TQtreeNode = class(TObject)
TQtreeNode
does the most of the real work of a TRbwQuadTree.
![]() |
FNumPts: Integer; |
![]() |
FChildren: array[TNorthOrSouth, TEastOrWest] of TQtreeNode; |
![]() |
FParent: TQtreeNode; |
![]() |
FPts: array of TQPoint; |
![]() |
FTree: TRbwQuadTree; |
![]() |
FXmax: double; |
![]() |
FXmin: double; |
![]() |
FYmax: double; |
![]() |
FYmin: double; |
![]() |
procedure FindNearestPoints(const CenterX, CenterY: double; const Count: Integer; const List: TObjectList); |
![]() |
function GetPoints(Index: Integer): TQPoint; |
![]() |
procedure ResetCount; |
![]() |
procedure SetNumPts(const Value: Integer); |
![]() |
procedure AddPoint(X, Y: double; Data: pointer); |
![]() |
procedure CheckNearbyLeaves(const exclude: TQtreeNode; var best_leaf: TQtreeNode; const X, Y: double; var best_i: integer; var best_dist2, best_dist: double); |
![]() |
procedure Clear; |
![]() |
constructor Create(ATree: TRbwQuadTree); overload; |
![]() |
constructor Create(const x_min, x_max, y_min, y_max: double; const ParentNode: TQtreeNode; ATree: TRbwQuadTree); overload; |
![]() |
procedure ExpandBounds(XY: double; ExpandDirection: TExpandDirection); |
![]() |
function FindClosestPoint(const X, Y: double): TQPoint; |
![]() |
procedure FindClosestPointsData(var X, Y: double; var Data: TPointerArray); |
![]() |
procedure FindPoint(var X, Y: double; var Data: pointer); |
![]() |
procedure FindPointsInBlock(const Block: T2DBlock; const List: TList); |
![]() |
procedure FindPointsInCircle(const CenterX, CenterY, Radius, RadiusSquared: double; const List: TList); |
![]() |
function LocateLeaf(const X, Y: double; const Siblings: TStack): TQtreeNode; |
![]() |
procedure NearPointInLeaf(const X, Y: double; out best_i: integer; out best_dist2: double); |
![]() |
function RemovePoint(const X, Y: double; const Data: pointer): boolean; |
![]() |
function Xmid: double; |
![]() |
function Ymid: double; |
![]() |
destructor Destroy; override; |
![]() |
property NumPts: Integer read FNumPts write SetNumPts; |
![]() |
property Points[Index:Integer]: TQPoint read GetPoints; |
![]() |
FNumPts: Integer; |
FNumPts: Integer; |
![]() |
FChildren: array[TNorthOrSouth, TEastOrWest] of TQtreeNode; |
|
![]() |
FParent: TQtreeNode; |
FParent : TQtreeNode; |
![]() |
FPts: array of TQPoint; |
longcode(#FPts: array of TQPoint;#) If NumPts <= FTree.MaxPoints, then the data in the |
![]() |
FTree: TRbwQuadTree; |
FTree: TRbwQuadTree; |
![]() |
FXmax: double; |
FXmax : double; |
![]() |
FXmin: double; |
FXmin : double; |
![]() |
FYmax: double; |
FYmax : double; |
![]() |
FYmin: double; |
FYmin : double; |
![]() |
function GetPoints(Index: Integer): TQPoint; |
See Points. |
![]() |
procedure ResetCount; |
If a |
![]() |
procedure SetNumPts(const Value: Integer); |
See NumPts. |
![]() |
procedure AddPoint(X, Y: double; Data: pointer); |
|
![]() |
procedure CheckNearbyLeaves(const exclude: TQtreeNode; var best_leaf: TQtreeNode; const X, Y: double; var best_i: integer; var best_dist2, best_dist: double); |
|
![]() |
procedure Clear; |
Clear removes all the data stored by this TQtreeNode. Members of FChildren, if any, will be freed. |
![]() |
constructor Create(ATree: TRbwQuadTree); overload; |
|
![]() |
constructor Create(const x_min, x_max, y_min, y_max: double; const ParentNode: TQtreeNode; ATree: TRbwQuadTree); overload; |
|
![]() |
procedure ExpandBounds(XY: double; ExpandDirection: TExpandDirection); |
|
![]() |
function FindClosestPoint(const X, Y: double): TQPoint; |
|
![]() |
procedure FindClosestPointsData(var X, Y: double; var Data: TPointerArray); |
|
![]() |
procedure FindPoint(var X, Y: double; var Data: pointer); |
|
![]() |
procedure FindPointsInBlock(const Block: T2DBlock; const List: TList); |
|
![]() |
procedure FindPointsInCircle(const CenterX, CenterY, Radius, RadiusSquared: double; const List: TList); |
|
![]() |
function LocateLeaf(const X, Y: double; const Siblings: TStack): TQtreeNode; |
|
![]() |
function RemovePoint(const X, Y: double; const Data: pointer): boolean; |
|
![]() |
destructor Destroy; override; |
|
![]() |
property NumPts: Integer read FNumPts write SetNumPts; |
|
![]() |
property Points[Index:Integer]: TQPoint read GetPoints; |
|