我有一个非常奇怪的问题。我的代码中的所有内容都非常好,但我仍然有一个问题。
import processing.serial.*;
float r_height;
float r_width;
float hypotnuse;
int d = 20;
float x ;
float y ;
float ledGlow;
Serial myPort; // Create object from Serial class
void setup () {
size (510, 510);
String portName = Serial.list()[8];
myPort = new Serial(this, portName, 9600);
background (0);
fill(204);
ellipseMode (CORNER);
x = 0;
y = 0;
ellipse (x, y, d, d);
}
void draw () {
r_height = mouseY - y;
r_width = mouseX - x;
println ("Height is " + r_height);
println ("Width is " + r_width);
hypotnuse = sqrt (( (sq(r_height)) + (sq (r_width)) ) );
ledGlow = round (hypotnuse/2.84);
myPort.write(ledGlow);
println (ledGlow);
}
我需要从三角形的斜边中得到 0-255 的值。但是当我将它写入串行端口(myPort.write (ledGlow))
时,我需要翻转这些值。所以如果斜边是 0,它实际上需要等于 255,如果它是 1,它需要是 254,依此类推。我不知道如何解决这个问题。