Skip to content

Ambiguous usage of spatial:transform in conjunction with multiscales convention #12

@kylebarron

Description

@kylebarron

Looking at various examples, I've found that spatial:transform is ambiguous

  • Sometimes it's on the levels but not at the root
  • Sometimes it's on the levels and at the root
  • Sometimes it's neither on the levels nor at the root, and you have to compute the root transform yourself based on the bounding box (and have to compute the decimated transforms)

Some suggestions/observations:

  • If layout exists, then it should not be at the root. Having it on the root is confusing because it's not automatically clear which scale it refers to. For example, here the root spatial:transform describes the 30m level but that's not the finest nor coarsest resolution of the sub groups.
    • Having it at the root biases one of the groups as the "special" level, which I don't think makes sense.
  • If layout exists, then it should be included on all levels. You could theoretically put it on just one and compute it for the other levels, but that's a lot of work, and since the layout array isn't ordered (I think?), it would be annoying to find which key has the transform.
  • In the case of rotated, non-axis-aligned data, it's incorrect/impossible to compute the transform based on the bbox. So there must always be a transform defined somewhere. (Unless you have explicit language saying that, if not defined, the transform rotation must be 0. But it's so much easier and clearer to just include the transform)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions