Defines a mapping from raster space to map space.
sealed class
|
Raster
|
extends
|
GeoObject
|
The configurator object for this type.
public
static
property
|
Config
{
get
}
|
||
type
|
IConfigurator<Raster>
|
||
value
|
|
The configurator object. |
Returns the configuration value that describes this object.
public
override
method
|
ToConfig
()
|
||
type
|
ConfigValue
|
||
returns
|
|
The configuration value. | |
overrides
|
GeoObject.ToConfig
|
Remarks:
All configurable objects need to implement this interface. For simple types, it is preferable to delegate to ToValue.
The returned value may be of type Invalid, which means that this object in its current state cannot be described with the configuration API.
Before returning the resulting configuration value, Cache must be called on it, passing this IConfigurable object as parameter.
Serialization information about this type.
public
static
readonly
field
|
SerialId
|
||
type
|
ISerialTypeInfo
|
A cubemap raster using the WGS84 coordinate system with a cubemap edge length of MaxSize.
public
static
readonly
field
|
GeographicCube
|
||
type
|
Raster
|
A rectangular raster using the PopularMercator coordinate system with an edge length of MaxSize.
public
static
readonly
field
|
PopularMercator
|
||
type
|
Raster
|
The coordinate system.
public
property
|
Coordinates
{
get
}
|
||
type
|
CoordinateSystem
|
||
value
|
|
The coordinate system. |
Returns the map bounds of Face for this raster.
public
property
|
FaceBounds
{
get
}
|
||
type
|
Box2D
|
||
value
|
The map bounds. |
The human-readable name of this object.
public
property
|
Name
{
get
}
|
||
type
|
string
|
||
value
|
|
The object name. | |
inherited
|
GeoObject.Name
|
Returns the serial type of this object.
public
property
|
SerialType
{
get
}
|
||
type
|
ISerialTypeInfo
|
||
value
|
|
The serial type. | |
inherited
|
SerializableBase.SerialType
|
Returns the serial data version.
public
virtual
property
|
SerialVersion
{
get
}
|
||
type
|
int32
|
||
value
|
|
The serial data version tag. | |
inherited
|
SerializableBase.SerialVersion
|
Remarks:
An ISerializable implementation is required to support all versions up to the one returned by SerialVersion.
See also:
ISerializable.SerializeThe transform that maps raster coordinates (raster X- and Y-coordinates) to map coordinates resp. to geographic coordinates (see IsProjection).
public
property
|
Transform
{
get
}
|
||
type
|
IRasterTransform
|
||
value
|
|
The raster transform. |
The type of this geo object.
public
property
|
Type
{
get
}
|
||
type
|
GeoObjectType
|
||
value
|
The geo object type. | ||
inherited
|
GeoObject.Type
|
Adjusts the given raster for the specified map.
public
static
method
|
ForMap
(Raster raster,
MapInfo map)
|
||
type
|
Raster
|
||
params
|
raster
|
The
raster
or
null . |
|
map
|
The map. | ||
returns
|
The
resulting
raster
or
null
if
raster
is
null .
|
Remarks:
If the map is a cube (see Cube), the transform (see Transform) of the given raster will be replaced with a cubemap transform (see Cube) and the coordinate system will be transformed to a geographic one (see ToGeographic). Otherwise, the given raster will be returned as it is.
See also:
RasterTransform.CubeAdjusts the given raster for the specified map.
public
static
method
|
ForMap
(Raster raster,
MapType type,
int32 size = MappingUtil.MaxSize)
|
||
type
|
Raster
|
||
params
|
raster
|
The
raster
or
null . |
|
type
|
The map type. | ||
size
|
[pow2]
|
The map size (see Size). Defaults to MaxSize. | |
returns
|
The
resulting
raster
or
null
if
raster
is
null .
|
Remarks:
If the map is a cube (see Cube), the transform (see Transform) of the given raster will be replaced with a cubemap transform (see Cube) and the coordinate system will be transformed to a geographic one (see ToGeographic). Otherwise, the given raster will be returned as it is.
See also:
RasterTransform.CubeCreates a new instance of Raster for a local coordinate system.
public
static
method
|
Local
(Vec2D center,
float64 scale,
UnitOfMeasure unit = null)
|
||
type
|
Raster
|
||
params
|
center
|
Raster
coordinates
that
will
be
mapped
to
the
map
coordinates
(0,0) .
|
|
scale
|
Scale factor from raster coordinates to map coordinates. | ||
unit
|
The
map
coordinate
unit.
If
null ,
Metre
will
be
used.
Defaults
to
null .
|
||
returns
|
|
The resulting raster. |
Creates a new instance of Raster.
public
constructor
|
Raster
(CoordinateSystem coordinates,
IRasterTransform transform,
string name = null)
|
||
params
|
coordinates
|
[not-null]
|
The coordinate system. |
transform
|
[not-null]
|
The transform that maps raster coordinates (raster X- and Y-coordinates) to projected map coordinates (see IsProjection) or to geographic coordinates (see IsGeographic). | |
name
|
Human-readable
name
of
the
raster.
If
empty
or
null,
UserDefined
will
be
used
instead.
Defaults
to
null .
|
Initializes the state of this object from the given data stream.
public
override
method
|
Deserialize
(int32 serialVersion,
ISerializer data)
|
||
type
|
ISerializable
|
||
params
|
serialVersion
|
[>=1]
|
The serial data version. |
data
|
[not-null]
|
The serial data stream. | |
returns
|
|
The
deserialized
object.
This
will
typically
be
this ,
but
in
some
circumstances,
another
instance
may
be
returned
(e.g.
singletons).
|
|
overrides
|
GeoObject.Deserialize
|
Remarks:
The Deserialize method will be called immediately after the object has been instantiated via its default constructor.
The provided serialVersion number is guaranteed to be equal to or less than the SerialVersion returned by this object (i.e. ISerializable object must provide backwards compatibility).
See also:
ISerializable.SerializeCompares this object with the given one.
[Pure]
|
||||
public
override
method
|
Equals
(IGeoObject other)
|
|||
type
|
bool
|
|||
params
|
other
|
The object to compare to. | ||
returns
|
true
if
this
object
is
equal
to
other,
false
if
not.
|
|||
overrides
|
GeoObject.Equals
|
Compares this object with the given one.
[Pure]
|
||||
public
override
sealed
method
|
Equals
(object other)
|
|||
type
|
bool
|
|||
params
|
other
|
The object to compare to. | ||
returns
|
true
if
this
object
is
equal
to
other,
false
if
not.
|
|||
inherited
|
GeoObject.Equals
|
[Pure]
|
||||
public
override
sealed
method
|
GetHashCode
()
|
|||
type
|
int32
|
|||
inherited
|
GeoObject.GetHashCode
|
Computes the ground sample distance of this raster.
public
method
|
GroundSampleDistance
(Vec2D raster,
UnitOfMeasure unit = null)
|
||
type
|
Vec4D
|
||
params
|
raster
|
The raster coordinates at which to compute the ground sample distance. | |
unit
|
The
unit
of
measure.
If
null ,
Metre
will
be
used.
Defaults
to
null .
|
||
returns
|
The
ground
sample
distance
values:
X: Ground sample distance for a raster step of (1|0) ,
i.e.
along
the
X-axis.
Y: Ground sample distance for a raster step of (0|1) ,
i.e.
along
the
Y-axis.
Z: Edge length of square that has the same area as the parallelogram defined by the ground vectors corresponding to the raster steps of (1|0)
and
(0|1) .
W: Angle (in degrees) between the ground vectors corresponding to to the raster steps of (1|0)
and
(0|1) .
|
Remarks:
Depending on the coordinate system type, the ground sample distance is computed as follows:
Offsets the raster transform (if present) by the given amounts.
public
method
|
Offset
(float64 offsetX,
float64 offsetY)
|
||
type
|
Raster
|
||
params
|
offsetX
|
The offset along the raster X-axis. | |
offsetY
|
The offset along the raster Y-axis. | ||
returns
|
|
The resulting raster. |
Remarks:
This method simply forwards to RasterOffset.
Returns a factory for map projections that transform raster coordinates from this raster (source) to the given one (target).
public
method
|
Projection
(Raster target = null,
IDatumTransform transform = null)
|
||
type
|
IMapProjectionFactory
|
||
params
|
target
|
The
target
raster.
Defaults
to
null . |
|
transform
|
Datum
transform
to
use.
Defaults
to
null . |
||
returns
|
|
The map projection factory. |
Remarks:
When
no
target
raster
is
specified
(i.e.
the
target
parameter
is
null
),
the
map
projection
will
transform
raster
coordinates
to
3D
geographic
coordinates
(latitude,
longitude,
ellipsoid
height),
based
on
the
geodetic
datum
of
this
coordinate
system
(see
Coordinates).
If
a
datum
transform
is
given
(i.e.
the
transform
parameter
is
not
null
),
it
will
be
applied
to
the
3D
geographic
coordinates.
The
method
assumes
that
the
calling
code
has
chosen
a
datum
transform
that
is
consistent
with
this
coordinate
system.
If
a
target
raster
is
given
(i.e
the
target
parameter
is
not
null
,
the
map
projection
will
transform
source
raster
coordinates
to
target
raster
coordinates.
If
the
source
and
target
raster
use
different
datums
(geodetic
and/or
vertical),
one
or
more
additional
datum
transforms
may
be
necessary.
When
the
transform
parameter
is
null
,
the
method
tries
to
find
a
suitable
composite
datum
transform
in
the
current
georegistry
(see
GeoRegistry).
If
no
transform
is
found,
the
method
silently
assumes
that
no
datum
transformation
is
necessary.
This
behaviour
can
be
overridden
by
providing
a
non-null
value
to
the
transform
parameter,
which
will
then
be
used
instead
(skipping
the
lookup).
The map types (i.e. Rect and Cube) of the source and target rasters are derived from the IsCubemap property value of the raster transform (Transform).
Scales the raster transform (if present) by the given factors.
public
method
|
Scale
(float64 scaleX,
float64 scaleY)
|
||
type
|
Raster
|
||
params
|
scaleX
|
The scale factor along the raster X-axis. | |
scaleY
|
The scale factor along the raster Y-axis. | ||
returns
|
|
The resulting raster. |
Remarks:
This method simply forwards to RasterScale.
Serializes the current state of this object to the given data stream.
public
override
method
|
Serialize
(ISerializer data)
|
||
params
|
data
|
[not-null]
|
The serial data stream. |
overrides
|
GeoObject.Serialize
|
See also:
ISerializable.Deserialize
[Pure]
|
||||
public
override
sealed
method
|
ToString
()
|
|||
type
|
string
|
|||
inherited
|
GeoObject.ToString
|
Updates the vertical components of this raster.
public
method
|
Vertical
(UnitOfMeasure unit = null,
VerticalDatum datum = null)
|
||
type
|
Raster
|
||
params
|
unit
|
The
vertical
unit.
If
null ,
Metre
will
be
used.
Defaults
to
null .
|
|
datum
|
The
vertical
datum
(see
Vertical).
Defaults
to
null .
|
||
returns
|
|
The resulting raster. |
Does this raster span the entire equator?
[Pure]
|
||||
public
method
|
WholeEquator
(int32 width,
int32 height)
|
|||
type
|
bool
|
|||
params
|
width
|
[>0]
|
The raster width of the map (edge length, not sample count). | |
height
|
[>0]
|
The raster height of the map (edge length, not sample count). | ||
returns
|
true
if
the
raster
covers
the
entire
equator,
false
if
not.
|