2026-07-04 18:22:23 -06:00
|
|
|
extends Node3D
|
|
|
|
|
class_name SensorSpawner
|
|
|
|
|
|
|
|
|
|
var vehicle: VehicleNode
|
|
|
|
|
|
|
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
|
|
|
func _ready() -> void:
|
|
|
|
|
vehicle = get_parent()
|
|
|
|
|
SensorSignals.new_sensor_connected.connect(_on_new_sensor_connected)
|
|
|
|
|
|
2026-07-06 13:57:09 -06:00
|
|
|
func _on_new_sensor_connected(sensor_ip: String, sensor_type: String) -> void:
|
|
|
|
|
var sensor_node: BaseSensorNode
|
|
|
|
|
if sensor_type == "VEHICLE":
|
|
|
|
|
sensor_node = VehicleSensorNode.new()
|
|
|
|
|
elif sensor_type == "LIDAR_2D":
|
|
|
|
|
sensor_node = Lidar2DSensorNode.new()
|
|
|
|
|
else:
|
|
|
|
|
return
|
2026-07-04 23:49:20 -06:00
|
|
|
sensor_node.ip_address = sensor_ip
|
|
|
|
|
add_child(sensor_node)
|
|
|
|
|
vehicle.add_sensor_node(sensor_node)
|