Mercurial > hg > orthanc-stone
comparison Framework/Toolbox/GeometryToolbox.h @ 140:2115530d3703 wasm
OrientedBoundingBox
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 18 Jan 2018 14:42:33 +0100 |
parents | e2fe9352f240 |
children | 9b83f30fc1c0 |
comparison
equal
deleted
inserted
replaced
139:22628d37ef5c | 140:2115530d3703 |
---|---|
26 #include <boost/version.hpp> | 26 #include <boost/version.hpp> |
27 #if BOOST_VERSION >= 106300 // or 64, need to check | 27 #if BOOST_VERSION >= 106300 // or 64, need to check |
28 # include <boost/serialization/array_wrapper.hpp> | 28 # include <boost/serialization/array_wrapper.hpp> |
29 #endif | 29 #endif |
30 | 30 |
31 #include <boost/numeric/ublas/matrix.hpp> | |
31 #include <boost/numeric/ublas/vector.hpp> | 32 #include <boost/numeric/ublas/vector.hpp> |
32 | 33 |
33 #include <Core/DicomFormat/DicomMap.h> | 34 #include <Core/DicomFormat/DicomMap.h> |
34 | 35 |
35 namespace OrthancStone | 36 namespace OrthancStone |
36 { | 37 { |
38 typedef boost::numeric::ublas::matrix<double> Matrix; | |
37 typedef boost::numeric::ublas::vector<double> Vector; | 39 typedef boost::numeric::ublas::vector<double> Vector; |
38 | 40 |
39 namespace GeometryToolbox | 41 namespace GeometryToolbox |
40 { | 42 { |
41 void Print(const Vector& v); | 43 void Print(const Vector& v); |
116 inline double ProjectAlongNormal(const Vector& point, | 118 inline double ProjectAlongNormal(const Vector& point, |
117 const Vector& normal) | 119 const Vector& normal) |
118 { | 120 { |
119 return boost::numeric::ublas::inner_prod(point, normal); | 121 return boost::numeric::ublas::inner_prod(point, normal); |
120 } | 122 } |
123 | |
124 Matrix CreateRotationMatrixAlongX(double a); | |
125 | |
126 Matrix CreateRotationMatrixAlongY(double a); | |
127 | |
128 Matrix CreateRotationMatrixAlongZ(double a); | |
121 }; | 129 }; |
122 } | 130 } |