00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef GEOS_NODING_SIMPLENODER_H
00020 #define GEOS_NODING_SIMPLENODER_H
00021
00022 #include <geos/export.h>
00023
00024 #include <vector>
00025
00026 #include <geos/inline.h>
00027
00028 #include <geos/noding/SinglePassNoder.h>
00029 #include <geos/noding/NodedSegmentString.h>
00030
00031
00032 namespace geos {
00033 namespace noding {
00034
00035 }
00036 }
00037
00038 namespace geos {
00039 namespace noding {
00040
00041
00051 class GEOS_DLL SimpleNoder: public SinglePassNoder {
00052 private:
00053 std::vector<SegmentString*>* nodedSegStrings;
00054 virtual void computeIntersects(SegmentString *e0, SegmentString *e1);
00055
00056 public:
00057 SimpleNoder(SegmentIntersector* nSegInt=NULL)
00058 :
00059 SinglePassNoder(nSegInt)
00060 {}
00061
00062 void computeNodes(std::vector<SegmentString*>* inputSegmentStrings);
00063
00064 std::vector<SegmentString*>* getNodedSubstrings() const {
00065 return NodedSegmentString::getNodedSubstrings(*nodedSegStrings);
00066 }
00067 };
00068
00069 }
00070 }
00071
00072 #endif // GEOS_NODING_SIMPLENODER_H