void setBaseTransform(const Transform& baseTransform) { assert (individualTransforms.size() == 1); assert (absoluteTransforms.size() == 1); individualTransforms.front() = absoluteTransforms.front() = baseTransform; }
void updateBaseTransform() { if (orientation != currentOrientation()) { orientation = currentOrientation(); currentTransforms.front() = transformForOrientation(orientation); } }
void clear() { absoluteTransforms.resize(1); // Important!! Due to all the swapping, the first entry in the list is not necessarily // the base matrix. We need to restore it. absoluteTransforms.front() = scale(1); individualTransforms.resize(1); clipRectStack.clear(); glBlocks.clear(); ops.clear(); }
TransformStack() { reset(); individual.front() = absolute.front() = scale(1); }