La función atan2() en p5.js se usa para calcular el ángulo desde un punto de origen específico medido desde el eje x positivo. Los valores se devuelven en el rango de PI a -PI como puntos flotantes. Se utiliza comúnmente para orientar la geometría a la posición del cursor.
Sintaxis:
atan2(y, x)
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación.
- y: Es un número que especifica la coordenada y del punto.
- x: Es un número que especifica la coordenada x del punto.
Valor de retorno: Devuelve un número que denota el arco tangente del punto dado.
Los siguientes ejemplos ilustran la función atan2() en p5.js:
Ejemplo 1:
function setup() { createCanvas(500, 200); textSize(18); text("Move the slider to observe the effects" + " of the atan2() function", 20, 30); sliderXPos = createSlider(-200, 200, 0, 1); sliderXPos.position(20, 50); sliderYPos = createSlider(-200, 200, 0, 1); sliderYPos.position(20, 80); } function draw() { clear(); text("Move the slider to observe the effects" + " of the atan2() function", 20, 30); sliderXVal = sliderXPos.value(); sliderYVal = sliderYPos.value(); atan2Val = atan2(sliderXVal, sliderYVal); text("The X position value is: " + sliderXVal, 20, 140); text("The Y position value is: " + sliderYVal, 20, 160); text("The atan2 value is: " + atan2Val, 20, 180); }
Producción:
Ejemplo 2:
function setup() { createCanvas(500, 400); textSize(18); text("Move the mouse to see the rectangle" + " align to it.", 20, 30); } function draw() { clear(); text("Move the mouse to see the rectangle" + " align with the mouse.", 20, 30); // Move the rectangle to the // middle of the screen translate(width / 2, height / 2); // Use the atan2() function to find // the value according to the mouse // coordinates let adjustedValue = atan2(mouseY - height / 2, mouseX - width / 2); rotate(adjustedValue); // Draw a rectangle rect(0, 0, 50, 25); text(adjustedValue.toFixed(4), 100, 20); }
Producción:
Editor en línea: https://editor.p5js.org/
Configuración del entorno: https://www.geeksforgeeks.org/p5-js-soundfile-object-installation-and-methods/
Referencia: https://p5js.org/reference/#/p5/atan2
Publicación traducida automáticamente
Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA