summaryrefslogtreecommitdiff
path: root/src/gui/BeamRenderer.cc
diff options
context:
space:
mode:
authorJakob Odersky <jodersky@gmail.com>2011-05-29 20:09:19 +0000
committerJakob Odersky <jodersky@gmail.com>2011-05-29 20:09:19 +0000
commit00d592af835e892902bdf6cc5db29a64f24ab9d3 (patch)
treec68991fb19735fcba7db6ffd7bc9a0767f453c39 /src/gui/BeamRenderer.cc
parent3f28311fd6fb4830b4c64c59daa6a53f24953396 (diff)
downloadvhc-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.cc54
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;
+}
+
+}