private ControllerAction convertEvent(Controller c, Event event) { Component comp = event.getComponent(); Identifier id = comp.getIdentifier(); float axisValue = comp.getPollData(); Input input; ButtonState state = ButtonState.UP;
public final boolean isKeyDown(Component.Identifier.Key key_id) { Component key = getComponent(key_id); if (key == null) return false; return key.getPollData() != 0; } } // class Keyboard
public final boolean isKeyDown(Component.Identifier.Key key_id) { Component key = getComponent(key_id); if (key == null) return false; return key.getPollData() != 0; } } // class Keyboard
public final boolean isKeyDown(Component.Identifier.Key key_id) { Component key = getComponent(key_id); if (key == null) return false; return key.getPollData() != 0; } } // class Keyboard
public final boolean isKeyDown(Component.Identifier.Key key_id) { Component key = getComponent(key_id); if (key == null) return false; return key.getPollData() != 0; } } // class Keyboard
private ButtonState toState(Event event) { if (event.getComponent().getPollData() > 0.5f) return ButtonState.PRESSED; else return ButtonState.RELEASED; }
@Override public float getPollData(final Identifier identifier) { final Component comp = this.controller.getComponent(identifier); if (comp == null) { return 0; } return comp.getPollData(); }
public void poll(){ data = axis.getPollData(); renderData(); }
private void handlePressed(Component comp) { final String name = comp.getIdentifier().getName(); for (final BiConsumer<String, Float> cons : this.pressedConsumer) { cons.accept(name, comp.getPollData()); } if (this.componentPressedConsumer.containsKey(name)) { for (Consumer<Float> cons : this.componentPressedConsumer.get(name)) { cons.accept(comp.getPollData()); } } if (!this.pressedComponents.contains(name)) { this.pressedComponents.add(name); } }
private void handleRelease(Component comp) { final String name = comp.getIdentifier().getName(); if (!this.pressedComponents.contains(name)) { return; } this.pressedComponents.remove(name); for (final BiConsumer<String, Float> cons : this.releasedConsumer) { cons.accept(name, comp.getPollData()); } final List<Consumer<Float>> consumers = this.componentReleasedConsumer.get(comp.getIdentifier().getName()); if (consumers != null) { for (final Consumer<Float> cons : consumers) { cons.accept(comp.getPollData()); } } }
newVal = axis.getPollData();
private void con(){ JInputJoystick joystick = new JInputJoystick(Controller.Type.STICK); while (joystick.isControllerConnected()) { // Go trough all components of the controller. Component[] components = joystick.getComponents(); for(int i=0; i < components.length; i++) { Component component = components[i]; Identifier componentIdentifier = component.getIdentifier(); // Buttons if(componentIdentifier.getName().matches("^[0-9]*$")){ // If the component identifier name contains only numbers, then this is a button. // Is button pressed? if(component.getPollData() != 0.0f) { txt.setText("Button got pressed!") } } } // We have to give processor some rest. try { Thread.sleep(25); } catch (InterruptedException ex) { Logger.getLogger(JoystickTest.class.getName()).log(Level.SEVERE, null, ex); } } txt.setText("Controller not connected"); }
bool xReleased = false, yReleased = false; Component[] components = controller.getComponents(); for(Component component : components) { if(component.isAnalog()) { //test that controller is analog Identifier id = component.getIdentifier(); float axisPosition = component.getPollData(); //range: -1 to 1 if(id == Component.Identifier.Axis.X && axisPosition == 0) xReleased = true; if(id == Component.Identifier.Axis.Y && axisPosition == 0) yReleased = true; } } if(xReleased && yReleased) { //do something... }
double timeScale = lap / POLL_PERIOD_SECONDS; double dx = X_SIGN * controller.getComponent(Component.Identifier.Axis.X).getPollData() * scale * timeScale; double dy = Y_SIGN * controller.getComponent(Component.Identifier.Axis.Y).getPollData() * scale * timeScale; double dz = Z_SIGN * controller.getComponent(Component.Identifier.Axis.Z).getPollData() * scale * timeScale; double drx = RX_SIGN * controller.getComponent(Component.Identifier.Axis.RX).getPollData() * scale * timeScale; double dry = RY_SIGN * controller.getComponent(Component.Identifier.Axis.RY).getPollData() * scale * timeScale; double drz = RZ_SIGN * controller.getComponent(Component.Identifier.Axis.RZ).getPollData() * scale * timeScale;
val = axes[i].getPollData(); if (Math.abs(lastVals[i] - val) < DEVICE_THRESHOLD) continue;
double timeScale = lap / POLL_PERIOD_SECONDS; double dx = X_SIGN * controller.getComponent(Component.Identifier.Axis.X).getPollData() * scale * timeScale; double dy = Y_SIGN * controller.getComponent(Component.Identifier.Axis.Y).getPollData() * scale * timeScale; double dz = Z_SIGN * controller.getComponent(Component.Identifier.Axis.Z).getPollData() * scale * timeScale; double drx = RX_SIGN * controller.getComponent(Component.Identifier.Axis.RX).getPollData() * scale * timeScale; double dry = RY_SIGN * controller.getComponent(Component.Identifier.Axis.RY).getPollData() * scale * timeScale; double drz = RZ_SIGN * controller.getComponent(Component.Identifier.Axis.RZ).getPollData() * scale * timeScale;
val = axes[i].getPollData(); if (Math.abs(lastVals[i] - val) < DEVICE_THRESHOLD) continue;
val = axes[i].getPollData(); if (Math.abs(lastVals[i] - val) < DEVICE_THRESHOLD) continue;
if (components[i].isAnalog()) { buffer.append(components[i].getPollData()); } else { if (components[i].getPollData() == 1.0f) { buffer.append("On"); } else {
@Override public void update() { final boolean couldPoll = this.controller.poll(); if (!couldPoll) { this.dispose(); } final Event event = new Event(); while (this.controller.getEventQueue().getNextEvent(event)) { this.handlePollEvents(event); } for (Component comp : this.controller.getComponents()) { if (Math.abs(comp.getPollData()) > this.getDeadZone(comp.getIdentifier())) { this.handlePressed(comp); } else { this.handleRelease(comp); } } }