Abstract supertype of types that support scaling by a
numeric factor. Examples of such types include vectors and
matrices. The scale operator a ** x accepts a scale
factor as its first operand, and an instance of Scalable
as its second operand.
Vector scaled = 2.0 ** Vector(x,y,z);
Concrete classes which implement this interface should satisfy:
x == 1**xa ** (b ** x) == a*b ** xwhere 1 denotes the multiplicative identity of the
numeric scaling type.
Concrete classes which implement this interface are
encouraged to also satisfy Invertible, in which case,
the following identity should be satisfied:
-x == -1**xConcrete classes which implement this interface and which
also satisfy Summable should satisfy:
x+x == 2**xa ** (x+y) == a**x + a**yThe Scale must be a numeric
type, but is not required to be Number, since a complex
number scaling type should be allowed.
no type hierarchy
no supertypes hierarchy
no subtypes hierarchy
| Methods | |
scale | Source Codeshared formal Value scale(Scale scalar)Scale this value by the given scale factor. |
| Inherited Methods |
Methods inherited from: Object |