p5.Método setPosition() de cámara

El método setPosition() de p5.Camera en p5.js se usa para establecer la posición de la cámara en el punto dado en el espacio mundial. Mantiene la orientación actual de la cámara mientras cambia la posición.

Sintaxis:

setPosition( x, y, z )

Parámetros: este método acepta tres parámetros, como se mencionó anteriormente y se describe a continuación:

  • x: Es un número que denota la posición x del punto en el espacio mundial.
  • y: Es un número que denota la posición y del punto en el espacio mundial.
  • z: Es un número que denota la posición z del punto en el espacio mundial.

El siguiente ejemplo ilustra el método setPosition() en p5.js:

Ejemplo:

Javascript

let currCamera;
  
function setup() {
  createCanvas(500, 500, WEBGL);
  helpText = createP(
    "Move the sliders to change the " +
    "position of the camera"
  );
  helpText.position(20, 0);
  
  // Create the camera
  currCamera = createCamera();
  
  // Create three sliders for changing the
  // position of the camera
  xPosSlider = createSlider(-360, 360, 0);
  xPosSlider.position(20, 40);
  
  yPosSlider = createSlider(-360, 360, 0);
  yPosSlider.position(20, 70);
  
  zPosSlider = createSlider(0, 800, 600);
  zPosSlider.position(20, 100);
}
  
function draw() {
  clear();
  lights();
  normalMaterial();
  debugMode();
  
  // Get the x, y, z values from the
  // sliders
  let currX = xPosSlider.value();
  let currY = yPosSlider.value();
  let currZ = zPosSlider.value();
  
  // Set the position of the camera
  // to these points in the world space
  currCamera.setPosition(currX, currY, currZ);
  
  cylinder(90);
}

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.Camera/setPosition

Publicación traducida automáticamente

Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *