FLImaging 6.5.8.1
THexahedron.h
1#pragma once
2
11#include <stdint.h>
12#include <type_traits>
13#include <typeinfo>
14
15#include "FLLibTags.h"
16#include "TQuad3.h"
17
19namespace FLImaging
20{
22 namespace Base
23 {
35 #pragma pack(push, 1)
36 template <typename T>
37 class FL_EXPORT THexahedron
38 {
39 public:
40 TQuad3<T> tqQuads[2];
41
42
44 {
45 }
46
47 THexahedron(const THexahedron<T>& th) : THexahedron(th.tqQuads[0], th.tqQuads[1])
48 {
49 }
50
51 THexahedron(const TPoint3<T>& tpPoint11, const TPoint3<T>& tpPoint12, const TPoint3<T>& tpPoint13, const TPoint3<T>& tpPoint14, const TPoint3<T>& tpPoint21, const TPoint3<T>& tpPoint22, const TPoint3<T>& tpPoint23, const TPoint3<T>& tpPoint24)
52 {
53 tqQuads[0].Set(tpPoint11, tpPoint12, tpPoint13, tpPoint14);
54 tqQuads[1].Set(tpPoint21, tpPoint22, tpPoint23, tpPoint24);
55 }
56
57 THexahedron(const TQuad3<T>& tpQuad1, const TQuad3<T>& tpQuad2) : THexahedron(tpQuad1.tpPoints[0], tpQuad1.tpPoints[1], tpQuad1.tpPoints[2], tpQuad1.tpPoints[3], tpQuad2.tpPoints[0], tpQuad2.tpPoints[1], tpQuad2.tpPoints[2], tpQuad2.tpPoints[3])
58 {
59 }
60 };
61 #pragma pack(pop)
62
71 }
72}
Simplified class representing a quadrangle.
Definition THexahedron.h:38
Simplified class representing a 3-D point.
Definition TPoint3.h:37
Simplified class representing a quadrangle.
Definition TQuad3.h:38