WCS¶
-
class
gwcs.wcs.
WCS
(forward_transform=None, input_frame='detector', output_frame=None, name='')[source]¶ Bases:
gwcs.api.GWCSAPIMixin
Basic WCS class.
Parameters: - forward_transform :
Model
or a list The transform between
input_frame
andoutput_frame
. A list of (frame, transform) tuples whereframe
is the starting frame andtransform
is the transform from this frame to the next one oroutput_frame
. The last tuple is (transform, None), where None indicates the end of the pipeline.- input_frame : str,
CoordinateFrame
A coordinates object or a string name.
- output_frame : str,
CoordinateFrame
A coordinates object or a string name.
- name : str
a name for this WCS
Attributes Summary
available_frames
List all frames in this WCS object.backward_transform
Return the total backward transform if available - from output to input coordinate system.bounding_box
Return the range of acceptable values for each input axis.forward_transform
Return the total forward transform - from input to output coordinate frame.input_frame
Return the input coordinate frame.name
Return the name for this WCS.output_frame
Return the output coordinate frame.pipeline
Return the pipeline structure.unit
The unit of the coordinates in the output coordinate system.Methods Summary
__call__
(*args, **kwargs)Executes the forward transform.footprint
([bounding_box, center, axis_type])Return the footprint in world coordinates.get_transform
(from_frame, to_frame)Return a transform between two coordinate frames.insert_transform
(frame, transform[, after])Insert a transform before (default) or after a coordinate frame.invert
(*args, **kwargs)Invert coordinates.set_transform
(from_frame, to_frame, transform)Set/replace the transform between two coordinate frames.transform
(from_frame, to_frame, *args, **kwargs)Transform positions between two frames.Attributes Documentation
-
available_frames
¶ List all frames in this WCS object.
Returns: - available_frames : dict
{frame_name: frame_object or None}
-
backward_transform
¶ Return the total backward transform if available - from output to input coordinate system.
Raises: - NotImplementedError :
An analytical inverse does not exist.
-
bounding_box
¶ Return the range of acceptable values for each input axis. The order of the axes is
axes_order
.
-
forward_transform
¶ Return the total forward transform - from input to output coordinate frame.
-
input_frame
¶ Return the input coordinate frame.
-
name
¶ Return the name for this WCS.
-
output_frame
¶ Return the output coordinate frame.
-
pipeline
¶ Return the pipeline structure.
-
unit
¶ The unit of the coordinates in the output coordinate system.
Methods Documentation
-
__call__
(*args, **kwargs)[source]¶ Executes the forward transform.
- args : float or array-like
- Inputs in the input coordinate system, separate inputs for each dimension.
- with_units : bool
- If
True
returns aSkyCoord
orQuantity
object, by using the units of the output cooridnate frame. Optional, default=False. - with_bounding_box : bool, optional
- If True(default) values in the result which correspond to
any of the inputs being outside the bounding_box are set
to
fill_value
. - fill_value : float, optional
- Output value for inputs outside the bounding_box (default is np.nan).
-
footprint
(bounding_box=None, center=False, axis_type='all')[source]¶ Return the footprint in world coordinates.
Parameters: - bounding_box : tuple of floats: (start, stop)
prop: bounding_box
- center : bool
If
True
use the center of the pixel, otherwise use the corner.- axis_type : str
A supported
output_frame.axes_type
or “all” (default). One of [‘spatial’, ‘spectral’, ‘temporal’] or a custom type.
Returns: - coord : ndarray
Array of coordinates in the output_frame mapping corners to the output frame. For spatial coordinates the order is clockwise, starting from the bottom left corner.
-
get_transform
(from_frame, to_frame)[source]¶ Return a transform between two coordinate frames.
Parameters: - from_frame : str or
CoordinateFrame
Initial coordinate frame name of object.
- to_frame : str, or instance of
CoordinateFrame
End coordinate frame name or object.
Returns: - transform :
Model
Transform between two frames.
- from_frame : str or
-
insert_transform
(frame, transform, after=False)[source]¶ Insert a transform before (default) or after a coordinate frame.
Append (or prepend) a transform to the transform connected to frame.
Parameters: - frame : str or
CoordinateFrame
Coordinate frame which sets the point of insertion.
- transform :
Model
New transform to be inserted in the pipeline
- after : bool
If True, the new transform is inserted in the pipeline immediately after
frame
.
- frame : str or
-
invert
(*args, **kwargs)[source]¶ Invert coordinates.
The analytical inverse of the forward transform is used, if available. If not an iterative method is used.
Parameters: - args : float, array like,
SkyCoord
orUnit
coordinates to be inverted
- kwargs : dict
keyword arguments to be passed to the iterative invert method.
- with_bounding_box : bool, optional
If True(default) values in the result which correspond to any of the inputs being outside the bounding_box are set to
fill_value
.- fill_value : float, optional
Output value for inputs outside the bounding_box (default is np.nan).
- args : float, array like,
-
set_transform
(from_frame, to_frame, transform)[source]¶ Set/replace the transform between two coordinate frames.
Parameters: - from_frame : str or
CoordinateFrame
Initial coordinate frame.
- to_frame : str, or instance of
CoordinateFrame
End coordinate frame.
- transform :
Model
Transform between
from_frame
andto_frame
.
- from_frame : str or
-
transform
(from_frame, to_frame, *args, **kwargs)[source]¶ Transform positions between two frames.
Parameters: - from_frame : str or
CoordinateFrame
Initial coordinate frame.
- to_frame : str, or instance of
CoordinateFrame
Coordinate frame into which to transform.
- args : float or array-like
Inputs in
from_frame
, separate inputs for each dimension.- output_with_units : bool
- with_bounding_box : bool, optional
If True(default) values in the result which correspond to any of the inputs being outside the bounding_box are set to
fill_value
.- fill_value : float, optional
Output value for inputs outside the bounding_box (default is np.nan).
- from_frame : str or
- forward_transform :