Helios++
Helios software for LiDAR simulations
PythonDVec3.h
1
#pragma once
2
3
#ifdef PYTHON_BINDING
4
5
#include <glm/glm.hpp>
6
#include <memory>
7
14
class
PythonDVec3
{
15
// *** ATTRIBUTES *** //
16
// ******************** //
17
private
:
18
bool
release = 1;
19
20
public
:
21
glm::dvec3 * v =
nullptr
;
22
23
// *** CONSTRUCTION *** //
24
// ********************** //
25
PythonDVec3
(glm::dvec3
const
v) {
26
this->v =
new
glm::dvec3(v);
27
release =
true
;
28
}
29
PythonDVec3
(glm::dvec3 *v){
30
this->v = v;
31
release =
false
;
32
}
33
virtual
~
PythonDVec3
(){
34
if
(release && v!=
nullptr
)
delete
v;
35
}
36
37
// *** GETTERS and SETTERS *** //
38
// ***************************** //
39
double
getX() {
return
v->x;}
40
void
setX(
double
x) {v->x = x;}
41
double
getY() {
return
v->y;}
42
void
setY(
double
y) {v->y = y;}
43
double
getZ() {
return
v->z;}
44
void
setZ(
double
z) {v->z = z;}
45
46
};
47
48
#endif
PythonDVec3
Wrapper to communicate glm::dvec3 with python.
Definition:
PythonDVec3.h:14
src
pybinds
PythonDVec3.h
Generated by
1.8.13