From 7171f443d02655c212d780540d66855d397f9805 Mon Sep 17 00:00:00 2001 From: Paul Maria Scheikl Date: Sat, 16 Jan 2021 21:54:02 +0100 Subject: [PATCH] Added a binding for getLookAtFromOrientation. --- .../src/SofaPython3/Sofa/Core/Binding_BaseCamera.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bindings/Sofa/src/SofaPython3/Sofa/Core/Binding_BaseCamera.cpp b/bindings/Sofa/src/SofaPython3/Sofa/Core/Binding_BaseCamera.cpp index 091012d3..8ebc8b8a 100644 --- a/bindings/Sofa/src/SofaPython3/Sofa/Core/Binding_BaseCamera.cpp +++ b/bindings/Sofa/src/SofaPython3/Sofa/Core/Binding_BaseCamera.cpp @@ -18,7 +18,9 @@ * Contact information: contact@sofa-framework.org * ******************************************************************************/ +#include "sofa/defaulttype/Quat.h" #include +#include #include #include @@ -109,6 +111,14 @@ void moduleAddBaseCamera(py::module &m) return (self->getOrientationFromLookAt(vec1, vec2)); }); + c.def("getLookAtFromOrientation", [](BaseCamera *self, py::list pos, double distance, py::list quat) { + sofa::defaulttype::Vec3 position; + sofa::defaulttype::Quat orientation; + position = sofa::defaulttype::Vec3(py::cast(pos[0]),py::cast(pos[1]),py::cast(pos[2])); + orientation = sofa::defaulttype::Quat(py::cast(quat[0]),py::cast(quat[1]),py::cast(quat[2]),py::cast(quat[3])); + return (self->getLookAtFromOrientation(position, distance, orientation)); + }); + c.def("getPositionFromOrientation", [](BaseCamera *self, py::list p1, py::float_ p2, py::list p3) { sofa::defaulttype::Vec3 vec1; double vec2;