PeriDyno 1.0.0
Loading...
Searching...
No Matches
PlaneModel.h
Go to the documentation of this file.
1
16
17#pragma once
18#include "BasicShape.h"
19
20#include "Topology/TriangleSet.h"
21#include "Topology/QuadSet.h"
22#include "Topology/PolygonSet.h"
23
24namespace dyno
25{
26 template<typename TDataType>
27 class PlaneModel : public BasicShape<TDataType>
28 {
30
31 public:
32 typedef typename TDataType::Real Real;
33 typedef typename TDataType::Coord Coord;
34
35 PlaneModel();
36
37 std::string caption() override { return "Plane"; }
38
40
41 NBoundingBox boundingBox() override;
42
43 public:
44 DEF_VAR(Real, LengthX, Real(1), "length X");
45 DEF_VAR(Real, LengthZ, Real(1), "length Z");
46
47 DEF_VAR(unsigned, SegmentX, unsigned(1), "Segment X");
48 DEF_VAR(unsigned, SegmentZ, unsigned(1), "Segment Z");
49
51
53
55
56 protected:
57 void resetStates() override;
58
59 private:
60 void varChanged();
61
62 };
63
65}
#define IMPLEMENT_TCLASS(name, T1)
Definition Object.h:103
BasicShapeType getShapeType() override
Definition PlaneModel.h:39
std::string caption() override
Return the caption.
Definition PlaneModel.h:37
DECLARE_TCLASS(PlaneModel, TDataType)
TDataType::Coord Coord
Definition PlaneModel.h:33
DEF_VAR(unsigned, SegmentZ, unsigned(1), "Segment Z")
DEF_INSTANCE_STATE(TriangleSet< TDataType >, TriangleSet, "")
DEF_VAR(Real, LengthX, Real(1), "length X")
DEF_INSTANCE_STATE(QuadSet< TDataType >, QuadSet, "")
TDataType::Real Real
Definition PlaneModel.h:32
DEF_VAR(unsigned, SegmentX, unsigned(1), "Segment X")
NBoundingBox boundingBox() override
DEF_INSTANCE_STATE(PolygonSet< TDataType >, PolygonSet, "")
DEF_VAR(Real, LengthZ, Real(1), "length Z")
void resetStates() override
a class to store polygon whose vertex number is greater or equal than 3
Definition PolygonSet.h:29
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25
BasicShapeType
Definition BasicShape.h:23
@ PLANE
Definition BasicShape.h:24