// (Lei dos cossenos e senos base)
void setup() {
size(800, 600);
Carregar_Logo();
windowTitle("Xing Ling® Corporation");
}
void draw() {
int Px, Py;
background(190);
print("Digite a coordenada X: ");
Px = parseInt(Assistente_Teclado.Receber_Texto());
println("Valor Recebido e salvo:", Px);
print("Digite a coordenada Y: ");
Py = parseInt(Assistente_Teclado.Receber_Texto());
println("Valor Recebido e salvo:", Py);
textSize(25);
fill(0, 0, 0);
text("Força X = "+Px + "\nForça Y = "+Py + "\nForça R = ", 50, 300);
// Desenhando a flecha
strokeWeight(4);
Desenhar_Flecha(0, 0, Px, Py);
}
// (entrada de texto)
public class Assistente_Entrada_Texto {
private String Texto = "";
private boolean Finalizado = true;
Assistente_Entrada_Texto() {
//Inicializar_Busca();
}
private void Inicializar_Busca() {
Texto = "";
Finalizado = false;
}
void Atualizar() {
if (Finalizado == true) {
return; // Nada a ser feito
}
if (
key == CODED || //Tecla codificada (ALT, CTRL, etc)
key == TAB ||
key == ESC ||
key == DELETE ) {
return; // Nada a ser feito
}
if (key == ENTER || key == RETURN) { // Se for o ENTER finaliza a String
Finalizado = true;
println();
return;
}
if (key == BACKSPACE) { // Se for o APAGAR
if (Texto.length() > 0) { // Só faz algo se já tiver algum caractere salvo na String
Texto = Texto.substring(0, Texto.length() - 1); // Retira o ultimo caractere
println("<--");
print(Texto);
}
} else { //Finalmente é um caracter que deve ser salvo na String
Texto += key;
print(key);
}
}
String Receber_Texto() {
Inicializar_Busca();
noLoop();
while (Finalizado == false) {
delay(33);
}
//println("Texto recebido:", Texto);
loop();
return Texto;
}
}
void keyTyped() {
Assistente_Teclado.Atualizar();
}
Assistente_Entrada_Texto Assistente_Teclado = new Assistente_Entrada_Texto();
// (funções auxiliares)
void Carregar_Logo() {
PImage Logo = loadImage("Logo TAI.png");
Logo.resize(0, 15);
surface.setIcon(Logo);
}
void Desenhar_Flecha(float x1, float y1, float x2, float y2) {
float a = dist(x1, y1, x2, y2) / 50;
pushMatrix();
translate(x2, y2);
rotate(atan2(y2 - y1, x2 - x1));
triangle(- a * 2, - a, 0, 0, - a * 2, a);
popMatrix();
line(x1, y1, x2, y2);
}
Hi @vinicius,
what is your actual question?
What should go to Força R =
? The magnitude, resp. length of the vector ?
Cheers
— mnse