Protected__Protected__Protected__Protected__Protected__Clones this instance and returns a new Rect3 with identical values.
StaticisStaticwithCreates a new rectangle.
Origin of the rectangle.
Two axes that define orientation of the rectangle. Axes extend from the origin. Axes should be normalized.
Two extents that define the size of the rectangle. Extends should be half the width/height as they are applied in both directions.
The Rect3 implements a rectangle in three dimensional space. It is represented by two axes that extend from the specified origin. Axes should be perpendicular to each other and they extend in both positive and negative directions from the origin by the amount specified by extents.
The class follows the 'copy-on-write' pattern, which means that every operation returns a copy of the rectangle with updates values. It also implies that the values of the rectangle cannot be directly modified.
The concept of immutability improves sharing of objects as all types in TypeScript are assigned by identity, instead of by-value (e.g. a copy) as in other programming languages like C.