Skip to content
Snippets Groups Projects
Select Git revision
  • a1340889fb4546b8ea4cbf666efc627d35b1a6c1
  • develop default protected
  • master protected
  • feature/scrollbars
  • native-audio
  • v7.3.0
  • v7.2.0
  • v7.1.0
  • v7.0.2
  • v7.0.1
  • v7.0.0
  • v5.0.1
  • v5.1.0
  • v6.1.0
  • v6.0.0
15 results

WaveformView.java

Blame
  • WaveformView.java 1.01 KiB
    package de.tobias.playpad.view;
    
    import javafx.scene.paint.Color;
    import javafx.scene.shape.LineTo;
    import javafx.scene.shape.MoveTo;
    import javafx.scene.shape.Path;
    
    public class WaveformView extends Path {
    
    	public WaveformView(float[] data) {
    		getElements().add(new MoveTo(0, 0));
    
    		double width2 = data.length / 1200.0;
    		int width = data.length / 10000;
    		System.out.println(data.length);
    		System.out.println(width);
    
    		int i = 0;
    		for (i = 0; i < data.length; i += width) {
    			if (i < data.length) {
    				LineTo lineTo = new LineTo(i / width2, data[i] * 50.0);
    				MoveTo moveTo = new MoveTo(i / width2, data[i] * 50.0);
    
    				getElements().addAll(lineTo, moveTo);
    			}
    		}
    		for (; i >= 0; i -= width) {
    			if (i >= 0 && i < data.length) {
    				LineTo lineTo = new LineTo(i / width2, -data[i] * 50.0);
    				MoveTo moveTo = new MoveTo(i / width2, -data[i] * 50.0);
    
    				getElements().addAll(lineTo, moveTo);
    			}
    		}
    		getElements().add(new LineTo(0, 0));
    		getElements().add(new MoveTo(0, 0));
    		setFill(Color.BLACK);
    	}
    }