Negative scale Flip Mirror Check

Classify axis reflections, orientation reversal, and collapsed axes of a two-dimensional CSS scale.

Description

A negative scale reflects an axis, while two reflections preserve two-dimensional orientation.

A negative scale reflects an axis, while two reflections preserve two-dimensional orientation. A zero scale collapses an axis and makes the transformation degenerate rather than an ordinary orientation-preserving or reversing map.1

Classify axis reflections, orientation reversal, and collapsed axes of a two-dimensional CSS scale.

When to use Negative scale Flip Mirror Check

Use this tool to classify axis reflections, orientation reversal, and collapsed axes of a two-dimensional CSS scale.

Choose the CSS values, dimensions or counts for this calculation. Supply resolved numeric measurements in matching units and the explicit reference box or writing mode where required.

How to use Negative scale Flip Mirror Check and understand its results

  1. Choose the CSS values, dimensions or counts for this calculation. Supply resolved numeric measurements in matching units and the explicit reference box or writing mode where required.
  2. Enter scaleX, scaleY using the field table and calculation rules, then run the tool.
  3. Read horizontalFlip, verticalFlip, reversesOrientation, degenerate. The explanation below defines the units, signs, ordering and any flags or placeholder values.
  4. If the tool reports an input issue, correct the values and run it again. Apply the stated assumptions when interpreting a successfully returned result.
Input fieldMeaningValue type; see rules belowRequirement
scaleXHorizontal scalenumberRequired
scaleYVertical scalenumberRequired

Enter finite horizontal and vertical scale factors. The tool checks each sign, marks degenerate when either factor is zero, and reports orientation reversal only when exactly one factor is negative and neither is zero. Two negative factors therefore flip both axes while reversesOrientation is false.

horizontalFlip = scaleX < 0; verticalFlip = scaleY < 0; reversesOrientation = nondegenerate XOR of flips

Units, indexing, boundary conditions and exceptional cases are defined in the calculation rules above.

Output fieldMeaningValue type
horizontalFlipHorizontal reflectionboolean
verticalFlipVertical reflectionboolean
reversesOrientationOrientation reversalboolean
degenerateCollapsed axisboolean
json
{
  "input": {
    "scaleX": -1,
    "scaleY": 1
  },
  "output": {
    "horizontalFlip": true,
    "verticalFlip": false,
    "reversesOrientation": true,
    "degenerate": false
  }
}

Limitations and assumptions

It classifies an isolated 2D scale, without multiplying transform matrices or modeling perspective, transform origin or rendered content. A degenerate result does not claim invertibility. Values are dimensionless factors rather than percentages.

Numeric inputs must be finite. Follow the calculation-specific rules for overflow, underflow and exceptional cases. Missing required fields, extra fields, wrong value types and violations of the calculation rules are input errors. A successfully returned false flag is an evaluated outcome; its meaning is explained above.

Alternative or Complementary methods

Use Translate % Relative To Own Box Width: Resolve a signed horizontal translate percentage against an explicitly supplied reference-box width in pixels; the caller chooses the transform reference box. For a complementary task, use Perspective z Scale Factor: Compute CSS perspective scale at depth z using the used perspective distance clamped to at least 1px, rejecting points on or behind the viewer plane; distances use the same pixel units.

References

  1. Negative scale Flip Mirror Check — tool.io

Similar or alternative tools

  • Translate % Relative To Own Box Width

    Resolve a signed horizontal translate percentage against an explicitly supplied reference-box width in pixels; the caller chooses the transform reference box.

  • Perspective z Scale Factor

    Compute CSS perspective scale at depth z using the used perspective distance clamped to at least 1px, rejecting points on or behind the viewer plane; distances use the same pixel units.

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies