blob: c3aab57474fab34b4c2582068b02c5e94bc91909 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
/*
* BeamRenderer.cc
*
* Created on: May 27, 2011
* Author: jakob
*/
#include <QtOpenGL>
#include "BeamRenderer.h"
#include "util.h"
namespace vhc {
BeamRenderer::BeamRenderer() {
// TODO Auto-generated constructor stub
}
BeamRenderer::~BeamRenderer() {
// TODO Auto-generated destructor stub
}
void BeamRenderer::render(const Beam& beam) const {
const Beam::ParticleCollection& particles = beam.getParticles();
if (_spheres) {
for (Beam::ParticleCollection::const_iterator i = particles.begin(); i != particles.end(); ++i) {
double pos[] = {(**i).getPosition().getX(), (**i).getPosition().getY(), (**i).getPosition().getZ()};
glPushMatrix();
glTranslated(pos[0], pos[1], pos[2]);
util::sphere(0.01);
glPopMatrix();
}
} else {
glBegin(GL_POINTS);
for (Beam::ParticleCollection::const_iterator i = particles.begin(); i != particles.end(); ++i) {
double pos[] = {(**i).getPosition().getX(), (**i).getPosition().getY(), (**i).getPosition().getZ()};
glVertex3dv(pos);
}
glEnd();
}
}
void BeamRenderer::setSpheresEnabled(bool value) {
_spheres = value;
}
bool BeamRenderer::getSpheresEnabled() const {
return _spheres;
}
}
|