Added maxRotation parameter.
This commit is contained in:
parent
6e4e847be1
commit
dda6262601
15
dist/iwmlib.js
vendored
15
dist/iwmlib.js
vendored
@ -3135,7 +3135,8 @@
|
|||||||
onThrowFinished = null,
|
onThrowFinished = null,
|
||||||
scaleAutoClose = false,
|
scaleAutoClose = false,
|
||||||
scaleCloseThreshold = 0.10,
|
scaleCloseThreshold = 0.10,
|
||||||
scaleCloseBuffer = 0.05
|
scaleCloseBuffer = 0.05,
|
||||||
|
maxRotation = 5
|
||||||
} = {}) {
|
} = {}) {
|
||||||
if (rotationDegrees != null && rotation != null) {
|
if (rotationDegrees != null && rotation != null) {
|
||||||
throw new Error('Use rotationDegrees or rotation but not both')
|
throw new Error('Use rotationDegrees or rotation but not both')
|
||||||
@ -3167,6 +3168,7 @@
|
|||||||
this.startScale = startScale; // Needed to reset object
|
this.startScale = startScale; // Needed to reset object
|
||||||
this.minScale = minScale;
|
this.minScale = minScale;
|
||||||
this.maxScale = maxScale;
|
this.maxScale = maxScale;
|
||||||
|
this.maxRotation = maxRotation;
|
||||||
this.overdoScaling = overdoScaling;
|
this.overdoScaling = overdoScaling;
|
||||||
this.translatable = translatable;
|
this.translatable = translatable;
|
||||||
if (!translatable) {
|
if (!translatable) {
|
||||||
@ -3178,6 +3180,7 @@
|
|||||||
this.resizable = resizable;
|
this.resizable = resizable;
|
||||||
this.mouseZoomFactor = mouseZoomFactor;
|
this.mouseZoomFactor = mouseZoomFactor;
|
||||||
this.autoBringToFront = autoBringToFront;
|
this.autoBringToFront = autoBringToFront;
|
||||||
|
|
||||||
this.dragging = false;
|
this.dragging = false;
|
||||||
this.onTransform = onTransform != null ? [onTransform] : null;
|
this.onTransform = onTransform != null ? [onTransform] : null;
|
||||||
this.onClose = onClose != null ? [onClose] : null;
|
this.onClose = onClose != null ? [onClose] : null;
|
||||||
@ -3212,10 +3215,16 @@
|
|||||||
|
|
||||||
gesture(interaction) {
|
gesture(interaction) {
|
||||||
let delta = interaction.delta();
|
let delta = interaction.delta();
|
||||||
//console.log("gesture", delta)
|
console.log("gesture", delta.rotate);
|
||||||
if (delta != null) {
|
if (delta != null) {
|
||||||
this.addVelocity(delta);
|
this.addVelocity(delta);
|
||||||
this.transform(delta, delta.zoom, delta.rotate, delta.about);
|
let alpha = delta.rotate;
|
||||||
|
if (this.maxRotationPerStep != null) {
|
||||||
|
if (Math.abs(alpha) > this.maxRotationPerStep) {
|
||||||
|
alpha = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.transform(delta, delta.zoom, alpha, delta.about);
|
||||||
if (delta.zoom != 1) this.interactionAnchor = delta.about;
|
if (delta.zoom != 1) this.interactionAnchor = delta.about;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
15
dist/iwmlib.pixi.js
vendored
15
dist/iwmlib.pixi.js
vendored
@ -6302,7 +6302,8 @@
|
|||||||
onThrowFinished = null,
|
onThrowFinished = null,
|
||||||
scaleAutoClose = false,
|
scaleAutoClose = false,
|
||||||
scaleCloseThreshold = 0.10,
|
scaleCloseThreshold = 0.10,
|
||||||
scaleCloseBuffer = 0.05
|
scaleCloseBuffer = 0.05,
|
||||||
|
maxRotation = 5
|
||||||
} = {}) {
|
} = {}) {
|
||||||
if (rotationDegrees != null && rotation != null) {
|
if (rotationDegrees != null && rotation != null) {
|
||||||
throw new Error('Use rotationDegrees or rotation but not both')
|
throw new Error('Use rotationDegrees or rotation but not both')
|
||||||
@ -6334,6 +6335,7 @@
|
|||||||
this.startScale = startScale; // Needed to reset object
|
this.startScale = startScale; // Needed to reset object
|
||||||
this.minScale = minScale;
|
this.minScale = minScale;
|
||||||
this.maxScale = maxScale;
|
this.maxScale = maxScale;
|
||||||
|
this.maxRotation = maxRotation;
|
||||||
this.overdoScaling = overdoScaling;
|
this.overdoScaling = overdoScaling;
|
||||||
this.translatable = translatable;
|
this.translatable = translatable;
|
||||||
if (!translatable) {
|
if (!translatable) {
|
||||||
@ -6345,6 +6347,7 @@
|
|||||||
this.resizable = resizable;
|
this.resizable = resizable;
|
||||||
this.mouseZoomFactor = mouseZoomFactor;
|
this.mouseZoomFactor = mouseZoomFactor;
|
||||||
this.autoBringToFront = autoBringToFront;
|
this.autoBringToFront = autoBringToFront;
|
||||||
|
|
||||||
this.dragging = false;
|
this.dragging = false;
|
||||||
this.onTransform = onTransform != null ? [onTransform] : null;
|
this.onTransform = onTransform != null ? [onTransform] : null;
|
||||||
this.onClose = onClose != null ? [onClose] : null;
|
this.onClose = onClose != null ? [onClose] : null;
|
||||||
@ -6379,10 +6382,16 @@
|
|||||||
|
|
||||||
gesture(interaction) {
|
gesture(interaction) {
|
||||||
let delta = interaction.delta();
|
let delta = interaction.delta();
|
||||||
//console.log("gesture", delta)
|
console.log("gesture", delta.rotate);
|
||||||
if (delta != null) {
|
if (delta != null) {
|
||||||
this.addVelocity(delta);
|
this.addVelocity(delta);
|
||||||
this.transform(delta, delta.zoom, delta.rotate, delta.about);
|
let alpha = delta.rotate;
|
||||||
|
if (this.maxRotationPerStep != null) {
|
||||||
|
if (Math.abs(alpha) > this.maxRotationPerStep) {
|
||||||
|
alpha = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.transform(delta, delta.zoom, alpha, delta.about);
|
||||||
if (delta.zoom != 1) this.interactionAnchor = delta.about;
|
if (delta.zoom != 1) this.interactionAnchor = delta.about;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -268,7 +268,8 @@ export class AbstractScatter extends Throwable {
|
|||||||
onThrowFinished = null,
|
onThrowFinished = null,
|
||||||
scaleAutoClose = false,
|
scaleAutoClose = false,
|
||||||
scaleCloseThreshold = 0.10,
|
scaleCloseThreshold = 0.10,
|
||||||
scaleCloseBuffer = 0.05
|
scaleCloseBuffer = 0.05,
|
||||||
|
maxRotation = 5
|
||||||
} = {}) {
|
} = {}) {
|
||||||
if (rotationDegrees != null && rotation != null) {
|
if (rotationDegrees != null && rotation != null) {
|
||||||
throw new Error('Use rotationDegrees or rotation but not both')
|
throw new Error('Use rotationDegrees or rotation but not both')
|
||||||
@ -300,6 +301,7 @@ export class AbstractScatter extends Throwable {
|
|||||||
this.startScale = startScale // Needed to reset object
|
this.startScale = startScale // Needed to reset object
|
||||||
this.minScale = minScale
|
this.minScale = minScale
|
||||||
this.maxScale = maxScale
|
this.maxScale = maxScale
|
||||||
|
this.maxRotation = maxRotation
|
||||||
this.overdoScaling = overdoScaling
|
this.overdoScaling = overdoScaling
|
||||||
this.translatable = translatable
|
this.translatable = translatable
|
||||||
if (!translatable) {
|
if (!translatable) {
|
||||||
@ -311,6 +313,7 @@ export class AbstractScatter extends Throwable {
|
|||||||
this.resizable = resizable
|
this.resizable = resizable
|
||||||
this.mouseZoomFactor = mouseZoomFactor
|
this.mouseZoomFactor = mouseZoomFactor
|
||||||
this.autoBringToFront = autoBringToFront
|
this.autoBringToFront = autoBringToFront
|
||||||
|
|
||||||
this.dragging = false
|
this.dragging = false
|
||||||
this.onTransform = onTransform != null ? [onTransform] : null
|
this.onTransform = onTransform != null ? [onTransform] : null
|
||||||
this.onClose = onClose != null ? [onClose] : null
|
this.onClose = onClose != null ? [onClose] : null
|
||||||
@ -345,10 +348,16 @@ export class AbstractScatter extends Throwable {
|
|||||||
|
|
||||||
gesture(interaction) {
|
gesture(interaction) {
|
||||||
let delta = interaction.delta()
|
let delta = interaction.delta()
|
||||||
//console.log("gesture", delta)
|
console.log("gesture", delta.rotate)
|
||||||
if (delta != null) {
|
if (delta != null) {
|
||||||
this.addVelocity(delta)
|
this.addVelocity(delta)
|
||||||
this.transform(delta, delta.zoom, delta.rotate, delta.about)
|
let alpha = delta.rotate
|
||||||
|
if (this.maxRotationPerStep != null) {
|
||||||
|
if (Math.abs(alpha) > this.maxRotationPerStep) {
|
||||||
|
alpha = 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.transform(delta, delta.zoom, alpha, delta.about)
|
||||||
if (delta.zoom != 1) this.interactionAnchor = delta.about
|
if (delta.zoom != 1) this.interactionAnchor = delta.about
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user