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