From 1ec88f420d5684125c6315398c6fd0bbee79e68b Mon Sep 17 00:00:00 2001 From: Watanabe Yuki Date: Wed, 20 Feb 2019 00:06:51 +0900 Subject: [PATCH] =?UTF-8?q?=E5=88=B6=E5=8B=95=E5=87=BA=E5=8A=9B:=20?= =?UTF-8?q?=E7=8F=BE=E5=9C=A8=E6=B8=9B=E9=80=9F=E5=BA=A6=E3=81=8C=E9=80=86?= =?UTF-8?q?=E7=AE=97=E5=80=A4=E3=81=8B=E3=82=89=E9=9B=A2=E3=82=8C=E3=81=A6?= =?UTF-8?q?=E3=81=84=E3=81=A3=E3=81=A6=E3=81=84=E3=82=8B=E3=81=A8=E3=81=8D?= =?UTF-8?q?=E3=81=AF=E5=86=8D=E8=A8=88=E7=AE=97=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit この場合はさっさとノッチ当たり減速度にフィードバックしてよい。 --- ...\266\345\213\225\345\207\272\345\212\233.cpp" | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git "a/bve-autopilot/\345\210\266\345\213\225\345\207\272\345\212\233.cpp" "b/bve-autopilot/\345\210\266\345\213\225\345\207\272\345\212\233.cpp" index f09319e..4b802fc 100644 --- "a/bve-autopilot/\345\210\266\345\213\225\345\207\272\345\212\233.cpp" +++ "b/bve-autopilot/\345\210\266\345\213\225\345\207\272\345\212\233.cpp" @@ -57,19 +57,23 @@ namespace autopilot return; } - // 加速度が大きく変化している間はノッチ当たり減速度を再計算しない - if (std::abs(加速状態.加加速度()) > mps_from_kmph(1)) { - return; - } - // 減速していなければノッチ当たり減速度を再計算しない 加速度型 減速度 = -加速状態.加速度(); if (減速度 <= 0) { return; } - // ノッチ当たり減速度を再計算する + // 加速度が大きく前回結果に近付いていっている間は再計算しない int 実効ノッチ = 前回出力ノッチ - _無効ノッチ数; + 加速度型 逆算減速度 = 実効ノッチ * _ノッチ当たり減速度; + if (加速状態.加加速度() > mps_from_kmph(1) && 減速度 > 逆算減速度) { + return; + } + if (加速状態.加加速度() < mps_from_kmph(1) && 減速度 < 逆算減速度) { + return; + } + + // ノッチ当たり減速度を再計算する _ノッチ当たり減速度 = 減速度 / 実効ノッチ; }