23#include "mbsim/contours/rigid_contour.h"
24#include "mbsim/functions/function.h"
25#include "mbsim/utils/boost_parameters.h"
26#include "mbsim/utils/openmbv_utils.h"
27#include <openmbvcppinterface/planargear.h>
46 void init(
InitStage stage,
const InitConfigSet &config)
override;
50 fmatvec::Vec3 evalKrPS(
const fmatvec::Vec2 &zeta)
override;
51 fmatvec::Vec3 evalKs(
const fmatvec::Vec2 &zeta)
override;
52 fmatvec::Vec3 evalKt(
const fmatvec::Vec2 &zeta)
override;
56 void setNumberOfTeeth(
int N_) { N = N_; }
57 int getNumberOfTeeth() {
return N; }
58 double getHeight() {
return h; }
59 void setHeight(
double h_) { h = h_; }
60 void setWidth(
double w_) { w = w_; }
61 double getWidth() {
return w; }
62 void setHelixAngle(
double be_) { be = be_; }
63 double getHelixAngle() {
return be; }
64 void setModule(
double m_) { m = m_; }
65 double getModule() {
return m; }
66 void setPressureAngle(
double al_) { al = al_; }
67 double getPressureAngle() {
return al; }
68 void setBacklash(
double b_) { b = b_; }
69 double getBacklash() {
return b; }
70 void setFlank(
int flank) { signi = flank; }
71 void setTooth(
int tooth) { k = tooth; }
72 double getPhiMax(
double h,
double s);
73 double getPhiMaxHigh(
int i) {
return phiMaxHigh; }
74 double getPhiMaxLow(
int i) {
return phiMaxLow; }
75 double getPhiMinHigh(
int i) {
return phiMinHigh; }
76 double getPhiMinLow(
int i) {
return phiMinLow; }
77 double getSPhiMaxHigh(
int i) {
return sPhiMaxHigh; }
78 double getSPhiMinHigh(
int i) {
return sPhiMinHigh; }
81 BOOST_PARAMETER_MEMBER_FUNCTION( (
void), enableOpenMBV, tag, (optional (diffuseColor,(
const fmatvec::Vec3&),fmatvec::Vec3(std::vector<double>{-1,1,1}))(transparency,(
double),0)(pointSize,(
double),0)(lineWidth,(
double),0))) {
82 OpenMBVColoredBody ombv(diffuseColor,transparency,pointSize,lineWidth);
86 void initializeUsingXML(xercesc::DOMElement *element)
override;
91 double h, s, r0, al, be;
93 Residuum(
double h_,
double s_,
double r0_,
double al_,
double be_) : h(h_), s(s_), r0(r0_), al(al_), be(be_) { }
94 double operator()(
const double &phi)
override;
102 double al{0.349065850398866};
110 double phiMaxHigh, phiMaxLow, phiMinHigh, phiMinLow, sPhiMaxHigh, sPhiMinHigh;
InitStage
The stages of the initialization.
Definition: element.h:62
std::string name
name of element
Definition: element.h:260
cartesian frame on bodies used for application of e.g. links and loads
Definition: frame.h:39
Definition: function.h:53
Definition: planar_gear.h:89
planar gear contour
Definition: planar_gear.h:35
~PlanarGear() override=default
destructor
void init(InitStage stage, const InitConfigSet &config) override
plots time series header
Definition: planar_gear.cc:76
basic class for rigid contours
Definition: rigid_contour.h:37
Frame * R
coordinate system of contour
Definition: rigid_contour.h:135
RigidContour(const std::string &name, Frame *R_=nullptr)
constructor
Definition: rigid_contour.h:43
namespace MBSim
Definition: bilateral_constraint.cc:30