Cámara#
Introducción#
The VEX AIR Drone includes two Vision Sensors that serve as its onboard cameras—one on the front and one on the bottom. These can capture both images and video during flight. In VEXcode AIR, the word “camera” always refers to one of these Vision Sensors. For example, in a command like drone.camera.start_recording(FORWARD_CAMERA)
, camera
refers to the Vision Sensors, and FORWARD_CAMERA
selects the front-facing one.
Para transferir grabaciones de video e imágenes desde el controlador del dron VEX AIR, conéctelo a su computadora. Aparecerá como un dispositivo de almacenamiento masivo (similar a una memoria USB), lo que le permitirá copiar archivos directamente. Después de finalizar un proyecto, espere aproximadamente un minuto a que el controlador termine de descargar las imágenes o grabaciones del dron antes de intentar copiarlas.
A continuación se muestra una lista de todos los métodos disponibles:
Comportamiento
start_recording
– Records video from a Vision Sensor.stop_recording
– Stops recording from a Vision Sensor.capture_image
– Captures an image from a Vision Sensor.
Mutadores
show_camera
– Shows the selected Vision Sensor on the VEX AIR Drone Controller.hide_camera
– Hides the Vision Sensor feed on the controller.set_overlay_reticle
– Shows or hides the overlay reticle.set_overlay_telemetry
– Shows or hides telemetry data.
Conseguidores
is_recording
– Returns whether the Vision Sensor is recording.get_recording_time
– Returns the time spent recording.
Comportamiento#
start_recording#
start_recording
starts a recording with the specified Vision Sensor.
Para obtener información sobre cómo ver y recuperar grabaciones, vaya aquí.
Uso:
drone.camera.start_recording(camera)
Parámetros |
Descripción |
---|---|
|
The Vision Sensor to record with:
|
# Press button 7 to end recording
def end_recording():
drone.camera.stop_recording(FORWARD_CAMERA)
drone.land()
controller.button7.pressed(end_recording)
# Record a video as you fly around
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
drone.camera.start_recording(FORWARD_CAMERA)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
stop_recording#
stop_recording
stops the recording of the specified Vision Sensor.
Para obtener información sobre cómo ver y recuperar grabaciones, vaya aquí.
Uso:
drone.camera.stop_recording(camera)
Parámetros |
Descripción |
---|---|
|
The Vision Sensor to stop recording with:
|
# Press button 7 to end recording
def end_recording():
drone.camera.stop_recording(FORWARD_CAMERA)
drone.land()
controller.button7.pressed(end_recording)
# Record a video as you fly around
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
drone.camera.start_recording(FORWARD_CAMERA)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
capture_image#
capture_image
takes a picture with the specified Vision Sensor.
Para obtener información sobre cómo ver y recuperar imágenes capturadas, vaya aquí.
Uso:
drone.camera.capture_image(camera)
Parámetros |
Descripción |
---|---|
|
The Vision Sensor to take a picture with:
|
# Press button 7 to take pictures
def take_picture():
drone.camera.capture_image(FORWARD_CAMERA)
controller.button7.pressed(take_picture)
# Take pictures while you control the drone
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
Mutadores#
show_camera#
show_camera
sets the current screen mode to the specified Vision Sensor feed.
Uso:
controller.screen.show_camera(camera)
Parámetros |
Descripción |
---|---|
|
The Vision Sensor feed to display:
|
# Switch camera feeds after 3 seconds
controller.screen.show_camera(DOWNWARD_CAMERA)
wait(3, SECONDS)
controller.screen.show_camera(FORWARD_CAMERA)
hide_camera#
hide_camera
hides the specified Vision Sensor’s feed.
Uso:
controller.screen.hide_camera()
Parámetros |
Descripción |
---|---|
Este método no tiene parámetros. |
# Hide camera feed after 3 seconds
controller.screen.show_camera(FORWARD_CAMERA)
wait(3, SECONDS)
controller.screen.hide_camera()
set_overlay_reticle#
set_overlay_reticle
enables or disables the overlay reticle.
Usage:
controller.screen.set_overlay_reticle(state)
Parámetros |
Descripción |
---|---|
|
The state of the overlay reticle:
|
# Hide the reticle when not aligning to a landing area
controller.screen.show_camera(DOWNWARD_CAMERA)
drone.take_off(climb_to=500)
controller.screen.set_overlay_reticle(False)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
set_overlay_telemetry#
set_overlay_telemetry
enables or disables the visibility of the drone’s telemetry data on the controller’s screen.
Usage:
controller.screen.set_overlay_telemetry(state)
Parámetros |
Descripción |
---|---|
|
The state of the telemetry data:
|
# Clear the camera video for better visibility
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
controller.screen.set_overlay_telemetry(False)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
Captadores#
is_recording#
is_recording
returns a Boolean indicating whether a specified Vision Sensor is currently recording.
True
– The specified Vision Sensor is recording.False
– The specified Vision Sensor is not recording.
Uso:
drone.camera.is_recording(camera)
Parámetros |
Descripción |
---|---|
|
The Vision Sensor to check recording status of:
|
# Use button 7 to start and stop recording
def toggle_recording():
if drone.camera.is_recording(FORWARD_CAMERA):
drone.camera.stop_recording(FORWARD_CAMERA)
else:
drone.camera.start_recording(FORWARD_CAMERA)
controller.button7.pressed(toggle_recording)
# Make video recordings while you control the drone
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
get_recording_time#
get_recording_time
returns the amount of time a specific Vision Sensor has been recording for as a float in seconds.
Uso:
drone.camera.get_recording_time(camera)
Parámetros |
Descripción |
---|---|
|
The Vision Sensor to check recording time of:
|
# Record a video for 10 seconds
controller.screen.show_camera(FORWARD_CAMERA)
drone.camera.start_recording(FORWARD_CAMERA)
drone.take_off(climb_to=500)
while not (drone.camera.get_recording_time(FORWARD_CAMERA)) >= 10:
wait(5, MSEC)
drone.camera.stop_recording(FORWARD_CAMERA)