Change how different sensor types ar handled
This commit is contained in:
@@ -11,7 +11,6 @@ var origin: Vector2 = Vector2(0., 0.)
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
Signals.linear_acceleration_updated.connect(_on_linear_acceleration_updated)
|
||||
label = get_node('Label')
|
||||
accel_vector = get_node("AccelVector")
|
||||
accel_vector.points = [origin, origin]
|
||||
@@ -20,13 +19,13 @@ func _ready() -> void:
|
||||
y_vector = get_node("YVector")
|
||||
y_vector.points = [origin, origin]
|
||||
|
||||
func _on_linear_acceleration_updated(sensor_ip: String, linear_acceleration: Array):
|
||||
var accel_vec = Vector2(-linear_acceleration[1], linear_acceleration[0])
|
||||
var vec_norm: Vector2 = accel_vec.normalized()
|
||||
var vec_length: float = accel_vec.length()
|
||||
var accel_g = vec_length / Constants.g
|
||||
var x_vec = Vector2(vec_norm.x*vec_length, 0)
|
||||
accel_vector.points = [origin, accel_vec * 10]
|
||||
x_vector.points = [origin, x_vec * 10]
|
||||
y_vector.points = [x_vec * 10, accel_vec * 10]
|
||||
label.text = str(round(accel_g*100)/100) + ' g'
|
||||
func _update_data():
|
||||
if y_vector == null:
|
||||
return
|
||||
var lateral_gs = host_vehicle.lateral_accel
|
||||
var accel_g = lateral_gs.length() / Constants.g
|
||||
var x_vec = Vector2(lateral_gs.x, 0)
|
||||
accel_vector.points = [origin, lateral_gs * 4]
|
||||
x_vector.points = [origin, x_vec * 4]
|
||||
y_vector.points = [x_vec * 4, lateral_gs * 4]
|
||||
label.text = str(round(accel_g*10)/10) + ' g'
|
||||
|
||||
Reference in New Issue
Block a user