Skip to content

Commit 2f3328e

Browse files
author
Murilo Marinho
committed
Fixing conflicts
2 parents 2cbb2f6 + 33cd569 commit 2f3328e

File tree

7 files changed

+62
-10
lines changed

7 files changed

+62
-10
lines changed

CMakeLists.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
cmake_minimum_required(VERSION 2.8)
2-
#set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
32

43
project(dqroboticspython)
54

@@ -9,9 +8,10 @@ add_definitions(-DMAX_EXT_API_CONNECTIONS=255)
98
add_definitions(-DDO_NOT_USE_SHARED_MEMORY)
109

1110
if(APPLE)
11+
message("Building not supported on this platform.")
1212
include_directories(
1313
/usr/local/include/
14-
/usr/local/include/eigen3
14+
/usr/local/include/eigen3
1515
)
1616
endif()
1717

@@ -46,6 +46,8 @@ if(UNIX)
4646
src/robot_modeling/DQ_Kinematics_py.cpp
4747
cpp/src/robot_modeling/DQ_SerialManipulator.cpp
4848
src/robot_modeling/DQ_SerialManipulator_py.cpp
49+
cpp/src/robot_modeling/DQ_SerialManipulatorDH.cpp
50+
src/robot_modeling/DQ_SerialManipulatorDH_py.cpp
4951
cpp/src/robot_modeling/DQ_MobileBase.cpp
5052
src/robot_modeling/DQ_MobileBase_py.cpp
5153
cpp/src/robot_modeling/DQ_HolonomicBase.cpp
@@ -54,6 +56,8 @@ if(UNIX)
5456
src/robot_modeling/DQ_DifferentialDriveRobot_py.cpp
5557
cpp/src/robot_modeling/DQ_WholeBody.cpp
5658
src/robot_modeling/DQ_WholeBody_py.cpp
59+
cpp/src/robot_modeling/DQ_SerialWholeBody.cpp
60+
src/robot_modeling/DQ_SerialWholeBody_py.cpp
5761

5862
#robot_control
5963
cpp/src/robot_control/DQ_KinematicController.cpp
@@ -97,10 +101,6 @@ if(UNIX)
97101
)
98102
endif()
99103

100-
if(APPLE)
101-
message("Building not supported on this platform.")
102-
endif()
103-
104104
if(WIN32)
105105
message("Building not supported on this platform.")
106106
endif()

src/dqrobotics_module.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,9 @@ PYBIND11_MODULE(_dqrobotics, m) {
7575
//DQ_SerialManipulator
7676
init_DQ_SerialManipulator_py(robot_modeling);
7777

78+
//DQ_SerialManipulatorDH
79+
init_DQ_SerialManipulatorDH_py(robot_modeling);
80+
7881
//DQ_CooperativeDualTaskSpace
7982
init_DQ_CooperativeDualTaskSpace_py(robot_modeling);
8083

@@ -90,6 +93,9 @@ PYBIND11_MODULE(_dqrobotics, m) {
9093
//DQ_WholeBody
9194
init_DQ_WholeBody_py(robot_modeling);
9295

96+
//DQ_SerialWholeBody
97+
init_DQ_SerialWholeBody_py(robot_modeling);
98+
9399
/*****************************************************
94100
* Solvers <dqrobotics/solvers/...>
95101
* **************************************************/

src/dqrobotics_module.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,12 @@ namespace py = pybind11;
3737
#include <dqrobotics/robot_modeling/DQ_CooperativeDualTaskSpace.h>
3838
#include <dqrobotics/robot_modeling/DQ_Kinematics.h>
3939
#include <dqrobotics/robot_modeling/DQ_SerialManipulator.h>
40+
#include <dqrobotics/robot_modeling/DQ_SerialManipulatorDH.h>
4041
#include <dqrobotics/robot_modeling/DQ_MobileBase.h>
4142
#include <dqrobotics/robot_modeling/DQ_HolonomicBase.h>
4243
#include <dqrobotics/robot_modeling/DQ_DifferentialDriveRobot.h>
4344
#include <dqrobotics/robot_modeling/DQ_WholeBody.h>
45+
#include <dqrobotics/robot_modeling/DQ_SerialWholeBody.h>
4446

4547
#include <dqrobotics/robot_control/DQ_KinematicController.h>
4648
#include <dqrobotics/robot_control/DQ_KinematicConstrainedController.h>
@@ -76,11 +78,13 @@ void init_DQ_Geometry_py(py::module& m);
7678
//dqrobotics/robot_modeling
7779
void init_DQ_Kinematics_py(py::module& m);
7880
void init_DQ_SerialManipulator_py(py::module& m);
81+
void init_DQ_SerialManipulatorDH_py(py::module& m);
7982
void init_DQ_MobileBase_py(py::module& m);
8083
void init_DQ_HolonomicBase_py(py::module& m);
8184
void init_DQ_DifferentialDriveRobot_py(py::module& m);
8285
void init_DQ_CooperativeDualTaskSpace_py(py::module& m);
8386
void init_DQ_WholeBody_py(py::module& m);
87+
void init_DQ_SerialWholeBody_py(py::module& m);
8488

8589
//dqrobotics/robot_control
8690
void init_DQ_ClassicQPController_py(py::module& m);

src/robot_modeling/DQ_DifferentialDriveRobot_py.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,6 @@ void init_DQ_DifferentialDriveRobot_py(py::module& m)
3030
py::class_<DQ_DifferentialDriveRobot,DQ_HolonomicBase> dqdifferentialdriverobot_py(m,"DQ_DifferentialDriveRobot");
3131
dqdifferentialdriverobot_py.def(py::init<const double&, const double&>());
3232
dqdifferentialdriverobot_py.def("constraint_jacobian", &DQ_DifferentialDriveRobot::constraint_jacobian, "Returns the constraint Jacobian");
33-
dqdifferentialdriverobot_py.def("pose_jacobian", &DQ_DifferentialDriveRobot::pose_jacobian, "Returns the pose Jacobian");
33+
dqdifferentialdriverobot_py.def("pose_jacobian", (MatrixXd (DQ_DifferentialDriveRobot::*)(const VectorXd&, const int&) const)&DQ_DifferentialDriveRobot::pose_jacobian,"Returns the pose Jacobian");
34+
dqdifferentialdriverobot_py.def("pose_jacobian", (MatrixXd (DQ_DifferentialDriveRobot::*)(const VectorXd&) const)&DQ_DifferentialDriveRobot::pose_jacobian,"Returns the pose Jacobian");
3435
}

src/robot_modeling/DQ_HolonomicBase_py.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,10 @@ void init_DQ_HolonomicBase_py(py::module& m)
2929
* **************************************************/
3030
py::class_<DQ_HolonomicBase,DQ_MobileBase> dqholonomicbase_py(m,"DQ_HolonomicBase");
3131
dqholonomicbase_py.def(py::init());
32-
dqholonomicbase_py.def("fkm", &DQ_HolonomicBase::fkm,"Returns the base's fkm");
33-
dqholonomicbase_py.def("pose_jacobian", &DQ_HolonomicBase::pose_jacobian,"Returns the base's Jacobian");
32+
dqholonomicbase_py.def("fkm",(DQ (DQ_HolonomicBase::*)(const VectorXd&) const)&DQ_HolonomicBase::fkm,"Gets the fkm.");
33+
dqholonomicbase_py.def("fkm",(DQ (DQ_HolonomicBase::*)(const VectorXd&,const int&) const)&DQ_HolonomicBase::fkm,"Gets the fkm.");
34+
dqholonomicbase_py.def("pose_jacobian", (MatrixXd (DQ_HolonomicBase::*)(const VectorXd&, const int&) const)&DQ_HolonomicBase::pose_jacobian,"Returns the pose Jacobian");
35+
dqholonomicbase_py.def("pose_jacobian", (MatrixXd (DQ_HolonomicBase::*)(const VectorXd&) const)&DQ_HolonomicBase::pose_jacobian,"Returns the pose Jacobian");
3436
dqholonomicbase_py.def("get_dim_configuration_space",&DQ_HolonomicBase::get_dim_configuration_space,"Returns the size of the configuration space");
3537
dqholonomicbase_py.def("raw_fkm", &DQ_HolonomicBase::raw_fkm,"Returns the raw fkm");
3638
dqholonomicbase_py.def("raw_pose_jacobian", &DQ_HolonomicBase::raw_pose_jacobian,"Return the raw ose Jacobian");
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
/**
2+
(C) Copyright 2020 DQ Robotics Developers
3+
4+
This file is part of DQ Robotics.
5+
6+
DQ Robotics is free software: you can redistribute it and/or modify
7+
it under the terms of the GNU Lesser General Public License as published by
8+
the Free Software Foundation, either version 3 of the License, or
9+
(at your option) any later version.
10+
11+
DQ Robotics is distributed in the hope that it will be useful,
12+
but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
GNU Lesser General Public License for more details.
15+
16+
You should have received a copy of the GNU Lesser General Public License
17+
along with DQ Robotics. If not, see <http://www.gnu.org/licenses/>.
18+
19+
Contributors:
20+
- Murilo M. Marinho ([email protected])
21+
*/
22+
23+
#include "../dqrobotics_module.h"
24+
25+
void init_DQ_SerialManipulatorDH_py(py::module& m)
26+
{
27+
/***************************************************
28+
* DQ SerialManipulatorDH
29+
* **************************************************/
30+
py::class_<DQ_SerialManipulatorDH,DQ_SerialManipulator> dqserialmanipulatordh_py(m, "DQ_SerialManipulatorDH");
31+
dqserialmanipulatordh_py.def(py::init<MatrixXd, std::string>());
32+
33+
//dqserialmanipulatordh_py.def("type", &DQ_SerialManipulatorDH::type,"Retrieves the vector of types.");
34+
//dqserialmanipulatordh_py.def("raw_pose_jacobian", (MatrixXd (DQ_SerialManipulatorDH::*)(const VectorXd&, const int&) const)&DQ_SerialManipulatorDH::raw_pose_jacobian,"Returns the pose Jacobian without base or effector transformation");
35+
//dqserialmanipulatordh_py.def("pose_jacobian", (MatrixXd (DQ_SerialManipulatorDH::*)(const VectorXd&, const int&) const)&DQ_SerialManipulatorDH::pose_jacobian,"Returns the pose Jacobian");
36+
//dqserialmanipulatordh_py.def("pose_jacobian", (MatrixXd (DQ_SerialManipulatorDH::*)(const VectorXd&) const)&DQ_SerialManipulatorDH::pose_jacobian,"Returns the pose Jacobian");
37+
//dqserialmanipulatordh_py.def("fkm", (DQ (DQ_SerialManipulatorDH::*)(const VectorXd&) const)&DQ_SerialManipulatorDH::fkm,"Gets the fkm.");
38+
//dqserialmanipulatordh_py.def("get_dim_configuration_space", &DQ_SerialManipulatorDH::get_dim_configuration_space,"Retrieves the number of links.");
39+
}

0 commit comments

Comments
 (0)