blob: 22051f6fb39273466a9b37a890c06644552d495b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
/*
* CartesianKinematics.h
*
* Created on: 6 May 2017
* Author: David
*/
#ifndef SRC_MOVEMENT_KINEMATICS_CARTESIANKINEMATICS_H_
#define SRC_MOVEMENT_KINEMATICS_CARTESIANKINEMATICS_H_
#include "ZLeadscrewKinematics.h"
class CartesianKinematics : public ZLeadscrewKinematics
{
public:
CartesianKinematics();
// Overridden base class functions. See Kinematics.h for descriptions.
const char *GetName(bool forStatusReport) const override;
bool CartesianToMotorSteps(const float machinePos[], const float stepsPerMm[], size_t numVisibleAxes, size_t numTotalAxes, int32_t motorPos[], bool allowModeChange) const override;
void MotorStepsToCartesian(const int32_t motorPos[], const float stepsPerMm[], size_t numVisibleAxes, size_t numTotalAxes, float machinePos[]) const override;
HomingMode GetHomingMode() const override { return homeCartesianAxes; }
bool QueryTerminateHomingMove(size_t axis) const override;
void OnHomingSwitchTriggered(size_t axis, bool highEnd, const float stepsPerMm[], DDA& dda) const override;
};
#endif /* SRC_MOVEMENT_KINEMATICS_CARTESIANKINEMATICS_H_ */
|