17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-08 23:07:38 +01:00

feat(editor): the work of the editor sessions not committed yet, as it stands: a curve traced on from the end of the diverging track of a switch goes on at its radius with no transition in, or from a straight right at the switch (alignment start_held, fit_going_on), the plan taking an end adjoining R 10 km or more for a straight; the switches and slips laid into curves, slid along them and laid alone on one straight (frame_path, switch slide); the route plan reading curves going on from the tracks adjoining, the kept designs taken or forgotten; the orthophoto and terrain model settings, downloads and layers, the tracks onto the terrain; the curvature of a path in the plan (bezier::plan_curvature); the Polish texts of all of it. Not built as committed

This commit is contained in:
maj00r
2026-10-29 22:19:06 +01:00
parent 2eda26b94c
commit 80379b991c
49 changed files with 4718 additions and 1114 deletions

View File

@@ -400,6 +400,14 @@ editor_mode::selftest_result editor_mode::selftest_track(std::string const &comm
auto const &entry{records[r]};
WriteLog(format("SELFTEST alignment %zu in %s: km %.3f, %zu vertices, %zu elements, consistent %d, length %.3f, kept %.3f - %.3f, %zu clicks", r, scene::Layers.layer(entry.layer).name.c_str(), entry.origin / 1000.0, entry.design.vertices.size(), entry.elements.size(), entry.consistent ? 1 : 0, entry.result.length,
entry.from, entry.kept_to(), entry.clicks.size()));
// the curves as the plan has them, against the elements laid
for (std::size_t k = 0; k < entry.design.vertices.size(); ++k)
{
auto const &vertex{entry.design.vertices[k]};
WriteLog(format("SELFTEST vertex %zu designed R %.1f L %.1f / %.1f cant %.0f compound %d arcs %zu", k, vertex.radius, vertex.transition_in, vertex.transition_out, vertex.cant, vertex.compound ? 1 : 0, vertex.arcs.size()));
}
for (auto const &curve : entry.result.curves)
WriteLog(format("SELFTEST planned curve %d R %.1f L %.1f / %.1f", curve.vertex, curve.radius, curve.transition_in, curve.transition_out));
for (auto const &e : entry.elements)
WriteLog(format("SELFTEST element %s vertex %d km %.3f L %.3f R %.3f -> %.3f cant %.1f", e.kind.c_str(), e.vertex, (entry.origin + e.chainage) / 1000.0, e.length, e.radius_start, e.radius_end, e.cant));
}