19#ifndef GEOS_NODING_SCALEDNODER_H
20#define GEOS_NODING_SCALEDNODER_H
22#include <geos/export.h>
27#include <geos/inline.h>
28#include <geos/noding/Noder.h>
34#pragma warning(disable: 4251)
61class GEOS_DLL ScaledNoder :
public Noder {
65 bool isIntegerPrecision() {
return (scaleFactor == 1.0); }
67 ScaledNoder(Noder& n,
double nScaleFactor,
68 double nOffsetX=0.0,
double nOffsetY=0.0)
71 scaleFactor(nScaleFactor),
74 isScaled(nScaleFactor!=1.0)
87 ::geos::ignore_unused_variable_warning(c);
105 void rescale(std::vector<SegmentString*>& segStrings)
const;
107 void scale(std::vector<SegmentString*>& segStrings)
const;
113 friend class ScaledNoder::Scaler;
115 friend class ScaledNoder::ReScaler;
117 mutable std::vector<geom::CoordinateSequence*> newCoordSeq;
The internal representation of a list of coordinates inside a Geometry.
Definition CoordinateSequence.h:59
Coordinate is the lightweight class used to store coordinates.
Definition Coordinate.h:60
Computes all intersections between segments in a set of SegmentString.
Definition Noder.h:49
Wraps a Noder and transforms its input into the integer domain.
Definition ScaledNoder.h:61
std::vector< SegmentString * > * getNodedSubstrings() const
Returns a Collection of fully noded SegmentStrings. The SegmentStrings have the same context as their...
void computeNodes(std::vector< SegmentString * > *inputSegStr)
Computes the noding for a collection of SegmentStrings.
An interface for classes which represent a sequence of contiguous line segments.
Definition SegmentString.h:46
Contains the Geometry interface hierarchy and supporting classes.
Definition IndexedNestedRingTester.h:26
Classes to compute nodings for arrangements of line segments and line segment sequences.
Definition PreparedLineString.h:27
Basic namespace for all GEOS functionalities.
Definition IndexedNestedRingTester.h:25