Otočný knoflík (Knob)
Knob je otočný knoflík s koncovými dorazy a normalizovaným výstupem.
| Položka | Význam / výchozí hodnota |
|---|---|
| initial_angle | Úhel ve stupních uvnitř min/max limitů; výchozí 0. |
jolt_control_knob(options=undefined)Před vytvořením zavolejte jolt_start(). Každá factory přijímá jeden volitelný options struct a vrací JoltControl, při chybě undefined. Společné options: parent, position/rotation nebo local_position/local_rotation, mass, resistance a output. Rozměry jsou celé délky v metrech, hmotnost v kg; úhly tohoto API jsou ve stupních. Detaily společného nastavení najdete v kapitole Uchycení, velikost a vykreslování.
| Položka | Význam / výchozí hodnota |
|---|---|
| size | {radius:0.2, depth:0.1} |
| mass | 0.5 kg |
| min_angle / max_angle | −80° / 80° |
| auto_return / target | false / 0.5 |
| drive | {max_torque:10, frequency:4, damping:1} |
| detents | [] |
Válec je soustředný s pivotem a otáčí se kolem lokální +Z. Limity musí obsahovat nulu a splnit 0 < max_angle − min_angle < 180°. get_value() mapuje tento omezený rozsah na 0..1. Pro volné víceotáčkové kolečko vyberte Wheel.
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.
Příklad#
knob = jolt_control_knob({
min_angle: -70, max_angle: 70,
resistance: 0.15,
output: {min: 20, max: 200, inverted: false}
});
var temperature = knob.get_output_value();Integrace s aktuálním projektem#
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 |
|---|---|---|
| jolt_control_knob | jolt_control_knob(options=undefined) | Vyžaduje managed svět, options volitelné, vrací vlastněný JoltControl nebo undefined. Bez parent světové position/rotation; s parent místní local_position/local_rotation, nekombinuj. Knoflík: radius.2/depth.1 m, mass.5 kg, min/max -80/80°, initial0, auto_return false, target.5. |