opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
simbody_x_oscar.h
Go to the documentation of this file.
1#pragma once
2
10#include <SimTKcommon/internal/MassProperties.h>
11#include <SimTKcommon/internal/Rotation.h>
12#include <SimTKcommon/internal/Transform.h>
13#include <SimTKcommon/SmallMatrix.h>
14
15#include <array>
16
17namespace osc { struct Transform; }
18
19// simbody_x_oscar
20//
21// Conversions and bindings between the `simbody` and `oscar` libraries.
22
23template<>
24struct osc::Converter<osc::Vector3, SimTK::Vec3> final {
25 SimTK::Vec3 operator()(const osc::Vector3&) const;
26};
27
28template<>
29struct osc::Converter<osc::Vector3, SimTK::fVec3> final {
30 SimTK::fVec3 operator()(const osc::Vector3&) const;
31};
32
33template<>
34struct osc::Converter<osc::EulerAngles, SimTK::Vec3> final {
35 SimTK::Vec3 operator()(const osc::EulerAngles&) const;
36};
37
38template<>
39struct osc::Converter<osc::Matrix3x3, SimTK::Mat33> final {
40 SimTK::Mat33 operator()(const osc::Matrix3x3&) const;
41};
42
43template<>
44struct osc::Converter<osc::Vector3, SimTK::Inertia> final {
45 SimTK::Inertia operator()(const osc::Vector3&) const;
46};
47
48template<>
49struct osc::Converter<osc::Transform, SimTK::Transform> final {
50 SimTK::Transform operator()(const osc::Transform&) const;
51};
52
53template<>
54struct osc::Converter<osc::Quaternion, SimTK::Rotation> final {
55 SimTK::Rotation operator()(const osc::Quaternion&) const;
56};
57
58template<>
59struct osc::Converter<osc::EulerAngles, SimTK::Rotation> final {
60 SimTK::Rotation operator()(const osc::EulerAngles&) const;
61};
62
63template<>
64struct osc::Converter<osc::Color, SimTK::Vec3> final {
65 SimTK::Vec3 operator()(const osc::Color&) const;
66};
67
68template<>
70 osc::Vector3 operator()(const SimTK::Vec3&) const;
71};
72
73template<>
75 osc::Vector3d operator()(const SimTK::Vec3&) const;
76};
77
78template<>
80 osc::Vector3 operator()(const SimTK::fVec3&) const;
81};
82
83template<>
85 osc::Vector3 operator()(const SimTK::UnitVec3&) const;
86};
87
88template<>
90 osc::Matrix4x4 operator()(const SimTK::Transform&) const;
91};
92
93template<>
95 osc::Matrix3x3 operator()(const SimTK::Mat33&) const;
96};
97
98template<>
100 osc::Matrix4x4 operator()(const SimTK::Rotation&) const;
101};
102
103template<>
105 osc::Quaternion operator()(const SimTK::Rotation&) const;
106};
107
108template<>
110 osc::EulerAngles operator()(const SimTK::Rotation&) const;
111};
112
113template<>
114struct osc::Converter<SimTK::Vec6, std::array<float, 6>> final {
115 std::array<float, 6> operator()(const SimTK::Vec6&) const;
116};
117
118template<>
120 osc::Transform operator()(const SimTK::Transform&) const;
121};
Definition custom_decoration_generator.h:6
Definition custom_decoration_generator.h:5
constexpr U to(T &&value)
Definition conversion.h:56
osc::Matrix3x3 operator()(const SimTK::Mat33 &) const
osc::EulerAngles operator()(const SimTK::Rotation &) const
osc::Matrix4x4 operator()(const SimTK::Rotation &) const
osc::Quaternion operator()(const SimTK::Rotation &) const
osc::Matrix4x4 operator()(const SimTK::Transform &) const
osc::Transform operator()(const SimTK::Transform &) const
osc::Vector3 operator()(const SimTK::UnitVec3 &) const
osc::Vector3 operator()(const SimTK::Vec3 &) const
osc::Vector3d operator()(const SimTK::Vec3 &) const
std::array< float, 6 > operator()(const SimTK::Vec6 &) const
osc::Vector3 operator()(const SimTK::fVec3 &) const
SimTK::Vec3 operator()(const osc::Color &) const
SimTK::Rotation operator()(const osc::EulerAngles &) const
SimTK::Vec3 operator()(const osc::EulerAngles &) const
SimTK::Mat33 operator()(const osc::Matrix3x3 &) const
SimTK::Rotation operator()(const osc::Quaternion &) const
SimTK::Transform operator()(const osc::Transform &) const
SimTK::Inertia operator()(const osc::Vector3 &) const
SimTK::Vec3 operator()(const osc::Vector3 &) const
SimTK::fVec3 operator()(const osc::Vector3 &) const
Definition conversion.h:30
Definition matrix.h:15
Definition transform.h:11