From 4ca5a5c8ca78edde334e43517b543290f1b4fccf Mon Sep 17 00:00:00 2001 From: zzzzrrr Date: Fri, 23 Apr 2010 12:34:55 -0400 Subject: [PATCH] created vector for nodes --- poly2tri/sweep/sweep.cc | 6 ++---- poly2tri/sweep/sweep.h | 5 +++++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/poly2tri/sweep/sweep.cc b/poly2tri/sweep/sweep.cc index 56cddac..6add81f 100644 --- a/poly2tri/sweep/sweep.cc +++ b/poly2tri/sweep/sweep.cc @@ -172,6 +172,8 @@ Node& Sweep::NewFrontTriangle(SweepContext& tcx, Point& point, Node& node) tcx.AddToMap(triangle); Node* new_node = new Node(point); + nodes_.push_back(new_node); + new_node->next = node.next; new_node->prev = &node; node.next->prev = new_node; @@ -629,8 +631,6 @@ void Sweep::FillRightConcaveEdgeEvent(SweepContext& tcx, Edge* edge, Node& node) } } - delete &node.next; - } void Sweep::FillRightConvexEdgeEvent(SweepContext& tcx, Edge* edge, Node& node) @@ -712,8 +712,6 @@ void Sweep::FillLeftConcaveEdgeEvent(SweepContext& tcx, Edge* edge, Node& node) } } - delete &node.prev; - } void Sweep::FlipEdgeEvent(SweepContext& tcx, Point& ep, Point& eq, Triangle* t, Point& p) diff --git a/poly2tri/sweep/sweep.h b/poly2tri/sweep/sweep.h index 02bf9ab..5cc9e06 100644 --- a/poly2tri/sweep/sweep.h +++ b/poly2tri/sweep/sweep.h @@ -39,6 +39,8 @@ #ifndef SWEEP_H #define SWEEP_H +#include + namespace p2t { class SweepContext; @@ -113,6 +115,9 @@ Point& NextFlipPoint(Point& ep, Point& eq, Triangle& ot, Point& op); void FlipScanEdgeEvent(SweepContext& tcx, Point& ep, Point& eq, Triangle& flip_triangle, Triangle& t, Point& p); void FinalizationPolygon(SweepContext& tcx); + +std::vector nodes_; + }; }