using System;
using GeoAPI.Geometries;
namespace GisSharpBlog.NetTopologySuite.Geometries
{
///
/// Creates CoordinateSequences represented as an array of Coordinates.
///
[Serializable]
public sealed class CoordinateArraySequenceFactory : ICoordinateSequenceFactory
{
private static readonly CoordinateArraySequenceFactory instance = new CoordinateArraySequenceFactory();
///
///
///
private CoordinateArraySequenceFactory() {}
///
/// Returns the singleton instance of CoordinateArraySequenceFactory.
///
///
public static CoordinateArraySequenceFactory Instance
{
get
{
return instance;
}
}
///
/// Returns a CoordinateArraySequence based on the given array (the array is not copied).
///
/// the coordinates, which may not be null nor contain null elements.
///
public ICoordinateSequence Create(ICoordinate[] coordinates)
{
return new CoordinateArraySequence(coordinates);
}
///
///
///
///
///
public ICoordinateSequence Create(ICoordinateSequence coordSeq)
{
return new CoordinateArraySequence(coordSeq);
}
///
///
///
///
/// not used
///
public ICoordinateSequence Create(int size, int dimension)
{
return new CoordinateArraySequence(size);
}
}
}