Logo Search packages:      
Sourcecode: inkscape version File versions  Download package

SweepTree Class Reference

#include <sweep-tree.h>

Inheritance diagram for SweepTree:

List of all members.

Detailed Description

One node in the AVL tree of edges. Note that these nodes will be stored in a dynamically allocated array, hence the Relocate() function.

Definition at line 17 of file sweep-tree.h.

Public Member Functions

void Avance (Shape *dst, int nPt, Shape *a, Shape *b)
void ConvertTo (Shape *iSrc, int iBord, int iWeight, int iStartPoint)
int Find (NR::Point const &iPt, SweepTree *&insertL, SweepTree *&insertR)
int Find (NR::Point const &iPt, SweepTree *newOne, SweepTree *&insertL, SweepTree *&insertR, bool sweepSens=true)
int Insert (SweepTreeList &list, SweepEventQueue &queue, Shape *iDst, int iAtPoint, bool rebalance=true, bool sweepSens=true)
int InsertAt (SweepTreeList &list, SweepEventQueue &queue, Shape *iDst, SweepTree *insNode, int fromPt, bool rebalance=true, bool sweepSens=true)
AVLTree * Leftmost ()
void MakeDelete ()
void MakeNew (Shape *iSrc, int iBord, int iWeight, int iStartPoint)
void Relocate (SweepTree *to)
int Remove (SweepTreeList &list, SweepEventQueue &queue, bool rebalance=true)
void RemoveEvent (SweepEventQueue &queue, Side s)
void RemoveEvents (SweepEventQueue &queue)
 Remove sweepevents attached to this node.
void SwapWithRight (SweepTreeList &list, SweepEventQueue &queue)
 Swap nodes, or more exactly, swap the edges in them.

Public Attributes

int bord
 Edge index in the Shape.
AVLTree * elem [2]
SweepEventevt [2]
 Intersection with the edge on the left and right (if any).
bool sens
 true= top->bottom; false= bottom->top.
Shape * src
int startPoint
 point index in the result Shape associated with the upper end of the edge

Protected Member Functions

int Insert (AVLTree *&racine, int insertType, AVLTree *insertL, AVLTree *insertR, bool rebalance)
void MakeNew ()
void Relocate (AVLTree *to)
int Remove (AVLTree *&racine, bool rebalance=true)

Protected Attributes

AVLTree * son [2]

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index