Пример #1
0
LinearIterator::LinearIterator(const Geometry* linear, const LinearLocation& start):
		vertexIndex(segmentEndVertexIndex(start)),
		componentIndex(start.getComponentIndex()),
		linear(linear),
		numLines(static_cast<unsigned int>(linear->getNumGeometries()))
{
	loadCurrentLine();
}
Пример #2
0
LinearIterator::LinearIterator(const Geometry* linear, unsigned int componentIndex, unsigned int vertexIndex) :
		vertexIndex(vertexIndex),
		componentIndex(componentIndex),
		linear(linear),
		numLines(static_cast<unsigned int>(linear->getNumGeometries()))
{
	loadCurrentLine();
}
Пример #3
0
LinearIterator::LinearIterator(const Geometry* linear) :
		vertexIndex(0),
		componentIndex(0),
		linear(linear),
		numLines(linear->getNumGeometries())
{
	loadCurrentLine();
}
Пример #4
0
void LinearIterator::next()
{
	if (! hasNext()) return;

	vertexIndex++;
	if (vertexIndex >= currentLine->getNumPoints())
	{
		componentIndex++;
		loadCurrentLine();
		vertexIndex = 0;
	}
}