/extensions/org/mt4jx/input/inputProcessors/componentProcessors/Group3DProcessorNew/GroupVisualizations/BlinkingEmissionActivateVisualizationAction.java

http://mt4j.googlecode.com/ · Java · 53 lines · 45 code · 8 blank · 0 comment · 4 complexity · ae002fdc6be66ca73bcd77f6f982eab9 MD5 · raw file

  1. package org.mt4jx.input.inputProcessors.componentProcessors.Group3DProcessorNew.GroupVisualizations;
  2. import org.mt4j.components.MTComponent;
  3. import org.mt4j.components.visibleComponents.shapes.mesh.MTTriangleMesh;
  4. import org.mt4j.input.inputProcessors.IGestureEventListener;
  5. import org.mt4j.input.inputProcessors.MTGestureEvent;
  6. import org.mt4j.input.inputProcessors.componentProcessors.tapProcessor.TapEvent;
  7. import org.mt4jx.input.inputProcessors.componentProcessors.Group3DProcessorNew.Cluster;
  8. import org.mt4jx.input.inputProcessors.componentProcessors.Group3DProcessorNew.IVisualizeMethodProvider;
  9. public class BlinkingEmissionActivateVisualizationAction implements IGestureEventListener {
  10. private Cluster cluster;
  11. private IVisualizeMethodProvider methodProvider;
  12. public BlinkingEmissionActivateVisualizationAction(Cluster cluster,IVisualizeMethodProvider methodProvider)
  13. {
  14. this.cluster = cluster;
  15. this.methodProvider = methodProvider;
  16. this.cluster.setVisualizeProvider(null);
  17. }
  18. public boolean processGestureEvent(MTGestureEvent ge) {
  19. if(ge instanceof TapEvent)
  20. {
  21. TapEvent tapEv = (TapEvent)ge;
  22. switch(tapEv.getId())
  23. {
  24. case TapEvent.GESTURE_STARTED:
  25. cluster.setVisualizeProvider(methodProvider);
  26. break;
  27. case TapEvent.GESTURE_ENDED:
  28. for(MTComponent groups : cluster.getChildren())
  29. {
  30. for(MTComponent comp : groups.getChildren())
  31. {
  32. MTTriangleMesh mesh = (MTTriangleMesh)comp;
  33. if(comp instanceof MTTriangleMesh)
  34. {
  35. mesh.getMaterial().setEmission(new float[]{0.f,0.f,0.f});
  36. }
  37. }
  38. }
  39. cluster.setVisualizeProvider(null);
  40. break;
  41. }
  42. }
  43. return false;
  44. }
  45. }