I’m building a radar. I have some problems with the lines that show where an object is located.
This is how it works now, but I want the different lines to have different values, so I need an array, I searched on internet but I couldn’t figure out how to do it.
I coded it on this way but the array is wrote wrong,I know. How can I write it correctly?
I used a lot of c++, bot with python I’m on the beginning.
add_library('serial')
distance = array[360]
def setup():
size(801, 801) # Dimensioni della finestra
global f
f = createFont("Arial", 20)
ser = Serial(this, "COM5", 9600)
LF = 10
ser.bufferUntil(LF)
def draw():
global distance # Dichiarazione della variabile distance come globale
rectMode(CENTER)
stroke(255)
fill(0)
rect(400, 400, 800, 800)
ellipseMode(CENTER)
ellipse(400, 400, 800, 800)
ellipse(400, 400, 600, 600)
ellipse(400, 400, 400, 400)
ellipse(400, 400, 200, 200)
line(400, 0, 400, 800)
line(0, 400, 800, 400)
line(400 - 400 * cos(0.785), 400 - 400 * sin(0.785), 400 + 400 * cos(0.785), 400 + 400 * sin(0.785))
line(400 - 400 * cos(0.785), 400 + 400 * sin(0.785), 400 + 400 * cos(0.785), 400 - 400 * sin(0.785))
textFont(f)
fill(255)
text("25cm", 440, 390)
text("50cm", 540, 390)
text("75cm", 640, 390)
text("100cm", 730, 390)
for i in range(360):
stroke(0,255,0)
line(400, 400,400+distance[i]*4*cos(radians(i)), 400+distance[i]*4*sin(radians(i)))
stroke(255,0,0)
line(400+distance[i]*4*cos(radians(i)), 400+distance[i]*4*sin(radians(i)),400+400*cos(radians(i)),400+400*sin(radians(i)))
print(distance[i]) # Stampa la distanza attuale
def serialEvent(evt):
i = 0
global distance
inString = evt.readString().strip()
distance[(i, 0)] =int(inString)
i = i + 1
if (i == 359):
i = 0