Robotspecifieke Python#

Invoering#

De VR Rover Robot bevat een aandrijflijn, een afstandssensor en acties die uniek zijn voor de Rover Rescue Speeltuin.

Alle standaard VEXcode VR-methoden zijn beschikbaar voor gebruik in de Rover Rescue Playground. Hieronder vindt u een lijst met alle beschikbare Playground-specifieke methoden:

Aandrijving - Beweeg en monitor de VR Rover.

  • Acties

    • drive - Laat de VR Rover oneindig vooruit of achteruit rijden.

    • drive_for - Verplaatst de VR Rover vooruit of achteruit over een specifieke afstand.

    • turn - Draait de VR Rover permanent naar links of rechts.

    • turn_for - Draait de VR Rover naar links of rechts voor een specifiek aantal graden.

    • turn_to_heading - Draait de VR Rover naar een specifieke richting tussen -359 en 359 graden.

    • drive_to - Rijdt de VR Rover rechtstreeks naar het geselecteerde object.

    • turn_to - Draait de VR Rover zodat deze naar het geselecteerde object kijkt.

    • go_to - Draait en rijdt de VR Rover naar het geselecteerde object.

    • stop - Stopt de beweging van de VR Rover.

  • Mutators

    • set_heading – Wijzigt de huidige koers van de VR Rover naar een nieuwe koers.

    • set_timeout - Stelt in hoeveel tijd de VR Rover nodig heeft om een ​​beweging te voltooien.

    • set_drive_velocity – Vertelt de VR Rover hoe snel hij moet rijden.

    • set_turn_velocity – Vertelt de VR Rover hoe snel hij moet draaien.

  • Verdieners

    • heading - Geeft de huidige koers van de VR Rover weer, van 0 tot 359,99 graden.

    • is_done - Geeft aan of de VR Rover klaar is met bewegen.

    • is_moving - Geeft aan of de VR Rover beweegt.

Console – Waarden afdrukken naar de console en monitoren.

  • Afdrukken

    • brain.print — Geeft tekst, getallen of variabele waarden weer in de console.

    • brain.new_line — Verplaatst de consolecursor naar het begin van de volgende regel.

    • brain.set_print_color — Stelt de kleur in die wordt gebruikt voor tekst die in de console wordt afgedrukt.

    • brain.clear — Verwijdert alle rijen uit de console.

  • Monitor

    • monitor_variable — Voegt een of meer vooraf gedefinieerde variabelen toe aan het tabblad Monitor.

    • monitor_sensor — Voegt een of meer sensorwaarden toe aan het tabblad Monitor.

Detectie - Detecteer objecten in de buurt met de afstandssensor van de rover.

  • Afstand

    • found_object - Geeft aan of de afstandssensor een object detecteert.

    • get_distance - Geeft de afstand tot het dichtstbijzijnde gedetecteerde object terug.

Acties - Interactie met de grondstoffen, vijanden en ingebouwde AI-systemen van de rover.

  • Acties

    • pickup - Verzamel mineralen.

    • drop - Laat mineralen vallen.

    • use - Gebruikt mineralen om energie te herstellen.

    • absorb_radiation - Absorbeert straling van een vijand.

    • standby - Zet de VR Rover in de standby-modus totdat een bepaalde batterijdrempel is bereikt.

  • Verdieners

    • angle - Geeft de richting naar een object in graden terug.

    • get_distance - Geeft de afstand tot een object in millimeters of inches terug.

    • location - Geeft de X- of Y-coördinaat van een object terug in millimeters of inches.

    • battery - Geeft het batterijniveau van de VR Rover weer.

    • minerals_stored - Geeft aan hoeveel mineralen de VR Rover meedraagt.

    • storage_capacity - Geeft de draagcapaciteit van de VR Rover terug.

    • level - Geeft het huidige niveau van de VR Rover terug.

    • exp - Geeft de huidige ervaringspunten van de VR Rover terug.

    • enemy_level - Geeft het niveau van de dichtstbijzijnde gedetecteerde vijand terug.

    • enemy_radiation - Geeft de straling van de dichtstbijzijnde gedetecteerde vijand terug.

    • detects - Geeft aan of de VR Rover mineralen of vijanden detecteert binnen zijn detectieradius.

    • sees - Geeft aan of de VR Rover een object binnen zijn zichtbereik ziet.

    • under_attack - Geeft aan of de VR Rover momenteel wordt aangevallen.

  • Terugbelverzoeken

    • on_under_attack - Voert een callback uit wanneer de VR Rover wordt aangevallen.

    • on_level_up - Voert een callback uit wanneer de VR Rover een level omhoog gaat.

De voorbeelden op deze pagina gebruiken de standaard startpositie van de Playground.

Aandrijving#

De aandrijving bepaalt hoe de VR Rover rijdt en stuurt. De aandrijving kan vooruit of achteruit rijden, naar links of rechts sturen, koersen bepalen en naar mineralen, vijanden of de basis rijden.

Acties#

drijfveer#

drive de VR Rover beweegt oneindig vooruit of achteruit. De VR Rover blijft bewegen totdat er een andere actie wordt uitgevoerd, zoals draaien of stoppen.

Usage:
drivetrain.drive(direction)

Parameters

Beschrijving

direction

De richting waarin de VR Rover beweegt: FORWARD of REVERSE.

def main():
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

drive_for#

drive_for verplaatst de VR Rover vooruit of achteruit over een bepaalde afstand. Het project wacht totdat de VR Rover klaar is met bewegen voordat de volgende regel code wordt uitgevoerd.

Usage:
drivetrain.drive_for(direction, distance, units, wait=True)

Parameters

Beschrijving

direction

De richting waarin de VR Rover beweegt: FORWARD of REVERSE.

distance

De afstand die de VR Rover aflegt. Dit kan een geheel getal integer ) of een decimaal getal (float ) zijn.

units

De afstandseenheid: INCHES of MM (millimeter).

wait

Optioneel. wait=True (standaard) zorgt ervoor dat het project wacht totdat de VR Rover klaar is met bewegen voordat de volgende regel code wordt uitgevoerd. wait=False zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

def main():
    drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

draai#

turn draait de VR Rover oneindig naar links of rechts. De VR Rover blijft draaien totdat er een andere actie wordt uitgevoerd, zoals rijden of stoppen.

Usage:
drivetrain.turn(direction)

Parameters

Beschrijving

direction

De richting waarin de VR Rover draait: LEFT of RIGHT.

def main():
    drivetrain.turn(RIGHT)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

beurt_voor#

turn_for draait de VR Rover een specifiek aantal graden naar links of rechts. De draaiing is relatief ten opzichte van de huidige positie van de VR Rover. Het project wacht totdat de VR Rover klaar is met draaien voordat de volgende regel code wordt uitgevoerd.

Usage:
drivetrain.turn_for(direction, angle, units, wait=True)

Parameters

Beschrijving

direction

De richting waarin de VR Rover draait: LEFT of RIGHT.

angle

Het aantal graden dat de VR Rover draait. Dit kan een geheel getal integer ) of een decimaal getal (float ) zijn.

units

De rotatie-eenheid: DEGREES.

wait

Optioneel. wait=True (standaard) zorgt ervoor dat het project wacht totdat de VR Rover klaar is met draaien voordat de volgende regel code wordt uitgevoerd. wait=False zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

def main():
    drivetrain.turn_for(RIGHT, 90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

koptekst#

Een koers is de richting waarin de VR Rover kijkt, gemeten in graden. turn_to_heading draait de VR Rover naar een specifieke koers tussen -359 en 359 graden. De VR Rover draait in de kortste richting om de doelkoers te bereiken.

De VR Rover begint met een koers van 0 graden.

Het project wacht tot de VR Rover klaar is met draaien voordat de volgende regel code wordt uitgevoerd.

Usage:
drivetrain.turn_to_heading(heading, units, wait=True)

Parameters

Beschrijving

heading

De richting waarin de VR Rover moet kijken, in graden. Dit kan een geheel getal integer ) of een decimaal getal (float) zijn van -359 tot 359.

units

De kopeenheid: DEGREES.

wait

Optioneel. wait=True (standaard) zorgt ervoor dat het project wacht totdat de VR Rover klaar is met draaien voordat de volgende regel code wordt uitgevoerd. wait=False zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

def main():
    drivetrain.turn_to_heading(90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

drive_to#

drive_to stuurt de VR Rover rechtstreeks naar het geselecteerde object.

Usage:
drivetrain.drive_to(object, wait=True)

Parameters

Beschrijving

object

Naar welk object de VR Rover zal rijden:

  • BASE
  • ENEMY
  • MINERALS

wait

Optioneel. wait=True (standaard) zorgt ervoor dat het project wacht tot de beweging is voltooid voordat de volgende regel code wordt uitgevoerd. wait=False zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

Als er geen mineraal of vijand wordt gedetecteerd binnen het zichtbereik van de VR Rover wanneer drive_to wordt aangeroepen, zal de VR Rover niet rijden. De basis kan altijd als doelwit worden gekozen.

Als de VR Rover meerdere mineralen of meerdere vijanden detecteert, rijdt hij naar de dichtstbijzijnde optie.

def main():
    drivetrain.drive_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

draai_naar#

turn_to draait de VR Rover zodat deze naar het geselecteerde object kijkt.

Usage:
drivetrain.turn_to(object, wait=True)

Parameters

Beschrijving

object

Naar welk object de VR Rover zich zal richten:

  • BASE
  • ENEMY
  • MINERALS

wait

Optioneel.

  • wait=True (standaard) — Wacht tot de beurt is afgelopen.
  • wait=False — Begin de beurt en ga direct verder.

Als er geen mineraal of vijand wordt gedetecteerd binnen het zichtbereik van de VR Rover wanneer turn_to wordt aangeroepen, zal de VR Rover niet draaien. De basis kan altijd als doelwit worden gekozen.

Als de VR Rover meerdere mineralen of meerdere vijanden detecteert, zal hij zich naar de dichtstbijzijnde optie richten.

def main():
    drivetrain.turn_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

ga_naar#

go_to draait en rijdt de VR Rover naar het geselecteerde object.

Usage:
drivetrain.go_to(object, wait=True)

Parameters

Beschrijving

object

Naar welk object zal de VR Rover draaien en rijden:

  • BASE
  • ENEMY
  • MINERALS

wait

Optioneel. wait=True (standaard) zorgt ervoor dat het project wacht tot de beweging is voltooid voordat de volgende regel code wordt uitgevoerd. wait=False zorgt ervoor dat de volgende regel code direct wordt uitgevoerd.

Als er geen mineraal of vijand wordt gedetecteerd binnen het zichtbereik van de VR Rover wanneer go_to wordt aangeroepen, zal de VR Rover niet rijden. De basis kan altijd als doelwit worden gekozen.

Als de VR Rover meerdere mineralen of meerdere vijanden detecteert, zal hij naar de dichtstbijzijnde optie bewegen.

def main():
    drivetrain.go_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

stop#

stop stopt de beweging van de VR Rover.

Usage:
drivetrain.stop()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

Mutators#

set_heading#

Een koers is de richting waarin de VR Rover kijkt, gemeten in graden. set_heading verandert de huidige koers van de VR Rover naar een nieuwe koerswaarde.

Als de VR Rover bijvoorbeeld naar rechts is gedraaid, zorgt het instellen van de koers op 0 graden ervoor dat die naar rechts gerichte positie de nieuwe 0 graden wordt. Vervolgens kan de VR Rover zich op basis van die nieuwe koers naar andere posities draaien.

Usage:
drivetrain.set_heading(heading, units)

Parameters

Beschrijving

heading

De koerswaarde, in graden, die moet worden ingesteld voor de VR Rover. Dit kan een geheel getal integer ) of een decimaal getal (float ) zijn.

units

De kopeenheid: DEGREES.

def main():
    drivetrain.set_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

set_timeout#

set_timeout bepaalt hoeveel tijd de VR Rover krijgt om een ​​beweging te voltooien. Als de VR Rover de beweging niet binnen die tijd kan voltooien, stopt hij met proberen en gaat hij verder met de volgende regel code. Dit voorkomt dat de VR Rover vastloopt tijdens een beweging.

Usage:
drivetrain.set_timeout(value, units)

Parameters

Beschrijving

value

De hoeveelheid tijd die de VR Rover kan proberen om een ​​beweging te voltooien. Dit kan een positief geheel getal zijn integer of een decimaal getal (float).

units

De tijdseenheid: SECONDS of MSEC (milliseconden).

def main():
    drivetrain.set_timeout(1, SECONDS)

# VR threads — Do not delete
vr_thread(main)

set_drive_velocity#

set_drive_velocity vertelt de VR Rover hoe snel hij moet rijden. Een hoger percentage zorgt ervoor dat de VR Rover sneller rijdt en een lager percentage zorgt ervoor dat de VR Rover langzamer rijdt.

Elk project begint met de VR Rover die standaard met 50% snelheid rijdt.

Let op: Een hogere snelheid zorgt ervoor dat de VR Rover sneller rijdt, maar mogelijk minder nauwkeurig. Een lagere snelheid zorgt ervoor dat de VR Rover langzamer rijdt, maar mogelijk nauwkeuriger.

Usage:
drivetrain.set_drive_velocity(velocity, units)

Parameters

Beschrijving

velocity

De snelheid waarmee gereden moet worden, van 0% tot 100%. Dit kan een geheel getal integer of een decimaal getal (float ) zijn.

units

De snelheidseenheid: PERCENT.

def main():
    drivetrain.set_drive_velocity(50, PERCENT)

# VR threads — Do not delete
vr_thread(main)

set_turn_velocity#

set_turn_velocity geeft de VR Rover aan hoe snel hij moet draaien. Een hoger percentage zorgt ervoor dat de VR Rover sneller draait en een lager percentage zorgt ervoor dat de VR Rover langzamer draait.

Elk project begint met de VR Rover die standaard met 50% snelheid draait.

Let op: Een hogere snelheid zorgt ervoor dat de VR Rover sneller draait, maar de precisie kan lager zijn. Een lagere snelheid zorgt ervoor dat de VR Rover langzamer draait, maar de precisie kan hoger zijn.

Usage:
drivetrain.set_turn_velocity(velocity, units)

Parameters

Beschrijving

velocity

De snelheid waarmee je draait, van 0% tot 100%. Dit kan een geheel getal integer ) of een decimaal getal (float ) zijn.

units

De snelheidseenheid: PERCENT.

def main():
    drivetrain.set_turn_velocity(50, PERCENT)

# VR threads — Do not delete
vr_thread(main)

Getters#

kop#

Een koers is de richting waarin de VR Rover kijkt, gemeten in graden. heading geeft de huidige koers van de VR Rover weer, van 0 tot 359,99 graden.

De VR Rover begint met een koers van 0 graden.

Usage:
drivetrain.heading(units)

Parameters

Beschrijving

units

De kopeenheid: DEGREES.

def main():
    brain.screen.print(drivetrain.heading(DEGREES))

# VR threads — Do not delete
vr_thread(main)

is_klaar#

is_done geeft als Booleaanse waarde aan of de VR Rover klaar is met bewegen. Dit kan worden gebruikt om de timing van andere acties te regelen op basis van de beweging van de VR Rover.

  • True — De VR Rover is klaar met bewegen.

  • False — De VR Rover is nog steeds in beweging.

Deze methode werkt samen met Drivetrain-methoden die de parameter wait hebben, zoals drive_for, turn_for, turn_to_heading, drive_to, turn_to, en go_to.

Usage:
drivetrain.is_done()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    drivetrain.drive_for(FORWARD, 200, MM, wait=False)
    wait(0.1, SECONDS)
    if drivetrain.is_done():
        brain.screen.print("Drive complete")

# VR threads — Do not delete
vr_thread(main)

is_bewegend#

is_moving geeft als Booleaanse waarde aan of de VR Rover beweegt. Dit kan worden gebruikt om de timing van andere gedragingen te regelen op basis van de beweging van de VR Rover.

  • True — De VR Rover is in beweging.

  • False — De VR Rover beweegt niet.

Usage:
drivetrain.is_moving()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    drivetrain.drive_for(FORWARD, 200, MM, wait=False)
    wait(0.1, SECONDS)
    if drivetrain.is_moving():
        brain.screen.print("Still moving")

# VR threads — Do not delete
vr_thread(main)

Troosten#

De console geeft tekst, getallen en variabele waarden weer terwijl een project wordt uitgevoerd. Consolemethoden kunnen ook de cursor naar een nieuwe regel verplaatsen, de kleur van de afgedrukte tekst instellen nadat de kleur is gewijzigd, de console wissen en variabelen of sensorwaarden toevoegen aan het tabblad Monitor.

Afdrukken#

hersenen.print#

brain.print geeft tekst, getallen of variabele waarden weer in de console, gebruikmakend van de huidige cursorpositie.

Gebruik brain.new_line wanneer je wilt dat de volgende afgedrukte waarde op een nieuwe regel begint.

Usage:
brain.print(value)

Parameters

Beschrijving

value

De tekst, het getal of de variabelewaarde die in de console moet worden weergegeven.

def main():
    # Display a message in the Console
    brain.print("Hello, rover!")

# VR threads — Do not delete
vr_thread(main)

De VEXcode-console, met de console en de tekst "Hallo, robot!" weergegeven.

brain.new_line#

brain.new_line verplaatst de cursor naar kolom 1 op de volgende regel in de console. De volgende afgedrukte waarde verschijnt op die regel.

Usage:
brain.new_line()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    # Print on two rows
    brain.print("Row 1")
    brain.new_line()
    brain.print("Row 2")

# VR threads — Do not delete
vr_thread(main)

De VEXcode-console, die de console en de tekst "Rij 1" op de eerste regel en "Rij 2" op de tweede regel weergeeft.

hersenen.set_print_color#

brain.set_print_color stelt de kleur in die wordt gebruikt voor tekst die in de console wordt afgedrukt nadat deze methode is gebruikt. Aan het begin van een project is de tekstkleur van de console ingesteld op BLACK.

Usage:
brain.set_print_color(color)

Parameters

Beschrijving

color

De kleur die gebruikt moet worden voor tekst die in de console wordt afgedrukt:

  • BLACK
  • BLUE
  • GREEN
  • RED

def main():
    # Print text in different colors
    brain.print("Default text color")
    brain.new_line()
    brain.set_print_color(RED)
    brain.print("Red text color")

# VR threads — Do not delete
vr_thread(main)

De VEXcode-console, met de console en de tekst "Standaard tekstkleur" in zwart op de eerste regel en de tekst "Rode tekstkleur" in rood op de tweede regel.

hersenen.helder#

brain.clear wist alle rijen uit de console en verplaatst de cursor terug naar rij 1.

Usage:
brain.clear()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    # Display text, then clear it after two seconds
    brain.print("This will disappear...")
    wait(2, SECONDS)
    brain.clear()

# VR threads — Do not delete
vr_thread(main)

Monitor#

monitor_variabele#

monitor_variable voegt een of meer vooraf gedefinieerde variabelen toe aan het tabblad Monitor in VEXcode. Hiermee kunt u de waarde van een variabele zien veranderen terwijl een project wordt uitgevoerd.

Variabelen moeten globaal zijn om ze succesvol te kunnen monitoren met monitor_variable . Geef elke variabelenaam op als een tekenreeks.

Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)

Parameters

Beschrijving

variable

De naam van een vooraf gedefinieerde globale variabele die moet worden bewaakt, gegeven als een tekenreeks. Om meerdere variabelen te bewaken, scheidt u de variabelenamen met een komma.

def main():
    # Monitor the amount of loops
    global loops
    monitor_variable("loops")

    # Drive forward 3 times
    for loops in range(3):
        drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

monitor_sensor#

monitor_sensor voegt een of meer sensorwaarden toe aan het tabblad Monitor in VEXcode. Hiermee kunt u de wijzigingen in sensorwaarden volgen terwijl een project wordt uitgevoerd.

Geef elke sensorwaarde op als een tekenreeks.

Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)

Parameters

Beschrijving

sensor

De sensorwaarde die moet worden bewaakt, wordt als tekenreeks opgegeven. Om meerdere sensorwaarden te bewaken, scheidt u elke sensorwaarde met een komma. Ondersteunde sensor-ID’s zijn onder andere:

  • Hersenen
    • brain.timer_time
  • Aandrijflijn
    • drivetrain.is_done
    • drivetrain.is_moving
    • drivetrain.heading
  • Afstandssensor
    • distance.found_object
    • distance.get_distance
  • Rover
    • rover.battery
    • rover.minerals_stored
    • rover.level
    • rover.exp
    • rover.storage_capacity
    • rover.under_attack
    • rover.enemy_radiation
    • rover.enemy_level
    • rover.angle
    • rover.location
    • rover.detects
    • rover.sees
    • rover.get_distance

def main():
    # Monitor the rover's battery
    monitor_sensor("rover.battery")
    drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

Waarneming#

Afstand#

gevonden_object#

found_object geeft aan of de afstandssensor een object detecteert.

Usage:
distance.found_object()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    if distance.found_object():
        brain.screen.print("Object detected")

# VR threads — Do not delete
vr_thread(main)

get_distance#

get_distance retourneert de afstand tot het dichtstbijzijnde gedetecteerde object door de afstandssensor.

Usage:
distance.get_distance(units)

Parameters

Beschrijving

units

De afstandseenheid: INCHES of MM

def main():
    brain.screen.print(distance.get_distance(MM))

# VR threads — Do not delete
vr_thread(main)

Acties#

Acties#

ophalen#

pickup pakt mineralen op.

Usage:
rover.pickup(object)

Parameters

Beschrijving

object

Het object dat de VR Rover kan oppakken:

  • MINERALS

def main():
    rover.pickup(MINERALS)

# VR threads — Do not delete
vr_thread(main)

druppel#

drop druppel bevatte mineralen.

Usage:
rover.drop(object)

Parameters

Beschrijving

object

Het object dat de VR Rover kan laten vallen:

  • MINERALS

def main():
    rover.drop(MINERALS)

# VR threads — Do not delete
vr_thread(main)

gebruik#

use gebruikt mineralen om energie aan te vullen. Mineralen moeten zich in de grond bevinden om gebruikt te kunnen worden.

Usage:
rover.use(object)

Parameters

Beschrijving

object

Het object dat de VR Rover kan gebruiken:

  • MINERALS

def main():
    rover.use(MINERALS)

# VR threads — Do not delete
vr_thread(main)

absorb_radiatie#

absorb_radiation absorbeert straling van een vijand.

Usage:
rover.absorb_radiation(object)

Parameters

Beschrijving

object

Het object waarvan de VR Rover straling kan absorberen:

  • ENEMY

def main():
    rover.absorb_radiation(ENEMY)

# VR threads — Do not delete
vr_thread(main)

stand-by#

standby zet de VR Rover in de standby-modus totdat de opgegeven batterijdrempel is bereikt.

Usage:
rover.standby(percent)

Parameters

Beschrijving

percent

De batterijdrempel waarbij de VR Rover de standbymodus verlaat, van 0 tot 100.

Als de geselecteerde drempelwaarde gelijk is aan of hoger is dan het huidige batterijniveau, zal de VR Rover niet in de standbymodus gaan.

def main():
    rover.standby(50)

# VR threads — Do not delete
vr_thread(main)

Getters#

hoek#

angle geeft de richting in graden naar het geselecteerde object terug.

Usage:
rover.angle(object)

Parameters

Beschrijving

object

Het object dat de richting moet aangeven is:

  • BASE
  • ENEMY
  • MINERALS

Voor mineralen en vijanden geldt dat het object zich binnen 1000 mm van de VR Rover moet bevinden en binnen het gezichtsveld moet vallen. De basis kan altijd worden gemeld.

def main():
    brain.screen.print(rover.angle(MINERALS))

# VR threads — Do not delete
vr_thread(main)

get_distance#

get_distance retourneert de afstand van de VR Rover tot het geselecteerde object.

Usage:
rover.get_distance(object, units=MM)

Parameters

Beschrijving

object

Het object waarnaar de afstand moet worden gerapporteerd:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

units

Optioneel. De eenheid die wordt gebruikt om de afstand aan te geven: INCHES of MM

Voor mineralen en vijanden geldt dat het object zich binnen 1000 mm van de VR Rover moet bevinden en binnen het gezichtsveld moet vallen. De basis kan altijd worden gemeld.

Bij obstakels en gevaren rapporteert de methode de afstand tot het zichtbare object. Als er geen obstakels of gevaren in zicht zijn, retourneert de methode 1000 mm of 39.37 inch.

def main():
    brain.screen.print(rover.get_distance(MINERALS, MM))

# VR threads — Do not delete
vr_thread(main)

locatie#

location retourneert de X- of Y-coördinaatlocatie van het geselecteerde object.

Usage:
rover.location(object, axis, units)

Parameters

Beschrijving

object

Het object waarvan de locatie moet worden gerapporteerd:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

axis

Welke coördinaat moet worden geretourneerd:

  • X
  • Y

units

De eenheid die wordt gebruikt om de locatie te rapporteren: INCHES of MM

Voor mineralen en vijanden geldt dat het object zich binnen 1000 mm van de VR Rover moet bevinden en binnen het gezichtsveld moet vallen. De basis kan altijd worden gemeld.

def main():
    brain.screen.print(rover.location(MINERALS, X, MM))

# VR threads — Do not delete
vr_thread(main)

batterij#

battery geeft het huidige batterijniveau van de VR Rover weer.

Usage:
rover.battery()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    brain.screen.print(rover.battery())

# VR threads — Do not delete
vr_thread(main)

mineralen_opgeslagen#

minerals_stored geeft de huidige hoeveelheid mineralen weer die de VR Rover in opslag heeft.

Usage:
rover.minerals_stored()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    brain.screen.print(rover.minerals_stored())

# VR threads — Do not delete
vr_thread(main)

opslagcapaciteit#

storage_capacity geeft de draagcapaciteit van de VR Rover weer.

Usage:
rover.storage_capacity()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    brain.screen.print(rover.storage_capacity())

# VR threads — Do not delete
vr_thread(main)

niveau#

level geeft het huidige niveau van de VR Rover weer.

Usage:
rover.level()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    brain.screen.print(rover.level())

# VR threads — Do not delete
vr_thread(main)

exp#

exp geeft het aantal ervaringspunten weer dat de VR Rover op het huidige niveau heeft.

Usage:
rover.exp()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    brain.screen.print(rover.exp())

# VR threads — Do not delete
vr_thread(main)

vijand_niveau#

enemy_level geeft het niveau terug van de dichtstbijzijnde vijand die door de VR Rover is gedetecteerd.

Usage:
rover.enemy_level()

Parameters

Beschrijving

Deze methode heeft geen parameters.

Als er binnen de detectieradius van de rover geen vijand wordt gedetecteerd, retourneert deze methode 0.

def main():
    brain.screen.print(rover.enemy_level())

# VR threads — Do not delete
vr_thread(main)

vijandelijke_straling#

enemy_radiation geeft de straling weer van de dichtstbijzijnde vijand die door de VR Rover is gedetecteerd.

Usage:
rover.enemy_radiation()

Parameters

Beschrijving

Deze methode heeft geen parameters.

Als er binnen de detectieradius van de rover geen vijand wordt gedetecteerd, retourneert deze methode 0.

def main():
    brain.screen.print(rover.enemy_radiation())

# VR threads — Do not delete
vr_thread(main)

detecteert#

detects retourneert of de VR Rover mineralen of vijanden binnen zijn detectieradius detecteert.

Usage:
rover.detects(object)

Parameters

Beschrijving

object

Te detecteren object:

  • ENEMY
  • MINERALS

De detectieradius van de VR Rover is 800 mm.

def main():
    if rover.detects(MINERALS):
        brain.screen.print("Minerals detected")

# VR threads — Do not delete
vr_thread(main)

ziet#

sees en geeft aan of de VR Rover het geselecteerde object binnen zijn gezichtsveld ziet.

Usage:
rover.sees(object)

Parameters

Beschrijving

object

Te bekijken object:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

De VR Rover kan objecten waarnemen binnen een straal van 1000 mm en binnen zijn gezichtsveld van 40 graden.

def main():
    if rover.sees(MINERALS):
        brain.screen.print("Minerals in view")

# VR threads — Do not delete
vr_thread(main)

onder_aanval#

under_attack geeft aan of de VR Rover momenteel wordt aangevallen door een vijand.

Usage:
rover.under_attack()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    if rover.under_attack():
        brain.screen.print("The rover is under attack!")

# VR threads — Do not delete
vr_thread(main)

Terugbelverzoeken#

onder_aanval#

on_under_attack registreert een callbackfunctie die wordt uitgevoerd wanneer de VR Rover schade oploopt door een vijand.

Usage:
rover.on_under_attack(callback)

Parameters

Beschrijving

callback

De functie die moet worden uitgevoerd wanneer de VR Rover wordt aangevallen.

def under_attack():
    brain.screen.print("The rover is under attack!")

def main():
    rover.on_under_attack(under_attack)
    wait(0.15, SECONDS)

# VR threads — Do not delete
vr_thread(main)

on_level_up#

on_level_up registreert een callbackfunctie die wordt uitgevoerd wanneer de VR Rover van het ene niveau naar het volgende gaat.

Usage:
rover.on_level_up(callback)

Parameters

Beschrijving

callback

De functie die wordt uitgevoerd wanneer de VR Rover een level omhoog gaat.

def level_up():
    brain.screen.print("The rover leveled up!")

def main():
    rover.on_level_up(level_up)
    wait(0.15, SECONDS)

# VR threads — Do not delete
vr_thread(main)