SHARE
TWEET

Untitled

a guest Sep 16th, 2019 82 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package com.mygdx.bubblesort;
  2.  
  3. import com.badlogic.gdx.ApplicationAdapter;
  4. import com.badlogic.gdx.Gdx;
  5. import com.badlogic.gdx.graphics.Color;
  6. import com.badlogic.gdx.graphics.glutils.ShapeRenderer.*;
  7. import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
  8. import com.badlogic.gdx.utils.Timer;
  9.  
  10. import java.util.ArrayList;
  11. import java.util.Random;
  12.  
  13. public class BubbleSort extends ApplicationAdapter {
  14.  
  15.  
  16.     private ArrayList<Vector4> list;
  17.     private ShapeRenderer renderer;
  18.     private MyTask task;
  19.     Timer timer;
  20.  
  21.  
  22.     @Override
  23.     public void create() {
  24.  
  25.         Gdx.graphics.setWindowedMode(1080, 720);
  26.         renderer = new ShapeRenderer();
  27.         list = fillList(100);
  28.         task = new MyTask(list);
  29.         timer = new Timer();
  30.     }
  31.  
  32.     @Override
  33.     public void render() {
  34.  
  35.         timer.postTask(task);
  36.         list = task.getList();
  37.  
  38.         renderer.begin(ShapeType.Line);
  39.         renderer.setColor(Color.BLACK);
  40.  
  41.         for (Vector4 vector : list) {
  42.             System.out.println(vector.getHeight());
  43.             renderer.line(vector.getX1(), vector.getY1(), vector.getX2(), vector.getY2());
  44.         }
  45.  
  46.         renderer.end();
  47.  
  48.         try {
  49.             Thread.sleep(1000);
  50.         }
  51.         catch (InterruptedException e) {
  52.             e.printStackTrace();
  53.         }
  54.  
  55.     }
  56.  
  57.  
  58.     @Override
  59.     public void dispose() {
  60.  
  61.         renderer.dispose();
  62.     }
  63.  
  64.  
  65.     ArrayList<Vector4> fillList(int intensity) {
  66.  
  67.         // The higher intensity gets, less values are displayed
  68.         ArrayList<Vector4> list = new ArrayList<>();
  69.         Random random = new Random();
  70.  
  71.  
  72.         for (int i = 0; i < Gdx.graphics.getWidth() / intensity; i++) {
  73.  
  74.             Vector4 vector4 = new Vector4();
  75.  
  76.             vector4.setX1(intensity * i);
  77.             vector4.setY1(0);
  78.             vector4.setX2(vector4.getX1());
  79.             vector4.setY2(random.nextInt(Gdx.graphics.getHeight()));
  80.  
  81.             list.add(vector4);
  82.         }
  83.         return list;
  84.     }
  85.  
  86.  
  87.  
  88. //    void sort(ArrayList<Vector4> list) {
  89. //
  90. //        if (i < list.size()) {
  91. //            for (int j = 0; j < list.size() - 1 - i; j++) {
  92. //
  93. //
  94. //                if (list.get(j).getHeight() > list.get(j + 1).getHeight()) {
  95. //
  96. //                  Gdx.gl.glClearColor(1, 1, 1, 1);
  97. //                  Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
  98. //
  99. //                    Vector4 temp = list.get(j);
  100. //                    list.set(j, list.get(j + 1));
  101. //                    list.set(j + 1, temp);
  102. //
  103. //                    for (Vector4 vector : list) {
  104. //                      System.out.println(vector.getHeight());
  105. //
  106. //                        renderer.line(vector.getX1(), vector.getY1(), vector.getX2(), vector.getY2());
  107. //                    }
  108. //
  109. //                    timer.delay(1000);
  110. //
  111. //                }
  112. //            }
  113. //            i++;
  114. //        }
  115. //        else {
  116. //            System.out.println("Finished");
  117. //            System.exit(0);
  118. //        }
  119. //    }
  120.  
  121.  
  122.  
  123.  
  124. //  void swap(ArrayList<Vector4> list, int a, int b){
  125. //      Vector4 temp = list.get(a);
  126. //      list.set(a, list.get(b));
  127. //      list.set(b, temp);
  128. //  }
  129.  
  130. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top