mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 09:17:29 +02:00
Fix children's rotations drifting when scale group
This commit is contained in:
parent
63e7521711
commit
4855e0f528
1 changed files with 13 additions and 6 deletions
|
@ -55,6 +55,7 @@ SelectionManager = function (side) {
|
||||||
position: properties.position,
|
position: properties.position,
|
||||||
parentID: properties.parentID,
|
parentID: properties.parentID,
|
||||||
localPosition: properties.localPosition,
|
localPosition: properties.localPosition,
|
||||||
|
localRotation: properties.localRotation,
|
||||||
registrationPoint: properties.registrationPoint,
|
registrationPoint: properties.registrationPoint,
|
||||||
rotation: properties.rotation,
|
rotation: properties.rotation,
|
||||||
dimensions: properties.dimensions,
|
dimensions: properties.dimensions,
|
||||||
|
@ -363,7 +364,8 @@ SelectionManager = function (side) {
|
||||||
for (i = 1, length = selection.length; i < length; i++) {
|
for (i = 1, length = selection.length; i < length; i++) {
|
||||||
Entities.editEntity(selection[i].id, {
|
Entities.editEntity(selection[i].id, {
|
||||||
dimensions: Vec3.multiply(factor, selection[i].dimensions),
|
dimensions: Vec3.multiply(factor, selection[i].dimensions),
|
||||||
localPosition: Vec3.multiply(factor, selection[i].localPosition)
|
localPosition: Vec3.multiply(factor, selection[i].localPosition),
|
||||||
|
localRotation: selection[i].localRotation // Always specify localRotation otherwise rotations can drift.
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -405,7 +407,8 @@ SelectionManager = function (side) {
|
||||||
entityID: selection[i].id,
|
entityID: selection[i].id,
|
||||||
properties: {
|
properties: {
|
||||||
dimensions: selection[i].dimensions,
|
dimensions: selection[i].dimensions,
|
||||||
localPosition: selection[i].localPosition
|
localPosition: selection[i].localPosition,
|
||||||
|
localRotation: selection[i].localRotation
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
selection[i].dimensions = Vec3.multiply(scaleFactor, selection[i].dimensions);
|
selection[i].dimensions = Vec3.multiply(scaleFactor, selection[i].dimensions);
|
||||||
|
@ -414,7 +417,8 @@ SelectionManager = function (side) {
|
||||||
entityID: selection[i].id,
|
entityID: selection[i].id,
|
||||||
properties: {
|
properties: {
|
||||||
dimensions: selection[i].dimensions,
|
dimensions: selection[i].dimensions,
|
||||||
localPosition: selection[i].localPosition
|
localPosition: selection[i].localPosition,
|
||||||
|
localRotation: selection[i].localRotation
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -476,7 +480,8 @@ SelectionManager = function (side) {
|
||||||
for (i = 1, length = selection.length; i < length; i++) {
|
for (i = 1, length = selection.length; i < length; i++) {
|
||||||
Entities.editEntity(selection[i].id, {
|
Entities.editEntity(selection[i].id, {
|
||||||
dimensions: Vec3.multiplyVbyV(factor, selection[i].dimensions),
|
dimensions: Vec3.multiplyVbyV(factor, selection[i].dimensions),
|
||||||
localPosition: Vec3.multiplyVbyV(factor, selection[i].localPosition)
|
localPosition: Vec3.multiplyVbyV(factor, selection[i].localPosition),
|
||||||
|
localRotation: selection[i].localRotation // Always specify localRotation otherwise rotations can drift.
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -518,7 +523,8 @@ SelectionManager = function (side) {
|
||||||
entityID: selection[i].id,
|
entityID: selection[i].id,
|
||||||
properties: {
|
properties: {
|
||||||
dimensions: selection[i].dimensions,
|
dimensions: selection[i].dimensions,
|
||||||
localPosition: selection[i].localPosition
|
localPosition: selection[i].localPosition,
|
||||||
|
localRotation: selection[i].localRotation
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
selection[i].dimensions = Vec3.multiplyVbyV(scaleFactor, selection[i].dimensions);
|
selection[i].dimensions = Vec3.multiplyVbyV(scaleFactor, selection[i].dimensions);
|
||||||
|
@ -527,7 +533,8 @@ SelectionManager = function (side) {
|
||||||
entityID: selection[i].id,
|
entityID: selection[i].id,
|
||||||
properties: {
|
properties: {
|
||||||
dimensions: selection[i].dimensions,
|
dimensions: selection[i].dimensions,
|
||||||
localPosition: selection[i].localPosition
|
localPosition: selection[i].localPosition,
|
||||||
|
localRotation: selection[i].localRotation
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue