Pomocné skripty · Fyzické ovládací prvky

Rychlostní motor

Rychlostní motor udržuje požadovanou relativní rychlost Wheel/Crank pomocí omezeného momentu.

GML
control.set_speed_motor(options)
control.get_speed_motor()
PoložkaVýznam / výchozí hodnota
enabledtrue
speed0 °/s; konečná podepsaná hodnota v ±10⁶ °/s.
max_torque10 N·m; konečná kladná hodnota.
activePouze getter: zda tento motor právě vlastní pohon.

Příklad#

GML
wheel = jolt_control_wheel({speed_motor: {speed: 120, max_torque: 5}});
var request = wheel.get_speed_motor();
request.speed = -60;
wheel.set_speed_motor(request);
// Brzda s omezeným momentem:
wheel.set_speed_motor({speed: 0, max_torque: 5});
// Uvolnění motoru:
wheel.set_speed_motor({enabled: false});

speed je cíl, skutečnou rychlost vrací get_speed(). Nula aktivně brzdí; enabled:false pohon uvolní. Motor nepřepisuje přímo rychlost tělesa, takže při nedostatečném momentu zpomalí nebo se zastaví pod zatížením. Relativní rychlost se měří vůči parentu, případně světu.

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íkSignaturaKontrakt operace
JoltControl.get_speed_motorJoltControl.get_speed_motor()Wheel/Crank; enabled true, speed default 0 v ±1000000 °/s, max_torque >0 N·m default 10. Setter Boolean; getter {enabled, speed, max_torque, active} nebo undefined.
JoltControl.set_speed_motorJoltControl.set_speed_motor(options)Wheel/Crank; enabled true, speed default 0 v ±1000000 °/s, max_torque >0 N·m default 10. Setter Boolean; getter {enabled, speed, max_torque, active} nebo undefined.