package com.revolsys.geometry.cs.projection; public class CopyOperation implements CoordinatesOperation { @Override public void perform(final int sourceAxisCount, final double[] sourceCoordinates, final int targetAxisCount, final double[] targetCoordinates) { final int numPoints = sourceCoordinates.length / sourceAxisCount; for (int vertexIndex = 0; vertexIndex < numPoints; vertexIndex++) { for (int axisIndex = 0; axisIndex < targetAxisCount; axisIndex++) { final double value; if (axisIndex < sourceAxisCount) { value = sourceCoordinates[vertexIndex * sourceAxisCount + axisIndex]; } else { value = Double.NaN; } targetCoordinates[vertexIndex * sourceAxisCount + axisIndex] = value; } } } @Override public String toString() { return "copy"; } }