| Line |
Branch |
Decision |
Call |
Exec |
Source |
| 1 |
|
|
|
|
#include "ProjectSpace.h" |
| 2 |
|
|
|
|
|
| 3 |
|
|
|
|
#include <ranges> |
| 4 |
|
|
|
|
|
| 5 |
|
|
|
|
using namespace Chrysalis; |
| 6 |
|
|
|
|
|
| 7 |
|
|
3/3
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
|
26 |
ProjectSpace::~ProjectSpace() { |
| 8 |
2/2
✓ Branch 15 taken 6 times.
✓ Branch 16 taken 13 times.
|
2/2
✓ Decision 'true' taken 6 times.
✓ Decision 'false' taken 13 times.
|
15/15
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
✓ Call 12 invoked.
✓ Call 13 invoked.
✓ Call 14 invoked.
|
19 |
for (const auto& curves: curves_ | std::views::values) { |
| 9 |
2/2
✓ Branch 11 taken 6 times.
✓ Branch 12 taken 6 times.
|
2/2
✓ Decision 'true' taken 6 times.
✓ Decision 'false' taken 6 times.
|
11/11
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
|
12 |
for (const auto& curve: curves | std::views::values) { |
| 10 |
1/2
✓ Branch 1 taken 6 times.
✗ Branch 2 not taken.
|
|
7/7
✓ Call 0 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
|
6 |
delete curve; |
| 11 |
|
|
|
|
} |
| 12 |
|
|
|
|
} |
| 13 |
2/2
✓ Branch 12 taken 220 times.
✓ Branch 13 taken 13 times.
|
2/2
✓ Decision 'true' taken 220 times.
✓ Decision 'false' taken 13 times.
|
12/12
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
|
233 |
for (auto& point : points_) { |
| 14 |
1/2
✓ Branch 1 taken 220 times.
✗ Branch 2 not taken.
|
|
14/14
✓ Call 0 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
✓ Call 12 invoked.
✓ Call 13 invoked.
✓ Call 14 invoked.
✓ Call 15 invoked.
|
220 |
delete point; |
| 15 |
|
|
|
|
} |
| 16 |
|
|
4/4
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
|
26 |
} |
| 17 |
|
|
|
|
|
| 18 |
|
|
|
24 |
void ProjectSpace::movePoint(const Point* point, const CG::Point position) const { |
| 19 |
3/6
✓ Branch 5 taken 24 times.
✗ Branch 6 not taken.
✓ Branch 7 taken 24 times.
✗ Branch 8 not taken.
✓ Branch 13 taken 24 times.
✗ Branch 14 not taken.
|
1/2
✓ Decision 'true' taken 24 times.
✗ Decision 'false' not taken.
|
9/9
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
✓ Call 12 invoked.
|
24 |
if (const auto p = const_cast<Point*>(point); points_.contains(p)) p->move(position); |
| 20 |
|
|
|
24 |
} |
| 21 |
|
|
|
|
|
| 22 |
|
|
|
✗ |
bool ProjectSpace::hasCurve(const Point* from, const Point* to) const { |
| 23 |
|
|
0/14
✗ Call 0 not invoked.
✗ Call 1 not invoked.
✗ Call 2 not invoked.
✗ Call 3 not invoked.
✗ Call 4 not invoked.
✗ Call 5 not invoked.
✗ Call 8 not invoked.
✗ Call 9 not invoked.
✗ Call 10 not invoked.
✗ Call 11 not invoked.
✗ Call 12 not invoked.
✗ Call 13 not invoked.
✗ Call 14 not invoked.
✗ Call 15 not invoked.
|
✗ |
return curves_.contains(from) && curves_.at(from).contains(to); |
| 24 |
|
|
|
|
} |
| 25 |
|
|
|
|
|
| 26 |
|
|
|
✗ |
const Curve* ProjectSpace::getCurve(const Point* from, const Point* to) const { |
| 27 |
|
|
0/9
✗ Call 0 not invoked.
✗ Call 1 not invoked.
✗ Call 2 not invoked.
✗ Call 3 not invoked.
✗ Call 4 not invoked.
✗ Call 5 not invoked.
✗ Call 6 not invoked.
✗ Call 7 not invoked.
✗ Call 8 not invoked.
|
✗ |
return curves_.at(from).at(to); |
| 28 |
|
|
|
|
} |
| 29 |
|
|
|
|
|
| 30 |
|
|
|
4 |
Point* ProjectSpace::addPoint(const double x, const double y) { |
| 31 |
2/4
✓ Branch 3 taken 4 times.
✗ Branch 4 not taken.
✓ Branch 7 taken 4 times.
✗ Branch 8 not taken.
|
|
6/7
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 9 invoked.
✗ Call 10 not invoked.
|
4 |
return addPoint({x, y}); |
| 32 |
|
|
|
|
} |
| 33 |
|
|
|
|
|
| 34 |
|
|
|
220 |
Point* ProjectSpace::addPoint(const CG::Point& point) { |
| 35 |
2/6
✓ Branch 2 taken 220 times.
✗ Branch 3 not taken.
✓ Branch 6 taken 220 times.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✗ Branch 9 not taken.
|
|
4/5
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 4 invoked.
✓ Call 5 invoked.
✗ Call 10 not invoked.
|
220 |
const auto p = new Point(point); |
| 36 |
1/2
✓ Branch 3 taken 220 times.
✗ Branch 4 not taken.
|
|
3/3
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
|
220 |
points_.insert(p); |
| 37 |
|
|
1/1
|
220 |
return p; |
| 38 |
|
|
|
|
} |
| 39 |
|
|
|
|
|
| 40 |
|
|
|
6 |
Curve* ProjectSpace::addCurve(const Point* from, const Point* to, |
| 41 |
|
|
|
|
const CG::Segment& segmentFrom, const CG::Segment& segmentTo, |
| 42 |
|
|
|
|
const std::vector<CG::Point>& points) { |
| 43 |
3/6
✓ Branch 3 taken 6 times.
✗ Branch 4 not taken.
✓ Branch 8 taken 6 times.
✗ Branch 9 not taken.
✓ Branch 12 taken 6 times.
✗ Branch 13 not taken.
|
|
8/8
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
|
6 |
const auto handleFrom = CG::mirror(segmentFrom.start(), segmentFrom.end()); |
| 44 |
3/6
✓ Branch 3 taken 6 times.
✗ Branch 4 not taken.
✓ Branch 8 taken 6 times.
✗ Branch 9 not taken.
✓ Branch 12 taken 6 times.
✗ Branch 13 not taken.
|
|
8/8
✓ Call 0 invoked.
✓ Call 1 invoked.
✓ Call 2 invoked.
✓ Call 5 invoked.
✓ Call 6 invoked.
✓ Call 7 invoked.
✓ Call 10 invoked.
✓ Call 11 invoked.
|
6 |
const auto handleTo = CG::mirror(segmentTo.start(), segmentTo.end()); |
| 45 |
4/10
✓ Branch 1 taken 6 times.
✗ Branch 2 not taken.
✓ Branch 5 taken 6 times.
✗ Branch 6 not taken.
✓ Branch 11 taken 6 times.
✗ Branch 12 not taken.
✓ Branch 15 taken 6 times.
✗ Branch 16 not taken.
✗ Branch 19 not taken.
✗ Branch 20 not taken.
|
|
11/12
✓ Call 0 invoked.
✓ Call 3 invoked.
✓ Call 4 invoked.
✓ Call 7 invoked.
✓ Call 8 invoked.
✓ Call 9 invoked.
✓ Call 10 invoked.
✓ Call 13 invoked.
✓ Call 14 invoked.
✓ Call 17 invoked.
✓ Call 18 invoked.
✗ Call 21 not invoked.
|
12 |
return curves_[from][to] = new Curve(handleFrom, handleTo, points); |
| 46 |
|
|
|
|
} |
| 47 |
|
|
|
|
|