sensors.DistanceSensor
- class sensors.DistanceSensor(port: Optional[int] = None)
Sensor for measuring linear distances.
- distance() float
Distance in meters to whatever is in front of the sensor. A slight smoothing filter is applied to this value. For an unfiltered version condsider
stream()
.The following example assumes that a distance sensor is assigned to port 0 and a
TextScreen
is assigned to port 1.from sensors import DistanceSensor from controllables import TextScreen sensor = DistanceSensor(0) screen = TextScreen(1) while True: screen.text = f"Distance: {sensor.distance(): 4.1f}"
- stream() streams.Stream[float]
Creates an stream of distance values in meters.
The following example assumes that a distance sensor is assigned to port 0.
from sensors import DistanceSensor from time import sleep sensor = DistanceSensor(0) stream = sensor.stream() sensor.visible_laser = False while True: for distance in stream: if distance < 1: sensor.visible_laser = True if sensor.visible_laser: sleep(.1) sensor.visible_laser = False
- property visible_laser: bool
The visible laser property of the distance sensor avaliable in the properties tab.
- name() str
Returns the user editable name of the controllable as found in the properties tab of the game.
from ports import PortReference print(PortReference(0).name())