Precise Rotation (#482)

* temporarily disabled adjust chaperone

* added experimental check to prevent rotation drift

* adjusted ss to 2 digits precision

* updated rotation model to be based on relative position and not drift

* fixed force precision error with supersampling

* added Error for turning too fast

* removed error impossible to execute

* fixed and cleaned up some potential failure points

* added inversion check

* re-worded warning

* added adjustchaperone2 defaulted to off to replace adjust chaperone

* moved adjust chaperone to settings removed from offsets tab

* moved adjust chaperone to settings removed from offsets tab

* enabled clipping for settings page no longer scrolls outside of its area

* updated strings for release
This commit is contained in:
ykeara
2020-07-11 12:26:56 -05:00
committed by GitHub
parent b12f5f8b34
commit 549f65dc32
10 changed files with 164 additions and 79 deletions
-12
View File
@@ -477,14 +477,6 @@ MyStackViewPage {
}
}
MyToggleButton {
id: spaceAdjustChaperoneToggle
text: "Adjust Chaperone"
onCheckedChanged: {
MoveCenterTabController.adjustChaperone = this.checked
}
}
Item {
Layout.fillWidth: true
}
@@ -517,7 +509,6 @@ MyStackViewPage {
Item { Layout.fillHeight: true; Layout.fillWidth: true}
Component.onCompleted: {
spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone
spaceMoveXText.text = MoveCenterTabController.offsetX.toFixed(2)
spaceMoveYText.text = MoveCenterTabController.offsetY.toFixed(2)
spaceMoveZText.text = MoveCenterTabController.offsetZ.toFixed(2)
@@ -574,9 +565,6 @@ MyStackViewPage {
var intTempRotation = MoveCenterTabController.tempRotation
spaceRotationSlider.value = ( intTempRotation / 100 )
spaceRotationText.text = ( intTempRotation / 100 ) + "°"
}
onAdjustChaperoneChanged: {
spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone
}
onLockXToggleChanged: {
lockXToggle.checked = MoveCenterTabController.lockXToggle
+14
View File
@@ -11,6 +11,9 @@ MyStackViewPage {
content: ScrollView{
ScrollBar.horizontal.policy: ScrollBar.AlwaysOff
ScrollBar.vertical.policy: ScrollBar.AlwaysOn
Layout.fillWidth: true
Layout.fillHeight: true
clip: true
ColumnLayout {
spacing: 18
@@ -87,6 +90,13 @@ MyStackViewPage {
SettingsTabController.setOculusSdkToggle(this.checked, true)
}
}
MyToggleButton {
id: spaceAdjustChaperoneToggle
text: "Adjust Chaperone"
onCheckedChanged: {
MoveCenterTabController.adjustChaperone = this.checked
}
}
RowLayout {
Layout.fillWidth: true
@@ -248,6 +258,7 @@ MyStackViewPage {
oculusSdkToggleButton.checked = SettingsTabController.oculusSdkToggle
seatedOldExternalWarning.visible = MoveCenterTabController.allowExternalEdits && MoveCenterTabController.oldStyleMotion && MoveCenterTabController.enableSeatedMotion
spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone
}
Connections {
@@ -280,6 +291,9 @@ MyStackViewPage {
enableSeatedMotionToggle.checked = MoveCenterTabController.enableSeatedMotion
seatedOldExternalWarning.visible = MoveCenterTabController.allowExternalEdits && MoveCenterTabController.oldStyleMotion && MoveCenterTabController.enableSeatedMotion
}
onAdjustChaperoneChanged: {
spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone
}
}
Connections {
@@ -38,7 +38,7 @@ GroupBox {
onCheckedChanged: {
VideoTabController.setAllowSupersampleOverride(this.checked, false)
VideoTabController.setSuperSampling(videoSupersamplingSlider.value, true)
videoSupersamplingText.text = VideoTabController.superSampling.toFixed(1)
videoSupersamplingText.text = VideoTabController.superSampling.toFixed(2)
if(!this.checked){
videoSupersamplingText.enabled = false
videoSupersamplingSlider.enabled = false
@@ -73,8 +73,8 @@ GroupBox {
Layout.fillWidth: true
onValueChanged: {
var val = this.value
videoSupersamplingText.text = val.toFixed(1)
VideoTabController.setSuperSampling(this.value.toFixed(1), true)
videoSupersamplingText.text = val.toFixed(2)
VideoTabController.setSuperSampling(this.value, true)
}
}
@@ -100,14 +100,14 @@ GroupBox {
if (val < 0.1) {
val = 0.1
}
var v = val.toFixed(1)
var v = val
if (v <= videoSupersamplingSlider.to) {
videoSupersamplingSlider.value = v
} else {
VideoTabController.setSuperSampling(v, false)
}
}
text = VideoTabController.superSampling.toFixed(1)
text = VideoTabController.superSampling.toFixed(2)
}
}
}
@@ -117,7 +117,7 @@ GroupBox {
}
Component.onCompleted: {
var s1 = VideoTabController.superSampling.toFixed(1)
var s1 = VideoTabController.superSampling
if (s1 <= videoSupersamplingSlider.to) {
videoSupersamplingSlider.value = s1
}
@@ -134,15 +134,15 @@ GroupBox {
target: VideoTabController
onSuperSamplingChanged: {
var s1 = VideoTabController.superSampling.toFixed(1)
var s1 = VideoTabController.superSampling
videoSupersamplingSlider.value = s1
videoSupersamplingText.text = s1
videoSupersamplingText.text = s1.toFixed(2)
}
onAllowSupersampleOverrideChanged: {
videoAllowSupersampleOverrideToggle.checked = VideoTabController.allowSupersampleOverride
var s1 = VideoTabController.superSampling.toFixed(1)
var s1 = VideoTabController.superSampling
videoSupersamplingSlider.value = s1
videoSupersamplingText.text = s1
videoSupersamplingText.text = s1.toFixed(2)
}
}