1 #include <msp/gl/renderer.h>
5 #include "signaltype.h"
11 Signal3D::Signal3D(Layout3D &l, Signal &s):
13 GL::ObjectInstance(l.get_catalogue().get_3d(s.get_type()).get_object()),
16 layout.get_scene().add(*this);
21 layout.get_scene().remove(*this);
24 Vector Signal3D::get_node() const
26 return matrix*Vector(0, -0.035, 0.13);
29 void Signal3D::setup_render(GL::Renderer &renderer, const GL::Tag &) const
31 renderer.matrix_stack() *= matrix;
32 // XXX Use track gauge, configure signal side
33 renderer.matrix_stack() *= GL::Matrix::translation(0, -0.035, 0);