PlanarSurface.h
Go to the documentation of this file.
1 /*
2  * Copyright 2015-2019 CNRS-UM LIRMM, CNRS-AIST JRL
3  */
4 
5 #pragma once
6 
7 #include <mc_rbdyn/Surface.h>
8 
9 namespace mc_rbdyn
10 {
11 
12 struct Robot;
13 
14 struct PlanarSurfaceImpl;
15 
17 {
18  PlanarSurface(const std::string & name,
19  const std::string & bodyName,
20  const sva::PTransformd & X_b_s,
21  const std::string & materialName,
22  const std::vector<std::pair<double, double>> & planarPoints);
23 
24  ~PlanarSurface() override;
25 
26  void computePoints() override;
27 
28  void planarTransform(const double & T, const double & B, const double & N_rot);
29 
30  const std::vector<std::pair<double, double>> & planarPoints() const;
31 
32  void planarPoints(const std::vector<std::pair<double, double>> & planarPoints);
33 
34  std::shared_ptr<Surface> copy() const override;
35 
36  std::string type() const override;
37 
38 public:
39 private:
40  std::unique_ptr<PlanarSurfaceImpl> impl;
41 };
42 
43 } // namespace mc_rbdyn
Surface.h
mc_rbdyn::PlanarSurface
Definition: PlanarSurface.h:16
mc_rbdyn::computePoints
MC_RBDYN_DLLAPI std::vector< sva::PTransformd > computePoints(const mc_rbdyn::Surface &robotSurface, const mc_rbdyn::Surface &envSurface, const sva::PTransformd &X_es_rs)
mc_rbdyn::Surface
Definition: Surface.h:24
MC_RBDYN_DLLAPI
#define MC_RBDYN_DLLAPI
Definition: api.h:50
mc_rbdyn
Definition: generic_gripper.h:14
mc_rtc::gui::Robot
auto Robot(const std::string &name, GetT get_fn)
Definition: Robot.h:56