mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-11-02 10:29:13 +01:00
feat(editor): a slip goes only where the straights cross at the skos of its template: a Rkpd 1:9 was laid at a crossing of 1:7 or 1:14 as well, shaped for the angle of the tracks there into no slip of the catalogue. The straights crossing at a skos more than 0.14 deg off it, half of what keeps 1:9.51 and 1:10 apart, are refused with the skos they cross at and the slip of the same kind made for it, of the same rail and radius first, or none; a double slip replaced by one of another skos likewise. The panel and the hints say the slip goes at its skos. Selftest: a Rkpd 49E1-190-1:9 laid at 1:9 and 1:9.08, refused at 1:7 with no template for it and at 1:9.51 with Rkpd S42-230-1:9,51 fitting
This commit is contained in:
@@ -1674,6 +1674,9 @@ class editor_mode : public application_mode, private editor_track::observer, pri
|
||||
std::array<glm::dvec3, 4> points{};
|
||||
};
|
||||
bool plan_double_slip(editor_track::straight const &Line, glm::dvec3 const &Point, editor_track::switch_template const &Shape, slip_plan &Plan) const;
|
||||
// a slip is made for its skos: where the tracks cross at another one, the refusal, which tells the template made for theirs; empty
|
||||
// where it fits, and for a crossing
|
||||
std::string slip_skew(editor_track::switch_template const &Shape, double const Angle) const;
|
||||
// the cursor where it points at the straight, at the height of the straight there
|
||||
glm::dvec3 cursor_on_straight(editor_track::straight const &Line) const;
|
||||
bool insert_double_slip(editor_track::straight const &Line, glm::dvec3 const &Point, editor_track::switch_template const &Shape);
|
||||
|
||||
Reference in New Issue
Block a user