Locus No Pilotus
Project of four first grade MIPT DAFE/RSE students (for engineering practical work in the second semester) in Qt C++
Loading...
Searching...
No Matches
gui::Trajectory Class Reference

Фигура траектории облёта объектов на полотне More...

#include <trajectory.h>

Inheritance diagram for gui::Trajectory:
Collaboration diagram for gui::Trajectory:

Public Member Functions

 Trajectory ()=default
 
 Trajectory (const std::vector< gui::Segment > &segments)
 Инициализирует новый экземпляр Trajectory.
 
void Calculate (const std::vector< lib::Target > &targets, const std::vector< lib::Hill > &hills, const std::vector< lib::TrappyCircle > &tr_circles, const std::vector< lib::TrappyLine > &tr_lines, unsigned short amount_of_robots)
 Расчет вектора сегментов по заданным объектам на полотне
 
void Clear ()
 
void Draw (QCustomPlot *plot) override
 Отрисовывает фигуру на полотне
 
std::vector< gui::Segment > & Segments ()
 Возвращает вектор сегментов
 
const std::vector< gui::Segment > & Segments () const
 Возвращает вектор сегментов
 

Private Attributes

std::vector< gui::Segmentsegments_
 

Detailed Description

Фигура траектории облёта объектов на полотне

Ради этого мы все здесь собрались :)

Constructor & Destructor Documentation

◆ Trajectory() [1/2]

gui::Trajectory::Trajectory ( )
default

◆ Trajectory() [2/2]

gui::Trajectory::Trajectory ( const std::vector< gui::Segment > & segments)
inline

Инициализирует новый экземпляр Trajectory.

Parameters
segmentsвектор отрезков траектории
22: segments_{segments} {}
std::vector< gui::Segment > segments_
Definition trajectory.h:59

Member Function Documentation

◆ Calculate()

void gui::Trajectory::Calculate ( const std::vector< lib::Target > & targets,
const std::vector< lib::Hill > & hills,
const std::vector< lib::TrappyCircle > & tr_circles,
const std::vector< lib::TrappyLine > & tr_lines,
unsigned short amount_of_robots )

Расчет вектора сегментов по заданным объектам на полотне

Parameters
targetsконтрольные точки
hillsмногоугольные препятствия
tr_circlesкруговые препятствия
tr_linesзапрещённые перелеты
amount_of_robotsкол-во летающих роботов
14 {
15 segments_.clear();
16
17 if (targets.empty()) return;
18
19 for (auto seg : math::TrajectoryCalculator(targets, tr_lines, tr_circles,
20 hills, amount_of_robots)
21 .GetTrajectory()) {
22 segments_.push_back(gui::Segment(seg));
23 }
24}
Фигура отрезка траектории
Definition segment.h:13
Definition adjacency_matrix.cpp:7
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Clear()

void gui::Trajectory::Clear ( )
inline
56{ segments_.clear(); }
Here is the caller graph for this function:

◆ Draw()

void gui::Trajectory::Draw ( QCustomPlot * plot)
overridevirtual

Отрисовывает фигуру на полотне

Parameters
plotуказатель на полотно

Implements gui::Drawable.

6 {
7 for (auto& segment : segments_) segment.Draw(plot);
8}
void Draw(QCustomPlot *plot) override
Отрисовывает фигуру на полотне
Definition trajectory.cpp:6
Here is the caller graph for this function:

◆ Segments() [1/2]

std::vector< gui::Segment > & gui::Trajectory::Segments ( )
inline

Возвращает вектор сегментов

Returns
std::vector<gui::Segment*>&
42{ return segments_; }
Here is the caller graph for this function:

◆ Segments() [2/2]

const std::vector< gui::Segment > & gui::Trajectory::Segments ( ) const
inline

Возвращает вектор сегментов

Returns
const std::vector<gui::Segment*>&
48{ return segments_; }

Member Data Documentation

◆ segments_

std::vector<gui::Segment> gui::Trajectory::segments_
private

The documentation for this class was generated from the following files: