mbsimflexiblebody 4.0.0 MBSim Flexible Body Module

nurbs_position_2s.h
1 /*
2 * neutral_nurbs_position_2s.h
3 *
4 * Created on: 04.12.2013
5 * Author: zwang
6 */
7
8 #ifndef _NEUTRAL_NURBS_POSITION_2S_H_
9 #define _NEUTRAL_NURBS_POSITION_2S_H_
10
11 #include "nurbs_2s.h"
12
13 namespace MBSimFlexibleBody {
14
15 class NeutralNurbsPosition2s : public MBSimFlexibleBody::NeutralNurbs2s {
16 public:
17 NeutralNurbsPosition2s(MBSim::Element* parent_, const fmatvec::MatVI & nodes, double nodeOffset, int degU_, int degV_, bool openStructure_);
18 ~NeutralNurbsPosition2s() override;
19 fmatvec::Vec3 evalPosition(const fmatvec::Vec2 &zeta);
20 fmatvec::Vec3 evalWs(const fmatvec::Vec2 &zeta);
21 fmatvec::Vec3 evalWt(const fmatvec::Vec2 &zeta);
22 fmatvec::Vec3 evalWn(const fmatvec::Vec2 &zeta);
23 void update(MBSim::ContourFrame *frame) override;
24 virtual void updatePositionNormal(MBSim::ContourFrame *frame);
25 virtual void updatePositionFirstTangent(MBSim::ContourFrame *frame);
26 virtual void updatePositionSecondTangent(MBSim::ContourFrame *frame);
27 protected:
28 void buildNodelist() override;
29 };
30
31 } /* namespace MBSimFlexibleBody */
32 #endif
MBSim::Element
MBSim::ContourFrame
MBSimFlexibleBody::NeutralNurbs2s
Definition: nurbs_2s.h:19
MBSimFlexibleBody::NeutralNurbsPosition2s
Definition: nurbs_position_2s.h:15