struct Rod
{
const VehicleType::Rod *type;
- Point position;
+ Vector position;
float angle;
Rod(const VehicleType::Rod &);
Vehicle *next;
Vehicle *prev;
TrackPosition track_pos;
- Point position;
+ Vector position;
float direction;
std::vector<Axle> axles;
std::vector<Bogie> bogies;
Track *get_track() const { return track_pos.track; }
unsigned get_entry() const { return track_pos.ep; }
float get_offset() const { return track_pos.offs; }
- const Point &get_position() const { return position; }
+ const Vector &get_position() const { return position; }
float get_direction() const { return direction; }
const Axle &get_axle(unsigned) const;
const Bogie &get_bogie(unsigned) const;
void update_rods();
void adjust_for_distance(TrackPosition &, TrackPosition &, float, float = 0.5) const;
- TrackPoint get_point(const Point &, const Point &, float = 0.5) const;
+ TrackPoint get_point(const Vector &, const Vector &, float = 0.5) const;
TrackPoint get_point(const TrackPosition &, float, float = 0.5) const;
};