43 struct _t_BRVFixedMatrix;
44 struct BRVCoordMatrix;
79 : fa(1.0), fb(0.0), fc(0.0), fd(1.0), fe(0.0), ff(0.0)
89 : fa(a), fb(b), fc(c), fd(d), fe(e), ff(f)
112 void SetMatrix (const BRVCoordMatrix &m);
117 void SetMatrix (const _t_BRVFixedMatrix &m);
122 void SetMatrix (const dvacore::geom::ScaleMatrixT<
float> &m);
137 void GetUIMatrixF32 (dvacore::geom::ScaleMatrixT<
float>* retMatrix) const;
143 bool16 operator==(const
PMMatrix& other) const;
145 bool16 operator!=(const
PMMatrix& other)
const 147 return !(*
this == other);
235 bool exactly_identity() const noexcept;
322 Translate( -stationaryPoint.
X(), -stationaryPoint.
Y());
323 Scale( xScale, yScale);
324 Translate( stationaryPoint.
X(), stationaryPoint.
Y());
338 void SkewFrom(
const PMPoint& stationaryPoint,
PMReal skewAngle,
PMReal noSkewDirectionAngle)
340 Translate( -stationaryPoint.
X(), -stationaryPoint.
Y());
341 Rotate( -noSkewDirectionAngle);
343 Rotate( noSkewDirectionAngle);
344 Translate( stationaryPoint.
X(), stationaryPoint.
Y());
393 void SkewToSlope(
const PMPoint& stationaryPoint,
PMReal skewSlope);
423 enum TransformFactorOrder {
424 kFactorOrder_SKRT = 0,
440 kFactorOrder_RKST = 14,
455 static const uint32 kHasNoTransformContent = 0;
456 static const uint32 kHasScaleContent = 1;
457 static const uint32 kHasSkewContent = 2;
458 static const uint32 kHasRotateContent = 4;
459 static const uint32 kHasTranslateContent = 8;
460 static const uint32 kHasAllTransformContent = (kHasScaleContent | kHasSkewContent | kHasRotateContent | kHasTranslateContent);
506 TransformFactorOrder factorOrder = kFactorOrder_SKRT
541 TransformFactorOrder factorOrder = kFactorOrder_SKRT
610 void SanityCheck()
const 618 void SanityCheck_()
const;
619 void RotateTo(
double cosine,
double sine);
622 void InternalSkewTo(
double k);
625 PMReal fa, fb, fc, fd, fe, ff;