1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /** @file
3  * TODO: insert short description here
4  *//*
5  * Authors: see git history
6  *
7  * Copyright (C) 2018 Authors
8  * Released under GNU GPL v2+, read the file 'COPYING' for more information.
9  */
10 #ifndef INKSCAPE_LIVAROT_SWEEP_EVENT_H
11 #define INKSCAPE_LIVAROT_SWEEP_EVENT_H
12 /** \file
13  * Intersection events.
14  */
15 
16 #include <2geom/point.h>
17 class SweepTree;
18 
19 
20 /** One intersection event. */
21 class SweepEvent
22 {
23 public:
24     SweepTree *sweep[2];   ///< Sweep element associated with the left and right edge of the intersection.
25 
26     Geom::Point posx;         ///< Coordinates of the intersection.
27     double tl, tr;          ///< Coordinates of the intersection on the left edge (tl) and on the right edge (tr).
28 
29     int ind;                ///< Index in the binary heap.
30 
31     SweepEvent();   // not used.
32     virtual ~SweepEvent();  // not used.
33 
34     /// Initialize a SweepEvent structure.
35     void MakeNew (SweepTree * iLeft, SweepTree * iRight, Geom::Point const &iPt,
36                   double itl, double itr);
37 
38     /// Void a SweepEvent structure.
39     void MakeDelete ();
40 };
41 
42 
43 #endif /* !INKSCAPE_LIVAROT_SWEEP_EVENT_H */
44 
45 /*
46   Local Variables:
47   mode:c++
48   c-file-style:"stroustrup"
49   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
50   indent-tabs-mode:nil
51   fill-column:99
52   End:
53 */
54 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :
55