Files
car-os/widgets/accelerometer/scripts/accelerometer_widget_node.gd
T

33 lines
955 B
GDScript
Raw Normal View History

2026-07-04 18:22:23 -06:00
extends BaseWidgetNode
class_name AccelerometerWidgetNode
var accel_vector: Line2D
var x_vector: Line2D
var y_vector: Line2D
var label: Label
var origin: Vector2 = Vector2(0., 0.)
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
super._ready()
label = get_node('Label')
accel_vector = get_node("AccelVector")
accel_vector.points = [origin, origin]
x_vector = get_node("XVector")
x_vector.points = [origin, origin]
y_vector = get_node("YVector")
y_vector.points = [origin, origin]
func _update_data():
if y_vector == null:
return
var lateral_gs = host_vehicle.lateral_accel
var accel_g = lateral_gs.length() / Constants.g
2026-07-08 20:58:21 -06:00
var end_point = Vector2(lateral_gs.y, -lateral_gs.x)
var forward = Vector2(0, -lateral_gs.x)
accel_vector.points = [origin, end_point * 4]
x_vector.points = [forward * 4, end_point * 4]
y_vector.points = [origin, forward * 4]
label.text = str(round(accel_g*10)/10) + ' g'