viv
viv copied to clipboard
Support coordinate transformations and coordinate systems NGFF spec
User story
See https://github.com/ome/ngff/pull/255
In this proposal (and in current SpatialData), coordinate transformations are defined in terms of input/output coordinate systems. Multiple coordinate transformations can be chained together. These chains can ultimately form a DAG representation.
We should define common functions in Viv for traversing this DAG and obtaining a path from a desired input and output system. If affine, this path can then be represented using a modelMatrix.
See the related https://github.com/vitessce/vitessce/pull/1849
Should also continue to support the v0.4 and previous simpler transformation specs.
See in R this implementation which builds the DAG and provides a traversal function https://github.com/HelenaLC/SpatialData/blob/9885b6eedde155e6fb676b1f556e81b73093471c/R/coord.R#L31
Preferred solution
Possible alternatives