23#include "mbsim/contours/plane.h"
24#include "fmatvec/fmatvec.h"
25#include "fmatvec/linear_algebra_double.h"
26#include "fmatvec/linear_algebra.h"
28#include <mbsim/utils/openmbv_utils.h>
47 Plate(
const std::string &
name,
double yL,
double zL,
double t,
Frame *
R=
nullptr);
50 void init(
InitStage stage,
const InitConfigSet &config)
override;
54 void setYLength(
double l) {
57 void setZLength(
double l) {
61 double getYLength()
const {
64 double getZLength()
const {
68 const fmatvec::Vec3 & getA()
const {
71 const fmatvec::Vec3 & getB()
const {
74 const fmatvec::Vec3 & getC()
const {
77 const fmatvec::Vec3 & getD()
const {
97 bool PointInCircle(
const fmatvec::Vec3& Point,
const fmatvec::Vec3& CenCir,
const double & radius);
116 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))) {
117 OpenMBVColoredBody ombv(diffuseColor,transparency,pointSize,lineWidth);
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
plane without borders
Definition: plane.h:39
RigidContour Plate.
Definition: plate.h:37
bool PointInCircle(const fmatvec::Vec3 &Point, const fmatvec::Vec3 &CenCir, const double &radius)
check if a point lies in the circle (point and circle are on the same plane)
Definition: plate.cc:81
void init(InitStage stage, const InitConfigSet &config) override
plots time series header
Definition: plate.cc:41
bool PointInPlate(const fmatvec::Vec3 &Point)
if the point and plate are on the same plane by default, this function checks if a point lies in the ...
Definition: plate.cc:73
fmatvec::Vec3 Point_closest_toCircle_onLineseg(const fmatvec::Vec3 &EndP1, const fmatvec::Vec3 &EndP2, const fmatvec::Vec3 &CenCir)
search the closest point on the line segment to a circle
Definition: plate.cc:87
bool Intersect_Circle(const double &radi, const fmatvec::Vec3 &CenCir)
check if this plate intersect with a circle,
Definition: plate.cc:105
fmatvec::Vec3 RrD
vertex for y = limy/2, z = -limz/2
Definition: plate.h:143
fmatvec::Vec3 RrA
vertex for y = limy/2, z = limz/2
Definition: plate.h:128
fmatvec::Vec3 RrB
vertex for y = -limy/2, z = limz/2
Definition: plate.h:133
void setVertices()
set the verticies positions
Definition: plate.cc:51
Plate(const std::string &name="", Frame *R=nullptr)
constructor
fmatvec::Vec3 RrC
vertex for y = -limy/2, z = -limz/2
Definition: plate.h:138
Frame * R
coordinate system of contour
Definition: rigid_contour.h:135
namespace MBSim
Definition: bilateral_constraint.cc:30