Slaan oor na hoofinhoud
LibraTool logoLibraTool

Gratis Muntstuk-gooi & draai-wiel

Werp 'n virtuele muntstuk, draai 'n aanpasbare wiel, of kies ewekansig uit 'n lys opsies. Gebruik jou blaaier se kriptografies veilige ewekansigheid — nie 'n verifieerbare openbare trekking nie, dus vermy gereglementeerde wedstryde.

Werk vanlyn sodra gelaai

🔒 Al drie gebruik jou blaaier se kriptografies-veilige ewekansige kragopwekker: die resultaat word eers gekies, dan geanimeer — die muntstuk is 'n ware 50/50, die wiel word gedraai na sy reeds gekose resultaat, en die keuse is onbevooroordeeld. Niks verlaat jou toestel nie. Dit is billik vir terloopse gebruik, maar dit is nie 'n verifieerbare openbare trekking nie, dus vermy gereglementeerde wedstryde of hoë-waarde besluite.

Algemene gebruike

  • Slaan muntstuk om besluite te neemGebruik 'n regverdige virtuele muntstuk om vinnig onbevooroordeelde besluite te neem wanneer u tussen twee opsies vasloop.
  • Draai wiel vir ewekansige spantoewysingGebruik die aanpasbare draaiwheel om spanlede ewekansig aan take rolle of groepe toe te wys.
  • Ewekansige studentekieser vir klaskamersGebruik die draaiwheel of opsiekieser om ewekansig studente op te roep groepe toe te wys of vrywilligers te kies.
  • Virtuele muntslagvir sportSlaan 'n regverdige muntstuk om spankante eerste besit slaanorde of ander sportbesluite te bepaal.
  • Ewekansige kieser vir weggawesKies 'n ewekansige wenner uit 'n inskrywingsly deur die Opsiekieser te gebruik - deursigtig en regverdig.

Hoe dit werk

Al drie modusse — muntgooi, draaiwiel, en opsiekieser — gebruik die blaaier se ingeboude Web Crypto-API (crypto.getRandomValues) om die wenuitkoms te genereer, dryf dan die animasie heeltemal kliëntkant met CSS-transformasies en requestAnimationFrame. Geen bediener is op enige punt betrokke nie.

  1. 1
    Web Crypto kies die wenner
    Voordat enige animasie begin, vul crypto.getRandomValues 'n Uint32Array met 'n kriptografies-toevallige 32-bis-heelgetal. 'n Modulo-bewerking karteer dit na die aantal opsies (2 vir kop/stert, N vir die wiel of kieser), sodat elke uitkoms 'n presies gelyke waarskynlikheid het.
  2. 2
    Rotasiehoek word bereken om op die resultaat te land
    Vir die munt bereken die kode die kortste bykomende rotasie (bo-op die huidige kumulatiewe hoek) wat eindig met die korrekte kant bo — kop by 0°, stert by 180° — en voeg dan 5 volle draaie by sodat dit soos 'n werklike tuimeling lyk. Die wiel doen dieselfde: dit vind die hoekverskuiwing wat die wenskyf onder die wyser bring, voeg 6 volle rotasies by, en pas 'n klein lukrake wiggeling toe sodat die wyser nie altyd dood-middel in die skyf stop nie.
  3. 3
    CSS-oorgange en requestAnimationFrame dryf die animasie
    Die munt en wiel animeer via CSS-transform met 'n kubieke-bezier-gladstrykingskurwe toegepas op 'n enkele opgehoopte rotasiewaarde — geen per-raam-JavaScript is nodig sodra die hoek gestel is nie. Die opsiekieser gebruik eerder requestAnimationFrame: elke raam bepaal 'n kwadraties-groeiende interval of die uitligting gevorder moet word, wat 'n gleufmasjien-vertraging produseer wat altyd op die voorafbepaalde wenner stop.
  4. 4
    Resultaat word onthul en na sessiegeskiedenis gelog
    'n setTimeout gaan af wanneer die animasie voltooi is (1.3 s vir die munt, 4.3 s vir die wiel) en skryf die resultaat na toestand. Die muntmodus hou 'n lopende sessiegeskiedenis van tot 24 gooie met kop/stert-tellings. Gebruikers met prefers-reduced-motion geaktiveer slaan animasie heeltemal oor en sien die resultaat onmiddellik.

Verwante gereedskap

Gereelde vrae