Fixed a multiplication bug in new multiplier
This commit is contained in:
parent
c5b9187216
commit
b08c73ddf1
2 changed files with 4 additions and 11 deletions
|
|
@ -2,6 +2,7 @@
|
|||
#include "DrawingProgram.hpp"
|
||||
#include "../World.hpp"
|
||||
#include "../MainProgram.hpp"
|
||||
#include "Helpers/FixedPoint.hpp"
|
||||
#include <Helpers/MathExtras.hpp>
|
||||
#include <Helpers/SCollision.hpp>
|
||||
#include <Helpers/Parallel.hpp>
|
||||
|
|
@ -275,15 +276,10 @@ void DrawingProgramSelection::update() {
|
|||
WorldScalar centerToScaleCurrentNorm = centerToScaleCurrent.norm();
|
||||
bool isAnyNumberZero = centerToScaleCurrentNorm == WorldScalar(0) || centerToScaleStartNorm == WorldScalar(0);
|
||||
if(!isAnyNumberZero) {
|
||||
bool flipScale = centerToScaleStartNorm < centerToScaleCurrentNorm;
|
||||
WorldScalar scaleAmount;
|
||||
if(flipScale)
|
||||
scaleAmount = centerToScaleCurrentNorm / centerToScaleStartNorm;
|
||||
else
|
||||
scaleAmount = centerToScaleStartNorm / centerToScaleCurrentNorm;
|
||||
WorldMultiplier scaleAmount = WorldMultiplier(centerToScaleStartNorm) / WorldMultiplier(centerToScaleCurrentNorm);
|
||||
|
||||
selectionTransformCoords = startingSelectionTransformCoords;
|
||||
selectionTransformCoords.scale_about(scaleData.centerPos, WorldMultiplier(scaleAmount, flipScale));
|
||||
selectionTransformCoords.scale_about(scaleData.centerPos, scaleAmount);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue