Cílová poloha a automatický návrat
Automatický návrat je fyzický polohový pohon k uloženému cíli, který může být i mimo výchozí klidovou polohu.
target je kanonická hodnota 0..1. Samotný set_target() pouze uloží cíl; pohon zapíná auto_return: true nebo set_auto_return(true). Těleso k cíli dojede fyzikálně, není při vytvoření přesunuto do targetu.
| Položka | Význam / výchozí hodnota |
|---|---|
| Button / Pull Handle | auto_return:false, target:0 |
| Slider / Lever / Knob | auto_return:false, target:0.5 |
| Pedal | auto_return:true, target:0 |
| Joystick | auto_return:true, target:{x:0,y:0} |
| Wheel / Crank | Použijte position_motor nebo phase_motor; scalar návrat je nepodporovaný. |
Síla návratu#
Factory drive určuje max_force v N u lineárních typů nebo max_torque v N·m u rotačních typů a joysticku; frequency je Hz a damping poměr tlumení. Tyto hodnoty musí být konečné a nezáporné. Vyšší frequency zpřísňuje návrat, vyšší damping omezuje kmitání. Omezená síla nemusí překonat gravitaci, zatížení nebo odpor. Zámek má před pohonem přednost.
Příklad#
lever = jolt_control_lever({
auto_return: false,
drive: {max_torque: 15, frequency: 5, damping: 1}
});
lever.set_target(0.75);
lever.set_auto_return(true);
// Později uvolněte pohon; uložený cíl zůstane.
lever.set_auto_return(false);U Joysticku použijte set_target(x,y) s x²+y²≤1. Zapnutý návrat má přednost před scalar/joystick detenty. Chcete-li používat jen detenty, vypněte návrat. Nastavení cíle během zámku uloží požadavek a bez teleportu se projeví po odemknutí a aktualizaci mechanismu.
Nové související postupy#
Ověřené kontrakty operací#
Následující kontrakty rozlišují jednotky, návratové hodnoty, chyby a životnost podle aktuální implementace. Nevynechávej kontrolu výsledku: false, 0 a undefined mohou mít u různých metod odlišný význam.
| Symbol / vlastník | Signatura | Kontrakt operace |
|---|---|---|
| JoltControl.set_auto_return | JoltControl.set_auto_return(enabled) | Boolean; omezené controls, Wheel/Crank odmítá. Auto-return Boolean, target0..1 nebo Joystick XY v jednotkovém disku. Změna cíle při zámku uloží nastavení bez pohybu tělesa. |
| JoltControl.set_target | JoltControl.set_target(value,y=undefined) | Boolean; omezené controls, Wheel/Crank odmítá. Auto-return Boolean, target0..1 nebo Joystick XY v jednotkovém disku. Změna cíle při zámku uloží nastavení bez pohybu tělesa. |