Permite al usuario orbitar alrededor de un boceto 3D utilizando un mouse, trackpad o pantalla táctil.
Los bocetos 3D se ven a través de una cámara imaginaria. Llamar a orbitControl()
dentro de la función draw() permite al usuario cambiar la posición de la cámara:
function draw() {
background(200);
<p> // Enable orbiting with the mouse.
orbitControl();</p>
<p> // Rest of sketch.
}
</p>
Hacer clic izquierdo y arrastrar o deslizar el dedo rotará la posición de la cámara alrededor del centro del boceto. Hacer clic derecho y arrastrar o deslizar con varios dedos moverá la posición de la cámara sin rotación. Usar la rueda del mouse (desplazamiento) o pellizcar hacia adentro/afuera moverá la cámara más lejos o más cerca del centro del boceto.
Los primeros tres parámetros, sensitivityX
, sensitivityY
y sensitivityZ
, son opcionales. Son números que establecen la sensibilidad del boceto al movimiento a lo largo de cada eje. Por ejemplo, llamar a orbitControl(1, 2, -1)
mantiene el movimiento a lo largo del eje x en su valor predeterminado, hace que el boceto sea dos veces más sensible al movimiento a lo largo del eje y y invierte el movimiento a lo largo del eje z. Por defecto, todos los valores de sensibilidad son 1.
El cuarto parámetro, options
, también es opcional. Es un objeto que cambia el comportamiento de la órbita. Por ejemplo, llamar a orbitControl(1, 1, 1, options)
mantiene los valores de sensibilidad predeterminados mientras cambia los comportamientos establecidos con options
. El objeto puede tener las siguientes propiedades:
let options = {
// Setting this to false makes mobile interactions smoother by
// preventing accidental interactions with the page while orbiting.
// By default, it's true.
disableTouchActions: true,
<p> // Setting this to true makes the camera always rotate in the
// direction the mouse/touch is moving.
// By default, it's false.
freeRotation: false
};</p>
<p>orbitControl(1, 1, 1, options);
</p>
Ejemplos
Sintaxis
orbitControl([sensitivityX], [sensitivityY], [sensitivityZ], [options])
Parámetros
sensibilidad al movimiento a lo largo del eje x. Por defecto es 1.
sensibilidad al movimiento a lo largo del eje y. Por defecto es 1.
sensibilidad al movimiento a lo largo del eje z. Por defecto es 1.
objeto con dos propiedades opcionales, disableTouchActions
y freeRotation
. Ambas son de tipo Boolean
. disableTouchActions
por defecto es true
y freeRotation
por defecto es false
.