affine-1.2.0

An affine transform.

Description

Invertibility: All ASDF tools are required to be able to compute the analytic inverse of this transform.

Outline

Schema Definitions

This node must validate against all of the following:

  • This type is an object with the following properties:

    • matrix

      objectRequired

      An array of size (n x n), where n is the number of axes, representing the linear transformation in an affine transform.

      This node must validate against any of the following:

      • array

        Minimum length: 2

        Maximum length: 2

        Items in the array are restricted to the following types:

        array

        Minimum length: 2

        Maximum length: 2

        Items in the array are restricted to the following types:

        number

    • translation

      object

      An array of size (n,), where n is the number of axes, representing the translation in an affine transform.

      This node must validate against any of the following:

Original Schema

%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/affine-1.2.0"
title: >
  An affine transform.
description: |
  Invertibility: All ASDF tools are required to be able to compute the
  analytic inverse of this transform.


allOf:
  - $ref: "transform-1.1.0"
  - type: object
    properties:
      matrix:
        description: |
          An array of size (*n* x *n*), where *n* is the number of axes,
          representing the linear transformation in an affine transform.
        anyOf:
          - $ref: "../core/ndarray-1.0.0"
          - $ref: "../unit/quantity-1.1.0"
          - type: array
            items:
              type: array
              items:
                type: number
              minItems: 2
              maxItems: 2
            minItems: 2
            maxItems: 2
      translation:
        description: |
          An array of size (*n*,), where  *n* is the number of axes,
          representing the translation in an affine transform.
        anyOf:
          - $ref: "../core/ndarray-1.0.0"
          - $ref: "../unit/quantity-1.1.0"
          - type: array
            items:
              type: number
            minItems: 2
            maxItems: 2
    required: [matrix]
...