class astropy.coordinates.AffineTransform(transform_func, fromsys, tosys, priority=1, register_graph=None)[source]

Bases: BaseAffineTransform

A coordinate transformation specified as a function that yields a 3 x 3 cartesian transformation matrix and a tuple of displacement vectors.

See Galactocentric for an example.


A callable that has the signature transform_func(fromcoord, toframe) and returns: a (3, 3) matrix that operates on fromcoord in a Cartesian representation, and a CartesianRepresentation with (optionally) an attached velocity CartesianDifferential to represent a translation and offset in velocity to apply after the matrix operation.


The coordinate frame class to start from.


The coordinate frame class to transform into.

prioritypython:float or python:int

The priority if this transform when finding the shortest coordinate transform path - large numbers are lower priorities.

register_graphTransformGraph or python:None

A graph to register this transformation with on creation, or None to leave it unregistered.


If transform_func is not callable