OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Triangle.h
Go to the documentation of this file.
1#ifndef MSLANG_TRIANGLE_H
2#define MSLANG_TRIANGLE_H
3
4#include "Utilities/MSLang.h"
5
6namespace mslang {
7 struct Triangle: public Base {
8 std::vector<Vector_t> nodes_m;
10 Base(),
11 nodes_m(std::vector<Vector_t>(3, Vector_t(0, 0, 1)))
12 { }
13
14 Triangle(const Triangle &right):
15 Base(right),
16 nodes_m(right.nodes_m)
17 { }
18
19 virtual ~Triangle()
20 { }
21
22 virtual void print(int indentwidth);
23 virtual void apply(std::vector<std::shared_ptr<Base> > &bfuncs);
24 virtual std::shared_ptr<Base> clone() const;
25 virtual void writeGnuplot(std::ofstream &out) const;
26 virtual void computeBoundingBox();
27 double crossProduct(const Vector_t &pt, unsigned int nodeNum) const;
28 virtual bool isInside(const Vector_t &R) const;
29 void orientNodesCCW();
30 };
31}
32
33#endif
virtual void computeBoundingBox()
Definition: Triangle.cpp:57
virtual ~Triangle()
Definition: Triangle.h:19
void orientNodesCCW()
Definition: Triangle.cpp:104
virtual std::shared_ptr< Base > clone() const
Definition: Triangle.cpp:26
virtual void print(int indentwidth)
Definition: Triangle.cpp:5
Triangle(const Triangle &right)
Definition: Triangle.h:14
virtual void writeGnuplot(std::ofstream &out) const
Definition: Triangle.cpp:38
virtual bool isInside(const Vector_t &R) const
Definition: Triangle.cpp:89
virtual void apply(std::vector< std::shared_ptr< Base > > &bfuncs)
Definition: Triangle.cpp:22
double crossProduct(const Vector_t &pt, unsigned int nodeNum) const
Definition: Triangle.cpp:79
std::vector< Vector_t > nodes_m
Definition: Triangle.h:8