View difference between Paste ID: 6U4gawZn and CCntJdyW
SHOW: | | - or go back to the newest paste.
1-
import processing.serial.*;
1+
import processing.serial.*;
2-
2+
3-
      String val;     // Data received from the serial port
3+
      String val;     // Data received from the serial port
4-
      Serial serialConnectionObject;
4+
      Serial serialConnectionObject;
5-
      int serialChannelIndexInt;
5+
      int serialChannelIndexInt;
6-
      float lat;
6+
      float lat;
7-
      float lng;
7+
      float lng;
8-
      int rectSizeX = 40 ;
8+
      int rectSizeX = 40 ;
9-
      int rectSizeY = 40;
9+
      int rectSizeY = 40;
10-
      float latcoord = 0;
10+
      float latcoord = 0;
11-
      float longcoord = 0;
11+
      float longcoord = 0;
12-
      boolean newData = false;
12+
      boolean newData = false;
13-
      float xCoord;
13+
      float xCoord;
14-
      float yCoord;
14+
      float yCoord;
15-
15+
16-
      void setup()
16+
      void setup()
17-
      {
17+
      {
18-
        background(0);
18+
        background(0);
19-
        size(400,400, P2D);
19+
        size(400,400, P2D);
20-
        InitSerialConnectionVoid(0);
20+
        InitSerialConnectionVoid(0);
21-
        String portName = Serial.list()[serialChannelIndexInt]; //change the 0 to a 1 or 2 etc. to match your port
21+
        String portName = Serial.list()[serialChannelIndexInt]; //change the 0 to a 1 or 2 etc. to match your port
22-
        println(portName);
22+
        println(portName);
23-
        serialConnectionObject.bufferUntil('n');
23+
        serialConnectionObject.bufferUntil('n');
24
      }
25-
25+
26-
      void draw()
26+
      void draw()
27-
      { 
27+
      { 
28-
        beginCamera();
28+
        beginCamera();
29-
        camera();
29+
        camera();
30-
        translate(lat,lng);
30+
        translate(lat,lng);
31-
        endCamera();
31+
        endCamera();
32-
32+
33-
        if(newData) {
33+
        if(newData) {
34-
          fill(#FFFFFF, 10);
34+
          fill(#FFFFFF, 10);
35-
          noStroke();
35+
          noStroke();
36-
          rectMode(CENTER);
36+
          rectMode(CENTER);
37-
          scale(2);
37+
          scale(2);
38-
          rect(xCoord, yCoord, rectSizeX, rectSizeY);
38+
          rect(xCoord, yCoord, rectSizeX, rectSizeY);
39-
        }
39+
        }
40-
40+
41
      }
42-
42+
43-
      void serialEvent(Serial p) {
43+
      void serialEvent(Serial p) {
44-
        try {
44+
        try {
45-
          println("test");
45+
          println("test");
46-
            val = p.readString();
46+
            val = p.readString();
47-
              println(val);
47+
              println(val);
48-
            JSONObject json = parseJSONObject(val);
48+
            JSONObject json = parseJSONObject(val);
49-
            if (json == null) {
49+
            if (json == null) {
50-
              newData = false;
50+
              newData = false;
51-
            } else {
51+
            } else {
52-
              println(json.toString());
52+
              println(json.toString());
53-
              lat = json.getFloat("lat");
53+
              lat = json.getFloat("lat");
54-
              lng = json.getFloat("lng");
54+
              lng = json.getFloat("lng");
55-
              println(lat);
55+
              println(lat);
56-
              LatLngtoXY(lat,lng);
56+
              LatLngtoXY(lat,lng);
57-
              println(xCoord, yCoord);
57+
              println(xCoord, yCoord);
58-
              newData=true;
58+
              newData=true;
59-
            }
59+
            }
60-
            //latcoord = map(lat, lat-0.00045000045, lat+0.00045000045, 0, width);
60+
            //latcoord = map(lat, lat-0.00045000045, lat+0.00045000045, 0, width);
61-
            //longcoord = map(lng, lng-0.00045000063, lng+0.00045000063, 0, height);
61+
            //longcoord = map(lng, lng-0.00045000063, lng+0.00045000063, 0, height);
62-
62+
63-
63+
64-
          }
64+
          }
65-
        catch(RuntimeException e) {
65+
        catch(RuntimeException e) {
66-
           e.printStackTrace(); 
66+
           e.printStackTrace(); 
67-
        }
67+
        }
68-
68+
69
      }
70-
70+
71-
      void LatLngtoXY(float lat, float lon) {
71+
      void LatLngtoXY(float lat, float lon) {
72-
          float mapWidth    = width;
72+
          float mapWidth    = width;
73-
          float mapHeight   = height;
73+
          float mapHeight   = height;
74-
74+
75-
          // get x value
75+
          // get x value
76-
          xCoord = (lon+180)*(mapWidth/360);
76+
          xCoord = (lon+180)*(mapWidth/360);
77-
77+
78-
          // convert from degrees to radians
78+
          // convert from degrees to radians
79-
          float latRad = lat*PI/180;
79+
          float latRad = lat*PI/180;
80-
          // get y value
80+
          // get y value
81-
          float mercN = log(tan((PI/4)+(latRad/2)));
81+
          float mercN = log(tan((PI/4)+(latRad/2)));
82-
          yCoord     = (mapHeight/2)-(mapWidth*mercN/(2*PI));
82+
          yCoord     = (mapHeight/2)-(mapWidth*mercN/(2*PI));
83
      }
84-
84+
85-
      void InitSerialConnectionVoid(int _serialChannelIndexInt){
85+
      void InitSerialConnectionVoid(int _serialChannelIndexInt){
86-
86+
87-
          serialChannelIndexInt = _serialChannelIndexInt;
87+
          serialChannelIndexInt = _serialChannelIndexInt;
88-
88+
89-
          if(serialChannelIndexInt == Serial.list().length){ return; }
89+
          if(serialChannelIndexInt == Serial.list().length){ return; }
90-
          try{
90+
          try{
91-
91+
92-
              serialConnectionObject = new Serial(this, Serial.list()[serialChannelIndexInt], 115200);
92+
              serialConnectionObject = new Serial(this, Serial.list()[serialChannelIndexInt], 115200);
93-
              serialConnectionObject.bufferUntil('n');
93+
              serialConnectionObject.bufferUntil('n');
94-
94+
95-
          }
95+
          }
96-
          catch (RuntimeException e){
96+
          catch (RuntimeException e){
97-
97+
98-
              serialConnectionObject = null;
98+
              serialConnectionObject = null;
99-
              println(e);
99+
              println(e);
100-
              println("SERIAL CONNECTION FAILED");
100+
              println("SERIAL CONNECTION FAILED");
101-
              InitSerialConnectionVoid(serialChannelIndexInt + 1);
101+
              InitSerialConnectionVoid(serialChannelIndexInt + 1);
102-
102+
103-
          }
103+
          }
104-
104+
105
      }