summaryrefslogtreecommitdiff
path: root/2004/i/nono/src/motor/movement_goto.cc
diff options
context:
space:
mode:
Diffstat (limited to '2004/i/nono/src/motor/movement_goto.cc')
-rw-r--r--2004/i/nono/src/motor/movement_goto.cc17
1 files changed, 13 insertions, 4 deletions
diff --git a/2004/i/nono/src/motor/movement_goto.cc b/2004/i/nono/src/motor/movement_goto.cc
index 78ae491..e83b8ec 100644
--- a/2004/i/nono/src/motor/movement_goto.cc
+++ b/2004/i/nono/src/motor/movement_goto.cc
@@ -55,20 +55,29 @@ MovementGotoParam::MovementGotoParam (void)
}
/// Constructeur.
-/// (x, y) : position d'arrivée (mm).
-MovementGoto::MovementGoto (double x, double y)
- : dX_ (x), dY_ (y),
+/// go : objet Goto, detruit dans le destructeur.
+MovementGoto::MovementGoto (Goto *go)
+ : goto_ (go),
il_ (0.0), ia_ (0.0), lel_ (0.0), lea_ (0.0)
{
}
+/// Destructeur.
+MovementGoto::~MovementGoto (void)
+{
+ delete goto_;
+}
+
/// Controlle la vitesse, retourne faux si mouvement terminé.
bool
MovementGoto::control (void)
{
+ double dx, dy;
+ // Récupère le prochain point.
+ goto_->get (*t_, dx, dy, param_.dist_);
// Calcule l'erreur.
double el, ea;
- if (!t_->computeError (dX_, dY_, el, ea, param_.eps_, param_.dist_))
+ if (!t_->computeError (dx, dy, el, ea, param_.eps_, param_.dist_))
{
return false;
}