|
|
0a0ecd |
|
|
|
0a0ecd |
#ifndef GENERATORRADIAL_H
|
|
|
0a0ecd |
#define GENERATORRADIAL_H
|
|
|
0a0ecd |
|
|
|
0a0ecd |
#include "generator.h"
|
|
|
0a0ecd |
|
|
|
0a0ecd |
class GeneratorRadialXYZ: public Generator {
|
|
|
0a0ecd |
public:
|
|
|
0a0ecd |
Real step_z;
|
|
|
0a0ecd |
Real step_a;
|
|
|
0a0ecd |
Real step_r;
|
|
|
0a0ecd |
|
|
|
0a0ecd |
Real min_r;
|
|
|
0a0ecd |
Real max_r;
|
|
|
0a0ecd |
Real min_z;
|
|
|
0a0ecd |
Real max_z;
|
|
|
0a0ecd |
Real safe_z;
|
|
|
0a0ecd |
|
|
|
0a0ecd |
Real feed_speed;
|
|
|
0a0ecd |
Real move_speed;
|
|
|
0a0ecd |
|
|
|
0a0ecd |
bool full_radius;
|
|
|
0a0ecd |
bool skip_middle_layers;
|
|
|
0a0ecd |
|
|
|
0a0ecd |
explicit GeneratorRadialXYZ():
|
|
|
0a0ecd |
step_z(1),
|
|
|
0a0ecd |
step_a(1),
|
|
|
0a0ecd |
step_r(0.1),
|
|
|
0a0ecd |
min_r(),
|
|
|
0a0ecd |
max_r(),
|
|
|
0a0ecd |
min_z(),
|
|
|
0a0ecd |
max_z(),
|
|
|
0a0ecd |
safe_z(),
|
|
|
0a0ecd |
feed_speed(600),
|
|
|
0a0ecd |
move_speed(1500),
|
|
|
0a0ecd |
full_radius(false),
|
|
|
0a0ecd |
skip_middle_layers(false)
|
|
|
0a0ecd |
{ }
|
|
|
0a0ecd |
|
|
|
0a0ecd |
void tool_point(Track &track, const TrackPoint &p) const;
|
|
|
0a0ecd |
void tool_up(Track &track, Real safe_z) const;
|
|
|
0a0ecd |
void tool_feed(Track &track, Real safe_z, Real z1, Real z, Real x, Real y) const;
|
|
|
0a0ecd |
void touch(const Collider &collider, Track &track, Real safe_z, Real z1, Real z0, Real x, Real y, bool skip_z0) const;
|
|
|
0a0ecd |
|
|
|
0a0ecd |
bool generate(const Collider &collider, Track &track) const override;
|
|
|
0a0ecd |
};
|
|
|
0a0ecd |
|
|
|
0a0ecd |
|
|
|
0a0ecd |
#endif
|
|
|
0a0ecd |
|