Ga direct naar de hoofdinhoud

Slimme bezorging

Uitdaging: In dit spel begint de VR-robot in het midden van de Number Grid City. Het doel van het spel is om de VR-robot naar vakje 0 te rijden om een ​​geheim pakketje op te halen en dit vervolgens af te leveren op een willekeurig toegewezen vakje. De robot kan alleen rijden in richtingen parallel aan de x-as of parallel aan de y-as. De snelste tijd wint!

  • Kies en download de Smart Delivery-achtergrond als PNG-bestand uit deze Google-slideshow .
  • Selecteer de Art Canvas+ Playground en upload de Smart Delivery-achtergrond.
  • Ontwikkel een algoritme om de VR-robot eerst naar raster 0 te sturen en vervolgens naar een willekeurig gekozen rasterpunt tussen 1 en 99 
    • Gebruik een variabele om het willekeurig gekozen getal op te slaan.
    • Print de variabelewaarde naar de printconsole om het toegewezen rasternummer weer te geven.
    • Gebruik de VR-pen om het bezorgtraject te tekenen met behulp van variabelen om de rijafstanden te bepalen in de richtingen parallel aan de x-as en de y-as.
    • Gebruik het blok [Vul gebied met kleur] om raster 0 en het toegewezen raster in te vullen.

Handige tips

  • Elk vakje in de genummerde rasterkaart meet 200 mm bij 200 mm.
  • Het cijfer op de eenhedenpositie van het toegewezen getal bepaalt het aantal vakjes dat de robot in een richting parallel aan de x-as moet bewegen vanaf vakje 0 om het toegewezen vakje te bereiken.
  • Het cijfer op de tientallenpositie van het toegewezen getal bepaalt het aantal vakjes dat de robot in een richting parallel aan de y-as moet afleggen vanaf vakje 0 om het toegewezen vakje te bereiken.
  • Gebruik het blok ' pick random uit de categorie 'Operators' om een ​​toegewezen bezorgrasternummer te selecteren.VEXcode Random-blok dat 'leest, kies een willekeurige waarde tussen' en 99.
    • Overeenkomend Python-commando:

      random.randint(1, 99)
  • Gebruik het blok rest uit de categorie Operators om het cijfer op de eenhedenpositie van het toegewezen rasternummer te berekenen.VEXcode Restblok dat de rest van toegewezen rasternummer / 10 leest' '.
    • Overeenkomend Python-commando:

      toegewezen rasternummer % 10
  • Gebruik het blok verdieping uit de categorie Operators om het cijfer op de tientallenpositie van het toegewezen rasternummer te berekenen.VEXcode Floor Function-blok dat de 'verdieping van toegewezen rasternummer / 10' leest.
    • Overeenkomend Python-commando:

      math.floor((assignedGridNumber) / 10)