1 #ifndef ROTATABLECARTESIANSOLUTION_H
2 #define ROTATABLECARTESIANSOLUTION_H
3 #include "libs/Module.h"
4 #include "libs/Kernel.h"
5 #include "BaseSolution.h"
6 #include "libs/nuts_bolts.h"
8 #include "libs/Config.h"
10 #define alpha_steps_per_mm_checksum CHECKSUM("alpha_steps_per_mm")
11 #define beta_steps_per_mm_checksum CHECKSUM("beta_steps_per_mm")
12 #define gamma_steps_per_mm_checksum CHECKSUM("gamma_steps_per_mm")
14 #define alpha_angle_checksum CHECKSUM("alpha_angle")
16 class RotatableCartesianSolution
: public BaseSolution
{
18 RotatableCartesianSolution(Config
* passed_config
);
19 void millimeters_to_steps( double millimeters
[], int steps
[] );
20 void steps_to_millimeters( int steps
[], double millimeters
[] );
22 void set_steps_per_millimeter( double steps
[] );
23 void get_steps_per_millimeter( double steps
[] );
25 void rotate( double in
[], double out
[], double sin
, double cos
);
28 double alpha_steps_per_mm
;
29 double beta_steps_per_mm
;
30 double gamma_steps_per_mm
;
37 #endif // ROTATABLECARTESIANSOLUTION_H