From 7dec4fe362d343b8d2397bf5bc3868ad7c9e2a78 Mon Sep 17 00:00:00 2001 From: John Bogovic Date: Sun, 28 Jul 2024 15:28:58 -0400 Subject: [PATCH] toward resolving ambiguity in "sequence" transformations * thanks @LucaMarconato --- latest/index.bs | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/latest/index.bs b/latest/index.bs index ea99753a..106ae2ed 100644 --- a/latest/index.bs +++ b/latest/index.bs @@ -1015,15 +1015,30 @@ For example #### sequence A `sequence` transformation consists of an ordered array of coordinate transformations, and is invertible if and only if every -coordinate transform in the array is invertible. +coordinate transform in the array is invertible. To apply a sequence transformation to a point in the input coordinate system, +apply the first transformation in the list of transformations. Next, apply the second transformation to the result. Repeat until +every transformation has been applied. The output of the last transformation is the result of the sequence. + +The transformations included in the `transformations` array may omit their `input` and `output` fields under the conditions +outlined below: + +- The `input` and `output` fields MAY be omitted for the following transformation types: + - `identity`, `scale`, `translation`, `rotation`, `affine`, `displacements`, `coordinates` +- The `input` and `output` fields MAY be omitted for `inverseOf` transformations if those fields may be omitted for the + transformation it wraps +- The `input` and `output` fields MAY be omitted for `bijection` transformations if the fields may be omitted for + both its `forward` and `inverse` transformations +- The `input` and `output` fields MAY be omitted for `sequence` transformations if the fields may be omitted for + all transformations in the sequence after flattening the nested sequence lists. +- The `input` and `output` fields MUST be included for transformations of type: `mapAxis`, and `byDimension` (see the note + below), and under all other conditions. +
transformations
A non-empty array of transformations.
-The `input` and `output` fields SHOULD be omitted for transformations that are in the list of transformations of a `sequence`. -
This sequence: