Locus No Pilotus
Project of four first grade MIPT DAFE/RSE students (for engineering practical work in the second semester) in Qt C++
|
Класс, который позволяет анимировать движение робота More...
#include <flying_robot.h>
Public Member Functions | |
FlyingRobot ()=default | |
FlyingRobot (gui::Trajectory *trj) | |
Инициализирует новый экземпляр FlyingRobot. | |
void | Draw (QCustomPlot *plot) override |
Отрисовывает png картинку | |
gui::Trajectory * | GetTrajectory () const |
void | ReDraw (QCustomPlot *plot) |
Эта функция нужна для того, чтобы обновлять позицию картинки на полотне | |
void | SetSpeed (SpeedOfRobot speed) |
void | SetTrajectory (gui::Trajectory *trj) |
Private Member Functions | |
void | SetNewPositionOnCircle () |
Обновляет текущее положение точки на окружности | |
void | SetNewPositionOnLine () |
Обновляет текущее положение точки на линии | |
void | UpdateCircleFields () |
Обновляет поля curr_angle_on_circle_, clockwise_ и distribution_of_angle_. | |
void | UpdateLineFields () |
Обновляет поля cos_of_line_ и sin_of_line_. | |
void | UpdateSegment () |
Берет следующий Segment, обновляя приватные поля | |
Private Attributes | |
bool | clockwise_ |
double | cos_of_line_ |
int | count_of_partitions_ |
double | curr_angle_on_circle_ |
lib::Point | curr_point_ |
double | distribution_of_angle_ |
QCPGraph * | graph_ {nullptr} |
size_t | index_of_segment_ = 0 |
double | line_const_ |
double | sin_of_line_ |
SpeedOfRobot | speed_ = SpeedOfRobot::Medium |
gui::Trajectory * | trajectory_ |
Класс, который позволяет анимировать движение робота
Представляет из себя png картинку, которая движется по траектории
|
default |
|
inline |
Инициализирует новый экземпляр FlyingRobot.
gui::Trajectory | траектория |
|
overridevirtual |
Отрисовывает png картинку
plot | указатель на полотно |
Implements gui::Drawable.
|
inline |
void gui::FlyingRobot::ReDraw | ( | QCustomPlot * | plot | ) |
Эта функция нужна для того, чтобы обновлять позицию картинки на полотне
plot | указатель на полотно |
|
private |
Обновляет текущее положение точки на окружности
|
private |
Обновляет текущее положение точки на линии
|
inline |
void gui::FlyingRobot::SetTrajectory | ( | gui::Trajectory * | trj | ) |
|
private |
Обновляет поля curr_angle_on_circle_, clockwise_ и distribution_of_angle_.
|
private |
Обновляет поля cos_of_line_ и sin_of_line_.
|
private |
Берет следующий Segment, обновляя приватные поля
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |