Class RawCoordinateSequenceFactory
Factory for creating RawCoordinateSequence instances.
Inherited Members
Namespace: NetTopologySuite.Geometries.Implementation
Assembly: NetTopologySuite.dll
Syntax
public sealed class RawCoordinateSequenceFactory : CoordinateSequenceFactory
Constructors
| Improve this Doc View SourceRawCoordinateSequenceFactory(IEnumerable<Ordinates>)
Initializes a new instance of the RawCoordinateSequenceFactory class.
Declaration
public RawCoordinateSequenceFactory(IEnumerable<Ordinates> ordinateGroups)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<Ordinates> | ordinateGroups | A sequence of zero or more Ordinates flags representing ordinate values that should be allocated together. |
Remarks
Any flags not represented in ordinateGroups
, and any spatial or
measure dimensions beyond the 16th, will be allocated together, SoA-style.
Elements without any bits set will be silently ignored.
Exceptions
Type | Condition |
---|---|
ArgumentNullException | Thrown when |
ArgumentException | Thrown when a given flag appears in more than one element of
|
Methods
| Improve this Doc View SourceCreate(Int32, Int32, Int32)
Declaration
public override CoordinateSequence Create(int size, int dimension, int measures)
Parameters
Type | Name | Description |
---|---|---|
Int32 | size | |
Int32 | dimension | |
Int32 | measures |
Returns
Type | Description |
---|---|
CoordinateSequence |
Overrides
| Improve this Doc View SourceCreateXY(Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X and Y data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXY(Memory<double> xy)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xy | An array of X and Y values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a PackedDoubleCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXY(Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given arrays for reading and writing X and Y data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXY(Memory<double> x, Memory<double> y)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | x | An array of X values, laid out as
|
Memory<Double> | y | An array of Y values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given arrays. |
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the input arrays do not contain data for the same number of coordinates. |
CreateXYM(Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X, Y, and M data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYM(Memory<double> xym)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xym | An array of X, Y, and M values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a PackedDoubleCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXYM(Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X, Y, and M data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYM(Memory<double> xy, Memory<double> m)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xy | An array of X and Y values, laid out as
|
Memory<Double> | m | An array of M values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a DotSpatialAffineCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXYM(Memory<Double>, Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given arrays for reading and writing X, Y, and M data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYM(Memory<double> x, Memory<double> y, Memory<double> m)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | x | An array of X values, laid out as
|
Memory<Double> | y | An array of Y values, laid out as
|
Memory<Double> | m | An array of M values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given arrays. |
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the input arrays do not contain data for the same number of coordinates. |
CreateXYZ(Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X, Y, and Z data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYZ(Memory<double> xyz)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xyz | An array of X, Y, and Z values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a PackedDoubleCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXYZ(Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X, Y, and Z data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYZ(Memory<double> xy, Memory<double> z)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xy | An array of X and Y values, laid out as
|
Memory<Double> | z | An array of Z values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a DotSpatialAffineCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXYZ(Memory<Double>, Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given arrays for reading and writing X, Y, and Z data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYZ(Memory<double> x, Memory<double> y, Memory<double> z)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | x | An array of X values, laid out as
|
Memory<Double> | y | An array of Y values, laid out as
|
Memory<Double> | z | An array of Z values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given arrays. |
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the input arrays do not contain data for the same number of coordinates. |
CreateXYZM(Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X, Y, Z, and M data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYZM(Memory<double> xyzm)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xyzm | An array of X, Y, Z, and M values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a PackedDoubleCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXYZM(Memory<Double>, Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given array for reading and writing X, Y, Z, and M data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYZM(Memory<double> xy, Memory<double> z, Memory<double> m)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | xy | An array of X and Y values, laid out as
|
Memory<Double> | z | An array of Z values, laid out as
|
Memory<Double> | m | An array of M values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given array. |
Remarks
The resulting instance is essentially a DotSpatialAffineCoordinateSequence with slightly more overhead, so the main reason to prefer this over that one would be if you really need to avoid copying the data to fit it into that format.
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the length of |
CreateXYZM(Memory<Double>, Memory<Double>, Memory<Double>, Memory<Double>)
Creates a new RawCoordinateSequence that uses the given arrays for reading and writing X, Y, Z, and M data ignoring the Ordinates flags that were passed into the constructor for this factory instance.
Declaration
public static RawCoordinateSequence CreateXYZM(Memory<double> x, Memory<double> y, Memory<double> z, Memory<double> m)
Parameters
Type | Name | Description |
---|---|---|
Memory<Double> | x | An array of X values, laid out as
|
Memory<Double> | y | An array of Y values, laid out as
|
Memory<Double> | z | An array of Z values, laid out as
|
Memory<Double> | m | An array of M values, laid out as
|
Returns
Type | Description |
---|---|
RawCoordinateSequence | A RawCoordinateSequence instance that's backed by the given arrays. |
Exceptions
Type | Condition |
---|---|
ArgumentException | Thrown when the input arrays do not contain data for the same number of coordinates. |