GEOS
3.4.2
|
00001 /********************************************************************** 00002 * 00003 * GEOS - Geometry Engine Open Source 00004 * http://geos.osgeo.org 00005 * 00006 * Copyright (C) 2012 Excensus LLC. 00007 * 00008 * This is free software; you can redistribute and/or modify it under 00009 * the terms of the GNU Lesser General Licence as published 00010 * by the Free Software Foundation. 00011 * See the COPYING file for more information. 00012 * 00013 ********************************************************************** 00014 * 00015 * Last port: triangulate/quadedge/LastFoundQuadEdgeLocator.java r524 00016 * 00017 **********************************************************************/ 00018 00019 #ifndef GEOS_TRIANGULATE_QUADEDGE_LASTFOUNDQUADEDGELOCATOR_H 00020 #define GEOS_TRIANGULATE_QUADEDGE_LASTFOUNDQUADEDGELOCATOR_H 00021 00022 #include <geos/triangulate/quadedge/QuadEdge.h> 00023 #include <geos/triangulate/quadedge/QuadEdgeLocator.h> 00024 00025 namespace geos { 00026 namespace triangulate { //geos.triangulate 00027 namespace quadedge { //geos.triangulate.quadedge 00028 00029 //fwd declarations 00030 class QuadEdgeSubdivision; 00031 00041 class LastFoundQuadEdgeLocator : public QuadEdgeLocator { 00042 private: 00043 QuadEdgeSubdivision* subdiv; 00044 QuadEdge* lastEdge; 00045 00046 public: 00047 LastFoundQuadEdgeLocator(QuadEdgeSubdivision *subdiv); 00048 00049 private: 00050 virtual void init(); 00051 00052 virtual QuadEdge* findEdge(); 00053 00054 public: 00060 virtual QuadEdge* locate(const Vertex &v); 00061 }; 00062 00063 } //namespace geos.triangulate.quadedge 00064 } //namespace geos.triangulate 00065 } //namespace goes 00066 00067 #endif // GEOS_TRIANGULATE_QUADEDGE_LASTFOUNDQUADEDGELOCATOR_H 00068