diff options
author | Jakob Odersky <jodersky@gmail.com> | 2011-05-29 20:09:19 +0000 |
---|---|---|
committer | Jakob Odersky <jodersky@gmail.com> | 2011-05-29 20:09:19 +0000 |
commit | 00d592af835e892902bdf6cc5db29a64f24ab9d3 (patch) | |
tree | c68991fb19735fcba7db6ffd7bc9a0767f453c39 /src/gui/BeamRenderer.cc | |
parent | 3f28311fd6fb4830b4c64c59daa6a53f24953396 (diff) | |
download | vhc-00d592af835e892902bdf6cc5db29a64f24ab9d3.tar.gz vhc-00d592af835e892902bdf6cc5db29a64f24ab9d3.tar.bz2 vhc-00d592af835e892902bdf6cc5db29a64f24ab9d3.zip |
*Ajoute interactions avancees
*Ecrit conception
*Commentaires
Diffstat (limited to 'src/gui/BeamRenderer.cc')
-rw-r--r-- | src/gui/BeamRenderer.cc | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/gui/BeamRenderer.cc b/src/gui/BeamRenderer.cc new file mode 100644 index 0000000..c3aab57 --- /dev/null +++ b/src/gui/BeamRenderer.cc @@ -0,0 +1,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; +} + +} |