diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 8725845f6..c9e393ad5 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -9,10 +9,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- - name: Use Node.js 12.x
+ - name: Use Node.js 16.x
uses: actions/setup-node@v1
with:
- node-version: 12.x
+ node-version: 16.x
- name: Install dependencies
run: npm ci
- name: Deploy with static
diff --git a/.nvmrc b/.nvmrc
new file mode 100644
index 000000000..b6a7d89c6
--- /dev/null
+++ b/.nvmrc
@@ -0,0 +1 @@
+16
diff --git a/content/books/algorithms-for-visual-design/index.es.mdx b/content/books/algorithms-for-visual-design/index.es.mdx
new file mode 100644
index 000000000..c198ddc25
--- /dev/null
+++ b/content/books/algorithms-for-visual-design/index.es.mdx
@@ -0,0 +1,10 @@
+---
+title: "Algorithms for Visual Design Using the Processing Language"
+author: "Kostas Terzidis"
+details: "Wiley. 384 Páginas. Cubierta dura."
+published: "2009-05"
+buy: "Ordena de Amazon-http://www.amazon.com/gp/product/0470375485?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0470375485"
+language: ""
+---
+
+El sitio web de Wiley website dice: "este libro ofrece una serie de procedimientos genéricos que pueden funcionar como bloques constructores y te motiva a usarlos para experimentar, explorar y canalizar tus pensamientos, ideas y principios en soluciones potenciales. El libro cubre temas como formas estructuradas, geometría sólida, redes y bases de datos, computación física, procesamiento de imágenes, interfaces gráficas de usuario y mucho más."
diff --git a/content/books/built-with-processing/index.es.mdx b/content/books/built-with-processing/index.es.mdx
new file mode 100644
index 000000000..ffe5e66df
--- /dev/null
+++ b/content/books/built-with-processing/index.es.mdx
@@ -0,0 +1,12 @@
+---
+title: "Built with Processing"
+author: ""
+details: "BNN. 232 páginas. Pasta blanda."
+published: "2007-03"
+buy: ""
+language: "Japonés"
+---
+Nota de Casey: "He recibido una copia de este libro de los autores en un viaje reciente a Japón. Es un libro producido bellamente a todo color que presenta Processing, mostrando trabajos creados con Processing (muchos de ellos en la sección de Exhibición del sitio web de Processing), he introduciendo la programación a través de ejemplos cada vez más complicados. La mayor parte del libro es una introducción a la programación. Hay muy buenos ejemplos y el código esta a color como en el Entorno Processing. Este libro es menos comprehensivo que los libros de Greenberg y Reas/Fry, pero parece ser una breve y buena introducción."
+
+Hay información adicional en el sitio web del [ editor.](http://www.bnn.co.jp/books/title_index/web/processing.html)
+
diff --git a/content/books/coding-art/index.es.mdx b/content/books/coding-art/index.es.mdx
new file mode 100644
index 000000000..d5333853b
--- /dev/null
+++ b/content/books/coding-art/index.es.mdx
@@ -0,0 +1,10 @@
+---
+title: "Coding Art: The Four Steps to Creative Programming with the Processing Language"
+author: "Yu Zhang, Mathias Funk"
+details: "Apress. 280 páginas. Pasta blanda."
+published: "2021-01"
+buy: "Ordena de Apress-https://www.apress.com/gp/book/9781484262634,Ordena de Amazon-https://www.amazon.com/gp/product/1484262638"
+language: ""
+---
+El autor escribe: "Finalmente, un libro sobre programación creativa, escrito directamente para artistas y diseñadores! En lugar de seguir un temario de ciencias computacionales, este libro está dirigido a creativos que están trabajando en la intersección de diseño, arte y educación. En este libro aprenderás como aplicar la computación dentro del proceso creativo al seguir un proceso de cuatro pasos, ubicándote en la intersección del código y el arte, y con el foco en ejemplos prácticos y estructuras de trabajo relevantes. Seguirás un caso de uso del mundo real de arte computacional y verás como se relaciona con cuatro pilares clave, considerando fallos y retos potenciales en el proceso creativo. Todo el código de los ejemplos está integrado en una biblioteca de ejemplos de Processing, haciendo fácil a los lectores el empezar."
+
diff --git a/content/books/learn-python-visually/index.es.mdx b/content/books/learn-python-visually/index.es.mdx
new file mode 100644
index 000000000..6ccd146ec
--- /dev/null
+++ b/content/books/learn-python-visually/index.es.mdx
@@ -0,0 +1,20 @@
+---
+title: "Learn Python Visually: Creative Coding with Processing.py"
+author: "Tristan Bunn"
+details: "No Starch Press. 296 páginas. Libro de bolsillo y libro electrónico."
+published: "2021-04"
+buy: "Ordena de No Starch Press-https://nostarch.com/Learn-Python-Visually,Ordena de Amazon-https://www.amazon.com/Learn-Python-Visually-Tristan-Bunn/dp/1718500963"
+language: ""
+---
+
+Un enfoque accesible, visual y creativo para aprender conceptos básicos de programación usando el modo Python de Processing, Processing.py.
+
+El editor escribe: "Desde el primer capítulo tú producirás y manipularás coloridos dibujos, formas y patrones mientras el autor te encamina a través de una serie de proyectos gráficos fáciles de seguir que van incrementando su complejidad. Irás de dibujar con código a animar el rebote de un DVD para un protector de pantalla mientras prácticas técnicas de visualización de datos. En el transcurso te encontraras con retos creativos pero prácticos que se relacionan con video juegos, carros, café, bellas artes, amibas y Pink Floyd. Mientras crece tu fluidez tanto en programación como en Python, los temas se dirigen hacia el pensamiento algorítmico mientras exploras movimiento periódico, curvas de Lissajous y usas clases para crear objetos."
+
+El editor lista:
+
+- Teorías y conceptos básicos de programación, como variables, tipos de datos, coordenadas de píxeles, flujo de control y algoritmos
+- Escribirás código que produce dibujos, patrones, animaciones, visualización de datos, interfaces de usuario y simulaciones
+- usarás declaraciones condicionales, iteraciones, aleatoriedad, listas y diccionarios
+- definirás funciones, reduciendo la repetición y haciendo tu código más modular
+- escribirás clases y crearás objetos para estructurar tu código de manera eficiente
diff --git a/content/books/nature-of-code/index.es.mdx b/content/books/nature-of-code/index.es.mdx
new file mode 100644
index 000000000..33513ed17
--- /dev/null
+++ b/content/books/nature-of-code/index.es.mdx
@@ -0,0 +1,13 @@
+---
+title: "The Nature of Code: Simulating Natural Systems with Processing"
+author: "Daniel Shiffman"
+details: "PDF, Web, Pasta blanda."
+published: "2012-12"
+buy: "Ordena de Amazon-http://www.amazon.com/gp/product/0985930802/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=0985930802&linkCode=as2&tag=processing09-20"
+language: ""
+---
+
+Visita [La naturaleza del código](http://natureofcode.com/)
+
+¿Cómo podemos capturar las impredecibles propiedades evolucionarias y emergentes de la naturaleza en código?¿Cómo puede el entender los principios matemáticos detrás de nuestro mundo físico ayudarnos a crear mundos digitales? Este libro se enfoca a un rango de estrategias de programación detrás de las simulaciones computacionales de sistemas naturales, desde conceptos elementales en matemáticas y física a algoritmos avanzados que permiten sofisticados resultados visuales. Los lectores progresarán desde la construcción de un motor de física básico hasta la creación de objetos inteligentes y móviles, sentando las bases para diversos experimentos en diseño generativo. Los temas incluyen fuerzas, trigonometría, fractales, automatas celulares, auto-organización y algoritmos genéticos
+
diff --git a/content/contributions/$1_Unistroke_Recognizer.es.json b/content/contributions/$1_Unistroke_Recognizer.es.json
new file mode 100644
index 000000000..ca16a300d
--- /dev/null
+++ b/content/contributions/$1_Unistroke_Recognizer.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "$1 Reconocedor Unistroke",
+ "authors": ["[Darius Morawiec](http://nok.onl)"],
+ "url": "https://github.com/nok/onedollar-unistroke-recognizer",
+ "categories": ["Utilities"],
+ "sentence": "Implementación del [ Reconocedor de Gestos $1 ](http://depts.washington.edu/aimgroup/proj/dollar/), un reconocedor de gestos basado en una plantilla bidimensional.",
+ "paragraph": "",
+ "id": "069",
+ "type": "library",
+ "packages": [
+ {
+ "mode": "java",
+ "minRevision": "215",
+ "maxRevision": "0",
+ "props": "https://raw.githubusercontent.com/nok/onedollar-unistroke-recognizer/master/download/OneDollarUnistrokeRecognizer.txt",
+ "download": "https://raw.githubusercontent.com/nok/onedollar-unistroke-recognizer/master/download/OneDollarUnistrokeRecognizer.zip"
+ }
+ ]
+}
diff --git a/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.es.json b/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.es.json
new file mode 100644
index 000000000..c20e4583d
--- /dev/null
+++ b/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "(Weka4P) Weka Aprendizaje de Máquina para Processing",
+ "authors": [
+ "[Rong-Hao Liang](r.liang@tue.nl), [Wesley Hartogs](https://wesleyhartogs.nl), [Janet Huang](Y.C.Huang@tue.nl)"
+ ],
+ "url": "https://ronghaoliang.page/Weka4P/",
+ "categories": [
+ "Data"
+ ],
+ "sentence": "Implementación de la biblioteca de Código Abierto Weka para Aprendizaje de Máquina paraProcessing 3.",
+ "paragraph": "Entrena y carga modelos para traer el Aprendizaje de Máquina (por ejemplo: clasificación y regresión) a tus proyectos de Processing.",
+ "id": "270",
+ "type": "library",
+ "packages": [
+ {
+ "mode": "java",
+ "minRevision": "0",
+ "maxRevision": "0",
+ "props": "https://ronghaoliang.page/Weka4P/download/Weka4P.txt",
+ "download": "https://ronghaoliang.page/Weka4P/download/Weka4P.zip"
+ }
+ ]
+}
diff --git a/content/contributions/AI_for_2D_Games.es.json b/content/contributions/AI_for_2D_Games.es.json
new file mode 100644
index 000000000..8277ffc7d
--- /dev/null
+++ b/content/contributions/AI_for_2D_Games.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "IA para juegos 2D",
+ "authors": [
+ "[Peter Lager](http://www.lagers.org.uk)"
+ ],
+ "url": "http://www.lagers.org.uk/ai4g/index.html",
+ "categories": [
+ "Simulation"
+ ],
+ "sentence": "Un framework que puede ser usado para juegos 2D y simulaciones.",
+ "paragraph": "Este proyecto soporta la creación de sketches que requieren agentes autónomos manejados por estados. Todo esta aquí para que empieces, incluyendo muchos ejemplos demostrando las características de la biblioteca. El [sitio web] (http://www.lagers.org.uk/ai4g/index.html) tiene muchos artículos y ejemplos de programas explicando esta sofisticada biblioteca.",
+ "id": "127",
+ "type": "library",
+ "packages": [
+ {
+ "mode": "java",
+ "minRevision": "0227",
+ "maxRevision": "0",
+ "props": "http://www.lagers.org.uk/processing/ai4g/AI_for_2D_Games.txt",
+ "download": "http://www.lagers.org.uk/processing/ai4g/AI_for_2D_Games.zip"
+ }
+ ]
+}
diff --git a/content/contributions/Apple_Light_Sensor.es.json b/content/contributions/Apple_Light_Sensor.es.json
new file mode 100644
index 000000000..997d78b4e
--- /dev/null
+++ b/content/contributions/Apple_Light_Sensor.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "Apple Light Sensor",
+ "authors": [
+ "[Martin Raedlinger](http://www.formatlos.de/)"
+ ],
+ "url": "http://projects.formatlos.de/ambientlightsensor/",
+ "categories": [
+ "Hardware"
+ ],
+ "sentence": "Interfaz para el sensor de luz en computadoras MacBook Pro.",
+ "paragraph": "",
+ "id": "028",
+ "type": "library",
+ "packages": [
+ {
+ "mode": "java",
+ "minRevision": "0",
+ "maxRevision": "228",
+ "props": "http://projects.formatlos.de/ambientlightsensor/download/AmbientLightSensor.txt",
+ "download": "http://projects.formatlos.de/ambientlightsensor/download/AmbientLightSensor.zip"
+ }
+ ]
+}
diff --git a/content/contributions/Getting_Started.es.json b/content/contributions/Getting_Started.es.json
new file mode 100644
index 000000000..8cc81c514
--- /dev/null
+++ b/content/contributions/Getting_Started.es.json
@@ -0,0 +1,21 @@
+{
+ "name": "Primeros Pasos",
+ "authors": [
+ "[Jae Hyun](http://www.github.com/jaewhyun)"
+ ],
+ "url": "http://www.github.com/jaewhyun/GettingStarted",
+ "categories": null,
+ "sentence": "Una Herramienta que provee una rápida introducción al Entorno de Desarrollo Processing (PDE) para usuarios nuevos o principiantes.",
+ "paragraph": "",
+ "id": "233",
+ "type": "tool",
+ "packages": [
+ {
+ "mode": "java",
+ "minRevision": "228",
+ "maxRevision": "0",
+ "props": "https://github.com/jaewhyun/GettingStarted/releases/download/latest/GettingStarted.txt",
+ "download": "https://github.com/jaewhyun/GettingStarted/releases/download/latest/GettingStarted.zip"
+ }
+ ]
+}
diff --git a/content/contributions/Git_Manager.es.json b/content/contributions/Git_Manager.es.json
new file mode 100644
index 000000000..c59b7ef1d
--- /dev/null
+++ b/content/contributions/Git_Manager.es.json
@@ -0,0 +1,22 @@
+{
+ "name": "Administrador Git",
+ "authors": [
+ "[Joel Moniz](http://joelmoniz.com)"
+ ],
+ "url": "http://joelmoniz.com/git-manager",
+ "categories": null,
+ "sentence": "Un cliente gráfico de GIT para Processing",
+ "paragraph": "Una herramienta que actúa como una interfaz completa y conveniente para usuarios de varios servicios de almacenamiento de repositorios GIT, y que integra todas las ventajas del control de versiones con Processing.",
+ "lastUpdated": "1443010051000",
+ "id": "160",
+ "type": "tool",
+ "packages": [
+ {
+ "mode": "java",
+ "minRevision": "0242",
+ "maxRevision": "0",
+ "props": "https://github.com/joelmoniz/Git-Manager/releases/download/latest/GitManager.txt",
+ "download": "https://github.com/joelmoniz/Git-Manager/releases/download/latest/GitManager.zip"
+ }
+ ]
+}
diff --git a/content/examples/Basics/Arrays/Array/Array.de.json b/content/examples/Basics/Arrays/Array/Array.de.json
deleted file mode 100644
index 9c0b5c6b5..000000000
--- a/content/examples/Basics/Arrays/Array/Array.de.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "name": "Array",
- "title": "Array",
- "author": "",
- "description": "DE An array is a list of data. Each piece of data in an array \n is identified by an index number representing its position in \n the array. Arrays are zero based, which means that the first \n element in the array is [0], the second element is [1], and so on. \n In this example, an array named \"coswave\" is created and\n filled with the cosine values. This data is displayed three \n separate ways on the screen.",
- "featured": ["Array", "cos_"]
-}
diff --git a/content/examples/Basics/Arrays/Array/Array.es.json b/content/examples/Basics/Arrays/Array/Array.es.json
new file mode 100644
index 000000000..7bb498b05
--- /dev/null
+++ b/content/examples/Basics/Arrays/Array/Array.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Arreglo",
+ "title": "Arreglo",
+ "author": "",
+ "level": "Beginner",
+ "order": "0",
+ "description": "Un arreglo es una lista de datos. Cada uno de los datos en un arreglo \n es identificado por un numero de índice representando su posición en \n el arreglo. Los arreglos empiezan desde el índice 0, lo que significa que el primer \n elemento en el arreglo es [0], es segundo elemento es [1], y asi subsecuentemente . \n En este ejemplo, un arreglo llamado \"coswave\" es creado y \n llenado con valores de coseno. Estos datos son desplegados en 3 \n distintas formas en la pantalla.",
+ "featured": ["Array", "cos_"]
+}
diff --git a/content/examples/Basics/Arrays/Array/Array.es.pde b/content/examples/Basics/Arrays/Array/Array.es.pde
new file mode 100644
index 000000000..80175fb2a
--- /dev/null
+++ b/content/examples/Basics/Arrays/Array/Array.es.pde
@@ -0,0 +1,51 @@
+/**
+ * Arreglo.
+ *
+ * Un arreglo es una lista de datos. Cada elemento en la lista es
+ * identificado por un número de índice, el cual representa su
+ * posición en el arreglo. Los arreglos son basados en cero, lo que
+ * significa que el primer elemento del arreglo es [0], el segundo
+ * elemento es [1], y así sucesivamente.
+ * En este ejemplo, un arreglo llamado "coswave" es creado y
+ * llenado con valores de coseno. Estos datos son desplegados en 3
+ * distintas formas en la pantalla.
+ */
+
+
+float[] coswave;
+
+void setup() {
+ size(640, 360);
+ coswave = new float[width];
+ for (int i = 0; i < width; i++) {
+ float amount = map(i, 0, width, 0, PI);
+ coswave[i] = abs(cos(amount));
+ }
+ background(255);
+ noLoop();
+}
+
+void draw() {
+
+ int y1 = 0;
+ int y2 = height/3;
+ for (int i = 0; i < width; i++) {
+ stroke(coswave[i]*255);
+ line(i, y1, i, y2);
+ }
+
+ y1 = y2;
+ y2 = y1 + y1;
+ for (int i = 0; i < width; i++) {
+ stroke(coswave[i]*255 / 4);
+ line(i, y1, i, y2);
+ }
+
+ y1 = y2;
+ y2 = height;
+ for (int i = 0; i < width; i++) {
+ stroke(255 - coswave[i]*255);
+ line(i, y1, i, y2);
+ }
+
+}
diff --git a/content/examples/Basics/Arrays/Array2D/Array2D.es.json b/content/examples/Basics/Arrays/Array2D/Array2D.es.json
new file mode 100644
index 000000000..fddf0ff88
--- /dev/null
+++ b/content/examples/Basics/Arrays/Array2D/Array2D.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Arreglos 2D",
+ "title": "Arreglos 2D",
+ "author": "",
+ "level": "Intermedio",
+ "order": "1",
+ "description": "Demuestra la sintaxis para crear un arreglo bidimensional (2D).\n Valores en un arreglo bidimensional son accesados usando dos valores de índices.\n Los arreglos bidimensionales son útiles para almacenar imágenes. En este ejemplo cada punto \n esta coloreado en relación a su distancia desde el centro de la imagen.",
+ "featured": ["Array", "dist_"]
+}
diff --git a/content/examples/Basics/Arrays/Array2D/Array2D.es.pde b/content/examples/Basics/Arrays/Array2D/Array2D.es.pde
new file mode 100644
index 000000000..a6ff13275
--- /dev/null
+++ b/content/examples/Basics/Arrays/Array2D/Array2D.es.pde
@@ -0,0 +1,41 @@
+/**
+ * Arreglo 2D.
+ *
+ * Demuestra la sintaxis para crear un arreglo bidimensional (2D).
+ * Valores en un arreglo bidimensional son accesados usando dos valores de índices.
+ * Los arreglos bidimensionales son útiles para almacenar imágenes. En este ejemplo cada punto
+ * esta coloreado en relación a su distancia desde el centro de la imagen.
+ */
+
+float[][] distances;
+float maxDistance;
+int spacer;
+
+void setup() {
+ size(640, 360);
+ maxDistance = dist(width/2, height/2, width, height);
+ distances = new float[width][height];
+ for (int y = 0; y < height; y++) {
+ for (int x = 0; x < width; x++) {
+ float distance = dist(width/2, height/2, x, y);
+ distances[x][y] = distance/maxDistance * 255;
+ }
+ }
+ spacer = 10;
+ strokeWeight(6);
+ noLoop(); // Se ejecuta una vez y para.
+}
+
+void draw() {
+ background(0);
+ // este ciclo brinca sobre los valores en los arreglos basados en la variable, hay más valores
+ // en el arreglo que los dibujados aquí
+ // Cambia el valor de la variable spacer para
+ // cambiar la densidad de los pixeles
+ for (int y = 0; y < height; y += spacer) {
+ for (int x = 0; x < width; x += spacer) {
+ stroke(distances[x][y]);
+ point(x + spacer/2, y + spacer/2);
+ }
+ }
+}
diff --git a/content/examples/Basics/Arrays/ArrayObjects/ArrayObjects.es.json b/content/examples/Basics/Arrays/ArrayObjects/ArrayObjects.es.json
new file mode 100644
index 000000000..1cfab279d
--- /dev/null
+++ b/content/examples/Basics/Arrays/ArrayObjects/ArrayObjects.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Arreglo de Objetos",
+ "title": "Arreglo de Objetos",
+ "author": "",
+ "level": "Avanzado",
+ "order": "2",
+ "description": "Demuestra la sintaxis para crear un arreglo de objetos.",
+ "featured": ["Array", "Object"]
+}
diff --git a/content/examples/Basics/Arrays/ArrayObjects/ArrayObjects.es.pde b/content/examples/Basics/Arrays/ArrayObjects/ArrayObjects.es.pde
new file mode 100644
index 000000000..ffa4abfff
--- /dev/null
+++ b/content/examples/Basics/Arrays/ArrayObjects/ArrayObjects.es.pde
@@ -0,0 +1,33 @@
+/**
+ * Arreglo de Objetos
+ *
+ * Demuestra la sintaxis para crear un arreglo de objetos.
+ */
+
+int unit = 40;
+int count;
+Module[] mods;
+
+void setup() {
+ size(640, 360);
+ noStroke();
+ int wideCount = width / unit;
+ int highCount = height / unit;
+ count = wideCount * highCount;
+ mods = new Module[count];
+
+ int index = 0;
+ for (int y = 0; y < highCount; y++) {
+ for (int x = 0; x < wideCount; x++) {
+ mods[index++] = new Module(x*unit, y*unit, unit/2, unit/2, random(0.05, 0.8), unit);
+ }
+ }
+}
+
+void draw() {
+ background(0);
+ for (Module mod : mods) {
+ mod.update();
+ mod.display();
+ }
+}
diff --git a/content/examples/Basics/Camera/Orthographic/Orthographic.es.json b/content/examples/Basics/Camera/Orthographic/Orthographic.es.json
new file mode 100644
index 000000000..285ed6826
--- /dev/null
+++ b/content/examples/Basics/Camera/Orthographic/Orthographic.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Ortográfica",
+ "title": "Perspectiva vs Ortográfica",
+ "author": "",
+ "level": "Intermedio",
+ "order": "2",
+ "description": "Mueve el mouse de izquierda a derecha para cambiar el parámetro \"far\" \n de las funciones perspective() y ortho().\n Este parámetro fija la distancia máxima desde el origen \n al espectador y cortará la geometría.\n Haz click en un botón del mouse para alternar entre proyecciones\n en perspectiva y ortográfica.",
+ "featured": ["ortho_", "perspective_"]
+}
diff --git a/content/examples/Basics/Camera/Orthographic/Orthographic.es.pde b/content/examples/Basics/Camera/Orthographic/Orthographic.es.pde
new file mode 100644
index 000000000..423a1077c
--- /dev/null
+++ b/content/examples/Basics/Camera/Orthographic/Orthographic.es.pde
@@ -0,0 +1,40 @@
+/**
+ * Perspective vs. Ortho
+ *
+ * Mueve el mouse de izquierda a derecha para cambiar el parámetro "far"
+ * de las funciones perspective() y ortho().
+ * Este parámetro fija la distancia máxima desde el origen
+ * al espectador y cortará la geometría.
+ * Haz click en un botón del mouse para alternar entre proyecciones
+ * en perspectiva y ortográfica.
+ */
+
+
+boolean showPerspective = false;
+
+void setup() {
+ size(600, 360, P3D);
+ noFill();
+ fill(255);
+ noStroke();
+}
+
+void draw() {
+ lights();
+ background(0);
+ float far = map(mouseX, 0, width, 120, 400);
+ if (showPerspective == true) {
+ perspective(PI/3.0, float(width)/float(height), 10, far);
+ } else {
+ ortho(-width/2.0, width/2.0, -height/2.0, height/2.0, 10, far);
+ }
+ translate(width/2, height/2, 0);
+ rotateX(-PI/6);
+ rotateY(PI/3);
+ box(180);
+}
+
+void mousePressed() {
+ showPerspective = !showPerspective;
+}
+
diff --git a/content/examples/Basics/Color/LinearGradient/LinearGradient.es.json b/content/examples/Basics/Color/LinearGradient/LinearGradient.es.json
new file mode 100644
index 000000000..4acdfab74
--- /dev/null
+++ b/content/examples/Basics/Color/LinearGradient/LinearGradient.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Gradiente Lineal",
+ "title": "Gradiente Lineal Simple",
+ "author": "",
+ "level": "Intermedio",
+ "order": "5",
+ "description": "La función lerpColor() es útil para interpolar\n entre dos colores.",
+ "featured": ["lerpColor_", "color_datatype"]
+}
diff --git a/content/examples/Basics/Color/LinearGradient/LinearGradient.es.pde b/content/examples/Basics/Color/LinearGradient/LinearGradient.es.pde
new file mode 100644
index 000000000..131f6ef13
--- /dev/null
+++ b/content/examples/Basics/Color/LinearGradient/LinearGradient.es.pde
@@ -0,0 +1,54 @@
+/**
+ * Gradient Simple Lineal
+ * La función lerpColor() es útil para interpolar
+ * entre dos colores.
+ */
+
+// Constantes
+int Y_AXIS = 1;
+int X_AXIS = 2;
+color b1, b2, c1, c2;
+
+void setup() {
+ size(640, 360);
+
+ // Define colores
+ b1 = color(255);
+ b2 = color(0);
+ c1 = color(204, 102, 0);
+ c2 = color(0, 102, 153);
+
+ noLoop();
+}
+
+void draw() {
+ // Fondo
+ setGradient(0, 0, width/2, height, b1, b2, X_AXIS);
+ setGradient(width/2, 0, width/2, height, b2, b1, X_AXIS);
+ // Primer Plano
+ setGradient(50, 90, 540, 80, c1, c2, Y_AXIS);
+ setGradient(50, 190, 540, 80, c2, c1, X_AXIS);
+}
+
+void setGradient(int x, int y, float w, float h, color c1, color c2, int axis ) {
+
+ noFill();
+
+ if (axis == Y_AXIS) { // Gradiente de arriba a abajo
+ for (int i = y; i <= y+h; i++) {
+ float inter = map(i, y, y+h, 0, 1);
+ color c = lerpColor(c1, c2, inter);
+ stroke(c);
+ line(x, i, x+w, i);
+ }
+ }
+ else if (axis == X_AXIS) { // Gradiente de izquierda a derecha
+ for (int i = x; i <= x+w; i++) {
+ float inter = map(i, x, x+w, 0, 1);
+ color c = lerpColor(c1, c2, inter);
+ stroke(c);
+ line(i, y, i, y+h);
+ }
+ }
+}
+
diff --git a/content/examples/Basics/Control/Conditionals1/Conditionals1.es.json b/content/examples/Basics/Control/Conditionals1/Conditionals1.es.json
new file mode 100644
index 000000000..82bdc811c
--- /dev/null
+++ b/content/examples/Basics/Control/Conditionals1/Conditionals1.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Condicionales 1",
+ "title": "Condicionales 1-original",
+ "author": "",
+ "level": "Principiante",
+ "order": "2",
+ "description": "Las condiciones son como preguntas. \n Ellas permiten al programa decidir una acción si \n la respuesta a una pregunta es \"true\" (verdadera) o realizar otra acción \n si la respuesta es \"false.\" (false) \n Las preguntas hechas son siempre sentencias lógicas\n o relacionales. Por ejemplo, si la variable 'i' es \n igual a cero entonces dibuja una línea.",
+ "featured": ["if"]
+}
diff --git a/content/examples/Basics/Control/Conditionals1/Conditionals1.es.pde b/content/examples/Basics/Control/Conditionals1/Conditionals1.es.pde
new file mode 100644
index 000000000..25d2a543c
--- /dev/null
+++ b/content/examples/Basics/Control/Conditionals1/Conditionals1.es.pde
@@ -0,0 +1,26 @@
+/**
+ * Condicionales 1.
+ *
+ * Las condiciones son como preguntas.
+ * Ellas permiten al programa decidir una acción si
+ * la respuesta a una pregunta es \"true\" (verdadera) o realizar otra acción
+ * si la respuesta es \"false.\" (false)
+ * Las preguntas hechas son siempre sentencias lógicas o relacionales.
+ * Por ejemplo, si la variable 'i' es
+ * igual a cero entonces dibuja una línea.
+ */
+
+size(640, 360);
+background(0);
+
+for(int i = 10; i < width; i += 10) {
+ // Si 'i' divide entre 20 sin residuo dibuja
+ // la primera línea, de lo contrario dibuja la segunda línea
+ if((i % 20) == 0) {
+ stroke(255);
+ line(i, 80, i, height/2);
+ } else {
+ stroke(153);
+ line(i, 20, i, 180);
+ }
+}
diff --git a/content/examples/Basics/Input/KeyboardFunctions/KeyboardFunctions.es.json b/content/examples/Basics/Input/KeyboardFunctions/KeyboardFunctions.es.json
new file mode 100644
index 000000000..5ac6c00ad
--- /dev/null
+++ b/content/examples/Basics/Input/KeyboardFunctions/KeyboardFunctions.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Funciones de Teclado",
+ "title": "Funciones de Teclado",
+ "author": "Martin Gomez",
+ "level": "Intermedio",
+ "order": "9",
+ "description": "Haz click en la ventana para darle el foco y presiona teclas de letras para distintos colores. La función de teclado keyPressed() es llamada cada vez que una tecla es presionada. keyReleased() es otra función de teclado que es llamada cuando la tecla es liberada. Concepto original 'Color Typewriter' por John Maeda.",
+ "featured": ["keyPressed_"]
+}
diff --git a/content/examples/Basics/Input/KeyboardFunctions/KeyboardFunctions.es.pde b/content/examples/Basics/Input/KeyboardFunctions/KeyboardFunctions.es.pde
new file mode 100644
index 000000000..f63e69126
--- /dev/null
+++ b/content/examples/Basics/Input/KeyboardFunctions/KeyboardFunctions.es.pde
@@ -0,0 +1,87 @@
+/**
+ * Funciones de Teclado
+ * por Martin Gomez
+ *
+ * Haz click en la ventana para darle el foco y presiona teclas de letras para distintos colores.
+ * La función de teclado keyPressed() es llamada cada vez que una tecla es presionada.
+ * keyReleased() es otra función de teclado que es llamada cuando la tecla es liberada.
+ *
+ * Concepto original 'Color Typewriter' por John Maeda.
+ */
+
+int maxHeight = 40;
+int minHeight = 20;
+int letterHeight = maxHeight; // Altura de las letras
+int letterWidth = 20; // Ancho de las letras
+
+int x = -letterWidth; // Posición en X de las letras
+int y = 0; // Posición en Y de las letras
+
+boolean newletter;
+
+int numChars = 26; // Hay 26 letras en el alfabeto
+color[] colors = new color[numChars];
+
+void setup() {
+ size(640, 360);
+ noStroke();
+ colorMode(HSB, numChars);
+ background(numChars/2);
+ // Define un matiz por cada letra
+ for(int i = 0; i < numChars; i++) {
+ colors[i] = color(i, numChars, numChars);
+ }
+}
+
+void draw() {
+ if(newletter == true) {
+ // Dibuja la letra
+ int y_pos;
+ if (letterHeight == maxHeight) {
+ y_pos = y;
+ rect( x, y_pos, letterWidth, letterHeight );
+ } else {
+ y_pos = y + minHeight;
+ rect( x, y_pos, letterWidth, letterHeight );
+ fill(numChars/2);
+ rect( x, y_pos-minHeight, letterWidth, letterHeight );
+ }
+ newletter = false;
+ }
+}
+
+void keyPressed()
+{
+ // Si la tecla esta entre 'A'(65) y 'Z' o 'a' to 'z'(122)
+ if((key >= 'A' && key <= 'Z') || (key >= 'a' && key <= 'z')) {
+ int keyIndex;
+ if(key <= 'Z') {
+ keyIndex = key-'A';
+ letterHeight = maxHeight;
+ fill(colors[keyIndex]);
+ } else {
+ keyIndex = key-'a';
+ letterHeight = minHeight;
+ fill(colors[keyIndex]);
+ }
+ } else {
+ fill(0);
+ letterHeight = 10;
+ }
+
+ newletter = true;
+
+ // Actualiza la posición de la letra
+ x = ( x + letterWidth );
+
+ // Envuelve horizontalmente
+ if (x > width - letterWidth) {
+ x = 0;
+ y+= maxHeight;
+ }
+
+ // Envolvemos verticalmente
+ if( y > height - letterHeight) {
+ y = 0; // Ponemos y a 0
+ }
+}
diff --git a/content/examples/Topics/Cellular Automata/GameOfLife/GameOfLife.es.json b/content/examples/Topics/Cellular Automata/GameOfLife/GameOfLife.es.json
new file mode 100644
index 000000000..68404a392
--- /dev/null
+++ b/content/examples/Topics/Cellular Automata/GameOfLife/GameOfLife.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "El Juego de la Vida",
+ "title": "Una implementación en Processing del Juego de la Vida",
+ "author": "Joan Soler-Adillon",
+ "level": "Avanzado",
+ "order": "1",
+ "description": "Presiona la barra espaciadora para pausar y cambiar los valores de las celdas con el ratón. Cuando esta pausado, haz click para activar/desactivar una celda. Presiona 'R' para reiniciar aleatoriamente la cuadrilla de celdas. Presiona 'C' para limpiar todas las celdas. El Juego de la Vida fue creado originalmente por John Conway en 1970.",
+ "featured": ["Array", "random_", "map_", "constrain_", "keyPressed_"]
+}
diff --git a/content/examples/Topics/Cellular Automata/GameOfLife/GameOfLife.es.pde b/content/examples/Topics/Cellular Automata/GameOfLife/GameOfLife.es.pde
new file mode 100644
index 000000000..f7258116b
--- /dev/null
+++ b/content/examples/Topics/Cellular Automata/GameOfLife/GameOfLife.es.pde
@@ -0,0 +1,179 @@
+/**
+ * Game of Life
+ * by Joan Soler-Adillon.
+ *
+ * Presiona la barra espaciadora para pausar y cambiar los valores de las celdas con el ratón.
+ * Cuando esta pausado, haz click para activar/desactivar una celda.
+ * Presiona 'R' para reiniciar aleatoriamente la cuadrilla de celdas.
+ * Presiona 'C' para limpiar todas las celdas.
+ * El Juego de la Vida fue creado originalmente por John Conway en 1970.
+ */
+
+// Tamaño de la celda
+int cellSize = 5;
+
+// Probabilidad de una celda de estar viva al inicio (en porcentaje)
+float probabilityOfAliveAtStart = 15;
+
+// Variables para el tiempo
+int interval = 100;
+int lastRecordedTime = 0;
+
+// Colores de celdas activas/inactivas
+color alive = color(0, 200, 0);
+color dead = color(0);
+
+// Arreglo de celdas
+int[][] cells;
+// Buffer para almacenar el estado de las celdas y usarlo
+//mientras se cambian otras en las interacciones
+int[][] cellsBuffer;
+
+// Pausa
+boolean pause = false;
+
+void setup() {
+ size (640, 360);
+
+ // Instanciar arreglos
+ cells = new int[width/cellSize][height/cellSize];
+ cellsBuffer = new int[width/cellSize][height/cellSize];
+
+ // El trazo pintará el fondo de la rejilla
+ stroke(48);
+
+ noSmooth();
+
+ // Inicialización de celdas.
+ for (int x=0; x probabilityOfAliveAtStart) {
+ state = 0;
+ }
+ else {
+ state = 1;
+ }
+ cells[x][y] = int(state); // Guardar el estado de cada celda
+ }
+ }
+ // Llenar de negro en el caso de que las celdas no cubran toda la pantalla
+ background(0);
+}
+
+
+void draw() {
+
+ //Dibujar rejilla
+ for (int x=0; xinterval) {
+ if (!pause) {
+ iteration();
+ lastRecordedTime = millis();
+ }
+ }
+
+ // Crear nuevas celdas en la pausa
+ if (pause && mousePressed) {
+ // checar si la posición es válida
+ int xCellOver = int(map(mouseX, 0, width, 0, width/cellSize));
+ xCellOver = constrain(xCellOver, 0, width/cellSize-1);
+ int yCellOver = int(map(mouseY, 0, height, 0, height/cellSize));
+ yCellOver = constrain(yCellOver, 0, height/cellSize-1);
+
+ // Comprobar contra las celdas en el buffer
+ if (cellsBuffer[xCellOver][yCellOver]==1) { // Celda viva
+ cells[xCellOver][yCellOver]=0; // Matar
+ fill(dead); // Actualizar color a muerto
+ }
+ else { // Celda esta muerta
+ cells[xCellOver][yCellOver]=1; // Revivir
+ fill(alive); // Actualizar color a vivo
+ }
+ }
+ else if (pause && !mousePressed) { // And then save to buffer once mouse goes up
+ // Save cells to buffer (so we opeate with one array keeping the other intact)
+ for (int x=0; x=0)&&(xx=0)&&(yy 3) {
+ cells[x][y] = 0; // Morir a menos que tenga 2 o 3 vecinos
+ }
+ }
+ else { // Celda muerta, revivir si es necesario
+ if (neighbours == 3 ) {
+ cells[x][y] = 1; // Sólo si tiene 3 vecinos
+ }
+ } // Fin del if
+ } // Fin de ciclo y
+ } // Fin de ciclo x
+} // Fin de función
+
+void keyPressed() {
+ if (key=='r' || key == 'R') {
+ // Reinicio: reinicializar las celdas
+ for (int x=0; x probabilityOfAliveAtStart) {
+ state = 0;
+ }
+ else {
+ state = 1;
+ }
+ cells[x][y] = int(state); // Guardar el estado de cada celda
+ }
+ }
+ }
+ if (key==' ') { // Alternar la pausa
+ pause = !pause;
+ }
+ if (key=='c' || key == 'C') { // Clear all
+ for (int x=0; x production.length()) {
+ steps = production.length();
+ }
+ for (int i = 0; i < steps; i++) {
+ char step = production.charAt(i);
+ if (step == 'F') {
+ rect(0, 0, -drawLength, -drawLength);
+ noFill();
+ translate(0, -drawLength);
+ }
+ else if (step == '+') {
+ rotate(theta);
+ }
+ else if (step == '-') {
+ rotate(-theta);
+ }
+ else if (step == '[') {
+ pushMatrix();
+ }
+ else if (step == ']') {
+ popMatrix();
+ }
+ }
+ }
+
+ void simulate(int gen) {
+ while (getAge() < gen) {
+ production = iterate(production, rule);
+ }
+ }
+
+ String iterate(String prod_, String rule_) {
+ drawLength = drawLength * 0.6;
+ generations++;
+ String newProduction = prod_;
+ newProduction = newProduction.replaceAll("F", rule_);
+ return newProduction;
+ }
+}
+
+
diff --git a/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflake.es.json b/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflake.es.json
new file mode 100644
index 000000000..9b851bae5
--- /dev/null
+++ b/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflake.es.json
@@ -0,0 +1,9 @@
+{
+ "name": "Penrose Snowflake",
+ "title": "Copo de Nieve Penrose",
+ "level": "Avanzado",
+ "order": "3",
+ "author": "Geraldine Sarmiento (basado en la clase de L-Sistemas de Patrick Dwyer)",
+ "description": "",
+ "featured": ["pushMatrix_", "popMatrix_", "translate_", "rotate_"]
+}
diff --git a/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflake.es.pde b/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflake.es.pde
new file mode 100644
index 000000000..69063a074
--- /dev/null
+++ b/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflake.es.pde
@@ -0,0 +1,23 @@
+/**
+ * L-Sistema Copo de Nieve de Penrose
+ * por Geraldine Sarmiento.
+ *
+ * Este ejemplo esta basado en la clase de L-Sistemas de Patrick Dwyer
+ */
+
+PenroseSnowflakeLSystem ps;
+
+void setup() {
+ size(640, 360);
+ stroke(255);
+ noFill();
+ ps = new PenroseSnowflakeLSystem();
+ ps.simulate(4);
+}
+
+void draw() {
+ background(0);
+ ps.render();
+}
+
+
diff --git a/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflakeLSystem.es.pde b/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflakeLSystem.es.pde
new file mode 100644
index 000000000..df1f775b0
--- /dev/null
+++ b/content/examples/Topics/Fractals and L-Systems/PenroseSnowflake/PenroseSnowflakeLSystem.es.pde
@@ -0,0 +1,100 @@
+class PenroseSnowflakeLSystem extends LSystem {
+
+ String ruleF;
+
+ PenroseSnowflakeLSystem() {
+ axiom = "F3-F3-F3-F3-F";
+ ruleF = "F3-F3-F45-F++F3-F";
+ startLength = 450.0;
+ theta = radians(18);
+ reset();
+ }
+
+ void useRule(String r_) {
+ rule = r_;
+ }
+
+ void useAxiom(String a_) {
+ axiom = a_;
+ }
+
+ void useLength(float l_) {
+ startLength = l_;
+ }
+
+ void useTheta(float t_) {
+ theta = radians(t_);
+ }
+
+ void reset() {
+ production = axiom;
+ drawLength = startLength;
+ generations = 0;
+ }
+
+ int getAge() {
+ return generations;
+ }
+
+ void render() {
+ translate(width, height);
+ int repeats = 1;
+
+ steps += 3;
+ if (steps > production.length()) {
+ steps = production.length();
+ }
+
+ for (int i = 0; i < steps; i++) {
+ char step = production.charAt(i);
+ if (step == 'F') {
+ for (int j = 0; j < repeats; j++) {
+ line(0,0,0, -drawLength);
+ translate(0, -drawLength);
+ }
+ repeats = 1;
+ }
+ else if (step == '+') {
+ for (int j = 0; j < repeats; j++) {
+ rotate(theta);
+ }
+ repeats = 1;
+ }
+ else if (step == '-') {
+ for (int j =0; j < repeats; j++) {
+ rotate(-theta);
+ }
+ repeats = 1;
+ }
+ else if (step == '[') {
+ pushMatrix();
+ }
+ else if (step == ']') {
+ popMatrix();
+ }
+ else if ( (step >= 48) && (step <= 57) ) {
+ repeats += step - 48;
+ }
+ }
+ }
+
+
+ String iterate(String prod_, String rule_) {
+ String newProduction = "";
+ for (int i = 0; i < prod_.length(); i++) {
+ char step = production.charAt(i);
+ if (step == 'F') {
+ newProduction = newProduction + ruleF;
+ }
+ else {
+ if (step != 'F') {
+ newProduction = newProduction + step;
+ }
+ }
+ }
+ drawLength = drawLength * 0.4;
+ generations++;
+ return newProduction;
+ }
+
+}
diff --git a/content/pages/environment/index.de.mdx b/content/pages/environment/index.de.mdx
deleted file mode 100644
index a4f08b231..000000000
--- a/content/pages/environment/index.de.mdx
+++ /dev/null
@@ -1,515 +0,0 @@
----
-slug: "/environment"
-title: "Environment (IDE) GE"
----
-
-
- The Processing Environment includes a text editor, a compiler, and a display
- window. It enables the creation of software within a carefully designed set of
- constraints.
-
-
-### Overview
-
-The Processing Development Environment (PDE) makes it easy to write Processing programs. Programs are written in the Text Editor and started by pressing the Run button. In Processing, a computer program is called a _sketch_. Sketches are stored in the _Sketchbook_, which is a folder on your computer.
-
-Sketches can draw two- and three-dimensional graphics. The default renderer is for drawing two-dimensional graphics. The P3D renderer makes it possible to draw three-dimensional graphics, which includes controlling the camera, lighting, and materials. The P2D renderer is a fast, but less accurate renderer for drawing two-dimensional graphics. Both the P2D and P3D renderers are accelerated if your computer has an OpenGL compatible graphics card.
-
-The capabilities of Processing are extended with _Libraries_ and _Tools_. Libraries make it possible for sketches to do things beyond the _core_ Processing code. There are hundreds of libraries contributed by the Processing community that can be added to your sketches to enable new things like playing sounds, doing computer vision, and working with advanced 3D geometry. Tools extend the PDE to help make creating sketches easier by providing interfaces for tasks like selecting colors.
-
-Processing has different _programming modes_ to make it possible to deploy sketches on different platforms and program in different ways. The Java mode is the default. Other programming modes may be downloaded by selecting "Add Mode..." from the menu in the upper-right corner of the PDE.
-
-### Processing Development Environment (PDE)
-
-The Processing Development Environment (PDE) consists of a simple text editor for writing code, a message area, a text console, tabs for managing files, a toolbar with buttons for common actions, and a series of menus. The menus options change from mode to mode. The default Java mode is documented here.
-
-
-
-Programs written using Processing are called sketches. These sketches are written in the text editor. It has features for cutting/pasting and for searching/replacing text. The message area gives feedback while saving and exporting and also displays errors. The console displays text output by Processing sketches including complete error messages and text output from sketches with the `print()` and `println()` functions. (Note that the console works well for occasional messages, but is not intended for high-speed, real-time output.)
-
-The buttons on the toolbar can run and stop programs,
-
-
-
-
-
-
-
-
-
-
-Run
-
-
Runs the sketch. In Java mode, it compiles the code and opens a new display window.
-
-
-
-
-
-
-
-
-Stop
-
-
Terminates a running sketch.
-
-
-Additional commands are found within the six menus: File, Edit, Sketch, Debug, Tools, Help. The menus are context sensitive which means only those items relevant to the work currently being carried out are available.
-
-#### File
-
-
-
New
-
- Creates a new sketch in a new window, named as the current date is the
- format `sketch_YYMMDDa`.
-
-
Open...
-
Open a sketch in a new window.
-
Open Recent
-
Select a sketch to open from the list of recently closed sketches.
-
Sketchbook...
-
Open a new window to show the list of sketches in the sketchbook.
-
Examples...
-
Open a new window to show the list of the examples.
-
Close
-
- Close the sketch in the frontmost window. If this is the last sketch that's
- open, you will be prompted whether you would like to quit. To avoid the
- prompt, use Quit instead of Close when you want to exit the application.
-
-
Save
-
Saves the open sketch in it's current state.
-
Save as...
-
- Saves the currently open sketch, with the option of giving it a different
- name. Does not replace the previous version of the sketch.
-
-
Export
-
- Exports a Java application as an executable file and opens the folder
- containing the exported files.
-
-
Page Setup
-
Define page settings for printing.
-
Print (Ctrl+P)
-
Prints the code inside the text editor.
-
Preferences
-
- Change some of the ways Processing works. (This item is located in the
- Processing menu on Mac OS X.)
-
-
Quit
-
- Exits the Processing Environment and closes all Processing windows. (This
- item is located in the Processing menu on Mac OS X.)
-
-
-
-#### Edit
-
-
-
Undo
-
- Reverses the last command or the last entry typed. Cancel the Undo command
- by choosing Edit » Redo.
-
-
Redo
-
- Reverses the action of the last Undo command. This option is only available
- if there has already been an Undo action.
-
-
Cut
-
- Removes and copies selected text to the clipboard (an off-screen text
- buffer).
-
-
Copy
-
Copies selected text to the clipboard.
-
Copy as HTML
-
- Formats code as HTML in the same way it appears in the Processing
- environment and copies it to the clipboard so it can be pasted somewhere
- else.
-
-
Paste
-
- Inserts the contents of the clipboard at the location of the cursor, and
- replaces any selected text.
-
-
Select All
-
- Selects all of the text in the file which is currently open in the text
- editor.
-
-
Auto Format
-
- Attempts to format the code into a more human-readable layout. Auto Format
- was previously called _Beautify_.
-
-
Comment/Uncomment
-
- Comments the selected text. If the selected text is already commented, it
- uncomments it.
-
-
Increase Indent
-
Indents the selected text two spaces.
-
Decrease Indent (Ctrl+[)
-
If the text is indented, removes two spaces from the indent.
-
Find...
-
- Finds an occurence of a text string within the file open in the text editor
- and gives the option to replace it with a different text.
-
-
Find Next
-
- Finds the next occurence of a text string within the file open in the text
- editor.
-
-
Find Previous
-
- Finds the previous occurence of a text string within the file open in the
- text editor.
-
-
Use Selection for Find
-
- Sets the currently selected text as the item to find with Find Next and Find
- Previous.
-
-
-
-#### Sketch
-
-
-
Run
-
- Runs the code (compiles the code, opens the display window, and runs the
- sketch inside)
-
-
Present
-
- Runs the code in the center of the screen with a solid-color background.
- Click the "stop" button in the lower left to exit the presentation or press
- the Escape key. Change the background color in the Preferences.
-
-
Tweak
-
- Runs the code in a way where some color and variable values can be changed
- while the code is running. The sketch needs to be saved before it can be run
- as a sketch to Tweak.
-
-
Stop
-
- If the code is running, stops the execution. Programs written without using
- the draw() function are stopped automatically after they draw.
-
-
Import Library
-
- Adds the necessary import statements to the top of the current sketch. For
- example, selecting Sketch » Import Library » pdf adds the statement "import
- processing.pdf.\*;" to the top of the file. These import statements are
- necessary for using Libraries. Select Add Libraries... to open the Library
- Manager to browse and install new libraries.
-
-
Show Sketch Folder
-
Opens the folder for the current sketch.
-
Add File...
-
- Opens a file navigator window. Select an image, font, or other media files
- to add it to the sketch's "data" folder.
-
-
-
-#### Debug
-
-
-
Enable Debugger
-
- Activates the debugger. Note that the Run button will change to Debug. New
- Continue and Step buttons will appear, along with a separate window for
- viewing variable values.
-
-
Continue
-
Advances the code until the next breakpoint.
-
Step
-
- Advances the code one line at a time. (Note that once the code reaches the
- end of the current function call, the debugger will rever to "continue.")
-
-
Step Into
-
- Advances the debugger into the interior of a function call. This only works
- for user-defined functions in the sketch.
-
-
Step Out
-
- Advances the debugger outside of a function to the calling area. This only
- works for user-defined functions in the sketch.
-
-
Toggle Breakpoint
-
- Add or remove a breakpoint. When a breakpoint is added, the line number is
- replaced with the symbol: `<>`.
-
-
-
-#### Tools
-
-
-
Create Font...
-
- Converts fonts into the Processing font format (VLW) and adds to the current
- sketch. Opens a dialog box that gives options for setting the font, its
- size, if it is anti-aliased (smooth), and which characters to be generated.
- The amount of memory required for the font is determined by the size
- selected and the number of characters selected through the "Characters..."
- menu; Processing fonts are textures, so larger fonts require more image
- data. Fonts can also be created in the code with the createFont() function.
-
-
Color Selector...
-
- Interface for selecting colors. For each color, the HSB, RBG, and Hex values
- are shown. The Hex value can be copied into the clipboard with the Copy
- button.
-
-
Archive Sketch
-
- Archives a copy of the current sketch in .zip format. The archive is placed
- in the same folder as the sketch.
-
-
Install "processing-java"
-
- Installs the processing-java program to make it possible to build and run
- Java mode sketches from the command line.
-
-
Movie Maker
-
- Creates a QuickTime movie from a sequence of images. Options include setting
- the size, frame rate, and compression, as well as an audio file.
-
-
Add Tool...
-
Opens the Tool Manager to browse and install new Tools.
-
-
-#### Help
-
-
-
Environment
-
- Opens the reference for the Processing Development Environment (this page)
- in the default web browser.
-
-
Reference
-
- Opens the reference in the default web browser. Includes references for the
- language, programming environment, and core libraries.
-
-
Find in Reference
-
- Select an element of the Processing language in the text editor and select
- Find in Reference to open that page in the default web browser.
-
-
Libraries Reference
-
Select from the list to open the reference for compatiable Libraries.
-
Tools Reference
-
Select from the list to open the reference for compatiable Tools.
-
Getting Started
-
Opens the online Getting Started tutorial in the default browser.
-
Troubleshooting
-
Opens the online Troubleshooting wiki page in the default browser.
-
Frequently Asked Questions
-
Opens the online FAQ wiki page in the default browser.
-
The Processing Foundation
-
Opens the Foundation website in the default browser.
-
Visit Processing.org
-
Opens Processing website in the default browser.
-
-
-### Preferences
-
-The Processing Development Environment (PDE) is highly configurable. The most common preferences can be modified in the Preferences window, located in the File menu on Windows and Linux and in the Processing menu on Mac Os X. The full list of preferences are stored in the "preferences.txt" file. This file can be opened and edited directly only when Processing is not running. You can find the location of this file on your computer by reading the bottom-left corner of the Preferences window.
-
-
-
Sketchbook location
-
- Any folder can be used as the Sketchbook. Input a new location or select
- "Browse" to set the folder you want to use.
-
-
Language
-
- Select the language to use for the menus. Processing needs to be restarted
- after making a new selection.
-
-
Editor and Console font
-
- Select a different font to use for text in the Editor and Console. Note: the
- selected font should match the language used in the Text Editor. See the
- "Enable complex text input" preference below.
-
-
Editor font size
-
Sets the font size of the code in the text editor.
-
Console font size
-
Sets the font size of the text in the console.
-
Background color when Presenting
-
Defined the background color used when a sketch is run with Present.
-
Use smooth text in editor window
-
- By default, the text in the editor is aliased. When checked, the editor
- switches to an anti-aliased (smoothed) font. Restart Processing after making
- this change.
-
-
Enable complex text input
-
- Enables the Text Editor to display non-Latin fonts such as Japanese.
- Processing needs to be restarted after making this selection.
-
-
Continuously check for errors and Show warnings
-
- Turn on and off the features that continuously check for and report
- potential code errors.
-
-
Code completion with Ctrl-space
-
- Turn on and off code completion. Press Ctrl-space to activate code
- completion while typing.
-
-
Suggest import statements
-
- When checked, Processing will try to suggest libraries to import when code
- from that library is detected.
-
-
Increase maximum available memory
-
- Allocates more RAM to Processing sketches when they run. Sketches that use
- media files (images, audio, etc.) sometimes require more RAM. Increase the
- amount of RAM if a sketch is throwing Out of Memory Errors.
-
-
Delete previous folder on export
-
- When checked (default behavior), Processing deletes the complete export
- folder before re-creating it and adding the new media.
-
-
Check for updates on startup
-
- When checked (default behavior), you'll be informed of new Processing
- software releases as they become available through a small dialog box that
- opens as Processing starts.
-
-
Run sketches on display
-
- If more than one monitor is attached, select the monitor on which to display
- the sketch.
-
-
-
-### Sketches and Sketchbook
-
-All Processing projects are called sketches. Each sketch has its own folder. The main file for each sketch has the same name as the folder and is found inside. For example, if the sketch is named "Sketch_123", the folder for the sketch will be called "Sketch_123" and the main file will be called "Sketch_123.pde". The PDE file extension is an acronym for the Processing Development Environment
-
-Processing sketches can be stored anywhere on your computer, but by default they are stored in the sketchbook, which will be in different places on your computer or network depending if you use PC, Mac, or Linux and how the preferences are set. To locate this folder, select the "Preferences" option from the File menu (or from the "Processing" menu on the Mac) and look for the"Sketchbook location."
-
-A sketch folder sometimes contains other folders for media files and other code. When a font or image is added to a sketch by selecting "Add File..." from the Sketch menu, a "data" folder is created. Files may also be added to your Processing sketch by dragging them into the text editor. Image and sound files dragged into the application window will automatically be added to the current sketch's "data" folder. All images, fonts, sounds, and other data files loaded in the sketch must be in this folder.
-
-### Renderers
-
-Processing has four built-in screen renderers. The default renderer is for drawing two-dimensional shapes. _P2D_ is a faster, but less accurate renderer for drawing two-dimensional shapes. _P3D_ is for three-dimensional geometry; it can also control the camera, lighting, and materials. The P2D and P3D renderers are accelerated if your computer has an OpenGL compatible graphics card. The `smooth()` function affects the amount of antialiasing for each renderer. Check the reference for `smooth()` for more information.
-
-With the release of Processing 3.0, the _FX2D_ renderer is included. Use it for fast 2D graphics on large and high resolution displays for more speed than the default renderer. This renderer is still experimental, but it useful for certain conditions.
-
-The renderer used for each sketch is specified through the `size()` function. If a renderer is not explicitly defined in `size()`, it uses the default renderer as shown in the following program:
-
-```
-void setup() {
- size(200, 200);
-}
-
-void draw() {
- background(204);
- line(width/2, height/2, mouseX, mouseY);
-}
-```
-
-To change the renderer, add a third parameter to size(). For example
-
-```
-void setup () {
- size(200, 200, P2D);
-}
-
-void draw() {
- background(204);
- line(width/2, height/2, mouseX, mouseY);
-}
-```
-
-A large effort has been made to make Processing code behave similarly across the different renderers, but there are currently some inconsistencies that are explained in the reference.
-
-For more information, see the `size()` reference entry.
-
-### Coordinates
-
-Processing uses a Cartesian coordinate system with the origin in the upper-left corner. If your sketch is 320 pixels wide and 240 pixels high, coordinate (0, 0) is the upper-left pixel and coordinate (320, 240) is in the lower-right. The last visible pixel in the lower-right corner of the screen is at position(319, 239) because pixels are drawn to the right and below the coordinate.
-
-
-
-Using the three-dimension coordinate system of P3D, the z-coordinate is zero at the surface of the image, with negative z-values moving back in space. When drawing in 3D, the _camera_ is positioned in the center of the screen.
-
-### Tabs, Multiple Files, and Classes
-
-It can be inconvenient to write a long program within a single file. When Processing sketches grow to hundreds or thousands of lines, breaking them into modular units helps manage the different parts. Processing manages files with the Sketchbook and each sketch can have multiple files that are managed with tabs.
-
-The arrow button to the right of the tabs in the Processing Development Environment is used to manage these files. Click this button to reveal options to create a new tab, rename the current tab, and delete the current tab. Tabs are intended for more advanced users, and for this reason, the menu that controls the tabs is intentionally made less prominent.
-
-
-
-_Advanced_
-
-When a program with multiple tabs is run, the code is grouped together and the classes in other tabs become inner classes. Because they're inner classes, they cannot have static variables. Simply place the "static" variable outside the class itself to do the same thing (it need not be explicitly named "static" once you list it in this manner). If you don't want code to be an inner class, you can also create a tab with a ".java" suffix, which means it will be interpreted as straight java code. It is also not possible to use static classes in separate tabs. If you do this, however, you'll need to pass the PApplet object to that object in that tab in order to get PApplet functions like `line()`, `loadStrings()` or `saveFrame()` to work.
-
-
-
-### Debug
-
-The Processing Debugger is a tool for diagnosing problems with a sketch. Enable it to pause a sketch while running and advance through the code one line at a time. The debugger is enabled through the File menu (Debug > Enable Debugger) or by clicking the Debugger icon, the butterfly in the upper-right corner of the PDE.
-
-When the Debugger is enabled, the program runs as normal, but stops at "breakpoints." To create a breakpoint, set the cursor at the line you want to pause the sketch and select Debug > Toggle Breakpoint. The keyboard shortcut is Command-B. To remove the breakpoint, select Toggle Breakpoint again. When a breakpoint is added, the line number is replaced with the symbol: `<>`.
-
-Running the sketch in Debug mode causes the sketch to pause at any breakpoints. When paused, current variable values are visible in a separate pane. You can advance to the next breakpoint by selecting "Continue" or advance line by line through the code with "Step". Stepping only works within the scope of the current function being run.
-
-### Programming Modes
-
-Processing has different _programming modes_ to make it possible to deploy sketches on different platforms and program in different ways. The current default programming mode is _Java_ mode. Other programming modes such as _Android Mode_ and _Python_ are added by selecting "Add Mode..." from the menu in the upper-right corner of the PDE.
-
-#### Java Mode
-
-This mode makes it possible to write short programs to draw to the screen, but also enables complex Java programs as well. It can be used simply by beginners, but it scales to professional Java software development. Sketches written in this mode can be exported as Java Applications to run on Linux, Mac OS X, and Windows operating systems.
-
-
-
-_Advanced_
-
-Java files with the extension .java can be included with a Java mode sketch. They may be created directly in the PDE or copied into the sketch folder through the "Add File..." item in the Sketch menu or dragged into the text editor. It's possible to write any Java code in files with the .java extension. In fact, complete Java code can be written from inside the Processing Environment by subclassing PApplet like this:
-
-```
-public class MyDemo extends PApplet {
-```
-
-This is for advanced developers only and is not really recommended. Using this technique means that any additional tabs will no longer be inner classes, meaning you'll have to do extra work to make them communicate properly with the host PApplet. It is not necessary to use this technique just to get features of the Java language. Advanced developers can also program with Processing in another Java Editor if higher-level code editing and tools are needed. Processing's core.jar can be used as a part of any Java project.
-
-
-
-### Adding Libraries, Tools, and Modes
-
-Processing 3.0 includes a set of features to make it easier to install, update, and remove Libraries, Tools, Modes, and Examples.
-
-Add a contributed library by selecting "Add Library..." from the "Import Library..." submenu within the Sketch menu. This opens the Library Manager. Next, select a library and then click on Install to download it.
-
-Add a contributed tool by selecting "Add Tool..." from the Tools menu, then select a Tool to download from the Tool Manager.
-
-Add contributed modes by selecting "Add Mode..." from the Mode menu in the upper-right corner of the PDE, then select a Mode to install.
-
-Add contributed Examples by first opening the "Examples..." submenu from the File menu. Click on the Add Examples button to open the Examples Manager. Next, select an examples package and select Install to download.
-
-### Export
-
-The [Export information and Tips](https://github.com/processing/processing/wiki/Export-Info-and-Tips) page on the Processing Wiki covers the details of exporting Applications from Java mode.
diff --git a/content/pages/environment/index.es.mdx b/content/pages/environment/index.es.mdx
new file mode 100644
index 000000000..36375fcae
--- /dev/null
+++ b/content/pages/environment/index.es.mdx
@@ -0,0 +1,452 @@
+---
+slug: '/environment'
+title: 'Entorno'
+description: The Processing Environment includes a text editor, a compiler, and a display window. It enables the creation of software within a carefully designed set of constraints.
+---
+
+
+ El Entorno Processing incluye un editor de texto, un compilador y una ventana de despliegue. Permite la creación de software dentro de un conjunto de restricciones cuidadosamente diseñado.
+
+
+### Vista General
+
+El Entorno de Desarrollo Processing (Processing Development Environment PDE) facilita la escritura de programas de Processing. Los programas son escritos en el Editor de Texto y ejecutados al presionar el botón de Ejecutar. En Processing, un programa de computadora es llamado un _sketch_. Los Sketches son almacenados en el _Sketchbook_, el cual es un directorio en tu computadora.
+
+Los Sketches pueden dibujar gráficos bi y tri-dimensionales. El renderer por default es para dibujar gráficos bidimensionales. El renderer P3D hace posible dibujar gráficos tridimensionales, he incluye como controlar la cámara, la iluminación y los materiales. El renderer P2D es un renderer más rápido pero menos preciso para dibujar gráficos gráficos bidimensionales. Ambos renderers, ( P2D y P3D) son acelerados si tu computadora cuenta con una tarjeta gráfica compatible con OpenGL.
+
+Las capacidades de Processing son incrementadas por las _Bibliotecas_ y _Herramientas_. Las bibliotecas hacen posible que los sketches hagan cosas más allá de lo posible con el código de Processing. Hay cientos de bibliotecas proporcionadas por la comunidad Processing que pueden ser agregadas a tus sketches para permitir nuevas funcionalidades como reproducir sonidos, hacer visión computacional o trabajar con geometría 3D avanzada. Las herramientas extienden al Entorno dede Desarrollo Processing y ayudan a crear sketches más facilmente al proveer interfaces para tareas como seleccionar colores.
+
+Processing tiene diferentes _modos de programación_ para hacer posible la distribución de sketches en diferentes plataformas, programando en diferentes formas. El modo Java es el default, otros modos de programación pueden ser descargados al seleccionar "Añadir Modo..." desde el menú ubicado en la esquina superior derecha del Entorno de Desarrollo Processing.
+
+### Entorno de Desarrollo Processing (PDE)
+
+El Entorno de Desarrollo Processing consiste de un editor de textos simple, un área de mensajes, una consola de texto, pestañas para administrar archivos, una barra de herramientas con botones para acciones comunes y una serie de menús. Las opciones de los menús cambian dependiendo del modo. El modo default en Java es documentado aquí.
+
+
+Los programas escritos usando Processing son llamados sketches. Estos sketches son escritos en el editor de texto, el cual tiene funcionalidades como cortar y pegar texto, así como buscar y reemplazar.
+El área de mensajes da retroalimentación al guardar y exportar archivos, y también muestra errores. La consola despliega la salida de texto de los sketches de Processing, incluyendo mensajes de error completos y salida de texto de los sketches a través del uso de funciones `print()` y `println()`. (Nota que la consola funciona bien para mensajes ocasionales, pero no esta diseñada para salida en tiempo real y a alta velocidad)
+
+Los botones en la barrade herramientas pueden ejecutar y detener programas,
+
+
+
+Comandos adicionales se encuentrar en los seis menús: Archivo, Editar, Sketch, Depuración, Herramientas, Ayuda. Estos menús son dependientes del contexto, lo que significa que sólo las entradas relevantes para el trabajo que se quiere hacer estan disponibles.
+
+
+#### Archivo
+
+
+
Nuevo
+
+ Crea un nuevo sketch en una nueva ventana, nombrada con la fecha actual de acuerdo al formato `sketch_AAMMDDa`.
+
+
Abrir...
+
Abrir un sketch en una nueva ventana.
+
Recientes
+
Selecciona un sketch para abrir desde una lista de sketchs recientemente cerrados.
+
Sketchbook
+
Abre una nueva ventana para mostrar una lista de los sketches presentes en el sketchbook.
+
Ejemplos...
+
Abre una nueva ventana para mostrar una lista de los ejemplos.
+
Cerrar
+
+ Cierra el sketch en la ventana situada más al frente. En caso de que este sea el último sketch, se te preguntará si deseas salir. Para evitar este aviso, usa Salir en vez de Cerrar cuando quieras salir de la aplicación.
+
+
Guardar
+
Guarda el skectch abierto en su estado actual.
+
Guardar como...
+
+ Guarda el sketch abierto actualmente, con la opción de darle un nombre distinto. No reemplaza la versión previa del sketch.
+
+
Exportar Aplicación
+
+ Exporta una aplicación Java como un archivo ejecutable y abre el directorio que contiene los archivos exportados.
+
+
Configurar Página
+
Configura la página para impresión.
+
Imprimir (Ctrl+P)
+
Imprime el código localizado en el editor de texto.
+
Preferencias
+
+ Cambia algunas cosas de como Processing trabaja. ( Esta entrada está localizada en el menú de Processing en Mac OS X.)
+
+
Salir
+
+ Sale del Entorno de Programación Processing y cierra todas las ventanas de Processing. ( Esta entrada está localizada en el menú de Processing en Mac OS X.)
+
+
+
+#### Editar
+
+
+
Deshacer
+
+ Revierte el último comando o lo último que se escribió. Este comando se cancela al elegir Editar » Rehacer.
+
+
Rehacer
+
+ Revierte la acción del último comando Deshacer. Esta opción sólo esta disponible si ha existido una accion Deshacer.
+
+
Cortar
+
+ Remueve y copia el texto seleccionado al portapapeles ( un buffer de texto que no se despliega en pantalla).
+
+
Copiar
+
Copia el texto seleccionado en el portapapeles.
+
Copiar como HTML
+
+ Formatea el código en HTML de la misma manera en que aparece en el entorno Processing y lo copia en el portapapeles para que pueda ser pegado en otro lugar.
+
+
Pegar
+
+ Inserta el contenido del portapapeles en la ubicación del cursos, y reemplaza cualquier texto seleccionado.
+
+
Seleccionar Todo
+
+ Selecciona todo el texto del archivo que este actualmente abierto en el editor de texto.
+
+
Autoformato
+
+ Intenta formatear el código en una disposicion más accesible para los humanos. Anteriormente llamado _Beautify_.
+
+
Comentar/Descomentar
+
+ Comenta el texto seleccionado. Si el texto seleccionado esta comentado, entonces lo descomenta.
+
+
Aumentar Identación(Ctrl+])
+
Identa el texto seleccionado dos espacios.
+
Reducir Identación(Ctrl+[)
+
Si el texto esta identado, remueve dos espacios de la identación.
+
Buscar...
+
+ Busca una ocurrencia de texto dentro del archivo abierto en el editor de texto y da la opción de reemplazarlo con un texto diferente.
+
+
Buscar siguiente
+
+ Busca la siguiente ocurrencia de un texto dentro del archivo abierto en el editor de texto.
+
+
Buscar anterior
+
+ Busca la ocurrencia anterior de un texto dentro del archivo abierto en el editor de texto.
+
+
Usar selección para buscar
+
+ Usa el texto seleccionado actualmente como la entrada de texto a buscar en Buscar siguiente y Buscar anterior.
+
+
+
+#### Sketch
+
+
+
Ejecutar
+
+ Ejecuta el código (compila el código, abre una ventana para desplegarlo, y ejecuta el skectch dentro de ella)
+
+
Presentar
+
+ Ejecuta el código en el centro de la pantalla con un fondo de color sólido. Da click en el boton "Detener" (localizado en la parte inferior izquierda) o presiona la tecla Escape para salir de la presentación.
+ Cambia el color de fondo en Preferencias.
+
+
Tweak
+
+ Ejecuta el código de tal forma que algunos colores y valores de variables pueden ser modificados mientras el código corre. El sketch necesita ser guardado antes de que pueda ser ejecutado como un sketch en Tweak.
+
+
Detener
+
+ Si el código esta corriendo, detiene la ejecución. Los programas escritos sin la función draw() son detenidos automáticamente despues de dibujar.
+
+
Importar biblioteca
+
+ Agrega las declaraciones import necesarias al inicio del sketch actual. Por jemplo, al seleccionar Sketch » Importar biblioteca » pdf se agrega la declaración "import
+ processing.pdf.\*;" al inicio del archivo. Estos enunciados son necesarios para usar las bibliotecas. Selecciona Añadir bibliotecas ... para abrir el administrador de bibliotecas e instalar nuevas bibliotecas.
+
+
Mostrar carpeta del sketch
+
Abre el directorio del sketch actual.
+
Añadir archivo...
+
+ Abre una ventana para navegar por los archivos. Selecciona una imagen, fuente u otros archivos de medios para agregarlo al directorio "data" del sketch.
+
+
+
+#### Depurar
+
+
+
Activar Depurador
+
+ Activa el depurador. Nota que el boton Ejecutar cambiará a Depurar. Dos nuevos botones, Continuar y Saltar aparecerán, junto a otra ventana para ver el valor de las variables.
+
+
Continuar
+
Avanza por el código hasta el próximo punto de interrupción.
+
Saltar
+
+ Avanza por el código una línea a la vez. (Nota que una vez que el código alcance el final de la función llamada, el depurador pasará a "continuar".)
+
+
Ingresar
+
+ Avanza al depurador dentro del interior de una llamada de función. Sólo sirve para funciones definidas por el usuario dentro del sketch.
+
+
Salir
+
+ Saca al depurador de la llamada de función actual. Sólo sirve para funciones definidas por el usuario dentro del sketch.
+
+
Activar/Desactivar punto de interrupción
+
+ Añade o quita un punto de interrupción. Cuando el punto de interrupción es añadido el número de línea es reemplazado por el símbolo: `<>`.
+
+
+
+#### Herramientas
+
+
+
Crear Fuente...
+
+ Convierte fuentes al formato de fuentes de Processing (VLW) y las agrega al sketch actual. Abre una ventana de diálogo que da la opción para configurar la fuente, su tamaño, si se usara anti-aliasing,
+ y cuáles caracteres serán generados. La cantidad de memoria requerida por la fuente esta determinada por su tamaño y el número de caracteres seleccionado a través del menú "Caracteres...".
+ Las fuentes en Processing son texturas, así que fuentes más grandes requieren más espacio para datos. Las fuentes también pueden ser creadas en el código a través de la función createFont().
+
+
Selector de colores...
+
+ Interfaz para seleccionar colores- Por cada color, los valores HSB, RBG y Hex son mostrados. El valor Hex puede ser copiado en el portapapeles con el botón Copiar.
+
+
Archivar Sketch
+
+ Archiva una copia del sketch actual en formato .zip. El archivo esta localizado en el mismo directorio que el sketch.
+
+
Instalar "processing-java"
+
+ Instala el programa processing-java para hacer posible construir y ejecutar sketches en modo Java desde la línea de comandos.
+
+
Creador de Películas
+
+ Crea una película QuickTime de una secuencia de imagenes. Las opciones incluyen definir el tamaño, frame rate y la compresión, así como un archivo de audio
+
+
Añadir Herramienta...
+
Abre el administrador de Herramientas para navegar e instalar nuevas Herramientas.
+
+
+#### Ayuda
+
+
+
Entorno
+
+ Abre la referencia del Entorno de Desarrollo Processing (esta página) en el navegador actual predeterminado.
+
+
Referencia
+
+ Abre la referencia en el navegador web predeterminado. Incluye referencias para el lenguage, el entorno de programación y las bibliotecas principales.
+
+
Buscar en la referencia
+
+ Selecciona un elemento del lenguaje Processing en el editor de texto y selecciona Buscar en la referencia para abrir esa página en el navegador web predeterminado.
+
+
Referencia de Bibliotecas
+
Selecciona de la lista para abir la referencia de Bibliotecas compatibles.
+
Referencia de Herramientas
+
Selecciona de la lista para abir la referencia de Herramientas compatibles.
+
Primeros Pasos
+
Abre el tutorial online Primeros Pasos en el navegador predeterminado.
+
Resolución de Problemas
+
Abre la página online de Resolución de Problemas en el navegador predeterminado.
+
Preguntas Frecuentes
+
Abre la página de Preguntas Frecuentes en el navegador predeterminado.
+
The Processing Foundation
+
Abre el sitio web de la Fundación Processing en el navegador predeterminado.
+
Visitar Processing.org
+
Abre el sitio web de Processing en el navegador predeterminado.
+
+
+### Preferencias
+
+El Entorno de Desarrollo Processing es altamente configurable. Las preferencias más comunes pueden ser modificadas en la ventana Preferencias, localizada en el menú Archivo en Windows y Linux, y en el menú Processing en Mac OS X.
+La lista completa de preferencias esta almacenada en el archivo "preferences.txt". Este archivo puede ser abierto y editado únicamente cuando Processing no se está ejecutando. Puedes encontrar la ubicación del archivo en tu computadora al leer la esquina inferior izquierda de la ventana de Preferencias.
+
+
+
Ubicación del Sketchbook
+
+ Cualquier directorio puede ser usado como el Sketchbook. Introduce una nueva ubicación o selecciona "Buscar" para seleccionar el directorio que quieres usar.
+
+
Lenguaje
+
+ Selecciona el lenguaje para usar en los menús. Processing necesita ser reiniciado después de hacer una nueva selección.
+
+
Fuente de la consola y el editor
+
+ Selecciona una fuente diferente para user en el texto de la consola y el editor. Nota: la fuente seleccionada debe coincidir con el lenguaje usado en el editor de texto. Ve "Habilitar el ingreso de caracteres complejos.
+
+
Tamaño de la letra del editor
+
Fija el tamaño de la fuente para el código en el editor de texto.
+
Tamaño de la letra de la consola
+
Fija el tamaño de la fuente para el código en la consola.
+
Color de fondo en modo Presentación
+
Define el color de fondo usado cuando el sketch es ejecutado en modo Presentación.
+
Usar texto suavizado en la ventana del editor
+
+ De manera predeterminada, el texto en el editor no esta suavizado. Al marcar esta opción, el texto en el editor cambia a una fuente suavizada. Reinicia Processing después de hacer este cambio.
+
+
Habilitar el ingreso de caracteres complejos
+
+ Habilita al editor de texto para desplegar fuentes no latinas, por ejemplo el japonés. Processing necesita ser reiniciado tras hacer esta selección.
+
+
Comprobar errores de forma continua
+
Enciende o apaga la funcionalidad para comprobar y reportar errores potenciales de código de manera continua.
+
+
Autocompletado de código Ctrl-space
+
+ Habilita o deshabilita el autocompletado de código. Presiona Ctrl-space para alternar entre habilitar o deshabilitar esta funcionalidad.
+
+
Sugerir declaraciones de importación
+
Cuando esta marcado, Processing intentará sugerir bibliotecas para importar cuando el código de dicha biblioteca sea detectado.
+
+
Aumentar memoria máxima disponible a
+
+ Reserva más RAM a los sketches de Processing cuando se ejecutan. Los scketches que usan archivos de medios ( imágenes, audio, etc) a veces requieren más RAM. Aumenta la memoria RAM is un sketch está lanzado errores Out of Memory
+
+
Eliminar directorio anterior al exportar
+
Cuando esta marcado (comportamiento predeterminado), Processing elimina el directorio de exportación completo antes de recrearlo y añadir los nuevos medios.
+
+
Comprobar actualizaciones al iniciar
+
+ Cuando esta marcado (comportamiento predeterminado), serás informado de nuevos lanzamientos de Processing en cuanto esten disponibles a través de una pequeña venana de texto que aparece en cuanto Processing inicia.
+
+
Ejecutar sketches en la pantalla
+
Si más de un monitor esta presente, selecciona en que monitor quieres desplegar el sketch.
+
+
+### Sketches y Sketchbook
+
+Todos los proyectos de Processing son llamados sketches. Cada sketch tiene su propio directorio. El archivo principal de cada sketch tiene el mismo nombre que el directorio y está localizado adentro de dicho directorio. Por ejemplo, si el sketch es llamado "Sketch_123", el directorio para dicho sketcj será llamado "Sketch_123" y el archivo principal será "Sketch_123.pde". La extensión de archivo PDE es un acrónimo de Processing Development Environment ( Entorno de Desarrollo Processing).
+
+Los sketches de Processing pueden ser almacenados donde sea en tu computadora, pero de manera predeterminada son almacenados en el sketchbook, el cual estará en diferentes lugares en tu computadora dependiendo si usas PC, Mac o Linux, así como de las preferencias elegidas. Para localizar este directorio, selecciona la opción de "Preferencias" del menú Archivo (o del menú Processing en Mac) y mira ek valor de la ubicación del sketchbook.
+
+El directorio de un sketch algunas veces contiene otros directorios con archivos de medios y otros códigos. Cuando una fuente o imágen es añadida a un sketch al seleccionar el comando "Añadir archivo" desde el menú Sketch, un directorio "data" es creado. Los archivos también pueden ser añadidos a tu sketch de Processing al arrastrarlos dentro del editor de texto. Los archivos de imágen y sonido que son arrastrados dentro de la ventana de la aplicación son automáticamente añadidos al directorio "data" del sketch actual. Todas las imágenes, fuentes, sonidos y otros archivos de datos utilizados por el sketch deben estar localizados en este directorio.
+
+### Renderers
+
+
+Processing tiene 4 renderers de pantalla incluidos. El renderer predeterminado es para dibujar formas bi-dimensionales. _P2D_ es un renderer más rápido pero menos exacto también para dibujar formas bi-dimensionales. _P3D_ es un renderer para geometría tri-dimensional, con él también se puyede controlar la cámara, luces y materiales. Los renderes P2D y P3D son acelerados si tu computadora cuenta con una tarjeta gráfica compatible con OpenGL. La función `smooth()` afecta el monto de antialiasing de cada renderer. Checa la referencia de `smooth()` para mayor información.
+
+Con el lanzamiento de Processing 3.0. el renderer _FX2D_ se ha includo. Usalo para gráficos 2D rápidos en pantallas de grandes y de gran resolución. Este renderer es experimental pero es útil en ciertas condiciones.
+
+El renderer usado para cada sketch es especificado a través de la función `size()`. Si un renderer no esta definido explícitamente en `size()`, usa el renderer predeterminado como se muestra en el siguiente programa:
+
+```
+void setup() {
+ size(200, 200);
+}
+
+void draw() {
+ background(204);
+ line(width/2, height/2, mouseX, mouseY);
+}
+```
+
+Para cambiar el renderer, agrega un tercer parametro a size(). Por ejemplo
+
+
+```
+void setup () {
+ size(200, 200, P2D);
+}
+
+void draw() {
+ background(204);
+ line(width/2, height/2, mouseX, mouseY);
+}
+```
+
+Un gran esfuerzo se ha realizado para hacer que el código de Processing se comporte de manera similar en los diferentes renderers, pero actualmente existen algunas inconsistencias que son explicadas en la referencia.
+
+Para más información, ve la referencia de la entrada `size()`.
+
+### Coordenadas
+
+Processing usa el sistema de coordenadas Cartesiano, con origen en la esquina superior izquierda. Si tu sketch es de 320 píxeles de ancho y 240 píxeles de alto, la coordenada ( 0,0 ) es la esquina superior izquierda y la coordenada (320, 240) es la coordenada del píxel en la esquina inferior derecha. El último píxel visible esta en la esquina inferior derecha en la posición (319, 239) puesto que los píxeles son dibujados a la derecha y abajo de dicha coordenada.
+
+
+
+Cuando se usa el sistema de coordenadas de tres dimensiones de P3D, la coordenada z es 0 en la superficie de la imágen, con valores negativos en z moviendose atrás en el espacio. Cuando se dibuja en 3D, la _cámara_ esta posicionada en el centro de la pantalla.
+
+
+### Pestañas, Múltiples Archivos, y Clases
+
+Puede ser inconveniente escribir programas largos en un sólo archivo. Cuando los sketches de Processing crecen a cientos o miles de líneas, partirlos en unidades modulares ayuda a administrar las diferentes partes. Processing administra los archivos en el Sketchbook, y cada archivo puede tener múltiples archivos que se administran desde las pestañas.
+El botón de flecha, a la derecha de las pestañas en el Entorno de Desarrollo Processing es usado para navegar estos archivos. Al hacer click sobre este boton se revelan opciónes para crear una nueva pestaña, renombrar o borrar la pestaña actual. Las pestañas son pensadas para usuarios avanzados, y por esta razón, el menú que contral las pestañas es menos prominente intencionalmente.
+
+
+
+
+ _Avanzado_
+
+ Cuando un programa con multiples pestañas se ejecuta, el código es agrupado y las clases en otras pestañas se convierten en clases interiores. Por ser clases interiores, ellas no pueden tener variables estáticas. Simplemente coloca la variable estática afuera de la clase misma para lograr el mismo efecto. (No necesita ser llamado explicitamente estático una vez que se liste en esta manera). Si no deseas que el código sea una clase interior, también puedes crear una pestaña con el sufijo ".java", lo que significa que será interpretado como código java normal. Tampoco es posible usar clases estáticas en pestañas distintas. Si haces esto, sin embargo, tu necesitarás pasar el objeto PApplet al objeto de esa pestaña para poder usar funciones del PApplet como `line()`, `loadStrings()` o `saveFrame()`.
+
+
+
+
+
+### Depurar
+
+El depurador Processing es una herramienta para diagnosticar problemas con un sketch. Habilítalo para pausar un sketch mientras se ejecuta y avanzar a través del código una línea a la vez. El depurador se habilita a través del Menú de Depuración, o al hacer click sobre el ícono de Depurador, la mariposa en la esquina superior derecha del entorno de desarrollo processing (PDE).
+
+Cuando el depurador está habilitado, el programa se ejecuta normalmente, pero se detiene en los puntos de interrupción. Para crear un punto de interrupción, dirige el cursor a la línea donde tu quieres que se pause el sketck y selecciona Depuración > Activar punto de interrupción. El atajo de teclado es Command-B. Para remover el punto de interrupción, selecciona la misma opción d enuevo. Cuando un punto de interrupción es añadido el número de línea es reemplazado por el símbolo `<>`.
+
+Ejecutar el sketch en modo Depuración causa que el sketch se pause en algún punto de interrupción. Cuando el sketch está pausado los valores actuales de las variables son visibles en un panel separado. Tu puedes avanzar al siguiente punto de interrupción al seleccionar "Continuar" o avanzar línea por línea a través del código usando "Saltar". Saltar sólo funciona en el alcance de la función que se está ejecutando.
+### Modos de Programación
+
+Processing tiene diferentes _modos de programación_ que hacen posible desplegar los sketches en diferentes plataformas y programar de diferentes maneras. El modo de programación predeterminado actual es el modo _Java_. Otros modos de programación como _Modo Android_ y _Python_ son añadidos al seleccionar "Agregar Modo..." desde el menú en la esquina superior derecha del entorno de desarrollo Processing (PDE).
+#### Modo Java
+
+Este modo hace posible el escribir programas cortos para dibujar en pantalla, pero también permite programas complejos de Java. Puede ser usado por principiantes, pero escala a desarrollo de software profesional en Java. Los sketches escritos en este modo pueden ser exportados como aplicaciones de Java para correr en sistemas operativos Linux, Mac OS X y Windows.
+
+
+
+
+ _Avanzado_
+
+ Los archivos Java con la extensión .java se pueden incluir con un sketch en modo Java. Pueden crearse directamente en el PDE o copiarse en el sketchbook a través del elemento "Agregar archivo ..." en el menú Sketch o arrastrarse al editor de texto. Es posible escribir cualquier código Java en archivos con la extensión .java. De hecho, el código Java completo se puede escribir desde dentro del entorno Processing haciendo una extendiendo a la clase PApplet de esta manera:
+
+ ```
+ public class MyDemo extends PApplet {
+ ```
+
+Esto es solo para desarrolladores avanzados y realmente no se recomienda. El uso de esta técnica significa que las pestañas adicionales ya no serán clases internas, lo que significa que tendrá que hacer un trabajo adicional para que se comuniquen correctamente con el PApplet anfitrión. No es necesario utilizar esta técnica solo para obtener características del lenguaje Java. Los desarrolladores avanzados también pueden programar con Processing en otro editor de Java si se necesitan herramientas y edición de código de nivel superior. Processing's core .jar se puede utilizar como parte de cualquier proyecto Java.
+
+
+
+ ### Agregar Bibliotecas, Herramientas y Modos
+
+ Processing 3.0 incluye un conjunto de características que hacen fácil instalar, actualizar y remover Bibliotecas, Herramientas y Ejemplos.
+
+Añade una biblioteca contribuida al seleccionar "Agregar biblioteca" desde el submenú de "Importa biblioteca" dentro del menú Sketch. Esto abre el administrador de Bibliotecas. Después. selecciona una biblioteca y haz click en Instalar para descargarla.
+
+Añade una herramienta contribuida al seleccionar "Agregar herramienta" desde el menú de "Herramientas". Después. selecciona una herramienta y haz click en Instalar para descargarla.
+
+Añade un modo contribuido al seleccionar "Agregar modo" desde el menú de "Modo" en la esquina superior derecha del Entorno de Desarrollo Processing (PDE). Después. selecciona un modo y haz click en Instalar para descargarlo.
+
+
+ Añade un ejemplo contribuido al seleccionar el submenú de "Ejemplos" dentro del menú Archivo. Haz click en el botón de agregar ejemplos para abrir el administrador de ejemplos. Después selecciona un paquete de ejemplos y haz click en Instalar para descargarlo.
+ ### Exportar
+
+ La página [Información y tips para exportar](https://github.com/processing/processing/wiki/Export-Info-and-Tips") en el Wiki de Processing cubre los detalles de exportar aplicacones desde el modo Java.
diff --git a/content/pages/libraries/dxf/index.es.mdx b/content/pages/libraries/dxf/index.es.mdx
new file mode 100644
index 000000000..1c4312989
--- /dev/null
+++ b/content/pages/libraries/dxf/index.es.mdx
@@ -0,0 +1,42 @@
+---
+name: 'dxf'
+title: 'Exportar DXF'
+library: 'true'
+description: 'Crea archivos DXF para guardar la geometría y poder cargarla en otros programas.Funciona con gráficas basadas en triángulos, incluyendo polígonos, cajas y esferas.'
+---
+
+## Exportar DXF
+
+La biblioteca DXF escribe todos los gráficos basados en triángulos (polígonos, cajas, esferas) en un archivo DXF. Funciona con las funciones beginRaw() y endRaw(). Estas funciones recuperan y guardan los datos de la forma justo antes de que sea presentada en pantalla. A esta altura, la escena completa no es más que una larga lista de líneas y triángulos. Esto significa que la forma creada con la función sphere() estará compuesta de cientos de triángulos en lugar de un sólo objeto. El código fuente está disponible en el repositorio GitHub de [Processing](https://github.com/processing/processing/tree/master/java/libraries/dxf). Por favor reporta cualquier fallo [aquí](https://github.com/processing/processing/issues).
+
+Usa un evento sencillo como un keyPressed() para activarla, para evitar escribir a archivo cada vez que se usa draw(). Por default, el archivo será guardado en el directorio del Sketch. Para verlo desde el Entorno de Processing usa Sketch > Mostrar directorio del Sketch.
+
+Este ejemplo sencillo muestra como usar la Biblioteca:
+```
+import processing.dxf.*;
+
+boolean record;
+
+void setup() {
+ size(500, 500, P3D);
+}
+
+void draw() {
+ if (record) {
+ beginRaw(DXF, "output.dxf");
+ }
+
+ // Haz todo el dibujado aquí
+ if (record) {
+ endRaw();
+ record = false;
+ }
+}
+
+void keyPressed() {
+ // Teclea 'r' para no hacer un millon de archivos
+ if (key == 'r') {
+ record = true;
+ }
+}
+```
diff --git a/content/pages/libraries/io/index.es.mdx b/content/pages/libraries/io/index.es.mdx
new file mode 100644
index 000000000..7512ac792
--- /dev/null
+++ b/content/pages/libraries/io/index.es.mdx
@@ -0,0 +1,12 @@
+---
+name: 'io'
+title: 'Hardware I/O'
+library: 'true'
+description: 'Accessa perifericos en el Raspberry Pi y otras computadoras basadas en Linux'
+---
+
+## Hardware I/O
+
+La biblioteca de entrada-salida de hardware (Hardware I/O) permite el acceso a periféricos de hardware, como entradas y salidas digitales, bus seriales, y similares de una manera similar a la plataforma Arduino. Esta biblioteca sólo esta disponible para tableros con Linux embebido y con los drivers de kernel necesarios, como es el Raspberry Pi.
+
+El código fuente esta disponible en el repositorio GitHub de Processing. Por favor reporta los errores ahí.
diff --git a/content/pages/libraries/io/index.mdx b/content/pages/libraries/io/index.mdx
index 0c38b6ffc..04d15fa96 100644
--- a/content/pages/libraries/io/index.mdx
+++ b/content/pages/libraries/io/index.mdx
@@ -7,6 +7,6 @@ description: 'Access peripherals on the Raspberry Pi and other Linux-based compu
## Hardware I/O
-The Hardware I/O library allows access to the computer's hardware periperals, such as digital inputs and outputs, serial busses, and the like, in a fashion similar to the Arduino plaform. This library is only available for embedded Linux boards with the necessary kernel drivers, such as the Raspberry Pi.
+The Hardware I/O library allows access to the computer's hardware peripherals, such as digital inputs and outputs, serial busses, and the like, in a fashion similar to the Arduino platform. This library is only available for embedded Linux boards with the necessary kernel drivers, such as the Raspberry Pi.
The source code is available on the processing GitHub repository. Please report bugs here.
diff --git a/content/pages/libraries/net/index.de.mdx b/content/pages/libraries/net/index.de.mdx
deleted file mode 100644
index 0ae56af08..000000000
--- a/content/pages/libraries/net/index.de.mdx
+++ /dev/null
@@ -1,12 +0,0 @@
----
-name: 'net'
-title: 'Network'
-library: 'true'
-description: 'Send and receive data over the Internet through simple clients and servers.'
----
-
-## Network ge
-
-The Network library makes it possible to read and write data across machines on the Internet. It allows the creation clients and servers. A server connects to a list of clients for reading and writing data. A client is able to read and write data to a server.
-
-The source code is available on the Processing GitHub repository. Please report bugs here.
diff --git a/content/pages/libraries/net/index.es.mdx b/content/pages/libraries/net/index.es.mdx
new file mode 100644
index 000000000..43c99d850
--- /dev/null
+++ b/content/pages/libraries/net/index.es.mdx
@@ -0,0 +1,13 @@
+---
+name: 'net'
+title: 'Network'
+library: 'true'
+description: 'Envía y Recibe datos a través del Internet usando clientes y servidores simples.'
+---
+
+## Network
+
+La biblioteca Network hace possible leer y escribir datos a lo largo de máquinas conectadas a Internet. Permite la creación de clientes y servidores. Un servidor se conecta a una lista de clientes para escribir y leer datos. Un cliente es capaz de escribir y leer datos a un servidor.
+
+El código fuente está disponible en el repositorio GitHub de [Processing](https://github.com/processing/processing/tree/master/java/libraries/dxf). Por favor reporta cualquier fallo [aquí](https://github.com/processing/processing/issues).
+
diff --git a/content/pages/libraries/pdf/index.es.mdx b/content/pages/libraries/pdf/index.es.mdx
new file mode 100644
index 000000000..792c96119
--- /dev/null
+++ b/content/pages/libraries/pdf/index.es.mdx
@@ -0,0 +1,261 @@
+---
+name: 'pdf'
+title: 'Exportar PDF '
+library: 'true'
+description: 'Crea archivos PDF. Estos archivos con gráficos en vector pueden ser escalados a cualquier tamaño e impresos en alta resolución.'
+---
+
+## Exportar PDF
+
+La biblioteca PDF hace posible escribir archivos PDF directamente desde Processing. Estos archivos con gráficos en vector pueden ser escalados a cualquier tamaño e impresos en alta resolución. La biblioteca PDF puede mandar datos 3D a un archivo vectorial 2D, pero para exportar datos 3D, use la biblioteca DXF. El código fuente está disponible en el repositorio Github de [Processing](https://github.com/processing/processing/tree/master/java/libraries/svg). Por favor reporte los errores [aquí](https://github.com/processing/processing/issues).
+La biblioteca es frecuentemente usada con la función size() del core de Processing, con una combinación de beginRecord() y endRecord(), o con beginRaw() y endRaw(). La función createGraphics() también puede ser útil. Mira los ejemplos de abajo para ver diferentes técnicas.
+
+## Un Cuadro (Sin Pantalla)
+
+Este ejemplo dibuja un solo cuadro en un archivo PDF y sale. (Nota que no se abrirá ninguna pantalla de despliegue; esto ayuda cuando estas tratando de crear imágenes masivas de PDF que son más grandes que el tamaño de pantalla.)
+
+```
+import processing.pdf.*;
+
+void setup() {
+ size(400, 400, PDF, "filename.pdf");
+}
+
+void draw() {
+ // Dibuja algo
+ line(0, 0, width/2, height);
+
+ // Sal del programa
+ println("Finished.");
+ exit();
+}
+```
+
+
+## Multiples Páginas (Sin Pantalla)
+
+Es posible escribir cada cuadro como una nueva página en un documento PDF. Este ejemplo crea un documento de 100 páginas:
+
+```
+import processing.pdf.*;
+
+void setup() {
+ size(400, 400, PDF, "filename.pdf");
+}
+
+void draw() {
+ // Dibuja algo bueno
+ line(0, 0, frameCount * 4, height);
+
+ PGraphicsPDF pdf = (PGraphicsPDF) g; // Get the renderer
+
+ // Cuando termines, guarda el documento y sal
+ if (frameCount == 100) {
+ exit();
+ } else {
+ pdf.nextPage(); // Dile que avance a la siguiente página
+ }
+}
+```
+
+## Un Cuadro (Con Pantalla)
+
+Para dibujar a pantalla mientras guardas un PDF, usa las funciones beginRecord() y endRecord(). Esto es más lento, pero es útil cuando quieres ver en que estas trabajando mientras se graba.
+
+```
+import processing.pdf.*;
+
+void setup() {
+ size(400, 400);
+ noLoop();
+ beginRecord(PDF, "filename.pdf");
+}
+
+void draw() {
+ // Dibuja algo bonito
+ line(0, 0, width/2, height);
+
+ endRecord();
+}
+```
+
+## Un Cuadro de una Animación (Con Pantalla)
+
+También es posible guardar un cuadro del programa con elementos móviles. Crea una variable booleana para encender y apagar el proceso de guardar el PDF
+
+```
+import processing.pdf.*;
+
+boolean record;
+
+void setup() {
+ size(400, 400);
+}
+
+void draw() {
+ if (record) {
+ // Nota que #### será reemplazado con el número de cuadro. ¡Elegante!
+ beginRecord(PDF, "frame-####.pdf");
+ }
+
+ // Dibuja algo bueno aquí
+ background(255);
+ line(mouseX, mouseY, width/2, height/2);
+
+ if (record) {
+ endRecord();
+ record = false;
+ }
+}
+
+// Presiona una tecla para que miles de archivos no sean creadosvoid mousePressed() {
+ record = true;
+}
+```
+
+## Multiples Cuadros en Un Archivo (Con Pantalla)
+
+El siguiente ejemplo guarda absolutamente todo lo que pasa mientras el sketch se esta ejecutando. Teclear la tecla 'q' quitará el sketch. El sketch llama al método exit(), lo cual es necesario para asegurarse de que el archivo es escrito apropiadamente cuando se complete la operación.
+
+```
+import processing.pdf.*;
+
+void setup() {
+ size(400, 400);
+ beginRecord(PDF, "everything.pdf");
+}
+
+void draw() {
+ // Asegurate de no llamar al background, de otra manera
+ // se acumulará muchos datos que harán tu cuadro invisible
+
+ // Dibuja algo bonito aquí
+ line(mouseX, mouseY, width/2, height/2);
+}
+
+void keyPressed() {
+ if (key == 'q') {
+ endRecord();
+ exit();
+ }
+}
+```
+
+## Pausar mientras se Graba (Con Pantalla)
+
+It's also possible to pause/resume recording along the way. The following example toggles recording on/off each time you hit the 'r' key. Pressing the 'q' key will quit the sketch.
+
+```
+import processing.pdf.*;
+
+boolean recording;
+PGraphicsPDF pdf;
+
+void setup() {
+ size(400, 400);
+ pdf = (PGraphicsPDF) createGraphics(width, height, PDF, "pause-resume.pdf");
+}
+
+void draw() {
+// Asegurate de no llamar al background, de otra manera
+ // se acumulará muchos datos que harán tu cuadro invisible
+
+ // Dibuja algo bonito aquí
+ if (mousePressed) {
+ line(pmouseX, pmouseY, mouseX, mouseY);
+ }
+}
+
+void keyPressed() {
+ if (key == 'r') {
+ if (recording) {
+ endRecord();
+ println("Recording stopped.");
+ recording = false;
+ } else {
+ beginRecord(pdf);
+ println("Recording started.");
+ recording = true;
+ }
+ } else if (key == 'q') {
+ if (recording) {
+ endRecord();
+ }
+ exit();
+ }
+}
+```
+
+## Archivos PDF desde una Geometría 3D (Con Pantalla)
+
+Para crear vectores desde datos 3D, usa los métodos beginRaw() y endRaw(). Estos métodos obtendrán los datos de la figura justo antes de ser mostrados en pantalla. A esta altura, la escena completa no es nada más que una larga lista de líneas y triángulos. Esto significa que una figura creada con el método sphere() estará hecha de cientos de triángulos, y no de un sólo objeto.
+
+Cuando usas beginRaw() y endRaw(), es posible escribir tanto al renderer 2D como al 3D. Por ejemplo, beginRaw() con la biblioteca PDF escribirá la geometría como triángulos y líneas aplanadas.
+
+```
+import processing.pdf.*;
+
+boolean record;
+
+void setup() {
+ size(500, 500, P3D);
+}
+
+void draw() {
+ if (record) {
+ beginRaw(PDF, "output.pdf");
+ }
+
+ // Dibuja aquí
+ background(204);
+ translate(width/2, height/2, -200);
+ rotateZ(0.2);
+ rotateY(mouseX/500.0);
+ box(200);
+
+ if (record) {
+ endRaw();
+ record = false;
+ }
+}
+
+// Teclea 'r' para guardar un solo cuadro
+void keyPressed() {
+ if (key == 'r') {
+ record = true;
+ }
+}
+```
+
+## Usar createGraphics() para Crear un archivo PDF
+
+Para escribir un archivo PDF usando solamente el comando createGraphics(), en vez de como parte de un sketch, es necesario llamar dispose() en el objeto PGraphicsPDF. Esto es lo mismo que llamar exit(), pero sin salir del sketch.
+
+```
+import processing.pdf.*;
+
+PGraphics pdf = createGraphics(300, 300, PDF, "output.pdf");
+pdf.beginDraw();
+pdf.background(128, 0, 0);
+pdf.line(50, 50, 250, 250);
+pdf.dispose();
+pdf.endDraw();
+```
+
+## Notas adicionales para el renderer PDF:
+
+Si quieres datos 3D, usa la biblioteca de grabado DXF.
+
+- Usar hint(ENABLE_DEPTH_SORT) puede mejorar la apariencia de la geometría 3D dibujada en archivos con formato 2D.
+- Las imágenes no lucen muy bien, debido a la diferencia de expectativas en como un PDF debe lucir (escalable y de alta resolución) contra lo que pasa con los datos de la imagen, que es escrita a una resolución de 72 dpi.
+- A partir del lanzamiento 0120, el texto no es tratado como datos de figura por default, lo que significa que la fuente tendrá que ser instalada para ver el PDF creado. La parte positiva de esto es que el PDF se desplegara mejor. - Para forzar que el texto sea tratado como datos de la figura, usa textMode(SHAPE) inmediatamente después de size().
+- Otra opción para tipo es usar createFont() con una fuente TrueType (algunas fuentes OpenType también funcionan). Cualquier fuente que se muestre en PFont.list() debería funcionar, y si no, agregar un archivo .ttf al directorio data y llamar createFont("fontname.ttf") también funcionará.
+- Si loadFont() es usado en vez de createFont(), el texto pudiera aparecer pixelado y feo. En algunos casos hint(ENABLE_NATIVE_FONTS) puede mejorar la situación si la fuente está instalada en la máquina.
+- Para iniciar una nueva página hay que llamar a nextPage() así:
+ ```
+ PGraphicsPDF pdf = (PGraphicsPDF) g;
+ pdf.nextPage();
+ ```
+ (Este ejemplo también es mostrado arriba)
+
+- De nuevo, llamar a exit() es realmente importante cuando usas archivos PDF con size().
diff --git a/content/pages/libraries/serial/index.de.mdx b/content/pages/libraries/serial/index.de.mdx
deleted file mode 100644
index ada3419cc..000000000
--- a/content/pages/libraries/serial/index.de.mdx
+++ /dev/null
@@ -1,14 +0,0 @@
----
-name: 'serial'
-title: 'Serial'
-library: 'true'
-description: 'Send data between Processing and external hardware through serial communication (RS-232).'
----
-
-## Serial ge
-
-The Serial library reads and writes data to and from external devices one byte at a time. It allows two computers to send and receive data. This library has the flexibility to communicate with custom microcontroller devices and to use them as the input or output to Processing programs. The serial port is a nine pin I/O port that exists on many PCs and can be emulated through USB.
-
-Issues related to the Serial library on different platforms are documented on the Processing Wiki. The source code is available on the processing GitHub repository.
-
-When sending data to the console, such as via print() or println(), note that the console is relatively slow. It does not support high-speed, real-time output (such as at 60 frames per second). For real-time monitoring of serial values, render those values to the Processing window during draw().
diff --git a/content/pages/libraries/serial/index.es.mdx b/content/pages/libraries/serial/index.es.mdx
new file mode 100644
index 000000000..bd0a016ce
--- /dev/null
+++ b/content/pages/libraries/serial/index.es.mdx
@@ -0,0 +1,14 @@
+---
+name: 'serial'
+title: 'Serial'
+library: 'true'
+description: 'Envío de datos entre Processing y hardware externo a través del puerto de comunicación serial (RS-232).'
+---
+
+## Serial
+La biblioteca Serial lee y escribe datos desde y hacía dispositivos externos un byte a la vez. Esto permite a dos computadoras enviar y recibir datos. Esta biblioteca tiene la flexibilidad para comunicarse con dispositivos microcontroladores y usarlos como entrada o salida de programas Processing. El puerto serial es un puerto de entrada-salida de nueve pines que existe en muchas computadoras personales y puede ser emulado a través del puerto USB.
+
+Los problemas relacionados con la biblioteca Serial en diversas plataformas estan documentados en el wiki de Processing. El código fuente esta disponible en el repositorio GitHub de Processing.
+
+Al enviar datos a la consola, ya sea via print() o println(), nota que la consola es relativamente lenta. Ella no soporta salida en tiempo real, a alta velocidad ( por ejemplo a 60 cuadros por segundo). Para monitoreo en tiempo real de valores seriales, renderea esos valores en la ventana Processing durante el método draw().
+
diff --git a/content/pages/libraries/sound/index.de.mdx b/content/pages/libraries/sound/index.de.mdx
deleted file mode 100644
index 2bc2087df..000000000
--- a/content/pages/libraries/sound/index.de.mdx
+++ /dev/null
@@ -1,12 +0,0 @@
----
-name: 'sound'
-title: 'Sound'
-library: 'true'
-description: 'Playback audio files, audio input, synthesize sound, and effects.'
----
-
-## Sound ge
-
-The new Sound library for Processing 3 provides a simple way to work with audio. It can play, analyze, and synthesize sound. It provides a collection of oscillators for basic wave forms, a variety of noise generators, and effects and filters to play and alter sound files and other generated sounds. The syntax is minimal to make it easy to patch one sound object into another. The library also comes with example sketches covering many use cases to help you get started.
-
-The source code is available on the processing-sound GitHub repository. Please report bugs here. This library is only compatible with Processing 3.0+.
diff --git a/content/pages/libraries/sound/index.es.mdx b/content/pages/libraries/sound/index.es.mdx
new file mode 100644
index 000000000..99ad410d8
--- /dev/null
+++ b/content/pages/libraries/sound/index.es.mdx
@@ -0,0 +1,12 @@
+---
+name: 'sound'
+title: 'Sound'
+library: 'true'
+description: 'Reproduce archivos de audio, entradas de audio, sintetiza sonido y efectos de sonido.'
+---
+
+## Sound
+
+La nueva biblioteca de sonido para Processing 3 provee una forma simple de trabajar con el audio. Puede reproducir, analizar y sintetizar sonido. Provee una colección de osciladores en formas de onda básicas, una variedad de generadores de ruido, y efectos y filtros para reproducir y alterar archivos de audio y otros sonidos generados. La sintaxis es minima para facilitar pasar de un objeto de sonido a otro. La biblioteca también viene con sketches de ejemplo que cubren muchos casos que te ayudaran a comenzar.
+
+El código fuente está disponible en el repositorio GitHub de Processing-Sound. Por favor reporta los errores ahí. Esta biblioteca solamente es compatible con Processing 3.0+.
diff --git a/content/pages/libraries/svg/index.es.mdx b/content/pages/libraries/svg/index.es.mdx
new file mode 100644
index 000000000..759152bf4
--- /dev/null
+++ b/content/pages/libraries/svg/index.es.mdx
@@ -0,0 +1,151 @@
+---
+name: 'svg'
+title: 'Exportar SVG'
+library: 'true'
+description: 'Crea archivos SVG.'
+---
+
+## Exportar SVG
+
+La biblioteca SVG hace posible escribir archivos SVG directamente desde Processing. Estos gráficos vectoriales pueden ser escalados a cualquier tamaño con una muy alta resolución. La biblioteca SVG puede mandar datos 3D a un archivo vectorial 2D, pero para exportar datos 3D, use la biblioteca DXF. El código fuente está disponible en el repositorio Github de [Processing](https://github.com/processing/processing/tree/master/java/libraries/svg). Por favor reporte los errores [aquí](https://github.com/processing/processing/issues).
+
+Esta biblioteca puede ser usada con funciones de Processing como size() o createGraphics(). Vea los ejemplos abajo para diferentes técnicas.
+
+## Exportar SVG (Sin Pantalla)
+
+Este ejemplo dibuja un único cuadro en un archivo SVG y termina. (Nota que ninguna ventana de despliegue será abierta, esto ayuda cuando estás tratando de crear imágenes SVG masivas que son mucho más largas que la pantalla.)
+
+```
+import processing.svg.*;
+
+void setup() {
+ size(400, 400, SVG, "filename.svg");
+}
+
+void draw() {
+ // Draw something good here
+ line(0, 0, width/2, height);
+
+ // Exit the program
+ println("Finished.");
+ exit();
+}
+```
+
+## Exportar SVG (Con Pantalla)
+
+Para dibujar y guardar un SVG usa los métodos beginRecord() y endRecord(). De manera contraria al renderer de PDF, el renderer SVG sólo guardará el cuadro final de la secuencia. Esto es más lento, pero es útil cuando uno necesita ver en lo que uno está trabajando mientras se guarda.
+
+```
+import processing.svg.*;
+
+void setup() {
+ size(400, 400);
+ noLoop();
+ beginRecord(SVG, "filename.svg");
+}
+
+void draw() {
+ // Dibuja algo bueno aquí
+ line(0, 0, width/2, height);
+
+ endRecord();
+}
+```
+
+## Cuadro de una animación (Con Pantalla)
+
+También es posible guardar un cuadro de un programa con elementos que se mueven. Crea una variable booleana para activar y desactivar el proceso de grabado de SVG.
+
+```
+import processing.svg.*;
+
+boolean record;
+
+void setup() {
+ size(400, 400);
+}
+
+void draw() {
+ if (record) {
+ // Nota que #### será reemplazado con el número de cuadro. ¡Elegante!
+ beginRecord(SVG, "frame-####.svg");
+ }
+
+ // Dibuja algo bueno aquí
+ background(255);
+ line(mouseX, mouseY, width/2, height/2);
+
+ if (record) {
+ endRecord();
+ record = false;
+ }
+}
+
+// Presiona una tecla para que miles de archivos no sean creados
+void mousePressed() {
+ record = true;
+}
+```
+
+## Archivos SVG de Geometría 3D (Con Pantalla)
+
+Pra crear vectores a partir de datos 3D, usa los comandos beginRaw() y endRaw(). Estos comandos obtendrán la forma de los datos justo antes de ser rendereada en pantalla. A esta altura, la pantalla no es más que una larga lista de líneas y triángulos. Esto significa que una forma creada con el método sphere() estará formada por cientos de triángulos en vez de un solo objeto.
+Al usar beginRaw() y endRaw(), es posible escribir ya sea al renderer 2D o 3D. Por ejemplo, beginRaw() con la biblioteca SVG escribirá la geometría como triángulos y líneas.
+
+```
+import processing.svg.*;
+
+boolean record;
+
+void setup() {
+ size(500, 500, P3D);
+}
+
+void draw() {
+ if (record) {
+ beginRaw(SVG, "output.svg");
+ }
+
+ // Dibuja aquí
+ background(204);
+ translate(width/2, height/2, -200);
+ rotateZ(0.2);
+ rotateY(mouseX/500.0);
+ box(200);
+
+ if (record) {
+ endRaw();
+ record = false;
+ }
+}
+
+// Teclea 'r' para grabar un cuadro
+void keyPressed() {
+ if (key == 'r') {
+ record = true;
+ }
+}
+```
+
+## Usar createGraphics() para crear un archivo SVG
+
+Para escribir un archivo SVG usando sólo el comando createGraphics(), en lugar de como una parte del sketch, es necesario llamar dispose() en el objeto PGraphicsSVG. Esto es lo mismo que llamar exit(), pero no saldrá del sketch.
+
+```
+import processing.svg.*;
+
+PGraphics svg = createGraphics(300, 300, SVG, "output.svg");
+svg.beginDraw();
+svg.background(128, 0, 0);
+svg.line(50, 50, 250, 250);
+svg.dispose();
+svg.endDraw();
+```
+
+Notas adicionales para el renderer SVG:
+
+- Si quieres usar datos 3D, mejor usa la biblioteca de grabación DXF.
+- Usar hint(ENABLE_DEPTH_SORT) puede mejorar la apariencia de la geometría 3d dibujada en archivos en formatos 2D.
+- Muchos métodos, particularmente métodos basados en píxeles, no tienen sentido para renderers SVG. Esto incluyes: loadPixels, updatePixels, get, set, mask, filter, copy, blend, save, e image.
+- De nuevo, exit() es muy importante al usar SVG con size().
diff --git a/content/pages/libraries/video/index.de.mdx b/content/pages/libraries/video/index.de.mdx
deleted file mode 100644
index 88c9c7493..000000000
--- a/content/pages/libraries/video/index.de.mdx
+++ /dev/null
@@ -1,12 +0,0 @@
----
-name: 'video'
-title: 'Video'
-library: 'true'
-description: 'Read images from a camera, play movie files, and create movies.'
----
-
-## Video de
-
-The Video library plays movie files and captures video data from a camera. Video can be captured from USB Cameras, IEEE 1394 (Firewire) Cameras, or Video Cards with composite or S-video input devices connected to the computer. Movies can be loaded from files located on your computer or anywhere on the Internet. It is based on the GStreamer multimedia framework, and uses the gstreamer-java bindings to interface GStreamer from Java to support a wide range of media formats. We recommend using H.264, but many other formats will work as well.
-
-The source code is available on the processing-video GitHub repository. Please report bugs here.
diff --git a/content/pages/libraries/video/index.es.mdx b/content/pages/libraries/video/index.es.mdx
new file mode 100644
index 000000000..1c821abe4
--- /dev/null
+++ b/content/pages/libraries/video/index.es.mdx
@@ -0,0 +1,13 @@
+---
+name: 'video'
+title: 'Video'
+library: 'true'
+description: 'Lee imágenes desde una cámara, reproduce y crea películas.'
+---
+
+## Video
+
+La biblioteca de Video reproduce archivos de películas y captura datos de video de una cámara. El video puede ser capturado desde cámaras USB, cámaras EEE 1394 (Firewire), o tarjetas de video con entrada compuesta o S-video conectadas a una computadora. Las películas pueden ser cargadas desde archivos localizados en tu computadora o en cualquier lugar del internet. Esta basado en el framework multimedia GStreamer, y usa gstreamer-java para la interfaz entre GStreamer y Java, con lo que soporta una amplia variedad de formatos de medios. Nosotros recomendamos usar H.264, pero muchos otros formatos pueden funcionar igual de bien.
+
+El código fuente está disponible en el repositorio GitHub de processing-video. Por favor reporta los errores ahí.
+
diff --git a/content/pages/overview/index.de.mdx b/content/pages/overview/index.de.mdx
deleted file mode 100644
index bf78772c3..000000000
--- a/content/pages/overview/index.de.mdx
+++ /dev/null
@@ -1,10 +0,0 @@
----
-slug: '/about'
-title: 'About'
----
-
-## Overview ge
-
-For the past sixteen years, Processing has promoted software literacy, particularly within the visual arts, and visual literacy within technology. Initially created to serve as a software sketchbook and to teach programming fundamentals within a visual context, Processing has also evolved into a development tool for professionals. The Processing software is free and open source, and runs on the Mac, Windows, and GNU/Linux platforms.
-
-Processing continues to be an alternative to proprietary software tools with restrictive and expensive licenses, making it accessible to schools and individual students. Its open source status encourages the community participation and collaboration that is vital to Processing’s growth. Contributors share programs, contribute code, and build libraries, tools, and modes to extend the possibilities of the software. The Processing community has written more than a hundred libraries to facilitate computer vision, data visualization, music composition, networking, 3D file exporting, and programming electronics.
diff --git a/content/pages/overview/index.es.mdx b/content/pages/overview/index.es.mdx
new file mode 100644
index 000000000..e15886bdb
--- /dev/null
+++ b/content/pages/overview/index.es.mdx
@@ -0,0 +1,38 @@
+---
+slug: '/overview'
+title: 'Vista General'
+---
+
+## Vista General
+
+Durante los últimos dieciseis años, Processing ha promovido el conocimiento práctico del software, particularmente dentro del contexto de las artes visuales, y el alfabetismo visual dentro de la tecnología. Creado inicialmente para servir como un software para bosquejar y enseñar fundamentos de programación dentro de un contexto visual, Processing también evolucionó en una herramienta de desarrollo para profesionales. El software de Processing es libre y de código abierto, y corre en las plataformas Mac, Windows, y GNU/Linux.
+
+Processing continua siendo una alternativa a herramientas de software propietario ( con licensias restrictivas y caras), haciéndolo accesible a escuelas y estudiantes. Su estatus de software libre anima a la comunidad a la participación y colaboración que es vital para el crecimiento de Processing. Los contribuyentes comparten programas y código, y construyen bibliotecas, herramientas y modos que extienden las capacidades del software. La comunidad Processing ha escrito más de un centenar de bibliotecas para facilitar tareas de visión computacional, visualización de datos, composición músical, networking, exportar archivos 3D, y programar dispositivos electrónicos.
+
+## Educación
+
+Desde el principio Processing fue diseñado como la primera exposición a un lenguage de programación. Fue inspierado por lenguajes previos como BASIC y Logo, así como por nuestras experiencias como estudiantes y como instructores de cursos introductorios en artes visuales. Los mismos elementos enseñados en un curso introductorio de ciencias computacionales para preparatoria o universidad son enseñados a tráves de Processing, aunque con diferente énfasis.Processing esta dirigido a crear medios visuales e interactivos, así que los primeros programas empiezan dibujando. Los estudiantes que son nuevos en el mundo de la programación encuentran increíblemente satisfactorio hacer aparecer algo en sus pantallas a instantes de empezar a usar el software. Este motivante curriculum se ha msotrado exitoso para dirigir estudiantes de diseño, arte y arquitectura hacia la programación, atrayendolos a clases de ciencias computacionales más generales.
+
+Processing es usado en los salones de clase a lo largo del mundo, usualmente en escuelas de arte y programas de artes visuales tanto en universidades como en preparatorias, y programas en ciencias computacionales y humanidades. Museos como el Exploratorium en San Francisco usan Processing para desarrollar sus exhibiciones. En una encuesta patrocinada por la National Science Foundation, estudiantes universitarios del curso introductorio en computación enseñado en Processing por la universidad Bryn Mawr College mencionaron que era más probable que tomaran un curso de ciencias computacionales en comparación con estudiantes en una clase con un temario más tradicional.
+Las inovaciones en enseñanza a tráves de Processing han sido adaptados para tutoriales de ciencias computacionales de la academia Khan Academy. Los tutoriales empiezan con dibujos, usando mayoritariamente funciones de Processing para ello. El enfoque de Processing ha sido aplciado también para electrónics a través de los proyectos Arduino y Wiring. Arduino usa una síntaxis inspirada en Processing, y continua usando una versión modificada del entorno de programación Processing para facilitar a los estudiantes el aprendizaje de cómo programar robots e otros incontables proyectos.
+
+
+## Cultura
+
+El software Processing es usado por miles de diseñadores visuales, artistas y arquitectos para crear sus trabajos. Proyectos creados con Processing han sido presentados en el Museo de Arte Moderno en Nueva York, el Museo Victoria and Albert Museum en Londres, el Centre Georges Pompidou en París y muchos otros recintos prominentes. Processing es usado para crear proyecciones de escenarios diseñados para actuaciones de Danza y Música, para generar imagenes para videos musicales y peliculas, para exportar imagenes a posters, revistas y libros, y para crear instalaciones interactivas en galerías , museos y calles. Algunos proyectos prominentes incluyen la visualización del video de House of Cards de Radiohead, el logo generativo del MIT Media Lab y la proyección del mural Chronograph, diseñado por Frank Gehry para el New World Center de Miami. Pero la relación más importante de Processing con la cultura no son los resultados apantallantes, sino como el software ha hecho que una nueva generación de artistas visuales considere a la programación como una parte esencial de la práctica creativa.
+
+
+## Investigación
+El prototipado de software y la visualización de datos son dos de las áreas más importantes para los desarrolladores de Processing. Laboratorios de nvestigación dentro de compañias como Google e Intel han usado Processing para el prototipado de nuevas interfaces y servicios. Compañias como General Electric, Nokia y Yahoo! han usado Processing para visualizar sus datos internos. Por ejemplo, el laboratorio New York Times Company R&D Lab usó Processing para visualizar la forma que sus nuevas historias viajaban a tráves de las redes sociales. La National Science Foundation y NOA apoyan la investigación de la diversidad de fitoplancton y zooplancton que fue realizada por la Universidad de Washington como una simulación de ecología dinámica. Investigadores en el Texas Advanced Computer Center de la Universidad de Texas en Austin (UT Austin) han usado Processing para desplegar visualizaciones de volumenes masivos de datos a lo largo de un conjunto de pantallas al servicio de la investigación en humanidades.
+
+
+## Fundación
+El principal cargo de la Fundación es desarrollar y distribuir el software Processing. Esto incluye Processing original (Java), p5.js (Javascript) y Processing.py (Python). Para más información acerca de la Fundación visita https://processingfoundation.org/.
+
+## Historia
+Processing fue iniciado por Ben Fry y Casey Reas en la primavera del 2001, mientras ambos eran estudiantes de posgrado en el MIT Media Lab dentro del grupo de investigación de John Maeda (John Maeda's Aesthetics and Computation research group). El desarrollo continuó durante su tiempo libre mientras Casey continuaba con su carrera como artista y maestro y Ben perseguía un PhD y fundaba Fathom Information Design. Muchas de las ideas en Processing se remontan al taller de Lenguaje Visual de Muriel Cooper, y creció directamente del projecto de Maeda, Design by Number, desarrollado por el Media Lab y lanzado en 1999. Los proyectos de Wiring y Arduino, en cambio, crecieron afuera de Processing mientras Casey estaba enseñando en el Interaction Design Institute Ivrea, en Italia.
+
+ Para más información, por favor escribe a foundation@processing.org
+
+## Gracias.
+YourKit apoya a Processing al donar su Profiler de Java con todas sus funciones. YourKit, LLC es el creador de herramientas para hacer profiling de aplicaciones en Java y .NET: [ Java Profiler de YourKit](https://www.yourkit.com/java/profiler/index.jsp), [.NET Profiler de YourKit ](https://www.yourkit.com/.net/profiler/index.jsp).
diff --git a/content/pages/people/index.de.mdx b/content/pages/people/index.de.mdx
deleted file mode 100644
index bf78772c3..000000000
--- a/content/pages/people/index.de.mdx
+++ /dev/null
@@ -1,10 +0,0 @@
----
-slug: '/about'
-title: 'About'
----
-
-## Overview ge
-
-For the past sixteen years, Processing has promoted software literacy, particularly within the visual arts, and visual literacy within technology. Initially created to serve as a software sketchbook and to teach programming fundamentals within a visual context, Processing has also evolved into a development tool for professionals. The Processing software is free and open source, and runs on the Mac, Windows, and GNU/Linux platforms.
-
-Processing continues to be an alternative to proprietary software tools with restrictive and expensive licenses, making it accessible to schools and individual students. Its open source status encourages the community participation and collaboration that is vital to Processing’s growth. Contributors share programs, contribute code, and build libraries, tools, and modes to extend the possibilities of the software. The Processing community has written more than a hundred libraries to facilitate computer vision, data visualization, music composition, networking, 3D file exporting, and programming electronics.
diff --git a/content/pages/people/index.es.mdx b/content/pages/people/index.es.mdx
new file mode 100644
index 000000000..3136572ae
--- /dev/null
+++ b/content/pages/people/index.es.mdx
@@ -0,0 +1,85 @@
+---
+slug: '/people'
+title: 'People'
+---
+
+## Lideres de Proyecto
+
+[Ben Fry](https://benfry.com/) y [Casey Reas](http://reas.com/) iniciaron Processing en la primavera del 2001 y continúan trabajando en él obsesivamente. En el 2012, ellos iniciaron la Fundación Processing junto con [Dan Shiffman](https://shiffman.net/), quién tras esto se unió formalmente como tercer líder de proyecto.
+
+## Desarrolladores
+
+- [Andres Colubri](https://andrescolubri.net/) (Boston), OpenGL / Video
+- [Elie Zananiri](http://prisonerjohn.com/) (New York), Contributed Libraries / Tools
+- [Samuel Pottinger](https://github.com/sampottinger) (San Francisco), Processing Core
+
+## Bibliotecas, Herramientas
+
+El núcleo del software Processing es potenciado por [bibliotecas](https://www.processing.org/es/reference/libraries/) y [herramientas](https://www.processing.org/reference/tools/) que son contribución de la comunidad. Estas creativas extensiones proveen de un brillante futuro al proyecto. Tenemos una lista online de las contribuciones en Bibliotecas y Herramientas. Estas contribuciones no pueden ser desestimadas. Por ejemplo, ve cómo Karsten Schmidt (Londres) ha transformado Processing a través de la biblioteca toxiclibs y cómo Damien Di Fede (Austin) ha extendido el proyecto dentro de la programación de sonido a tráves de su biblioteca minim.
+
+
+## Diseño y Sitio Web
+[Design Systems International](https://designsystems.international/) diseñó y construyó el sitio web actual, así como la nueva familia de logotipos de Processing a través de un esfuerzo hecho por voluntarios. Un memorable grupo de voluntarios convirtió todo el contenido del sitio previo de Processing a nuevos formatos. Una entusiasta ronda de aplausos para:
+- Tetsu Kondo
+- Mark Webster
+- Lionel Radisson
+- Chris Coleman
+- Justin Gitlin
+- Seenahm Suriyasat
+- Shobhit Sharma
+- Karan Dudeja
+- Mark Hancock
+- Peter Jacobson
+- Oğuzhan Göregen
+- Bryan Ma
+- Ashley James Brown
+
+## Processing Alumni
+
+- Jakub Valtar (Brno), Processing Core
+- Scott Garner (New York), Sitio Web Hello Processing
+- Scott Murray (San Francisco), Sitio Web / Referencias / UI
+- Gottfried Haider (Los Angeles), Processing para Pi
+- Florian Jenett (Frankfurt), Foro
+- Jamie Kosoy (San Francisco), Sitio Web
+- Manindra Moharana (San Diego), PDE / Core
+- James Grady (Boston), Diseño Visual
+- Patrick Hebron, Biblioteca de Video (Verano 2011)
+- Peter Kalauskas, Bibliotecas/Herramientas/Modo , utilería de instalación (Verano - Otoño 2011)
+- Andreas Schlegel, Bibliotecas (Invierno 2008 - Verano 2011)
+- Harshani Nawarathna, Entorno de Desarrollo Processing (Processing Development Environment) (Verano 2011)
+- Cindy Chi, Edición de Referencias (Verano 2011)
+- Jonathan Feinberg, Parsing & Android Hacking (Primavera 2011)
+- Chris Lonnen, Entorno de Desarrollo Processing (Processing Development Environment) (Verano 2011)
+- Eric Jordan, Arma de Gráficos (2007 - 2009)
+- Tom Carden, Director Processing Hacks (Verano 2005 - Otoño 2008)
+- Lenny Burdette, Renovación de Sitio Web (Verano 2005 - Invierno 2006)
+- Simon Greenwold, Luces y Cámara (Invierno 2005)
+- Kevin Cannon, CSS para Sitio Web (Otoño 2004)
+- Toxi, Gema de Gráficos (Verano 2003 - Verano 2004)
+- Ariel Malka, Bagel Papa Poules (Verano 2003 - Invierno 2004)
+- Martin Gomez, Motores web (Primavera 2003)
+- Mikkel Crone Koser, Zar de la Plataforma Windows (Verano 2003 - Invierno 2004)
+- Koen Mostert, Zar de la Plataforma Windows (Verano 2003 - Invierno 2004)
+- Timothy Mohn, Zar de la Plataforma Mac (Invierno 2003 - Invierno 2004)
+- Dan Mosedale, Preprocesador y Compilador (Primavera, Verano 2003)
+- Carlos Rocha, Sonido y Gráficos (Primavera, Verano 2003)
+- Jacob Schwartz, Zar de la Plataforma Windows (Invierno 2003 - Invierno 2004)
+- Cem Uzunoglu, Scripts Web para Exhibición (Verano 2003)
+- Dara Kilicoglu, Scripts Web para Exhibición (Verano 2003)
+- Sami Arola, Motor de Gráficos 3D (Verano 2003)
+- Marc Escobosa, Motor de Referencias(Primavera 2003)
+- Mathias Dahlström, Ejemplos, Referencia (Primavera 2003)
+- Dan Haskovec, Entorno Processing (Verano 2003)
+
+## Traductores de la Referencia Alfa
+- Widianto Nugroho, Indonesio
+- Tetsu Kondo, Japonés
+- William Ngan, Tori Tan, Mei Yu, Chino Tradicional y Simplificado
+- Art Center Nabi, Tae-Kyung Kim, Coreano
+- Julien Gachadoat, Francés
+- Pedro Alpera, Español
+- Alessandro Capozzo, Italiano
+- Burak Arikan, Turco
+
+Extendemos un agradecimiento especial a Sami Arola por escribir la base del P3d original, y a Simon Greenwold por incorporar luces y cámara. Tom Carden contribuyó con gran energía en la co-creación de Processing Hacks y el mantenimiento de los Blogs Processing. Andreas Schlegel hizo un estupendo trabajo a lo largo de tres años organizando la contribución de bibliotecas y construyendo plantillas y documentación.
diff --git a/content/references/examples/processing/abs_/abs_0.es.pde b/content/references/examples/processing/abs_/abs_0.es.pde
new file mode 100644
index 000000000..db3fe1805
--- /dev/null
+++ b/content/references/examples/processing/abs_/abs_0.es.pde
@@ -0,0 +1,4 @@
+int a = abs(153); // Asigna a 'a' 153
+int b = abs(-15); // Asigna a 'b' 15
+float c = abs(12.234); // Asigna a 'c' 12.234
+float d = abs(-9.23); // Asigna a 'd' 9.23
diff --git a/content/references/examples/processing/if/if.es.pde b/content/references/examples/processing/if/if.es.pde
new file mode 100644
index 000000000..2b07928a7
--- /dev/null
+++ b/content/references/examples/processing/if/if.es.pde
@@ -0,0 +1,7 @@
+for (int i = 5; i < height; i += 5) {
+ stroke(255); // Agregamos el color Blanco
+ if (i < 35) { // When 'i' is less than 35...
+ stroke(0); //...set the color to black
+ }
+ line(30, i, 80, i);
+}
diff --git a/content/references/translations/de/net/Client_active_.de.json b/content/references/translations/de/net/Client_active_.de.json
deleted file mode 100644
index 03ce36191..000000000
--- a/content/references/translations/de/net/Client_active_.de.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "examples": "",
- "related": [],
- "usage": "application",
- "name": "active()",
- "description": "GE ( begin auto-generated from Client_active.xml )\n \n Returns true if this client is still active and hasn't run\n into any trouble.\n \n ( end auto-generated )",
- "syntax": ["client.active()"],
- "returns": "boolean",
- "type": "function",
- "category": "client",
- "subcategory": "client",
- "parameters": [
- {
- "name": "client",
- "description": " any variable of type Client",
- "type": ["Client"]
- }
- ]
-}
diff --git a/content/references/translations/de/net/Client_available_.de.json b/content/references/translations/de/net/Client_available_.de.json
deleted file mode 100644
index fa63fe776..000000000
--- a/content/references/translations/de/net/Client_available_.de.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "examples": "",
- "related": [],
- "usage": "application",
- "name": "available()",
- "description": "GE ( begin auto-generated from Client_available.xml )\n \n Returns the number of bytes available. When any client has bytes \n available from the server, it returns the number of bytes.\n \n ( end auto-generated )",
- "syntax": ["client.available()"],
- "returns": "int",
- "type": "function",
- "category": "client",
- "subcategory": "client",
- "parameters": [
- {
- "name": "client",
- "description": " any variable of type Client",
- "type": ["Client"]
- }
- ]
-}
diff --git a/content/references/translations/de/processing/test_.de.json b/content/references/translations/de/processing/test_.de.json
deleted file mode 100644
index fa69805d4..000000000
--- a/content/references/translations/de/processing/test_.de.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "examples": "",
- "related": ["curveVertex_.html", "curveTightness_.html", "bezier_.html"],
- "usage": "",
- "name": "test()",
- "description": "GERMAN TEST ( begin auto-generated from curve.xml )\n\n Draws a curved line on the screen. The first and second parameters\n specify the beginning control point and the last two parameters specify\n the ending control point. The middle parameters specify the start and\n stop of the curve. Longer curves can be created by putting a series of\n curve() functions together or using curveVertex(). An\n additional function called curveTightness() provides control for\n the visual quality of the curve. The curve() function is an\n implementation of Catmull-Rom splines. Using the 3D version requires\n rendering with P3D (see the Environment reference for more information).\n\n ( end auto-generated )\n\n ",
- "syntax": [
- "curve(x1, y1, x2, y2, x3, y3, x4, y4)",
- "curve(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4)"
- ],
- "returns": "void",
- "parameters": [
- {
- "name": "x1",
- "description": "coordinates for the beginning control point",
- "type": ["float"]
- },
- {
- "name": "y1",
- "description": "coordinates for the beginning control point",
- "type": ["float"]
- },
- {
- "name": "x2",
- "description": "coordinates for the first point",
- "type": ["float"]
- },
- {
- "name": "y2",
- "description": "coordinates for the first point",
- "type": ["float"]
- },
- {
- "name": "x3",
- "description": "coordinates for the second point",
- "type": ["float"]
- },
- {
- "name": "y3",
- "description": "coordinates for the second point",
- "type": ["float"]
- },
- {
- "name": "x4",
- "description": "coordinates for the ending control point",
- "type": ["float"]
- },
- {
- "name": "y4",
- "description": "coordinates for the ending control point",
- "type": ["float"]
- },
- {
- "name": "z1",
- "description": "coordinates for the beginning control point",
- "type": ["float"]
- },
- {
- "name": "z2",
- "description": "coordinates for the first point",
- "type": ["float"]
- },
- {
- "name": "z3",
- "description": "coordinates for the second point",
- "type": ["float"]
- },
- {
- "name": "z4",
- "description": "coordinates for the ending control point",
- "type": ["float"]
- }
- ]
-}
diff --git a/content/references/translations/es/io/GPIO.es.json b/content/references/translations/es/io/GPIO.es.json
new file mode 100644
index 000000000..97f9ee857
--- /dev/null
+++ b/content/references/translations/es/io/GPIO.es.json
@@ -0,0 +1,67 @@
+{
+ "brief": "La clase GPIO lee y escribe de pines I/O de propósito general",
+ "methods": [
+ {
+ "anchor": "GPIO_attachInterrupt_",
+ "name": "attachInterrupt()",
+ "desc": "Llama una función cuando el valor de la entrada de un pin cambia"
+ },
+ {
+ "anchor": "GPIO_digitalRead_",
+ "name": "digitalRead()",
+ "desc": "Regresa el valor de un pin de entrada"
+ },
+ {
+ "anchor": "GPIO_digitalWrite_",
+ "name": "digitalWrite()",
+ "desc": "Sets an output pin to be either high or low"
+ },
+ {
+ "anchor": "GPIO_interrupts_",
+ "name": "interrupts()",
+ "desc": "Allows interrupts to happen"
+ },
+ {
+ "anchor": "GPIO_noInterrupts_",
+ "name": "noInterrupts()",
+ "desc": "Prevents interrupts from happpening"
+ },
+ {
+ "anchor": "GPIO_pinMode_",
+ "name": "pinMode()",
+ "desc": "Configures a pin to act either as input or output"
+ },
+ {
+ "anchor": "GPIO_releaseInterrupt_",
+ "name": "releaseInterrupt()",
+ "desc": "Stops listening for interrupts on an input pin"
+ },
+ {
+ "anchor": "GPIO_releasePin_",
+ "name": "releasePin()",
+ "desc": "Gives ownership of a pin back to the operating system"
+ },
+ {
+ "anchor": "GPIO_waitFor_",
+ "name": "waitFor()",
+ "desc": "Waits for the value of an input pin to change"
+ },
+ {
+ "anchor": "GPIO_waitFor_",
+ "name": "waitFor()",
+ "desc": "Waits for the value of an input pin to change"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "La clase GPIO lee y escribe de pines I/O de propósito general",
+ "type": "class",
+ "constructors": ["GPIO()"],
+ "related": [],
+ "name": "GPIO",
+ "classanchor": "io/GPIO",
+ "category": "GPIO",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/GPIO_attachInterrupt_.es.json b/content/references/translations/es/io/GPIO_attachInterrupt_.es.json
new file mode 100644
index 000000000..c6b8cfa4b
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_attachInterrupt_.es.json
@@ -0,0 +1,30 @@
+{
+ "brief": "Calls a function when the value of an input pin changes",
+ "related": [],
+ "name": "attachInterrupt()",
+ "description": "Calls a function when the value of an input pin changes \n \n The sketch method provided must accept a single integer (int) parameter, which is the\n number of the GPIO pin that the interrupt occured on. As this method might be called\n at any time, including when drawing to the display window isn't permitted, it is best\n to only set simple variables that are being responded to in the next draw() call, as\n shown above. Calling functions of the Hardware I/O library at this point is certainly\n possible. \n \n The mode parameter determines when the function will be called: GPIO.FALLING occurs \n when the level changes from high to low, GPIO.RISING when the level changes from low\n to high, and GPIO.CHANGE when either occurs.",
+ "syntax": [".attachInterrupt(pin, parent, method, mode)"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [
+ { "name": "pin", "description": "GPIO pin", "type": ["int"] },
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "method",
+ "description": "name of sketch method to call",
+ "type": ["String"]
+ },
+ {
+ "name": "mode",
+ "description": "when to call: GPIO.CHANGE, GPIO.FALLING or GPIO.RISING",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/GPIO_digitalRead_.es.json b/content/references/translations/es/io/GPIO_digitalRead_.es.json
new file mode 100644
index 000000000..374d8c658
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_digitalRead_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the value of an input pin",
+ "related": [],
+ "name": "digitalRead()",
+ "description": "Returns the value of an input pin, which is either GPIO.HIGH (1) \n or GPIO.LOW (0) \n \n You need to set the pin to input by calling \n pinMode() before calling this function.",
+ "syntax": [".digitalRead(pin)"],
+ "returns": "int",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [{ "name": "pin", "description": "GPIO pin", "type": ["int"] }]
+}
diff --git a/content/references/translations/es/io/GPIO_digitalWrite_.es.json b/content/references/translations/es/io/GPIO_digitalWrite_.es.json
new file mode 100644
index 000000000..c1a7ed9ce
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_digitalWrite_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Sets an output pin to be either high or low",
+ "related": [],
+ "name": "digitalWrite()",
+ "description": "Sets an output pin to be either high or low \n \n You need to set the pin to output by calling pinMode() \n before calling this function. Unlike on Arduino, it is not possible to set a input pin's \n internal pull-up resistor using this function.",
+ "syntax": [".digitalWrite(pin, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [
+ { "name": "pin", "description": "GPIO pin", "type": ["int"] },
+ {
+ "name": "value",
+ "description": "GPIO.HIGH (1) or GPIO.LOW (0)",
+ "type": ["int", "boolean"]
+ },
+ {
+ "name": "value",
+ "description": "true or false",
+ "type": ["boolean", "int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/GPIO_interrupts_.es.json b/content/references/translations/es/io/GPIO_interrupts_.es.json
new file mode 100644
index 000000000..045ca2dc4
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_interrupts_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Allows interrupts to happen",
+ "related": [],
+ "name": "interrupts()",
+ "description": "Allows interrupts to happen \n \n You can use noInterrupts() \n and interrupts() in tandem to make sure no interrupts are occuring \n while your sketch is doing a particular task. By default, interrupts \n are enabled.",
+ "syntax": [".interrupts()"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/GPIO_noInterrupts_.es.json b/content/references/translations/es/io/GPIO_noInterrupts_.es.json
new file mode 100644
index 000000000..6066376b2
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_noInterrupts_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Prevents interrupts from happpening",
+ "related": [],
+ "name": "noInterrupts()",
+ "description": "Prevents interrupts from happpening \n \n You can use noInterrupts() and interrupts() \n in tandem to make sure no interrupts are occuring while your sketch is doing a \n particular task. \n br/>\n While a method associated with a pin's interrupt is being executed, interrupts \n from the same pin are automatically prevented from occurring. Interrupts from \n other pins can still happen, however. If you also want to prevent those, put \n noInterrupts() at the beginning of your callback function and interrupts() at its end.",
+ "syntax": [".noInterrupts()"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/GPIO_pinMode_.es.json b/content/references/translations/es/io/GPIO_pinMode_.es.json
new file mode 100644
index 000000000..089a11c60
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_pinMode_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Configures a pin to act either as input or output",
+ "related": [],
+ "name": "pinMode()",
+ "description": "Configures a pin to act either as input (INPUT), or input with internal pull-up \n resistor (INPUT_PULLUP), or input with internal pull-down resistor (INPUT_PULLDOWN) \n or output (OUTPUT) \n \n Unlike on Arduino, where pins are implicitly set to inputs by default, it is necessary\n to call this function for any pin you want to access, including input pins. \n \n Pull-up and pull-down resistors are very useful when connecting buttons and switches, \n since they will force the value of the pin in a specified electrical state when no \n electrical connection is made, and the pin would otherwise be left \"floating\". \n \n The ability to set (and clear) pull-up and pull-down resistors is currently limited \n to the Raspberry Pi running the Raspbian distribution. On other systems, a warning \n will be shown.",
+ "syntax": [".pinMode(pin, mode)"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [
+ { "name": "pin", "description": "GPIO pin", "type": ["int"] },
+ {
+ "name": "mode",
+ "description": "GPIO.INPUT, GPIO.INPUT_PULLUP, GPIO.INPUT_PULLDOWN, or GPIO.OUTPUT",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/GPIO_releaseInterrupt_.es.json b/content/references/translations/es/io/GPIO_releaseInterrupt_.es.json
new file mode 100644
index 000000000..c48dbd781
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_releaseInterrupt_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops listening for interrupts on an input pin",
+ "related": [],
+ "name": "releaseInterrupt()",
+ "description": "Stops listening for interrupts on an input pin",
+ "syntax": [".releaseInterrupt(pin)"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [{ "name": "pin", "description": "GPIO pin", "type": ["int"] }]
+}
diff --git a/content/references/translations/es/io/GPIO_releasePin_.es.json b/content/references/translations/es/io/GPIO_releasePin_.es.json
new file mode 100644
index 000000000..2022b5635
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_releasePin_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gives ownership of a pin back to the operating system",
+ "related": [],
+ "name": "releasePin()",
+ "description": "Gives ownership of a pin back to the operating system \n \n Without calling this function, the pin will remain in the current \n state even after the sketch has been closed.",
+ "syntax": [".releasePin(pin)"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [{ "name": "pin", "description": "GPIO pin", "type": ["int"] }]
+}
diff --git a/content/references/translations/es/io/GPIO_waitFor_.es.json b/content/references/translations/es/io/GPIO_waitFor_.es.json
new file mode 100644
index 000000000..9f3832da3
--- /dev/null
+++ b/content/references/translations/es/io/GPIO_waitFor_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Waits for the value of an input pin to change",
+ "related": [],
+ "name": "waitFor()",
+ "description": "Waits for the value of an input pin to change \n \n The mode parameter determines when the function will return: GPIO.FALLING occurs \n when the level changes from high to low, GPIO.RISING when the level changes from \n low to high, and GPIO.CHANGE when either occurs. \n \n The optional timeout parameter determines how many milliseconds the function will \n wait at the most. If the value of the input pin hasn't changed at this point, an \n exception is raised for this line. Without a timeout parameter the function will \n wait indefinitely until the input pin has changed to the desired state.\n\n This function will throw a RuntimeException in case of a timeout.",
+ "syntax": [".waitFor(pin, mode)", ".waitFor(pin, mode, timeout)"],
+ "returns": "void",
+ "type": "method",
+ "category": "GPIO",
+ "subcategory": "",
+ "classanchor": "GPIO",
+ "parameters": [
+ { "name": "pin", "description": "GPIO pin", "type": ["int"] },
+ {
+ "name": "mode",
+ "description": "what to wait for: GPIO.CHANGE, GPIO.FALLING or GPIO.RISING",
+ "type": ["int"]
+ },
+ {
+ "name": "timeout",
+ "description": "don't wait more than timeout milliseconds",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/I2C.es.json b/content/references/translations/es/io/I2C.es.json
new file mode 100644
index 000000000..04b84c3ef
--- /dev/null
+++ b/content/references/translations/es/io/I2C.es.json
@@ -0,0 +1,49 @@
+{
+ "brief": "Opens an I2C interface as master",
+ "methods": [
+ {
+ "anchor": "I2C_beginTransmission_",
+ "name": "beginTransmission()",
+ "desc": "Begins a transmission to an attached device"
+ },
+ {
+ "anchor": "I2C_close_",
+ "name": "close()",
+ "desc": "Closes the I2C device"
+ },
+ {
+ "anchor": "I2C_endTransmission_",
+ "name": "endTransmission()",
+ "desc": "Ends the current transmissions"
+ },
+ {
+ "anchor": "I2C_list_",
+ "name": "list()",
+ "desc": "Lists all available I2C interfaces"
+ },
+ {
+ "anchor": "I2C_read_",
+ "name": "read()",
+ "desc": "Read bytes from the attached device"
+ },
+ {
+ "anchor": "I2C_write_",
+ "name": "write()",
+ "desc": "Add bytes to be written to the device"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Opens an I2C interface as master. \n \n I2C is a serial bus, commonly used to attach peripheral ICs (Integrated\n Circuits) to processors and microcontrollers. It uses two pins, SDA (for\n data) and SDL (for the clock signal). Multiple \"slave\" devices can be\n connected to the same bus, as long as they are responding to different\n addresses (see below). \n \n The I2C \"master\" device initiates a transmission, which includes sending the\n address of the desired \"slave\" device. I2C addresses consist of 7 bits plus\n one bit that indicates whether the device is being read from or written to.\n Some datasheets list the address in an 8 bit form (7 address bits + R/W bit),\n while others provide the address in a 7 bit form, with the address in the\n lower 7 bits. \n \n This library expects addresses in their 7 bit form, similar to Arduino's Wire\n library, and what is being output by the i2cdetect utility on Linux. If the\n address provided in a datasheet is greater than 127 (hex 0x7f) or there are\n separate addresses for read and write operations listed, which vary exactly\n by one, then you want to shift the this number by one bit to the right before\n passing it as an argument to\n beginTransmission().",
+ "type": "class",
+ "constructors": ["I2C(dev)"],
+ "related": [],
+ "name": "I2C",
+ "classanchor": "io/I2C",
+ "category": "I2C",
+ "subcategory": "",
+ "parameters": [
+ { "name": "dev", "description": "interface name", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/io/I2C_beginTransmission_.es.json b/content/references/translations/es/io/I2C_beginTransmission_.es.json
new file mode 100644
index 000000000..99545c648
--- /dev/null
+++ b/content/references/translations/es/io/I2C_beginTransmission_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Begins a transmission to an attached device",
+ "related": [],
+ "name": "beginTransmission()",
+ "description": "Begins a transmission to an attached device. \n \n This function expects the address in the lower 7 bits, the same way as in\n Arduino's Wire library, and as shown in the output of the i2cdetect tool. If\n the address provided in a datasheet is greater than 127 (hex 0x7f) or there\n are separate addresses for read and write operations listed, which vary\n exactly by one, then you want to shift the this number by one bit to the\n right before passing it as an argument to this function.",
+ "syntax": [".beginTransmission(slave)"],
+ "returns": "void",
+ "type": "method",
+ "category": "I2C",
+ "subcategory": "",
+ "classanchor": "I2C",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/I2C_close_.es.json b/content/references/translations/es/io/I2C_close_.es.json
new file mode 100644
index 000000000..1b29d2f8f
--- /dev/null
+++ b/content/references/translations/es/io/I2C_close_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Closes the I2C device",
+ "related": [],
+ "name": "close()",
+ "description": "Closes the I2C device \n \n It is normally not necessary to explicitly close I2C interfaces, as they are\n closed automatically by the operating system when the sketch exits.\n \n Note: It is possible to have two or more object using the same interface at a\n time.",
+ "syntax": [".close()"],
+ "returns": "void",
+ "type": "method",
+ "category": "I2C",
+ "subcategory": "",
+ "classanchor": "I2C",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/I2C_endTransmission_.es.json b/content/references/translations/es/io/I2C_endTransmission_.es.json
new file mode 100644
index 000000000..e2b1ece20
--- /dev/null
+++ b/content/references/translations/es/io/I2C_endTransmission_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Ends the current transmissions",
+ "related": [],
+ "name": "endTransmission()",
+ "description": "Ends the current transmissions \n \n This executes any queued writes. Read()\n implicitly ends the current transmission as well, hence calling\n endTransmission() afterwards is not necessary.",
+ "syntax": [".endTransmission()"],
+ "returns": "void",
+ "type": "method",
+ "category": "I2C",
+ "subcategory": "",
+ "classanchor": "I2C",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/I2C_list_.es.json b/content/references/translations/es/io/I2C_list_.es.json
new file mode 100644
index 000000000..903d04fdc
--- /dev/null
+++ b/content/references/translations/es/io/I2C_list_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Lists all available I2C interfaces",
+ "related": [],
+ "name": "list()",
+ "description": "Lists all available I2C interfaces",
+ "syntax": [".list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "I2C",
+ "subcategory": "",
+ "classanchor": "I2C",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/I2C_read_.es.json b/content/references/translations/es/io/I2C_read_.es.json
new file mode 100644
index 000000000..95a036678
--- /dev/null
+++ b/content/references/translations/es/io/I2C_read_.es.json
@@ -0,0 +1,15 @@
+{
+ "brief": "Read bytes from the attached device",
+ "related": [],
+ "name": "read()",
+ "description": "Read bytes from the attached device \n \n You must call beginTransmission() before calling this function. This function\n also ends the current transmission and sends any data that was queued using\n write() before. It is not necessary to call\n endTransmission() after read().",
+ "syntax": [".read(len)"],
+ "returns": "byte[]",
+ "type": "method",
+ "category": "I2C",
+ "subcategory": "",
+ "classanchor": "I2C",
+ "parameters": [
+ { "name": "len", "description": "number of bytes to read", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/io/I2C_write_.es.json b/content/references/translations/es/io/I2C_write_.es.json
new file mode 100644
index 000000000..3b3e966c5
--- /dev/null
+++ b/content/references/translations/es/io/I2C_write_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Add bytes to be written to the device",
+ "related": [],
+ "name": "write()",
+ "description": "Add bytes to be written to the device \n \n You must call beginTransmission() before calling this function. The actual\n writing takes part when read() or endTransmission() is being called.",
+ "syntax": [".write(out)"],
+ "returns": "void",
+ "type": "method",
+ "category": "I2C",
+ "subcategory": "",
+ "classanchor": "I2C",
+ "parameters": [
+ {
+ "name": "out",
+ "description": "bytes to be written",
+ "type": ["byte[]", "String", "int", "byte"]
+ },
+ {
+ "name": "out",
+ "description": "string to be written",
+ "type": ["String", "byte", "int"]
+ },
+ {
+ "name": "out",
+ "description": "single byte to be written, e.g. numeric literal (0 to 255, or -128 to 127)",
+ "type": ["int", "byte"]
+ },
+ {
+ "name": "out",
+ "description": "single byte to be written",
+ "type": ["byte", "int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/LED.es.json b/content/references/translations/es/io/LED.es.json
new file mode 100644
index 000000000..12a517d25
--- /dev/null
+++ b/content/references/translations/es/io/LED.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Opens a LED device",
+ "methods": [
+ {
+ "anchor": "LED_brightness_",
+ "name": "brightness()",
+ "desc": "Sets the brightness"
+ },
+ {
+ "anchor": "LED_close_",
+ "name": "close()",
+ "desc": "Restores the previous state"
+ },
+ {
+ "anchor": "LED_list_",
+ "name": "list()",
+ "desc": "Lists all available LED devices"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Opens a LED device. \n \n This class can control your computer's build-in LEDs, such as the ones\n commonly used to indicate the power status and disk activity.\n \n Your operating system might not be set up to allow regular users to do this\n kind of modification. If this is the case you should install a so-called\n udev rule that relaxes the permissions for the files in\n /sys/class/leds. You can also try running Processing as root user using\n \"sudo\", but this is generally not recommended.",
+ "type": "class",
+ "constructors": ["LED(dev)"],
+ "related": [],
+ "name": "LED",
+ "classanchor": "io/LED",
+ "category": "LED",
+ "subcategory": "",
+ "parameters": [
+ { "name": "dev", "description": "device name", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/io/LED_brightness_.es.json b/content/references/translations/es/io/LED_brightness_.es.json
new file mode 100644
index 000000000..21400f394
--- /dev/null
+++ b/content/references/translations/es/io/LED_brightness_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Sets the brightness",
+ "related": [],
+ "name": "brightness()",
+ "description": "Sets the brightness",
+ "syntax": [".brightness(bright)"],
+ "returns": "void",
+ "type": "method",
+ "category": "LED",
+ "subcategory": "",
+ "classanchor": "LED",
+ "parameters": [
+ {
+ "name": "bright",
+ "description": "0.0 (off) to 1.0 (maximum)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/LED_close_.es.json b/content/references/translations/es/io/LED_close_.es.json
new file mode 100644
index 000000000..5d0f5af10
--- /dev/null
+++ b/content/references/translations/es/io/LED_close_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Restores the previous state",
+ "related": [],
+ "name": "close()",
+ "description": "Restores the previous state \n \n Without calling this function the LED will remain in the current state even\n after the sketch has been closed.",
+ "syntax": [".close()"],
+ "returns": "void",
+ "type": "method",
+ "category": "LED",
+ "subcategory": "",
+ "classanchor": "LED",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/LED_list_.es.json b/content/references/translations/es/io/LED_list_.es.json
new file mode 100644
index 000000000..8d3308183
--- /dev/null
+++ b/content/references/translations/es/io/LED_list_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Lists all available LED devices",
+ "related": [],
+ "name": "list()",
+ "description": "Lists all available LED devices",
+ "syntax": [".list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "LED",
+ "subcategory": "",
+ "classanchor": "LED",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/PWM.es.json b/content/references/translations/es/io/PWM.es.json
new file mode 100644
index 000000000..0ba690978
--- /dev/null
+++ b/content/references/translations/es/io/PWM.es.json
@@ -0,0 +1,35 @@
+{
+ "brief": "Opens a PWM channel",
+ "methods": [
+ {
+ "anchor": "PWM_clear_",
+ "name": "clear()",
+ "desc": "Disables the PWM output"
+ },
+ {
+ "anchor": "PWM_close_",
+ "name": "close()",
+ "desc": "Gives ownership of a channel back to the operating system"
+ },
+ {
+ "anchor": "PWM_list_",
+ "name": "list()",
+ "desc": "Lists all available PWM channels"
+ },
+ { "anchor": "PWM_set_", "name": "set()", "desc": "Enables the PWM output" }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Opens a PWM channel",
+ "type": "class",
+ "constructors": ["PWM(channel)"],
+ "related": [],
+ "name": "PWM",
+ "classanchor": "io/PWM",
+ "category": "PWM",
+ "subcategory": "",
+ "parameters": [
+ { "name": "channel", "description": "PWM channel", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/io/PWM_clear_.es.json b/content/references/translations/es/io/PWM_clear_.es.json
new file mode 100644
index 000000000..1c9c19d2f
--- /dev/null
+++ b/content/references/translations/es/io/PWM_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Disables the PWM output",
+ "related": [],
+ "name": "clear()",
+ "description": "Disables the PWM output",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "PWM",
+ "subcategory": "",
+ "classanchor": "PWM",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/PWM_close_.es.json b/content/references/translations/es/io/PWM_close_.es.json
new file mode 100644
index 000000000..290497986
--- /dev/null
+++ b/content/references/translations/es/io/PWM_close_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gives ownership of a channel back to the operating system",
+ "related": [],
+ "name": "close()",
+ "description": "Gives ownership of a channel back to the operating system \n \n Without calling this function the channel will remain in the current state\n even after the sketch has been closed.",
+ "syntax": [".close()"],
+ "returns": "void",
+ "type": "method",
+ "category": "PWM",
+ "subcategory": "",
+ "classanchor": "PWM",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/PWM_list_.es.json b/content/references/translations/es/io/PWM_list_.es.json
new file mode 100644
index 000000000..09ba28a2a
--- /dev/null
+++ b/content/references/translations/es/io/PWM_list_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Lists all available PWM channels",
+ "related": [],
+ "name": "list()",
+ "description": "Lists all available PWM channels",
+ "syntax": [".list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "PWM",
+ "subcategory": "",
+ "classanchor": "PWM",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/PWM_set_.es.json b/content/references/translations/es/io/PWM_set_.es.json
new file mode 100644
index 000000000..79b4ea61d
--- /dev/null
+++ b/content/references/translations/es/io/PWM_set_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Enables the PWM output",
+ "related": [],
+ "name": "set()",
+ "description": "Enables the PWM output \n \n When no period is specified, a default 1 kHz (1000 Hz) is used.",
+ "syntax": [".set(period, duty)"],
+ "returns": "void",
+ "type": "method",
+ "category": "PWM",
+ "subcategory": "",
+ "classanchor": "PWM",
+ "parameters": [
+ { "name": "period", "description": "cycle period in Hz", "type": ["int"] },
+ {
+ "name": "duty",
+ "description": "duty cycle, 0.0 (always off) to 1.0 (always on)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/SPI.es.json b/content/references/translations/es/io/SPI.es.json
new file mode 100644
index 000000000..159772803
--- /dev/null
+++ b/content/references/translations/es/io/SPI.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Opens an SPI interface as master",
+ "methods": [
+ {
+ "anchor": "SPI_close_",
+ "name": "close()",
+ "desc": "Closes the SPI interface"
+ },
+ {
+ "anchor": "SPI_list_",
+ "name": "list()",
+ "desc": "Lists all available SPI interfaces"
+ },
+ {
+ "anchor": "SPI_settings_",
+ "name": "settings()",
+ "desc": "Configures the SPI interface"
+ },
+ {
+ "anchor": "SPI_transfer_",
+ "name": "transfer()",
+ "desc": "Transfers data over the SPI bus"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Opens an SPI interface as master \n \n Serial Peripheral Interface (SPI) is a serial bus, commonly used to\n communicate with sensors and memory devices. It uses four pins: MOSI (Master\n Out Slave In), MISO (Master In Slave Out), and SCLK (clock signal) - those\n three are shared among all devices on the bus - as well as one or more SS\n (Slave Select) pins, that are used for the master to signal to the slave\n device that it is the desired respondent for the transmission. \n \n The \"master\" device initiates a transfer by pulling the SS pin of the \"slave\"\n low, and begins outputting a clock signal. In SPI, both the \"master\" as well\n as the \"slave\" device output data at the same time. It is hence not possible\n to read data without writing some (even if it means outputting zeros or other\n dummy data).\n \n There are multiple possible configuration settings for SPI, see\n settings() for details.\n \n This library supports multiple SPI objects making use of the same SPI\n interface.",
+ "type": "class",
+ "constructors": ["SPI(dev)"],
+ "related": [],
+ "name": "SPI",
+ "classanchor": "io/SPI",
+ "category": "SPI",
+ "subcategory": "",
+ "parameters": [
+ { "name": "dev", "description": "device name", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/io/SPI_close_.es.json b/content/references/translations/es/io/SPI_close_.es.json
new file mode 100644
index 000000000..ecf5c9d59
--- /dev/null
+++ b/content/references/translations/es/io/SPI_close_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Closes the SPI interface",
+ "related": [],
+ "name": "close()",
+ "description": "Closes the SPI interface\n \n It is normally not necessary to explicitly close SPI interfaces, as they are\n closed automatically by the operating system when the sketch exits.\n \n Note: It is possible to have two or more objects using the same interface at\n a time.",
+ "syntax": [".close()"],
+ "returns": "void",
+ "type": "method",
+ "category": "SPI",
+ "subcategory": "",
+ "classanchor": "SPI",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/SPI_list_.es.json b/content/references/translations/es/io/SPI_list_.es.json
new file mode 100644
index 000000000..8ffec284c
--- /dev/null
+++ b/content/references/translations/es/io/SPI_list_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Lists all available SPI interfaces",
+ "related": [],
+ "name": "list()",
+ "description": "Lists all available SPI interfaces",
+ "syntax": [".list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "SPI",
+ "subcategory": "",
+ "classanchor": "SPI",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/SPI_settings_.es.json b/content/references/translations/es/io/SPI_settings_.es.json
new file mode 100644
index 000000000..bbc019270
--- /dev/null
+++ b/content/references/translations/es/io/SPI_settings_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Configures the SPI interface",
+ "related": [],
+ "name": "settings()",
+ "description": "Configures the SPI interface \n \n The default setting is: 500000, SPI.MSBFIRST, SPI.MODE0",
+ "syntax": [".settings(maxSpeed, dataOrder, mode)"],
+ "returns": "void",
+ "type": "method",
+ "category": "SPI",
+ "subcategory": "",
+ "classanchor": "SPI",
+ "parameters": [
+ {
+ "name": "maxSpeed",
+ "description": "maximum transmission rate in Hz, 500000 (500 kHz) is a\n resonable default",
+ "type": ["int"]
+ },
+ {
+ "name": "dataOrder",
+ "description": "whether data is send with the first- or least-significant\n bit first (SPI.MSBFIRST or SPI.LSBFIRST, the former is more\n common)",
+ "type": ["int"]
+ },
+ {
+ "name": "mode",
+ "description": "SPI.MODE0\n to SPI.MODE3",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/SPI_transfer_.es.json b/content/references/translations/es/io/SPI_transfer_.es.json
new file mode 100644
index 000000000..0e67d3064
--- /dev/null
+++ b/content/references/translations/es/io/SPI_transfer_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Transfers data over the SPI bus",
+ "related": [],
+ "name": "transfer()",
+ "description": "Transfers data over the SPI bus \n \n With SPI, data is simultaneously being exchanged between the master device\n and the slave device. For every byte that is being sent out, there's also one\n byte being read in.",
+ "syntax": [".transfer(out)"],
+ "returns": "byte[]",
+ "type": "method",
+ "category": "SPI",
+ "subcategory": "",
+ "classanchor": "SPI",
+ "parameters": [
+ {
+ "name": "out",
+ "description": "bytes to send",
+ "type": ["byte[]", "String", "int", "byte"]
+ },
+ {
+ "name": "out",
+ "description": "string to send",
+ "type": ["String", "byte", "int"]
+ },
+ {
+ "name": "out",
+ "description": "single byte to send, e.g. numeric literal (0 to 255, or -128 to 127)",
+ "type": ["int", "byte"]
+ },
+ {
+ "name": "out",
+ "description": "single byte to send",
+ "type": ["byte", "int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/SoftwareServo.es.json b/content/references/translations/es/io/SoftwareServo.es.json
new file mode 100644
index 000000000..31c3c13dd
--- /dev/null
+++ b/content/references/translations/es/io/SoftwareServo.es.json
@@ -0,0 +1,48 @@
+{
+ "brief": "Opens an RC servo motor connected to a GPIO pin",
+ "methods": [
+ {
+ "anchor": "SoftwareServo_attach_",
+ "name": "attach()",
+ "desc": "Attaches a servo motor to a GPIO pin"
+ },
+ {
+ "anchor": "SoftwareServo_attach_",
+ "name": "attach()",
+ "desc": "Attaches a servo motor to a GPIO pin \n \n You must call this function before calling write(). Note that the servo motor\n will only be instructed to move after the first time write() is called. \n \n The optional parameters minPulse and maxPulse control the minimum and maximum\n pulse width durations. The default values, identical to those of Arduino's\n Servo class, should be compatible with most servo motors."
+ },
+ {
+ "anchor": "SoftwareServo_write_",
+ "name": "write()",
+ "desc": "Moves a servo motor to a given orientation"
+ },
+ {
+ "anchor": "SoftwareServo_attached_",
+ "name": "attached()",
+ "desc": "Returns whether a servo motor is attached to a pin"
+ },
+ {
+ "anchor": "SoftwareServo_detach_",
+ "name": "detach()",
+ "desc": "Detatches a servo motor from a GPIO pin"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Opens an RC servo motor connected to a GPIO pin \n \n This library uses timers to control RC servo motors by means of pulse width\n modulation (PWM). While not as accurate as dedicated PWM hardware, it has\n shown to be sufficient for many applications. \n \n Connect the signal wire (typically colored yellow) to any available GPIO pin\n and control the servo's angle as shown in the example sketch.",
+ "type": "class",
+ "constructors": ["SoftwareServo(parent)"],
+ "related": [],
+ "name": "SoftwareServo",
+ "classanchor": "io/SoftwareServo",
+ "category": "software_servo",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/SoftwareServo_attach_.es.json b/content/references/translations/es/io/SoftwareServo_attach_.es.json
new file mode 100644
index 000000000..29a25126d
--- /dev/null
+++ b/content/references/translations/es/io/SoftwareServo_attach_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Attaches a servo motor to a GPIO pin \n \n You must call this function before calling write(). Note that the servo motor\n will only be instructed to move after the first time write() is called. \n \n The optional parameters minPulse and maxPulse control the minimum and maximum\n pulse width durations. The default values, identical to those of Arduino's\n Servo class, should be compatible with most servo motors.",
+ "related": [],
+ "name": "attach()",
+ "description": "Attaches a servo motor to a GPIO pin \n \n You must call this function before calling write(). Note that the servo motor\n will only be instructed to move after the first time write() is called. \n \n The optional parameters minPulse and maxPulse control the minimum and maximum\n pulse width durations. The default values, identical to those of Arduino's\n Servo class, should be compatible with most servo motors.",
+ "syntax": [".attach(pin)", ".attach(pin, minPulse, maxPulse)"],
+ "returns": "void",
+ "type": "method",
+ "category": "software_servo",
+ "subcategory": "",
+ "classanchor": "SoftwareServo",
+ "parameters": [
+ { "name": "pin", "description": "GPIO pin", "type": ["int"] },
+ {
+ "name": "minPulse",
+ "description": "minimum pulse width in microseconds (default: 544, same as on Arduino)",
+ "type": ["int"]
+ },
+ {
+ "name": "maxPulse",
+ "description": "maximum pulse width in microseconds (default: 2400, same as on Arduino)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/io/SoftwareServo_attached_.es.json b/content/references/translations/es/io/SoftwareServo_attached_.es.json
new file mode 100644
index 000000000..15b07953e
--- /dev/null
+++ b/content/references/translations/es/io/SoftwareServo_attached_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns whether a servo motor is attached to a pin",
+ "related": [],
+ "name": "attached()",
+ "description": "Returns whether a servo motor is attached to a pin",
+ "syntax": [".attached()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "software_servo",
+ "subcategory": "",
+ "classanchor": "SoftwareServo",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/SoftwareServo_detach_.es.json b/content/references/translations/es/io/SoftwareServo_detach_.es.json
new file mode 100644
index 000000000..6c5ca2f6c
--- /dev/null
+++ b/content/references/translations/es/io/SoftwareServo_detach_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Detatches a servo motor from a GPIO pin",
+ "related": [],
+ "name": "detach()",
+ "description": "Detatches a servo motor from a GPIO pin \n \n Calling this method will stop the servo from moving or trying to hold the\n current orientation.",
+ "syntax": [".detach()"],
+ "returns": "void",
+ "type": "method",
+ "category": "software_servo",
+ "subcategory": "",
+ "classanchor": "SoftwareServo",
+ "parameters": []
+}
diff --git a/content/references/translations/es/io/SoftwareServo_write_.es.json b/content/references/translations/es/io/SoftwareServo_write_.es.json
new file mode 100644
index 000000000..8feff6e54
--- /dev/null
+++ b/content/references/translations/es/io/SoftwareServo_write_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Moves a servo motor to a given orientation",
+ "related": [],
+ "name": "write()",
+ "description": "Moves a servo motor to a given orientation \n \n If you are using this class in combination with a continuous rotation servo,\n different angles will result in the servo rotating forward or backward at\n different speeds. For regular servo motors, this will instruct the servo to\n rotate to and hold a specific angle.",
+ "syntax": [".write(angle)"],
+ "returns": "void",
+ "type": "method",
+ "category": "software_servo",
+ "subcategory": "",
+ "classanchor": "SoftwareServo",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle in degrees (controls speed and direction on\n continuous-rotation servos)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client.es.json b/content/references/translations/es/net/Client.es.json
new file mode 100644
index 000000000..f88e67428
--- /dev/null
+++ b/content/references/translations/es/net/Client.es.json
@@ -0,0 +1,98 @@
+{
+ "brief": "La clase cliente used to create client Objects which connect to a server to exchange data",
+ "methods": [
+ {
+ "anchor": "Client_stop_",
+ "name": "stop()",
+ "desc": "Disconnects from the server"
+ },
+ {
+ "anchor": "Client_active_",
+ "name": "active()",
+ "desc": "Returns true if this client is still active"
+ },
+ {
+ "anchor": "Client_ip_",
+ "name": "ip()",
+ "desc": "Returns the IP address of the machine as a String"
+ },
+ {
+ "anchor": "Client_available_",
+ "name": "available()",
+ "desc": "Returns the number of bytes in the buffer waiting to be read"
+ },
+ {
+ "anchor": "Client_clear_",
+ "name": "clear()",
+ "desc": "Clears the buffer"
+ },
+ {
+ "anchor": "Client_read_",
+ "name": "read()",
+ "desc": "Returns a value from the buffer"
+ },
+ {
+ "anchor": "Client_readChar_",
+ "name": "readChar()",
+ "desc": "Returns the next byte in the buffer as a char"
+ },
+ {
+ "anchor": "Client_readBytes_",
+ "name": "readBytes()",
+ "desc": "Reads a group of bytes from the buffer"
+ },
+ {
+ "anchor": "Client_readBytesUntil_",
+ "name": "readBytesUntil()",
+ "desc": "Reads from the buffer of bytes up to and including a particular character"
+ },
+ {
+ "anchor": "Client_readString_",
+ "name": "readString()",
+ "desc": "Returns the buffer as a String"
+ },
+ {
+ "anchor": "Client_readStringUntil_",
+ "name": "readStringUntil()",
+ "desc": "Returns the buffer as a String up to and including a particular character"
+ },
+ {
+ "anchor": "Client_write_",
+ "name": "write()",
+ "desc": "Writes bytes, chars, ints, bytes[], Strings"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A client connects to a server and sends data back and forth. If anything \n goes wrong with the connection, for example the host is not there or is \n listening on a different port, an exception is thrown.",
+ "type": "class",
+ "constructors": ["Client(parent, host, port)", "Client(parent, socket)"],
+ "related": ["LIB_net/clientEvent_"],
+ "name": "Client",
+ "classanchor": "net/Client",
+ "category": "client",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "host",
+ "description": "address of the server",
+ "type": ["String"]
+ },
+ {
+ "name": "port",
+ "description": "port to read/write from on the server",
+ "type": ["int"]
+ },
+ {
+ "name": "socket",
+ "description": "any object of type Socket",
+ "type": ["Socket"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_active_.es.json b/content/references/translations/es/net/Client_active_.es.json
new file mode 100644
index 000000000..19444e76a
--- /dev/null
+++ b/content/references/translations/es/net/Client_active_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns true if this client is still active",
+ "related": [],
+ "name": "active()",
+ "description": "Returns true if this client is still active and hasn't run\n into any trouble.",
+ "syntax": ["client.active()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_available_.es.json b/content/references/translations/es/net/Client_available_.es.json
new file mode 100644
index 000000000..597eb15cb
--- /dev/null
+++ b/content/references/translations/es/net/Client_available_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the number of bytes in the buffer waiting to be read",
+ "related": [],
+ "name": "available()",
+ "description": "Returns the number of bytes available. When any client has bytes \n available from the server, it returns the number of bytes.",
+ "syntax": ["client.available()"],
+ "returns": "int",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_clear_.es.json b/content/references/translations/es/net/Client_clear_.es.json
new file mode 100644
index 000000000..e74204b57
--- /dev/null
+++ b/content/references/translations/es/net/Client_clear_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Clears the buffer",
+ "related": [],
+ "name": "clear()",
+ "description": "Empty the buffer, removes all the data stored there.",
+ "syntax": ["client.clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_ip_.es.json b/content/references/translations/es/net/Client_ip_.es.json
new file mode 100644
index 000000000..d9a64a5ea
--- /dev/null
+++ b/content/references/translations/es/net/Client_ip_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the IP address of the machine as a String",
+ "related": [],
+ "name": "ip()",
+ "description": "Returns the IP address of the computer to which the Client is attached.",
+ "syntax": ["client.ip()"],
+ "returns": "String",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_readBytesUntil_.es.json b/content/references/translations/es/net/Client_readBytesUntil_.es.json
new file mode 100644
index 000000000..0df1648d0
--- /dev/null
+++ b/content/references/translations/es/net/Client_readBytesUntil_.es.json
@@ -0,0 +1,32 @@
+{
+ "brief": "Reads from the buffer of bytes up to and including a particular character",
+ "related": [],
+ "name": "readBytesUntil()",
+ "description": "Reads from the port into a buffer of bytes up to and including a \n particular character. If the character isn't in the buffer, 'null' is \n returned. The version with no byteBuffer parameter returns a byte \n array of all data up to and including the interesting byte. This \n is not efficient, but is easy to use. The version with the \n byteBuffer parameter is more memory and time efficient. It grabs \n the data in the buffer and puts it into the byte array passed in and \n returns an int value for the number of bytes read. If the byte buffer is \n not large enough, -1 is returned and an error is printed to the message \n area. If nothing is in the buffer, 0 is returned.",
+ "syntax": [
+ "client.readBytesUntil(interesting)",
+ "client.readBytesUntil(interesting, byteBuffer)"
+ ],
+ "returns": "byte[] or int",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ },
+ {
+ "name": "interesting",
+ "description": "character designated to mark the end of the data",
+ "type": ["int"]
+ },
+ {
+ "name": "byteBuffer",
+ "description": "passed in byte array to be altered",
+ "type": ["byte[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_readBytes_.es.json b/content/references/translations/es/net/Client_readBytes_.es.json
new file mode 100644
index 000000000..e64db6655
--- /dev/null
+++ b/content/references/translations/es/net/Client_readBytes_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Reads a group of bytes from the buffer",
+ "related": [],
+ "name": "readBytes()",
+ "description": "Reads a group of bytes from the buffer. The version with no parameters \n returns a byte array of all data in the buffer. This is not efficient, \n but is easy to use. The version with the byteBuffer parameter is \n more memory and time efficient. It grabs the data in the buffer and puts \n it into the byte array passed in and returns an int value for the number \n of bytes read. If more bytes are available than can fit into the \n byteBuffer, only those that fit are read.\n \n ",
+ "syntax": [
+ "client.readBytes()",
+ "client.readBytes(max)",
+ "client.readBytes(bytebuffer)"
+ ],
+ "returns": "byte[] or int",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ },
+ {
+ "name": "max",
+ "description": "the maximum number of bytes to read",
+ "type": ["int"]
+ },
+ {
+ "name": "bytebuffer",
+ "description": "passed in byte array to be altered",
+ "type": ["byte[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_readChar_.es.json b/content/references/translations/es/net/Client_readChar_.es.json
new file mode 100644
index 000000000..611eec0a3
--- /dev/null
+++ b/content/references/translations/es/net/Client_readChar_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the next byte in the buffer as a char",
+ "related": [],
+ "name": "readChar()",
+ "description": "Returns the next byte in the buffer as a char. Returns -1 or \n 0xffff if nothing is there.",
+ "syntax": ["client.readChar()"],
+ "returns": "char",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_readStringUntil_.es.json b/content/references/translations/es/net/Client_readStringUntil_.es.json
new file mode 100644
index 000000000..d6cddd5cc
--- /dev/null
+++ b/content/references/translations/es/net/Client_readStringUntil_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Returns the buffer as a String up to and including a particular character",
+ "related": [],
+ "name": "readStringUntil()",
+ "description": "Combination of readBytesUntil() and readString(). Returns \n null if it doesn't find what you're looking for.\n \n ",
+ "syntax": ["client.readStringUntil(interesting)"],
+ "returns": "String",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ },
+ {
+ "name": "interesting",
+ "description": "character designated to mark the end of the data",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_readString_.es.json b/content/references/translations/es/net/Client_readString_.es.json
new file mode 100644
index 000000000..1db65eae7
--- /dev/null
+++ b/content/references/translations/es/net/Client_readString_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the buffer as a String",
+ "related": [],
+ "name": "readString()",
+ "description": "Returns the all the data from the buffer as a String. This method \n assumes the incoming characters are ASCII. If you want to transfer \n Unicode data, first convert the String to a byte stream in the \n representation of your choice (i.e. UTF8 or two-byte Unicode data), and \n send it as a byte array.",
+ "syntax": ["client.readString()"],
+ "returns": "String",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_read_.es.json b/content/references/translations/es/net/Client_read_.es.json
new file mode 100644
index 000000000..5a6450a7f
--- /dev/null
+++ b/content/references/translations/es/net/Client_read_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns a value from the buffer",
+ "related": [],
+ "name": "read()",
+ "description": "Returns a number between 0 and 255 for the next byte that's waiting in \n the buffer. Returns -1 if there is no byte, although this should be \n avoided by first cheacking available() to see if any data is available.",
+ "syntax": ["client.read()"],
+ "returns": "int",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_stop_.es.json b/content/references/translations/es/net/Client_stop_.es.json
new file mode 100644
index 000000000..56ae9aad7
--- /dev/null
+++ b/content/references/translations/es/net/Client_stop_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Disconnects from the server",
+ "related": [],
+ "name": "stop()",
+ "description": "Disconnects from the server. Use to shut the connection when you're \n finished with the Client.",
+ "syntax": ["client.stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Client_write_.es.json b/content/references/translations/es/net/Client_write_.es.json
new file mode 100644
index 000000000..d256146ec
--- /dev/null
+++ b/content/references/translations/es/net/Client_write_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Writes bytes, chars, ints, bytes[], Strings",
+ "related": [],
+ "name": "write()",
+ "description": "Writes data to a server specified when constructing the client, or writes \n data to the specific client obtained from the Server available() \n method.",
+ "syntax": ["client.write(data)"],
+ "returns": "void",
+ "type": "method",
+ "category": "client",
+ "subcategory": "",
+ "classanchor": "Client",
+ "parameters": [
+ {
+ "name": "client",
+ "description": " any variable of type Client",
+ "type": ["Client"]
+ },
+ {
+ "name": "data",
+ "description": "data to write",
+ "type": ["int", "byte[]", "String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Server.es.json b/content/references/translations/es/net/Server.es.json
new file mode 100644
index 000000000..0934010e2
--- /dev/null
+++ b/content/references/translations/es/net/Server.es.json
@@ -0,0 +1,68 @@
+{
+ "brief": "The server class is used to create server objects which send \n and receives data to and from its associated clients (other programs connected to it)",
+ "methods": [
+ {
+ "anchor": "Server_disconnect_",
+ "name": "disconnect()",
+ "desc": "Disconnect a particular client"
+ },
+ {
+ "anchor": "Server_active_",
+ "name": "active()",
+ "desc": "Return true if this server is still active"
+ },
+ {
+ "anchor": "Server_available_",
+ "name": "available()",
+ "desc": "Returns the next client in line with a new message"
+ },
+ {
+ "anchor": "Server_stop_",
+ "name": "stop()",
+ "desc": "Disconnects all clients and stops the server"
+ },
+ {
+ "anchor": "Server_write_",
+ "name": "write()",
+ "desc": "Writes data to all connected clients"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A server sends and receives data to and from its associated clients \n (other programs connected to it). When a server is started, it begins \n listening for connections on the port specified by the port \n parameter. Computers have many ports for transferring data and some are \n commonly used so be sure to not select one of these. For example, web \n servers usually use port 80 and POP mail uses port 110.",
+ "type": "class",
+ "constructors": ["Server(parent, port)", "Server(parent, port, host)"],
+ "related": [],
+ "name": "Server",
+ "classanchor": "net/Server",
+ "category": "server",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "port",
+ "description": "port used to transfer data",
+ "type": ["int"]
+ },
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "port",
+ "description": "port used to transfer data",
+ "type": ["int"]
+ },
+ {
+ "name": "host",
+ "description": "when multiple NICs are in use, the ip (or name) to bind from",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Server_active_.es.json b/content/references/translations/es/net/Server_active_.es.json
new file mode 100644
index 000000000..25b1bdf1f
--- /dev/null
+++ b/content/references/translations/es/net/Server_active_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Return true if this server is still active",
+ "related": [],
+ "name": "active()",
+ "description": "Returns true if this server is still active and hasn't run\n into any trouble.",
+ "syntax": ["server.active()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "server",
+ "subcategory": "",
+ "classanchor": "Server",
+ "parameters": [
+ {
+ "name": "server",
+ "description": " \tany variable of type Server",
+ "type": ["Server"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Server_available_.es.json b/content/references/translations/es/net/Server_available_.es.json
new file mode 100644
index 000000000..cc2d2e552
--- /dev/null
+++ b/content/references/translations/es/net/Server_available_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the next client in line with a new message",
+ "related": [],
+ "name": "available()",
+ "description": "Returns the next client in line with a new message.",
+ "syntax": ["server.available()"],
+ "returns": "Client",
+ "type": "method",
+ "category": "server",
+ "subcategory": "",
+ "classanchor": "Server",
+ "parameters": [
+ {
+ "name": "server",
+ "description": " \tany variable of type Server",
+ "type": ["Server"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Server_disconnect_.es.json b/content/references/translations/es/net/Server_disconnect_.es.json
new file mode 100644
index 000000000..752cbed3d
--- /dev/null
+++ b/content/references/translations/es/net/Server_disconnect_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Disconnect a particular client",
+ "related": [],
+ "name": "disconnect()",
+ "description": "Disconnect a particular client.",
+ "syntax": ["server.disconnect(client)"],
+ "returns": "void",
+ "type": "method",
+ "category": "server",
+ "subcategory": "",
+ "classanchor": "Server",
+ "parameters": [
+ {
+ "name": "server",
+ "description": " \tany variable of type Server",
+ "type": ["Server"]
+ },
+ {
+ "name": "client",
+ "description": "the client to disconnect",
+ "type": ["Client"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Server_stop_.es.json b/content/references/translations/es/net/Server_stop_.es.json
new file mode 100644
index 000000000..4dfdebd61
--- /dev/null
+++ b/content/references/translations/es/net/Server_stop_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Disconnects all clients and stops the server",
+ "related": [],
+ "name": "stop()",
+ "description": "Disconnects all clients and stops the server.\n \n ",
+ "syntax": ["server.stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "server",
+ "subcategory": "",
+ "classanchor": "Server",
+ "parameters": [
+ {
+ "name": "server",
+ "description": " \tany variable of type Server",
+ "type": ["Server"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/Server_write_.es.json b/content/references/translations/es/net/Server_write_.es.json
new file mode 100644
index 000000000..f12d3c4dc
--- /dev/null
+++ b/content/references/translations/es/net/Server_write_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Writes data to all connected clients",
+ "related": [],
+ "name": "write()",
+ "description": "Writes a value to all the connected clients. It sends bytes out from the \n Server object.",
+ "syntax": ["server.write(data)"],
+ "returns": "void",
+ "type": "method",
+ "category": "server",
+ "subcategory": "",
+ "classanchor": "Server",
+ "parameters": [
+ {
+ "name": "server",
+ "description": " \tany variable of type Server",
+ "type": ["Server"]
+ },
+ {
+ "name": "data",
+ "description": "data to write",
+ "type": ["int", "byte[]", "String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/clientEvent_.es.json b/content/references/translations/es/net/clientEvent_.es.json
new file mode 100644
index 000000000..ef279f49b
--- /dev/null
+++ b/content/references/translations/es/net/clientEvent_.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "This function is called when a server sends a value to an existing Client object.",
+ "related": ["Server"],
+ "name": "clientEvent()",
+ "description": "This function is called when a server sends a value to an existing Client object.",
+ "syntax": ["void clientEvent(client) {\r", " statements\r", "}\r"],
+ "returns": "",
+ "type": "function",
+ "category": "NetworkEvents",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "statements",
+ "description": "any valid statements"
+ },
+ {
+ "name": "client",
+ "description": "the client with new data"
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/disconnectEvent_.es.json b/content/references/translations/es/net/disconnectEvent_.es.json
new file mode 100644
index 000000000..0639fb234
--- /dev/null
+++ b/content/references/translations/es/net/disconnectEvent_.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "This function is called when a client disconnects.",
+ "related": ["Client", "Server"],
+ "name": "disconnectEvent()",
+ "description": "This function is called when a client disconnects.",
+ "syntax": ["void disconnectEvent(client) {\r", " statements\r", "}\r"],
+ "returns": "",
+ "type": "function",
+ "category": "NetworkEvents",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "statements",
+ "description": "any valid statements"
+ },
+ {
+ "name": "client",
+ "description": "the client that has disconnected"
+ }
+ ]
+}
diff --git a/content/references/translations/es/net/serverEvent_.es.json b/content/references/translations/es/net/serverEvent_.es.json
new file mode 100644
index 000000000..afce0e631
--- /dev/null
+++ b/content/references/translations/es/net/serverEvent_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "The code inside serverEvent() is run when a new client connects to a server that has been created within the program.",
+ "related": ["Server"],
+ "name": "serverEvent()",
+ "description": "The code inside serverEvent() is run when a new client connects to a server that has been created within the program.",
+ "syntax": ["void serverEvent(server, client) {\r", " statements\r", "}\r"],
+ "returns": "",
+ "type": "function",
+ "category": "NetworkEvents",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "server",
+ "description": "server the client is connecting to"
+ },
+ {
+ "name": "client",
+ "description": "client connecting to the server"
+ },
+ {
+ "name": "statements",
+ "description": "any valid statements"
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Array.es.json b/content/references/translations/es/processing/Array.es.json
new file mode 100644
index 000000000..4bea3c0fa
--- /dev/null
+++ b/content/references/translations/es/processing/Array.es.json
@@ -0,0 +1,31 @@
+{
+ "name": "Arreglo",
+ "brief": "Un arreglo es una lista de datos",
+ "description": "Un arreglo es una lista de datos. es posible tener un arreglo de cualquier tipo de datos. Cada pieza de datos en un arreglo es identificado a través de un índice representando su posición en el arreglo. El primer elemento del arreglo es [0], el segundo elemento es [1], y así sucesivamente. Los arreglos son similares a los objetos, así que debe ser creados con la palabra reservada new. \n \n Cada arreglo tiene una variable length, la cual es un valor entero que guarda el número total de elementos en el arreglo. Nota que dado que el número de indice empieza en 0 (no en 1), el último valor de un arreglo array de tamaño length 5 deberá ser referenciado comoarray[4] (esto es, length menos 1), no array[5], el cual lanzaría un error. \n \n Otra confusión común es la diferencia entre usar length para obtener el tamaño de un arreglo y length() para obtener el tamaño de una cadena de tipo String. Nota la presencia de paréntesis cuando se trabaja con cadenas. (array.length es una variable, mientras que String.length() es un método específico de la clase String.)\n",
+ "constructors": ["datatype[] var", "var[element] = value", "var.length"],
+ "classFields": [],
+ "methods": [],
+ "related": [],
+ "type": "class",
+ "classanchor": "Array",
+ "category": "Data",
+ "subcategory": "Composite",
+ "parameters": [
+ {
+ "name": "datatype",
+ "description": " Cualquier tipo de dato primitivo o compuesto, incluyendo clases definidas por el usuario",
+ "type": []
+ },
+ { "name": "var", "description": "cualquier nombre de variable válido", "type": [] },
+ {
+ "name": "element",
+ "description": "int: no debe exceder la longitud del arreglo (length) menos 1",
+ "type": []
+ },
+ {
+ "name": "value",
+ "description": " datos a asignar al elemento del arreglo. Debe ser del mismo tipo de datos que el arreglo",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/ArrayList.es.json b/content/references/translations/es/processing/ArrayList.es.json
new file mode 100644
index 000000000..745669b31
--- /dev/null
+++ b/content/references/translations/es/processing/ArrayList.es.json
@@ -0,0 +1,28 @@
+{
+ "name": "ArrayList",
+ "brief": "An ArrayList stores a variable number of objects",
+ "description": "An ArrayList stores a variable number of objects. This is similar to making an array of objects, but with an ArrayList, items can be easily added and removed from the ArrayList and it is resized dynamically. This can be very convenient, but it's slower than making an array of objects when using many elements. Note that for resizable lists of integers, floats, and Strings, you can use the Processing classes IntList, FloatList, and StringList. \n \nAn ArrayList is a resizable-array implementation of the Java List interface. It has many methods used to control and search its contents. For example, the length of the ArrayList is returned by its size() method, which is an integer value for the total number of elements in the list. An element is added to an ArrayList with the add() method and is deleted with the remove() method. The get() method returns the element at the specified position in the list. (See the above example for context.) \n \nFor a list of the numerous ArrayList features, please read the Java reference description.\n",
+ "constructors": [
+ "ArrayList<Type>()",
+ "ArrayList<Type>(initialCapacity)"
+ ],
+ "classFields": [],
+ "methods": [],
+ "related": ["IntList", "FloatList", "StringList"],
+ "type": "class",
+ "classanchor": "ArrayList",
+ "category": "Data",
+ "subcategory": "Composite",
+ "parameters": [
+ {
+ "name": "Type",
+ "description": "Class Name: the data type for the objects to be placed in the ArrayList.",
+ "type": []
+ },
+ {
+ "name": "initialCapacity",
+ "description": "int: defines the initial capacity of the list; it's empty by default",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/BufferedReader.es.json b/content/references/translations/es/processing/BufferedReader.es.json
new file mode 100644
index 000000000..056cdb8b0
--- /dev/null
+++ b/content/references/translations/es/processing/BufferedReader.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "BufferedReader",
+ "brief": "A BufferedReader object is used to read files line-by-line as individual String objects",
+ "description": "A BufferedReader object is used to read files line-by-line as individual String objects.\n
\nStarting with Processing release 0134, all files loaded and saved by the Processing API use UTF-8 encoding. In previous releases, the default encoding for your platform was used, which causes problems when files are moved to other platforms.\n",
+ "constructors": [],
+ "classFields": [],
+ "methods": [
+ {
+ "anchor": "BufferedReader_readLine_",
+ "name": "readLine()",
+ "desc": "Returns a String that is the current line in the BufferedReader."
+ }
+ ],
+ "related": ["createReader_", "try", "catch"],
+ "type": "class",
+ "classanchor": "BufferedReader",
+ "category": "input",
+ "subcategory": "files"
+}
diff --git a/content/references/translations/es/processing/BufferedReader_readLine_.es.json b/content/references/translations/es/processing/BufferedReader_readLine_.es.json
new file mode 100644
index 000000000..dde4d7f56
--- /dev/null
+++ b/content/references/translations/es/processing/BufferedReader_readLine_.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "readLine()",
+ "brief": "Returns a String that is the current line in the BufferedReader",
+ "description": "Returns a String that is the current line in the BufferedReader.\n",
+ "related": [],
+ "syntax": ["br.readLine()"],
+ "returns": "String",
+ "type": "method",
+ "category": "BufferedReader",
+ "subcategory": "Method",
+ "classanchor": "BufferedReader",
+ "parameters": [
+ {
+ "name": "br",
+ "description": "any object of the type BufferedReader",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/FloatDict.es.json b/content/references/translations/es/processing/FloatDict.es.json
new file mode 100644
index 000000000..0d39e2ac7
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict.es.json
@@ -0,0 +1,109 @@
+{
+ "brief": "A simple table class to use a String as a lookup for a float\n value",
+ "methods": [
+ {
+ "anchor": "FloatDict_size_",
+ "name": "size()",
+ "desc": "Returns the number of key/value pairs"
+ },
+ {
+ "anchor": "FloatDict_clear_",
+ "name": "clear()",
+ "desc": "Remove all entries"
+ },
+ {
+ "anchor": "FloatDict_keys_",
+ "name": "keys()",
+ "desc": "Return the internal array being used to store the keys"
+ },
+ {
+ "anchor": "FloatDict_keyArray_",
+ "name": "keyArray()",
+ "desc": "Return a copy of the internal keys array"
+ },
+ {
+ "anchor": "FloatDict_values_",
+ "name": "values()",
+ "desc": "Return the internal array being used to store the values"
+ },
+ {
+ "anchor": "FloatDict_valueArray_",
+ "name": "valueArray()",
+ "desc": "Create a new array and copy each of the values into it"
+ },
+ {
+ "anchor": "FloatDict_get_",
+ "name": "get()",
+ "desc": "Return a value for the specified key"
+ },
+ {
+ "anchor": "FloatDict_set_",
+ "name": "set()",
+ "desc": "Create a new key/value pair or change the value of one"
+ },
+ {
+ "anchor": "FloatDict_hasKey_",
+ "name": "hasKey()",
+ "desc": "Check if a key is a part of the data structure"
+ },
+ { "anchor": "FloatDict_add_", "name": "add()", "desc": "Add to a value" },
+ {
+ "anchor": "FloatDict_sub_",
+ "name": "sub()",
+ "desc": "Subtract from a value"
+ },
+ {
+ "anchor": "FloatDict_mult_",
+ "name": "mult()",
+ "desc": "Multiply a value"
+ },
+ { "anchor": "FloatDict_div_", "name": "div()", "desc": "Divide a value" },
+ {
+ "anchor": "FloatDict_minIndex_",
+ "name": "minIndex()",
+ "desc": "Return the smallest value"
+ },
+ {
+ "anchor": "FloatDict_maxIndex_",
+ "name": "maxIndex()",
+ "desc": "Return the largest value"
+ },
+ {
+ "anchor": "FloatDict_remove_",
+ "name": "remove()",
+ "desc": "Remove a key/value pair"
+ },
+ {
+ "anchor": "FloatDict_sortKeys_",
+ "name": "sortKeys()",
+ "desc": "Sort the keys alphabetically"
+ },
+ {
+ "anchor": "FloatDict_sortKeysReverse_",
+ "name": "sortKeysReverse()",
+ "desc": "Sort the keys alphabetically in reverse"
+ },
+ {
+ "anchor": "FloatDict_sortValues_",
+ "name": "sortValues()",
+ "desc": "Sort by values in ascending order"
+ },
+ {
+ "anchor": "FloatDict_sortValuesReverse_",
+ "name": "sortValuesReverse()",
+ "desc": "Sort by values in descending order"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A simple class to use a String as a lookup for a float value. String \"keys\"\n are associated with floating-point values.",
+ "type": "class",
+ "constructors": ["FloatDict()", "FloatDict(pairs)"],
+ "related": ["IntDict", "StringDict"],
+ "name": "FloatDict",
+ "classanchor": "FloatDict",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_add_.es.json b/content/references/translations/es/processing/FloatDict_add_.es.json
new file mode 100644
index 000000000..2d09b04aa
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_add_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add to a value",
+ "related": [],
+ "name": "add()",
+ "description": "Add to a value. If the key does not exist, a new pair is initialized with\n the value supplied.",
+ "syntax": [".add(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_clear_.es.json b/content/references/translations/es/processing/FloatDict_clear_.es.json
new file mode 100644
index 000000000..8d902faba
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove all entries",
+ "related": [],
+ "name": "clear()",
+ "description": "Remove all entries from the data structure.",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_div_.es.json b/content/references/translations/es/processing/FloatDict_div_.es.json
new file mode 100644
index 000000000..7cb503857
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_div_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Divide a value",
+ "related": [],
+ "name": "div()",
+ "description": "Divide a value.",
+ "syntax": [".div(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_get_.es.json b/content/references/translations/es/processing/FloatDict_get_.es.json
new file mode 100644
index 000000000..3640402e3
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_get_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a value for the specified key",
+ "related": [],
+ "name": "get()",
+ "description": "Return a value for the specified key.",
+ "syntax": [".get(key)", ".get(key, alternate)"],
+ "returns": "float",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_hasKey_.es.json b/content/references/translations/es/processing/FloatDict_hasKey_.es.json
new file mode 100644
index 000000000..3a939ed95
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_hasKey_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check if a key is a part of the data structure",
+ "related": [],
+ "name": "hasKey()",
+ "description": "Check if a key is a part of the data structure.",
+ "syntax": [".hasKey(key)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_keyArray_.es.json b/content/references/translations/es/processing/FloatDict_keyArray_.es.json
new file mode 100644
index 000000000..744df8bce
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_keyArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a copy of the internal keys array",
+ "related": [],
+ "name": "keyArray()",
+ "description": "Return a copy of the internal keys array. In contrast to the keys()\n method, this array can be modified.",
+ "syntax": [".keyArray()", ".keyArray(outgoing)"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_keys_.es.json b/content/references/translations/es/processing/FloatDict_keys_.es.json
new file mode 100644
index 000000000..7c63b6e1e
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_keys_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the internal array being used to store the keys",
+ "related": [],
+ "name": "keys()",
+ "description": "Return the internal array being used to store the keys.",
+ "syntax": [".keys()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_maxIndex_.es.json b/content/references/translations/es/processing/FloatDict_maxIndex_.es.json
new file mode 100644
index 000000000..e24506ade
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_maxIndex_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the largest value",
+ "related": [],
+ "name": "maxIndex()",
+ "description": "Return the largest value",
+ "syntax": [".maxIndex()"],
+ "returns": "int",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_minIndex_.es.json b/content/references/translations/es/processing/FloatDict_minIndex_.es.json
new file mode 100644
index 000000000..52bf60b56
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_minIndex_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the smallest value",
+ "related": [],
+ "name": "minIndex()",
+ "description": "Return the smallest value",
+ "syntax": [".minIndex()"],
+ "returns": "int",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_mult_.es.json b/content/references/translations/es/processing/FloatDict_mult_.es.json
new file mode 100644
index 000000000..bb30bcc57
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_mult_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Multiply a value",
+ "related": [],
+ "name": "mult()",
+ "description": "Multiply a value.",
+ "syntax": [".mult(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_remove_.es.json b/content/references/translations/es/processing/FloatDict_remove_.es.json
new file mode 100644
index 000000000..06d286657
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_remove_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove a key/value pair",
+ "related": [],
+ "name": "remove()",
+ "description": "Remove a key/value pair.",
+ "syntax": [".remove(key)"],
+ "returns": "float",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_set_.es.json b/content/references/translations/es/processing/FloatDict_set_.es.json
new file mode 100644
index 000000000..c8e6af14f
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_set_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new key/value pair or change the value of one",
+ "related": [],
+ "name": "set()",
+ "description": "Create a new key/value pair or change the value of one.",
+ "syntax": [".set(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_size_.es.json b/content/references/translations/es/processing/FloatDict_size_.es.json
new file mode 100644
index 000000000..fc1463234
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of key/value pairs",
+ "related": [],
+ "name": "size()",
+ "description": "Returns the number of key/value pairs.",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_sortKeysReverse_.es.json b/content/references/translations/es/processing/FloatDict_sortKeysReverse_.es.json
new file mode 100644
index 000000000..dbda9f5dc
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_sortKeysReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort the keys alphabetically in reverse",
+ "related": [],
+ "name": "sortKeysReverse()",
+ "description": "Sort the keys alphabetically in reverse (ignoring case). Uses the value as a\n tie-breaker (only really possible with a key that has a case change).",
+ "syntax": [".sortKeysReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_sortKeys_.es.json b/content/references/translations/es/processing/FloatDict_sortKeys_.es.json
new file mode 100644
index 000000000..0ca28a308
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_sortKeys_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort the keys alphabetically",
+ "related": [],
+ "name": "sortKeys()",
+ "description": "Sort the keys alphabetically (ignoring case). Uses the value as a\n tie-breaker (only really possible with a key that has a case change).",
+ "syntax": [".sortKeys()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_sortValuesReverse_.es.json b/content/references/translations/es/processing/FloatDict_sortValuesReverse_.es.json
new file mode 100644
index 000000000..294999044
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_sortValuesReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort by values in descending order",
+ "related": [],
+ "name": "sortValuesReverse()",
+ "description": "Sort by values in descending order. The largest value will be at [0].",
+ "syntax": [".sortValuesReverse()", ".sortValuesReverse(stable)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_sortValues_.es.json b/content/references/translations/es/processing/FloatDict_sortValues_.es.json
new file mode 100644
index 000000000..8477d9e9d
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_sortValues_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort by values in ascending order",
+ "related": [],
+ "name": "sortValues()",
+ "description": "Sort by values in ascending order (largest value will be at [0]).",
+ "syntax": [".sortValues()", ".sortValues(stable)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_sub_.es.json b/content/references/translations/es/processing/FloatDict_sub_.es.json
new file mode 100644
index 000000000..096092f8e
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_sub_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Subtract from a value",
+ "related": [],
+ "name": "sub()",
+ "description": "Subtract from a value.",
+ "syntax": [".sub(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_valueArray_.es.json b/content/references/translations/es/processing/FloatDict_valueArray_.es.json
new file mode 100644
index 000000000..29a297ec0
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_valueArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new array and copy each of the values into it",
+ "related": [],
+ "name": "valueArray()",
+ "description": "The version of this method without a parameter creates a new array and copies\n each of the values into it. The version with the float[] parameters\n fills an already-allocated array with the values (more efficient than\n creating a new array each time). If 'array' is null, or not the same size as\n the number of values, a new array will be allocated and returned.",
+ "syntax": [".valueArray()", ".valueArray(array)"],
+ "returns": "float[]",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatDict_values_.es.json b/content/references/translations/es/processing/FloatDict_values_.es.json
new file mode 100644
index 000000000..06d695944
--- /dev/null
+++ b/content/references/translations/es/processing/FloatDict_values_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the internal array being used to store the values",
+ "related": [],
+ "name": "values()",
+ "description": "Return the internal array being used to store the values.",
+ "syntax": [".values()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "floatdict",
+ "subcategory": "method",
+ "classanchor": "FloatDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList.es.json b/content/references/translations/es/processing/FloatList.es.json
new file mode 100644
index 000000000..59111a10e
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList.es.json
@@ -0,0 +1,99 @@
+{
+ "brief": "Helper class for a list of floats",
+ "methods": [
+ {
+ "anchor": "FloatList_size_",
+ "name": "size()",
+ "desc": "Get the length of the list"
+ },
+ {
+ "anchor": "FloatList_clear_",
+ "name": "clear()",
+ "desc": "Remove all entries from the list"
+ },
+ {
+ "anchor": "FloatList_get_",
+ "name": "get()",
+ "desc": "Get an entry at a particular index"
+ },
+ {
+ "anchor": "FloatList_set_",
+ "name": "set()",
+ "desc": "Set the entry at a particular index"
+ },
+ {
+ "anchor": "FloatList_remove_",
+ "name": "remove()",
+ "desc": "Remove an element from the specified index"
+ },
+ {
+ "anchor": "FloatList_append_",
+ "name": "append()",
+ "desc": "Add a new entry to the list"
+ },
+ {
+ "anchor": "FloatList_hasValue_",
+ "name": "hasValue()",
+ "desc": "Check if a number is a part of the list"
+ },
+ { "anchor": "FloatList_add_", "name": "add()", "desc": "Add to a value" },
+ {
+ "anchor": "FloatList_sub_",
+ "name": "sub()",
+ "desc": "Subtract from a value"
+ },
+ {
+ "anchor": "FloatList_mult_",
+ "name": "mult()",
+ "desc": "Multiply a value"
+ },
+ { "anchor": "FloatList_div_", "name": "div()", "desc": "Divide a value" },
+ {
+ "anchor": "FloatList_min_",
+ "name": "min()",
+ "desc": "Return the smallest value"
+ },
+ {
+ "anchor": "FloatList_max_",
+ "name": "max()",
+ "desc": "Return the largest value"
+ },
+ {
+ "anchor": "FloatList_sort_",
+ "name": "sort()",
+ "desc": "Sorts an array, lowest to highest"
+ },
+ {
+ "anchor": "FloatList_sortReverse_",
+ "name": "sortReverse()",
+ "desc": "A sort in reverse"
+ },
+ {
+ "anchor": "FloatList_reverse_",
+ "name": "reverse()",
+ "desc": "Reverse the order of the list"
+ },
+ {
+ "anchor": "FloatList_shuffle_",
+ "name": "shuffle()",
+ "desc": "Randomize the order of the list elements"
+ },
+ {
+ "anchor": "FloatList_array_",
+ "name": "array()",
+ "desc": "Create a new array with a copy of all the values"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Helper class for a list of floats. Lists are designed to have some of the\n features of ArrayLists, but to maintain the simplicity and efficiency of\n working with arrays.\n\n Functions like sort() and shuffle() always act on the list itself. To get\n a sorted copy, use list.copy().sort().",
+ "type": "class",
+ "constructors": ["FloatList()", "FloatList(items)"],
+ "related": ["IntList", "StringList"],
+ "name": "FloatList",
+ "classanchor": "FloatList",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_add_.es.json b/content/references/translations/es/processing/FloatList_add_.es.json
new file mode 100644
index 000000000..2e1b27048
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_add_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add to a value",
+ "related": [],
+ "name": "add()",
+ "description": "Add to a value.",
+ "syntax": [".add(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_append_.es.json b/content/references/translations/es/processing/FloatList_append_.es.json
new file mode 100644
index 000000000..192424020
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_append_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add a new entry to the list",
+ "related": [],
+ "name": "append()",
+ "description": "Add a new entry to the list.",
+ "syntax": [".append(value)", ".append(values)", ".append(list)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_array_.es.json b/content/references/translations/es/processing/FloatList_array_.es.json
new file mode 100644
index 000000000..a7b2eef6f
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_array_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new array with a copy of all the values",
+ "related": [],
+ "name": "array()",
+ "description": "Create a new array with a copy of all the values.",
+ "syntax": [".array()", ".array(array)"],
+ "returns": "float[]",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_clear_.es.json b/content/references/translations/es/processing/FloatList_clear_.es.json
new file mode 100644
index 000000000..b42428205
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove all entries from the list",
+ "related": [],
+ "name": "clear()",
+ "description": "Remove all entries from the list.",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_div_.es.json b/content/references/translations/es/processing/FloatList_div_.es.json
new file mode 100644
index 000000000..62b322412
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_div_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Divide a value",
+ "related": [],
+ "name": "div()",
+ "description": "Divide a value",
+ "syntax": [".div(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_get_.es.json b/content/references/translations/es/processing/FloatList_get_.es.json
new file mode 100644
index 000000000..0815f46e1
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_get_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get an entry at a particular index",
+ "related": [],
+ "name": "get()",
+ "description": "Get an entry at a particular index.",
+ "syntax": [".get(index)"],
+ "returns": "float",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_hasValue_.es.json b/content/references/translations/es/processing/FloatList_hasValue_.es.json
new file mode 100644
index 000000000..c8b52c50a
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_hasValue_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check if a number is a part of the list",
+ "related": [],
+ "name": "hasValue()",
+ "description": "Check if a number is a part of the list.",
+ "syntax": [".hasValue(value)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_max_.es.json b/content/references/translations/es/processing/FloatList_max_.es.json
new file mode 100644
index 000000000..f7047e4f2
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_max_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the largest value",
+ "related": [],
+ "name": "max()",
+ "description": "Return the largest value",
+ "syntax": [".max()"],
+ "returns": "float",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_min_.es.json b/content/references/translations/es/processing/FloatList_min_.es.json
new file mode 100644
index 000000000..72e7fa58c
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_min_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the smallest value",
+ "related": [],
+ "name": "min()",
+ "description": "Return the smallest value",
+ "syntax": [".min()"],
+ "returns": "float",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_mult_.es.json b/content/references/translations/es/processing/FloatList_mult_.es.json
new file mode 100644
index 000000000..56bb72e03
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_mult_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Multiply a value",
+ "related": [],
+ "name": "mult()",
+ "description": "Multiply a value",
+ "syntax": [".mult(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_remove_.es.json b/content/references/translations/es/processing/FloatList_remove_.es.json
new file mode 100644
index 000000000..c3cb0e31a
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_remove_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove an element from the specified index",
+ "related": [],
+ "name": "remove()",
+ "description": "Remove an element from the specified index.",
+ "syntax": [".remove(index)"],
+ "returns": "float",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_reverse_.es.json b/content/references/translations/es/processing/FloatList_reverse_.es.json
new file mode 100644
index 000000000..751db0b53
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_reverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Reverse the order of the list",
+ "related": [],
+ "name": "reverse()",
+ "description": "Reverse the order of the list",
+ "syntax": [".reverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_set_.es.json b/content/references/translations/es/processing/FloatList_set_.es.json
new file mode 100644
index 000000000..8748b5194
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_set_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Set the entry at a particular index",
+ "related": [],
+ "name": "set()",
+ "description": "Set the entry at a particular index.",
+ "syntax": [".set(index, what)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_shuffle_.es.json b/content/references/translations/es/processing/FloatList_shuffle_.es.json
new file mode 100644
index 000000000..3fa24cc72
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_shuffle_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Randomize the order of the list elements",
+ "related": [],
+ "name": "shuffle()",
+ "description": "Randomize the order of the list elements.",
+ "syntax": [".shuffle()", ".shuffle(sketch)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_size_.es.json b/content/references/translations/es/processing/FloatList_size_.es.json
new file mode 100644
index 000000000..570e1f5b4
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get the length of the list",
+ "related": [],
+ "name": "size()",
+ "description": "Get the length of the list.",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_sortReverse_.es.json b/content/references/translations/es/processing/FloatList_sortReverse_.es.json
new file mode 100644
index 000000000..16a52e035
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_sortReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "A sort in reverse",
+ "related": [],
+ "name": "sortReverse()",
+ "description": "A sort in reverse. It's equivalent to running sort() and then \n reverse(), but is more efficient than running each separately.",
+ "syntax": [".sortReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_sort_.es.json b/content/references/translations/es/processing/FloatList_sort_.es.json
new file mode 100644
index 000000000..08c35cc4c
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_sort_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sorts an array, lowest to highest",
+ "related": [],
+ "name": "sort()",
+ "description": "Sorts an array, lowest to highest",
+ "syntax": [".sort()"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/FloatList_sub_.es.json b/content/references/translations/es/processing/FloatList_sub_.es.json
new file mode 100644
index 000000000..4d391d7a2
--- /dev/null
+++ b/content/references/translations/es/processing/FloatList_sub_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Subtract from a value",
+ "related": [],
+ "name": "sub()",
+ "description": "Subtract from a value",
+ "syntax": [".sub(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "floatlist",
+ "subcategory": "method",
+ "classanchor": "FloatList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/HALF_PI.es.json b/content/references/translations/es/processing/HALF_PI.es.json
new file mode 100644
index 000000000..a28d4738e
--- /dev/null
+++ b/content/references/translations/es/processing/HALF_PI.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "HALF_PI es una constante matemática con el valor\n 1.57079632679489661923",
+ "related": ["PI", "TWO_PI", "TAU", "QUARTER_PI"],
+ "name": "HALF_PI",
+ "description": "HALF_PI es una constante matemática con el valor 1.5707964. Es la\n mitad de la proporción de la circunferencia de un circulo y su diámetro. Es útil\n en combinación con las funciones trigonométricas sin() y\n cos().",
+ "category": "constants",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/HashMap.es.json b/content/references/translations/es/processing/HashMap.es.json
new file mode 100644
index 000000000..73e573731
--- /dev/null
+++ b/content/references/translations/es/processing/HashMap.es.json
@@ -0,0 +1,45 @@
+{
+ "name": "HashMap",
+ "brief": "A HashMap stores a collection of objects, each referenced by a key",
+ "description": "A HashMap stores a collection of objects, each referenced by a key. This is similar to an Array, only instead of accessing elements with a numeric index, a String is used. (If you are familiar with associative arrays from other languages, this is the same idea.) The above example covers basic use, but there's a more extensive example included with the Processing examples. In addition, for simple pairings of Strings and integers, Strings and floats, or Strings and Strings, you can now use the simpler IntDict, FloatDict, and StringDict classes. \n \nFor a list of the numerous HashMap features, please read the Java reference description.\n",
+ "constructors": [
+ "HashMap<Key, Value>()",
+ "HashMap<Key, Value>(initialCapacity)",
+ "HashMap<Key, Value>(initialCapacity, loadFactor)",
+ "HashMap<Key, Value>(m)"
+ ],
+ "classFields": [],
+ "methods": [],
+ "related": ["IntDict", "FloatDict", "StringDict"],
+ "type": "class",
+ "classanchor": "HashMap",
+ "category": "Data",
+ "subcategory": "Composite",
+ "parameters": [
+ {
+ "name": "Key",
+ "description": "Class Name: the data type for the HashMap's keys",
+ "type": []
+ },
+ {
+ "name": "Value",
+ "description": "Class Name: the data type for the HashMap's values",
+ "type": []
+ },
+ {
+ "name": "initialCapacity",
+ "description": "int: defines the initial capacity of the map; the default is 16",
+ "type": []
+ },
+ {
+ "name": "loadFactor",
+ "description": "float: the load factor for the map; the default is 0.75",
+ "type": []
+ },
+ {
+ "name": "m",
+ "description": "Map: gives the new HashMap the same mappings as this Map",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/IntDict.es.json b/content/references/translations/es/processing/IntDict.es.json
new file mode 100644
index 000000000..fc268eeeb
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict.es.json
@@ -0,0 +1,100 @@
+{
+ "brief": "A simple class to use a String as a lookup for an int value",
+ "methods": [
+ {
+ "anchor": "IntDict_size_",
+ "name": "size()",
+ "desc": "Returns the number of key/value pairs"
+ },
+ {
+ "anchor": "IntDict_clear_",
+ "name": "clear()",
+ "desc": "Remove all entries from the data structure"
+ },
+ {
+ "anchor": "IntDict_keys_",
+ "name": "keys()",
+ "desc": "Return the internal array being used to store the keys"
+ },
+ {
+ "anchor": "IntDict_keyArray_",
+ "name": "keyArray()",
+ "desc": "Return a copy of the internal keys array"
+ },
+ {
+ "anchor": "IntDict_values_",
+ "name": "values()",
+ "desc": "Return the internal array being used to store the values"
+ },
+ {
+ "anchor": "IntDict_valueArray_",
+ "name": "valueArray()",
+ "desc": "Create a new array and copy each of the values into it"
+ },
+ {
+ "anchor": "IntDict_get_",
+ "name": "get()",
+ "desc": "Return a value for the specified key"
+ },
+ {
+ "anchor": "IntDict_set_",
+ "name": "set()",
+ "desc": "Create a new key/value pair or change the value of one"
+ },
+ {
+ "anchor": "IntDict_hasKey_",
+ "name": "hasKey()",
+ "desc": "Check if a key is a part of the data structure"
+ },
+ {
+ "anchor": "IntDict_increment_",
+ "name": "increment()",
+ "desc": "Increase the value of a specific key value by 1"
+ },
+ { "anchor": "IntDict_add_", "name": "add()", "desc": "Add to a value" },
+ {
+ "anchor": "IntDict_sub_",
+ "name": "sub()",
+ "desc": "Subtract from a value"
+ },
+ { "anchor": "IntDict_mult_", "name": "mult()", "desc": "Multiply a value" },
+ { "anchor": "IntDict_div_", "name": "div()", "desc": "Divide a value" },
+ {
+ "anchor": "IntDict_remove_",
+ "name": "remove()",
+ "desc": "Remove a key/value pair"
+ },
+ {
+ "anchor": "IntDict_sortKeys_",
+ "name": "sortKeys()",
+ "desc": "Sort the keys alphabetically"
+ },
+ {
+ "anchor": "IntDict_sortKeysReverse_",
+ "name": "sortKeysReverse()",
+ "desc": "Sort the keys alphabetically in reverse"
+ },
+ {
+ "anchor": "IntDict_sortValues_",
+ "name": "sortValues()",
+ "desc": "Sort by values in ascending order"
+ },
+ {
+ "anchor": "IntDict_sortValuesReverse_",
+ "name": "sortValuesReverse()",
+ "desc": "Sort by values in descending order"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A simple class to use a String as a lookup for an int value. String \"keys\" are \n associated with integer values.",
+ "type": "class",
+ "constructors": ["IntDict()", "IntDict(pairs)"],
+ "related": ["FloatDict", "StringDict"],
+ "name": "IntDict",
+ "classanchor": "IntDict",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_add_.es.json b/content/references/translations/es/processing/IntDict_add_.es.json
new file mode 100644
index 000000000..cd47a3a16
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_add_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add to a value",
+ "related": [],
+ "name": "add()",
+ "description": "Add to a value. If the key does not exist, an new pair is initialized \n with the value supplied.",
+ "syntax": [".add(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_clear_.es.json b/content/references/translations/es/processing/IntDict_clear_.es.json
new file mode 100644
index 000000000..b873b599d
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove all entries from the data structure",
+ "related": [],
+ "name": "clear()",
+ "description": "Remove all entries from the data structure.",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_div_.es.json b/content/references/translations/es/processing/IntDict_div_.es.json
new file mode 100644
index 000000000..e298fb770
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_div_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Divide a value",
+ "related": [],
+ "name": "div()",
+ "description": "Divide a value.",
+ "syntax": [".div(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_get_.es.json b/content/references/translations/es/processing/IntDict_get_.es.json
new file mode 100644
index 000000000..359f6ecb1
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_get_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a value for the specified key",
+ "related": [],
+ "name": "get()",
+ "description": "Return a value for the specified key.",
+ "syntax": [".get(key)", ".get(key, alternate)"],
+ "returns": "int",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_hasKey_.es.json b/content/references/translations/es/processing/IntDict_hasKey_.es.json
new file mode 100644
index 000000000..e04b51c60
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_hasKey_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check if a key is a part of the data structure",
+ "related": [],
+ "name": "hasKey()",
+ "description": "Check if a key is a part of the data structure.",
+ "syntax": [".hasKey(key)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_increment_.es.json b/content/references/translations/es/processing/IntDict_increment_.es.json
new file mode 100644
index 000000000..46d83519d
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_increment_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Increase the value of a specific key value by 1",
+ "related": [],
+ "name": "increment()",
+ "description": "Increase the value of a specific key value by 1",
+ "syntax": [".increment(key)", ".increment(dict)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_keyArray_.es.json b/content/references/translations/es/processing/IntDict_keyArray_.es.json
new file mode 100644
index 000000000..3fe35cabe
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_keyArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a copy of the internal keys array",
+ "related": [],
+ "name": "keyArray()",
+ "description": "Return a copy of the internal keys array. In contrast to the keys() \n method, this array can be modified.",
+ "syntax": [".keyArray()", ".keyArray(outgoing)"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_keys_.es.json b/content/references/translations/es/processing/IntDict_keys_.es.json
new file mode 100644
index 000000000..05a437b8e
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_keys_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the internal array being used to store the keys",
+ "related": [],
+ "name": "keys()",
+ "description": "Return the internal array being used to store the keys.",
+ "syntax": [".keys()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_mult_.es.json b/content/references/translations/es/processing/IntDict_mult_.es.json
new file mode 100644
index 000000000..dc418012c
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_mult_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Multiply a value",
+ "related": [],
+ "name": "mult()",
+ "description": "Multiply a value.",
+ "syntax": [".mult(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_remove_.es.json b/content/references/translations/es/processing/IntDict_remove_.es.json
new file mode 100644
index 000000000..e1ea5a2c3
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_remove_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove a key/value pair",
+ "related": [],
+ "name": "remove()",
+ "description": "Remove a key/value pair.",
+ "syntax": [".remove(key)"],
+ "returns": "int",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_set_.es.json b/content/references/translations/es/processing/IntDict_set_.es.json
new file mode 100644
index 000000000..f05376a33
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_set_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new key/value pair or change the value of one",
+ "related": [],
+ "name": "set()",
+ "description": "Create a new key/value pair or change the value of one.",
+ "syntax": [".set(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_size_.es.json b/content/references/translations/es/processing/IntDict_size_.es.json
new file mode 100644
index 000000000..cc919e751
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of key/value pairs",
+ "related": [],
+ "name": "size()",
+ "description": "Returns the number of key/value pairs",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_sortKeysReverse_.es.json b/content/references/translations/es/processing/IntDict_sortKeysReverse_.es.json
new file mode 100644
index 000000000..88c1a727d
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_sortKeysReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort the keys alphabetically in reverse",
+ "related": [],
+ "name": "sortKeysReverse()",
+ "description": "Sort the keys alphabetically in reverse (ignoring case). Uses the value as a\n tie-breaker (only really possible with a key that has a case change).",
+ "syntax": [".sortKeysReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_sortKeys_.es.json b/content/references/translations/es/processing/IntDict_sortKeys_.es.json
new file mode 100644
index 000000000..27a20cb1e
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_sortKeys_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort the keys alphabetically",
+ "related": [],
+ "name": "sortKeys()",
+ "description": "Sort the keys alphabetically (ignoring case). Uses the value as a\n tie-breaker (only really possible with a key that has a case change).",
+ "syntax": [".sortKeys()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_sortValuesReverse_.es.json b/content/references/translations/es/processing/IntDict_sortValuesReverse_.es.json
new file mode 100644
index 000000000..ae20e3e49
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_sortValuesReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort by values in descending order",
+ "related": [],
+ "name": "sortValuesReverse()",
+ "description": "Sort by values in descending order. The largest value will be at [0].",
+ "syntax": [".sortValuesReverse()", ".sortValuesReverse(stable)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_sortValues_.es.json b/content/references/translations/es/processing/IntDict_sortValues_.es.json
new file mode 100644
index 000000000..9e5416e5a
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_sortValues_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort by values in ascending order",
+ "related": [],
+ "name": "sortValues()",
+ "description": "Sort by values in ascending order. The smallest value will be at [0].",
+ "syntax": [".sortValues()", ".sortValues(stable)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_sub_.es.json b/content/references/translations/es/processing/IntDict_sub_.es.json
new file mode 100644
index 000000000..565aedf21
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_sub_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Subtract from a value",
+ "related": [],
+ "name": "sub()",
+ "description": "Subtract from a value.",
+ "syntax": [".sub(key, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntDict_valueArray_.es.json b/content/references/translations/es/processing/IntDict_valueArray_.es.json
new file mode 100644
index 000000000..ae70ddc02
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_valueArray_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Create a new array and copy each of the values into it",
+ "related": [],
+ "name": "valueArray()",
+ "description": "The version of this method without a parameter creates a new array and copies\n each of the values into it. The version with the int[] parameters\n fills an already-allocated array with the values (more efficient than\n creating a new array each time). If 'array' is null, or not the same size as\n the number of values, a new array will be allocated and returned.",
+ "syntax": [".valueArray()", ".valueArray(array)"],
+ "returns": "int[]",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": [
+ {
+ "name": "array",
+ "description": "values to copy into the array",
+ "type": ["int[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/IntDict_values_.es.json b/content/references/translations/es/processing/IntDict_values_.es.json
new file mode 100644
index 000000000..73e0bf5d9
--- /dev/null
+++ b/content/references/translations/es/processing/IntDict_values_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the internal array being used to store the values",
+ "related": [],
+ "name": "values()",
+ "description": "Return the internal array being used to store the values.",
+ "syntax": [".values()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "intdict",
+ "subcategory": "method",
+ "classanchor": "IntDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList.es.json b/content/references/translations/es/processing/IntList.es.json
new file mode 100644
index 000000000..de16e68af
--- /dev/null
+++ b/content/references/translations/es/processing/IntList.es.json
@@ -0,0 +1,100 @@
+{
+ "brief": "Helper class for a list of ints",
+ "methods": [
+ {
+ "anchor": "IntList_size_",
+ "name": "size()",
+ "desc": "Get the length of the list"
+ },
+ {
+ "anchor": "IntList_clear_",
+ "name": "clear()",
+ "desc": "Remove all entries from the list"
+ },
+ {
+ "anchor": "IntList_get_",
+ "name": "get()",
+ "desc": "Get an entry at a particular index"
+ },
+ {
+ "anchor": "IntList_set_",
+ "name": "set()",
+ "desc": "Set the entry at a particular index"
+ },
+ {
+ "anchor": "IntList_remove_",
+ "name": "remove()",
+ "desc": "Remove an element from the specified index"
+ },
+ {
+ "anchor": "IntList_append_",
+ "name": "append()",
+ "desc": "Add a new entry to the list"
+ },
+ {
+ "anchor": "IntList_hasValue_",
+ "name": "hasValue()",
+ "desc": "Check if a number is a part of the list"
+ },
+ {
+ "anchor": "IntList_increment_",
+ "name": "increment()",
+ "desc": "Add one to a value"
+ },
+ { "anchor": "IntList_add_", "name": "add()", "desc": "Add to a value" },
+ {
+ "anchor": "IntList_sub_",
+ "name": "sub()",
+ "desc": "Subtract from a value"
+ },
+ { "anchor": "IntList_mult_", "name": "mult()", "desc": "Multiply a value" },
+ { "anchor": "IntList_div_", "name": "div()", "desc": "Divide a value" },
+ {
+ "anchor": "IntList_min_",
+ "name": "min()",
+ "desc": "Return the smallest value"
+ },
+ {
+ "anchor": "IntList_max_",
+ "name": "max()",
+ "desc": "Return the largest value"
+ },
+ {
+ "anchor": "IntList_sort_",
+ "name": "sort()",
+ "desc": "Sorts the array, lowest to highest"
+ },
+ {
+ "anchor": "IntList_sortReverse_",
+ "name": "sortReverse()",
+ "desc": "Reverse sort, orders values from highest to lowest"
+ },
+ {
+ "anchor": "IntList_reverse_",
+ "name": "reverse()",
+ "desc": "Reverse the order of the list elements"
+ },
+ {
+ "anchor": "IntList_shuffle_",
+ "name": "shuffle()",
+ "desc": "Randomize the order of the list elements"
+ },
+ {
+ "anchor": "IntList_array_",
+ "name": "array()",
+ "desc": "Create a new array with a copy of all the values"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Helper class for a list of ints. Lists are designed to have some of the\n features of ArrayLists, but to maintain the simplicity and efficiency of\n working with arrays.\n\n Functions like sort() and shuffle() always act on the list itself. To get\n a sorted copy, use list.copy().sort().",
+ "type": "class",
+ "constructors": ["IntList()", "IntList(items)"],
+ "related": ["FloatList", "StringList"],
+ "name": "IntList",
+ "classanchor": "IntList",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_add_.es.json b/content/references/translations/es/processing/IntList_add_.es.json
new file mode 100644
index 000000000..405a07fc8
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_add_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add to a value",
+ "related": [],
+ "name": "add()",
+ "description": "Add to a value.",
+ "syntax": [".add(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_append_.es.json b/content/references/translations/es/processing/IntList_append_.es.json
new file mode 100644
index 000000000..376ffa0a1
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_append_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add a new entry to the list",
+ "related": [],
+ "name": "append()",
+ "description": "Add a new entry to the list.",
+ "syntax": [".append(value)", ".append(values)", ".append(list)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_array_.es.json b/content/references/translations/es/processing/IntList_array_.es.json
new file mode 100644
index 000000000..b429c294f
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_array_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new array with a copy of all the values",
+ "related": [],
+ "name": "array()",
+ "description": "Create a new array with a copy of all the values.",
+ "syntax": [".array()", ".array(array)"],
+ "returns": "int[]",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_clear_.es.json b/content/references/translations/es/processing/IntList_clear_.es.json
new file mode 100644
index 000000000..64b6a23b4
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove all entries from the list",
+ "related": [],
+ "name": "clear()",
+ "description": "Remove all entries from the list.",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_div_.es.json b/content/references/translations/es/processing/IntList_div_.es.json
new file mode 100644
index 000000000..bf7d26de4
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_div_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Divide a value",
+ "related": [],
+ "name": "div()",
+ "description": "Divide a value.",
+ "syntax": [".div(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_get_.es.json b/content/references/translations/es/processing/IntList_get_.es.json
new file mode 100644
index 000000000..5c6b2ee5c
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_get_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get an entry at a particular index",
+ "related": [],
+ "name": "get()",
+ "description": "Get an entry at a particular index.",
+ "syntax": [".get(index)"],
+ "returns": "int",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_hasValue_.es.json b/content/references/translations/es/processing/IntList_hasValue_.es.json
new file mode 100644
index 000000000..de7bd66be
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_hasValue_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check if a number is a part of the list",
+ "related": [],
+ "name": "hasValue()",
+ "description": "Check if a number is a part of the data structure.",
+ "syntax": [".hasValue(value)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_increment_.es.json b/content/references/translations/es/processing/IntList_increment_.es.json
new file mode 100644
index 000000000..e6a96c108
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_increment_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add one to a value",
+ "related": [],
+ "name": "increment()",
+ "description": "Add one to a value.",
+ "syntax": [".increment(index)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_max_.es.json b/content/references/translations/es/processing/IntList_max_.es.json
new file mode 100644
index 000000000..3b8f89a7f
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_max_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the largest value",
+ "related": [],
+ "name": "max()",
+ "description": "Return the largest value.",
+ "syntax": [".max()"],
+ "returns": "int",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_min_.es.json b/content/references/translations/es/processing/IntList_min_.es.json
new file mode 100644
index 000000000..caa66d50c
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_min_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the smallest value",
+ "related": [],
+ "name": "min()",
+ "description": "Return the smallest value.",
+ "syntax": [".min()"],
+ "returns": "int",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_mult_.es.json b/content/references/translations/es/processing/IntList_mult_.es.json
new file mode 100644
index 000000000..6b1561b3e
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_mult_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Multiply a value",
+ "related": [],
+ "name": "mult()",
+ "description": "Multiply a value.",
+ "syntax": [".mult(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_remove_.es.json b/content/references/translations/es/processing/IntList_remove_.es.json
new file mode 100644
index 000000000..6da944a6e
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_remove_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove an element from the specified index",
+ "related": [],
+ "name": "remove()",
+ "description": "Remove an element from the specified index",
+ "syntax": [".remove(index)"],
+ "returns": "int",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_reverse_.es.json b/content/references/translations/es/processing/IntList_reverse_.es.json
new file mode 100644
index 000000000..555ab6bd4
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_reverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Reverse the order of the list elements",
+ "related": [],
+ "name": "reverse()",
+ "description": "Reverse the order of the list.",
+ "syntax": [".reverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_set_.es.json b/content/references/translations/es/processing/IntList_set_.es.json
new file mode 100644
index 000000000..0d4b951a7
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_set_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Set the entry at a particular index",
+ "related": [],
+ "name": "set()",
+ "description": "Set the entry at a particular index.",
+ "syntax": [".set(index, what)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_shuffle_.es.json b/content/references/translations/es/processing/IntList_shuffle_.es.json
new file mode 100644
index 000000000..64e241b1a
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_shuffle_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Randomize the order of the list elements",
+ "related": [],
+ "name": "shuffle()",
+ "description": "Randomize the order of the list elements.",
+ "syntax": [".shuffle()", ".shuffle(sketch)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_size_.es.json b/content/references/translations/es/processing/IntList_size_.es.json
new file mode 100644
index 000000000..aac60e4ae
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get the length of the list",
+ "related": [],
+ "name": "size()",
+ "description": "Get the length of the list.",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_sortReverse_.es.json b/content/references/translations/es/processing/IntList_sortReverse_.es.json
new file mode 100644
index 000000000..d9eb1db57
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_sortReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Reverse sort, orders values from highest to lowest",
+ "related": [],
+ "name": "sortReverse()",
+ "description": "A sort in reverse. It's equivalent to running sort() and then \n reverse(), but is more efficient than running each separately.",
+ "syntax": [".sortReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_sort_.es.json b/content/references/translations/es/processing/IntList_sort_.es.json
new file mode 100644
index 000000000..6df18e88a
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_sort_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sorts the array, lowest to highest",
+ "related": [],
+ "name": "sort()",
+ "description": "Sorts the array, lowest to highest.",
+ "syntax": [".sort()"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/IntList_sub_.es.json b/content/references/translations/es/processing/IntList_sub_.es.json
new file mode 100644
index 000000000..6b9f8c987
--- /dev/null
+++ b/content/references/translations/es/processing/IntList_sub_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Subtract from a value",
+ "related": [],
+ "name": "sub()",
+ "description": "Subtract from a value.",
+ "syntax": [".sub(index, amount)"],
+ "returns": "void",
+ "type": "method",
+ "category": "intlist",
+ "subcategory": "method",
+ "classanchor": "IntList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/JSONArray.es.json b/content/references/translations/es/processing/JSONArray.es.json
new file mode 100644
index 000000000..8675d1981
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray.es.json
@@ -0,0 +1,113 @@
+{
+ "brief": "A JSONArray is an ordered sequence of values",
+ "methods": [
+ {
+ "anchor": "JSONArray_getString_",
+ "name": "getString()",
+ "desc": "Gets the String value associated with an index"
+ },
+ {
+ "anchor": "JSONArray_getInt_",
+ "name": "getInt()",
+ "desc": "Gets the int value associated with the specified index"
+ },
+ {
+ "anchor": "JSONArray_getFloat_",
+ "name": "getFloat()",
+ "desc": "Gets the float value associated with the specified index"
+ },
+ {
+ "anchor": "JSONArray_getBoolean_",
+ "name": "getBoolean()",
+ "desc": "Gets the boolean value associated with the specified index"
+ },
+ {
+ "anchor": "JSONArray_getJSONArray_",
+ "name": "getJSONArray()",
+ "desc": "Retrieves the JSONArray with the associated index value"
+ },
+ {
+ "anchor": "JSONArray_getJSONObject_",
+ "name": "getJSONObject()",
+ "desc": "Retrieves the JSONObject with the associated index value"
+ },
+ {
+ "anchor": "JSONArray_getStringArray_",
+ "name": "getStringArray()",
+ "desc": "Returns the entire JSONArray as an array of Strings"
+ },
+ {
+ "anchor": "JSONArray_getIntArray_",
+ "name": "getIntArray()",
+ "desc": "Returns the entire JSONArray as an array of ints"
+ },
+ {
+ "anchor": "JSONArray_append_",
+ "name": "append()",
+ "desc": "Appends a value, increasing the array's length by one"
+ },
+ {
+ "anchor": "JSONArray_setString_",
+ "name": "setString()",
+ "desc": "Inserts a new value into the JSONArray at the specified index position"
+ },
+ {
+ "anchor": "JSONArray_setInt_",
+ "name": "setInt()",
+ "desc": "Put an int value in the JSONArray"
+ },
+ {
+ "anchor": "JSONArray_setFloat_",
+ "name": "setFloat()",
+ "desc": "Put a float value in the JSONArray"
+ },
+ {
+ "anchor": "JSONArray_setBoolean_",
+ "name": "setBoolean()",
+ "desc": "Inserts a new value into the JSONArray at the specified index position"
+ },
+ {
+ "anchor": "JSONArray_setJSONArray_",
+ "name": "setJSONArray()",
+ "desc": "Sets the value of the JSONArray with the associated index value"
+ },
+ {
+ "anchor": "JSONArray_setJSONObject_",
+ "name": "setJSONObject()",
+ "desc": "Sets the value of the JSONObject with the index value"
+ },
+ {
+ "anchor": "JSONArray_size_",
+ "name": "size()",
+ "desc": "Gets the total number of elements in a JSONArray"
+ },
+ {
+ "anchor": "JSONArray_isNull_",
+ "name": "isNull()",
+ "desc": "Determines if the value associated with the index is null"
+ },
+ {
+ "anchor": "JSONArray_remove_",
+ "name": "remove()",
+ "desc": "Removes the element from a JSONArray in the specified index position"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A JSONArray stores an array of JSON objects. JSONArrays can \n be generated from scratch, dynamically, or using data from an existing file. \n JSON can also be output and saved to disk, as in the example above.\n \n ",
+ "type": "class",
+ "constructors": ["JSONArray()"],
+ "related": [
+ "JSONObject",
+ "loadJSONObject_",
+ "loadJSONArray_",
+ "saveJSONObject_",
+ "saveJSONArray_"
+ ],
+ "name": "JSONArray",
+ "classanchor": "JSONArray",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/JSONArray_append_.es.json b/content/references/translations/es/processing/JSONArray_append_.es.json
new file mode 100644
index 000000000..cccf13d42
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_append_.es.json
@@ -0,0 +1,44 @@
+{
+ "brief": "Appends a value, increasing the array's length by one",
+ "related": ["JSONArray_size_", "JSONArray_remove_"],
+ "name": "append()",
+ "description": "Appends a new value to the JSONArray, increasing the array's length \n by one. New values may be of the following types: int, float, String, \n boolean, JSONObject, or JSONArray.",
+ "syntax": [".append(value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "a String value",
+ "type": ["String", "int", "float", "boolean", "JSONArray", "JSONObject"]
+ },
+ {
+ "name": "value",
+ "description": "an int value",
+ "type": ["int", "JSONObject", "float", "boolean", "JSONArray"]
+ },
+ {
+ "name": "value",
+ "description": "a float value",
+ "type": ["float", "JSONObject", "JSONArray", "boolean"]
+ },
+ {
+ "name": "value",
+ "description": "a boolean value",
+ "type": ["boolean", "JSONObject", "JSONArray"]
+ },
+ {
+ "name": "value",
+ "description": "a JSONArray value",
+ "type": ["JSONArray", "JSONObject", "boolean"]
+ },
+ {
+ "name": "value",
+ "description": "a JSONObject value",
+ "type": ["JSONObject", "JSONArray", "boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_getBoolean_.es.json b/content/references/translations/es/processing/JSONArray_getBoolean_.es.json
new file mode 100644
index 000000000..4d49f7c81
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getBoolean_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Gets the boolean value associated with the specified index",
+ "related": [
+ "JSONArray_getInt_",
+ "JSONArray_getFloat_",
+ "JSONArray_getString_"
+ ],
+ "name": "getBoolean()",
+ "description": "Gets the boolean value associated with the specified index.",
+ "syntax": [".getBoolean(index)", ".getBoolean(index, defaultValue)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "must be between 0 and length() - 1",
+ "type": ["int"]
+ },
+ {
+ "name": "index",
+ "description": "The index must be between 0 and length() - 1.",
+ "type": ["int"]
+ },
+ {
+ "name": "defaultValue",
+ "description": "A boolean default.",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_getFloat_.es.json b/content/references/translations/es/processing/JSONArray_getFloat_.es.json
new file mode 100644
index 000000000..83662fab2
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getFloat_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Gets the float value associated with the specified index",
+ "related": [
+ "JSONArray_getInt_",
+ "JSONArray_getString_",
+ "JSONArray_getBoolean_"
+ ],
+ "name": "getFloat()",
+ "description": "Gets the float value associated with the specified index.",
+ "syntax": [".getFloat(index)", ".getFloat(index, defaultValue)"],
+ "returns": "float",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "must be between 0 and length() - 1",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_getIntArray_.es.json b/content/references/translations/es/processing/JSONArray_getIntArray_.es.json
new file mode 100644
index 000000000..8f36bcfab
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getIntArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the entire JSONArray as an array of ints",
+ "related": ["JSONArray_getStringArray_"],
+ "name": "getIntArray()",
+ "description": "Returns the entire JSONArray as an array of ints. \n (All values in the array must be of the int type.)",
+ "syntax": [".getIntArray()"],
+ "returns": "int[]",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/JSONArray_getInt_.es.json b/content/references/translations/es/processing/JSONArray_getInt_.es.json
new file mode 100644
index 000000000..499fbc5e3
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getInt_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Gets the int value associated with the specified index",
+ "related": [
+ "JSONArray_getFloat_",
+ "JSONArray_getString_",
+ "JSONArray_getBoolean_"
+ ],
+ "name": "getInt()",
+ "description": "Gets the int value associated with the specified index.",
+ "syntax": [".getInt(index)", ".getInt(index, defaultValue)"],
+ "returns": "int",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "must be between 0 and length() - 1",
+ "type": ["int"]
+ },
+ {
+ "name": "index",
+ "description": "The index must be between 0 and length() - 1.",
+ "type": ["int"]
+ },
+ {
+ "name": "defaultValue",
+ "description": "The default value.",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_getJSONArray_.es.json b/content/references/translations/es/processing/JSONArray_getJSONArray_.es.json
new file mode 100644
index 000000000..af3aeae91
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getJSONArray_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Retrieves the JSONArray with the associated index value",
+ "related": [
+ "JSONArray_getJSONObject_",
+ "JSONArray_setJSONObject_",
+ "JSONArray_setJSONArray_"
+ ],
+ "name": "getJSONArray()",
+ "description": "Retrieves the JSONArray with the associated index value.",
+ "syntax": [".getJSONArray(index)", ".getJSONArray(index, defaultValue)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "must be between 0 and length() - 1",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_getJSONObject_.es.json b/content/references/translations/es/processing/JSONArray_getJSONObject_.es.json
new file mode 100644
index 000000000..3f8ac25eb
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getJSONObject_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Retrieves the JSONObject with the associated index value",
+ "related": [
+ "JSONArray_getJSONArray_",
+ "JSONArray_setJSONObject_",
+ "JSONArray_setJSONArray_"
+ ],
+ "name": "getJSONObject()",
+ "description": "Retrieves the JSONObject with the associated index value.",
+ "syntax": [".getJSONObject(index)", ".getJSONObject(index, defaultValue)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "the index value of the object to get",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_getStringArray_.es.json b/content/references/translations/es/processing/JSONArray_getStringArray_.es.json
new file mode 100644
index 000000000..605cefda7
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getStringArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the entire JSONArray as an array of Strings",
+ "related": ["JSONArray_getIntArray_"],
+ "name": "getStringArray()",
+ "description": "Returns the entire JSONArray as an array of Strings. \n (All values in the array must be of the String type.)",
+ "syntax": [".getStringArray()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/JSONArray_getString_.es.json b/content/references/translations/es/processing/JSONArray_getString_.es.json
new file mode 100644
index 000000000..e3eee31de
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_getString_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Gets the String value associated with an index",
+ "related": [
+ "JSONArray_getInt_",
+ "JSONArray_getFloat_",
+ "JSONArray_getBoolean_"
+ ],
+ "name": "getString()",
+ "description": "Gets the String value associated with the specified index.",
+ "syntax": [".getString(index)", ".getString(index, defaultValue)"],
+ "returns": "String",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "must be between 0 and length() - 1",
+ "type": ["int"]
+ },
+ {
+ "name": "index",
+ "description": "The index must be between 0 and length() - 1.",
+ "type": ["int"]
+ },
+ {
+ "name": "defaultValue",
+ "description": "The default value.",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_isNull_.es.json b/content/references/translations/es/processing/JSONArray_isNull_.es.json
new file mode 100644
index 000000000..10ba87575
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_isNull_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Determines if the value associated with the index is null",
+ "related": [],
+ "name": "isNull()",
+ "description": "Determines if the value associated with the index is null, that is has\n no defined value (false) or if it has a value (true).",
+ "syntax": [".isNull(index)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "",
+ "subcategory": "",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "must be between 0 and length() - 1",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_remove_.es.json b/content/references/translations/es/processing/JSONArray_remove_.es.json
new file mode 100644
index 000000000..8257e8529
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_remove_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Removes the element from a JSONArray in the specified index position",
+ "related": ["JSONArray_size_", "JSONArray_append_"],
+ "name": "remove()",
+ "description": "Removes the element from a JSONArray in the specified index position. \n Returns either the value associated with the given index, or null, if there \n is no value.",
+ "syntax": [".remove(index)"],
+ "returns": "Object",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "the index value of the element to be removed",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_setBoolean_.es.json b/content/references/translations/es/processing/JSONArray_setBoolean_.es.json
new file mode 100644
index 000000000..24664a423
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_setBoolean_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Inserts a new value into the JSONArray at the specified index position",
+ "related": [
+ "JSONArray_setInt_",
+ "JSONArray_setFloat_",
+ "JSONArray_setString_"
+ ],
+ "name": "setBoolean()",
+ "description": "Inserts a new value into the JSONArray at the specified index \n position. If a value already exists in the specified position, the \n new value overwrites the old value. If the given index is greater \n than the length of the JSONArray, then null elements will be \n added as necessary to pad it out.",
+ "syntax": [".setBoolean(index, value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ { "name": "index", "description": "an index value", "type": ["int"] },
+ {
+ "name": "value",
+ "description": "the value to assign",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_setFloat_.es.json b/content/references/translations/es/processing/JSONArray_setFloat_.es.json
new file mode 100644
index 000000000..6cdb7b39c
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_setFloat_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Put a float value in the JSONArray",
+ "related": [
+ "JSONArray_setInt_",
+ "JSONArray_setString_",
+ "JSONArray_setBoolean_"
+ ],
+ "name": "setFloat()",
+ "description": "Inserts a new value into the JSONArray at the specified index \n position. If a value already exists in the specified position, the \n new value overwrites the old value. If the given index is greater \n than the length of the JSONArray, then null elements will be \n added as necessary to pad it out.",
+ "syntax": [".setFloat(index, value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ { "name": "index", "description": "an index value", "type": ["int"] },
+ { "name": "value", "description": "the value to assign", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_setInt_.es.json b/content/references/translations/es/processing/JSONArray_setInt_.es.json
new file mode 100644
index 000000000..8baabe08e
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_setInt_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Put an int value in the JSONArray",
+ "related": [
+ "JSONArray_setFloat_",
+ "JSONArray_setString_",
+ "JSONArray_setBoolean_"
+ ],
+ "name": "setInt()",
+ "description": "Inserts a new value into the JSONArray at the specified index \n position. If a value already exists in the specified position, the \n new value overwrites the old value. If the given index is greater \n than the length of the JSONArray, then null elements will be \n added as necessary to pad it out.",
+ "syntax": [".setInt(index, value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ { "name": "index", "description": "an index value", "type": ["int"] },
+ { "name": "value", "description": "the value to assign", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_setJSONArray_.es.json b/content/references/translations/es/processing/JSONArray_setJSONArray_.es.json
new file mode 100644
index 000000000..20208933c
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_setJSONArray_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Sets the value of the JSONArray with the associated index value",
+ "related": [
+ "JSONArray_setJSONObject_",
+ "JSONArray_getJSONObject_",
+ "JSONArray_getJSONArray_"
+ ],
+ "name": "setJSONArray()",
+ "description": "Sets the value of the JSONArray with the associated index value.",
+ "syntax": [".setJSONArray(index, value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "the index value to target",
+ "type": ["int"]
+ },
+ {
+ "name": "value",
+ "description": "the value to assign",
+ "type": ["JSONArray"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_setJSONObject_.es.json b/content/references/translations/es/processing/JSONArray_setJSONObject_.es.json
new file mode 100644
index 000000000..22a3d7044
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_setJSONObject_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Sets the value of the JSONObject with the index value",
+ "related": [
+ "JSONArray_setJSONArray_",
+ "JSONArray_getJSONObject_",
+ "JSONArray_getJSONArray_"
+ ],
+ "name": "setJSONObject()",
+ "description": "Sets the value of the JSONObject with the index value.",
+ "syntax": [".setJSONObject(index, value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ {
+ "name": "index",
+ "description": "the index value to target",
+ "type": ["int"]
+ },
+ {
+ "name": "value",
+ "description": "the value to assign",
+ "type": ["JSONObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_setString_.es.json b/content/references/translations/es/processing/JSONArray_setString_.es.json
new file mode 100644
index 000000000..fe7bc2bc9
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_setString_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Inserts a new value into the JSONArray at the specified index position",
+ "related": [
+ "JSONArray_setInt_",
+ "JSONArray_setFloat_",
+ "JSONArray_setBoolean_"
+ ],
+ "name": "setString()",
+ "description": "Inserts a new value into the JSONArray at the specified index \n position. If a value already exists in the specified position, the new \n value overwrites the old value. If the given index is greater than the \n length of the JSONArray, then null elements will be added as \n necessary to pad it out.",
+ "syntax": [".setString(index, value)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": [
+ { "name": "index", "description": "an index value", "type": ["int"] },
+ {
+ "name": "value",
+ "description": "the value to assign",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONArray_size_.es.json b/content/references/translations/es/processing/JSONArray_size_.es.json
new file mode 100644
index 000000000..cd6d6aeb3
--- /dev/null
+++ b/content/references/translations/es/processing/JSONArray_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets the total number of elements in a JSONArray",
+ "related": ["JSONArray_append_", "JSONArray_remove_"],
+ "name": "size()",
+ "description": "Gets the total number of elements in a JSONArray (inclusive of null elements).",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "jsonarray",
+ "subcategory": "method",
+ "classanchor": "JSONArray",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/JSONObject.es.json b/content/references/translations/es/processing/JSONObject.es.json
new file mode 100644
index 000000000..dc46f804f
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject.es.json
@@ -0,0 +1,88 @@
+{
+ "brief": "A JSONObject is an unordered collection of name/value pairs",
+ "methods": [
+ {
+ "anchor": "JSONObject_getString_",
+ "name": "getString()",
+ "desc": "Gets the String value associated with the specified key"
+ },
+ {
+ "anchor": "JSONObject_getInt_",
+ "name": "getInt()",
+ "desc": "Gets the int value associated with the specified key"
+ },
+ {
+ "anchor": "JSONObject_getFloat_",
+ "name": "getFloat()",
+ "desc": "Gets the float value associated with a key"
+ },
+ {
+ "anchor": "JSONObject_getBoolean_",
+ "name": "getBoolean()",
+ "desc": "Gets the boolean value associated with the specified key"
+ },
+ {
+ "anchor": "JSONObject_getJSONArray_",
+ "name": "getJSONArray()",
+ "desc": "Retrieves the JSONArray with the associated key"
+ },
+ {
+ "anchor": "JSONObject_getJSONObject_",
+ "name": "getJSONObject()",
+ "desc": "Given a key value, retrieves the associated JSONObject"
+ },
+ {
+ "anchor": "JSONObject_isNull_",
+ "name": "isNull()",
+ "desc": "Determines if the value associated with the key is null, that is has \n no defined value (false) or if it has a value (true)"
+ },
+ {
+ "anchor": "JSONObject_setString_",
+ "name": "setString()",
+ "desc": "Inserts a new key/String pair into the JSONObject"
+ },
+ {
+ "anchor": "JSONObject_setInt_",
+ "name": "setInt()",
+ "desc": "Inserts a new key/int pair into the JSONObject"
+ },
+ {
+ "anchor": "JSONObject_setFloat_",
+ "name": "setFloat()",
+ "desc": "Put a key/float pair in the JSONObject"
+ },
+ {
+ "anchor": "JSONObject_setBoolean_",
+ "name": "setBoolean()",
+ "desc": "Put a key/boolean pair in the JSONObject"
+ },
+ {
+ "anchor": "JSONObject_setJSONObject_",
+ "name": "setJSONObject()",
+ "desc": "Sets the value of the JSONObject with the associated key"
+ },
+ {
+ "anchor": "JSONObject_setJSONArray_",
+ "name": "setJSONArray()",
+ "desc": "Sets the value of the JSONArray with the associated key"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A JSONObject stores JSON data with multiple name/value pairs. Values\n can be numeric, Strings, booleans, other JSONObjects or\n JSONArrays, or null. JSONObject and JSONArray objects\n are quite similar and share most of the same methods; the primary difference\n is that the latter stores an array of JSON objects, while the former\n represents a single JSON object. \n \n JSON can be generated from scratch, dynamically, or using data from an\n existing file. JSON can also be output and saved to disk, as in the example\n above.\n \n ",
+ "type": "class",
+ "constructors": [],
+ "related": [
+ "JSONArray",
+ "loadJSONObject_",
+ "loadJSONArray_",
+ "saveJSONObject_",
+ "saveJSONArray_"
+ ],
+ "name": "JSONObject",
+ "classanchor": "JSONObject",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/JSONObject_getBoolean_.es.json b/content/references/translations/es/processing/JSONObject_getBoolean_.es.json
new file mode 100644
index 000000000..b8211ff1b
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_getBoolean_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Gets the boolean value associated with the specified key",
+ "related": [
+ "JSONObject_getInt_",
+ "JSONObject_getFloat_",
+ "JSONObject_getString_"
+ ],
+ "name": "getBoolean()",
+ "description": "Gets the boolean value associated with the specified key.",
+ "syntax": [".getBoolean(key)", ".getBoolean(key, defaultValue)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ { "name": "key", "description": "A key string.", "type": ["String"] },
+ {
+ "name": "defaultValue",
+ "description": "The default.",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_getFloat_.es.json b/content/references/translations/es/processing/JSONObject_getFloat_.es.json
new file mode 100644
index 000000000..89c5faab9
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_getFloat_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Gets the float value associated with a key",
+ "related": [
+ "JSONObject_getInt_",
+ "JSONObject_getString_",
+ "JSONObject_getBoolean_"
+ ],
+ "name": "getFloat()",
+ "description": "Gets the float value associated with the specified key",
+ "syntax": [".getFloat(key)", ".getFloat(key, defaultValue)"],
+ "returns": "float",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_getInt_.es.json b/content/references/translations/es/processing/JSONObject_getInt_.es.json
new file mode 100644
index 000000000..e15201da8
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_getInt_.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "Gets the int value associated with the specified key",
+ "related": [
+ "JSONObject_getFloat_",
+ "JSONObject_getString_",
+ "JSONObject_getBoolean_"
+ ],
+ "name": "getInt()",
+ "description": "Gets the int value associated with the specified key.",
+ "syntax": [".getInt(key)", ".getInt(key, defaultValue)"],
+ "returns": "int",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "A key string.", "type": ["String"] },
+ { "name": "key", "description": "A key string.", "type": ["String"] },
+ { "name": "defaultValue", "description": "The default.", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_getJSONArray_.es.json b/content/references/translations/es/processing/JSONObject_getJSONArray_.es.json
new file mode 100644
index 000000000..8c92b5364
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_getJSONArray_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Retrieves the JSONArray with the associated key",
+ "related": [
+ "JSONObject_getJSONObject_",
+ "JSONObject_setJSONObject_",
+ "JSONObject_setJSONArray_"
+ ],
+ "name": "getJSONArray()",
+ "description": "Retrieves the JSONArray with the associated key.",
+ "syntax": [".getJSONArray(key)"],
+ "returns": "JSONArray",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_getJSONObject_.es.json b/content/references/translations/es/processing/JSONObject_getJSONObject_.es.json
new file mode 100644
index 000000000..42ee316c0
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_getJSONObject_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Given a key value, retrieves the associated JSONObject",
+ "related": [
+ "JSONObject_getJSONArray_",
+ "JSONObject_setJSONObject_",
+ "JSONObject_setJSONArray_"
+ ],
+ "name": "getJSONObject()",
+ "description": "Given a key value, retrieves the associated JSONObject.",
+ "syntax": [".getJSONObject(key)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_getString_.es.json b/content/references/translations/es/processing/JSONObject_getString_.es.json
new file mode 100644
index 000000000..d24d9760c
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_getString_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Gets the String value associated with the specified key",
+ "related": [
+ "JSONObject_getInt_",
+ "JSONObject_getFloat_",
+ "JSONObject_getBoolean_"
+ ],
+ "name": "getString()",
+ "description": "Gets the String value associated with the specified key.",
+ "syntax": [".getString(key)", ".getString(key, defaultValue)"],
+ "returns": "String",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ { "name": "key", "description": "A key string.", "type": ["String"] },
+ {
+ "name": "defaultValue",
+ "description": "The default.",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_isNull_.es.json b/content/references/translations/es/processing/JSONObject_isNull_.es.json
new file mode 100644
index 000000000..43193fc7c
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_isNull_.es.json
@@ -0,0 +1,15 @@
+{
+ "brief": "Determines if the value associated with the key is null, that is has \n no defined value (false) or if it has a value (true)",
+ "related": [],
+ "name": "isNull()",
+ "description": "Determines if the value associated with the key is null, that is has \n no defined value (false) or if it has a value (true).",
+ "syntax": [".isNull(key)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "",
+ "subcategory": "",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "A key string.", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_setBoolean_.es.json b/content/references/translations/es/processing/JSONObject_setBoolean_.es.json
new file mode 100644
index 000000000..0b55c684d
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_setBoolean_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Put a key/boolean pair in the JSONObject",
+ "related": [
+ "JSONObject_setInt_",
+ "JSONObject_setFloat_",
+ "JSONObject_setString_"
+ ],
+ "name": "setBoolean()",
+ "description": "Inserts a new key/boolean pair into the JSONObject or, if a value \n with the specified key already exists, assigns a new value.",
+ "syntax": [".setBoolean(key, value)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ {
+ "name": "value",
+ "description": "the value to assign",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_setFloat_.es.json b/content/references/translations/es/processing/JSONObject_setFloat_.es.json
new file mode 100644
index 000000000..edf34da53
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_setFloat_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Put a key/float pair in the JSONObject",
+ "related": [
+ "JSONObject_setInt_",
+ "JSONObject_setString_",
+ "JSONObject_setBoolean_"
+ ],
+ "name": "setFloat()",
+ "description": "Inserts a new key/float pair into the JSONObject or, if a value with \n the specified key already exists, assigns a new value.",
+ "syntax": [".setFloat(key, value)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ { "name": "value", "description": "the value to assign", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_setInt_.es.json b/content/references/translations/es/processing/JSONObject_setInt_.es.json
new file mode 100644
index 000000000..12cdcac86
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_setInt_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Inserts a new key/int pair into the JSONObject",
+ "related": [
+ "JSONObject_setFloat_",
+ "JSONObject_setString_",
+ "JSONObject_setBoolean_"
+ ],
+ "name": "setInt()",
+ "description": "Inserts a new key/int pair into the JSONObject or, if a value with \n the specified key already exists, assigns a new value.",
+ "syntax": [".setInt(key, value)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ { "name": "value", "description": "the value to assign", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_setJSONArray_.es.json b/content/references/translations/es/processing/JSONObject_setJSONArray_.es.json
new file mode 100644
index 000000000..e827666a3
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_setJSONArray_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Sets the value of the JSONArray with the associated key",
+ "related": [
+ "JSONObject_setJSONObject_",
+ "JSONObject_getJSONObject_",
+ "JSONObject_getJSONArray_"
+ ],
+ "name": "setJSONArray()",
+ "description": "Sets the value of the JSONArray with the associated key.",
+ "syntax": [".setJSONArray(key, value)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ { "name": "value", "description": "value to assign", "type": ["JSONArray"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_setJSONObject_.es.json b/content/references/translations/es/processing/JSONObject_setJSONObject_.es.json
new file mode 100644
index 000000000..8af023428
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_setJSONObject_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Sets the value of the JSONObject with the associated key",
+ "related": [
+ "JSONObject_setJSONArray_",
+ "JSONObject_getJSONObject_",
+ "JSONObject_getJSONArray_"
+ ],
+ "name": "setJSONObject()",
+ "description": "Sets the value of the JSONObject with the associated key.",
+ "syntax": [".setJSONObject(key, value)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ {
+ "name": "value",
+ "description": "value to assign",
+ "type": ["JSONObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/JSONObject_setString_.es.json b/content/references/translations/es/processing/JSONObject_setString_.es.json
new file mode 100644
index 000000000..0f8267c0c
--- /dev/null
+++ b/content/references/translations/es/processing/JSONObject_setString_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Inserts a new key/String pair into the JSONObject",
+ "related": [
+ "JSONObject_setInt_",
+ "JSONObject_setFloat_",
+ "JSONObject_setBoolean_"
+ ],
+ "name": "setString()",
+ "description": "Inserts a new key/String pair into the JSONObject or, if a value with \n the specified key already exists, assigns a new value.",
+ "syntax": [".setString(key, value)"],
+ "returns": "JSONObject",
+ "type": "method",
+ "category": "jsonobject",
+ "subcategory": "method",
+ "classanchor": "JSONObject",
+ "parameters": [
+ { "name": "key", "description": "a key string", "type": ["String"] },
+ {
+ "name": "value",
+ "description": "the value to assign",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Object.es.json b/content/references/translations/es/processing/Object.es.json
new file mode 100644
index 000000000..b5868d234
--- /dev/null
+++ b/content/references/translations/es/processing/Object.es.json
@@ -0,0 +1,25 @@
+{
+ "name": "Object",
+ "brief": "Objects are instances of classes",
+ "description": "Objects are instances of classes. A class is a grouping of related methods (functions) and fields (variables and constants).\n",
+ "constructors": [],
+ "classFields": [],
+ "methods": [],
+ "related": ["class"],
+ "type": "class",
+ "classanchor": "Object",
+ "category": "Data",
+ "subcategory": "Composite",
+ "parameters": [
+ {
+ "name": "ClassName",
+ "description": "the class from which to create the new object",
+ "type": []
+ },
+ {
+ "name": "instanceName",
+ "description": "the name for the new object",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PFont.es.json b/content/references/translations/es/processing/PFont.es.json
new file mode 100644
index 000000000..aa3383cbb
--- /dev/null
+++ b/content/references/translations/es/processing/PFont.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Grayscale bitmap font class used by Processing",
+ "constructors": [],
+ "related": ["loadFont_", "createFont_", "PGraphics_textFont_"],
+ "methods": [
+ {
+ "anchor": "PFont_list_",
+ "name": "list()",
+ "desc": "Gets a list of the fonts installed on the system"
+ }
+ ],
+ "name": "PFont",
+ "classFields": [],
+ "description": "PFont is the font class for Processing. To create a font to use with\n Processing, select \"Create Font...\" from the Tools menu. This will create a\n font in the format Processing requires and also adds it to the current\n sketch's data directory. Processing displays fonts using the .vlw font\n format, which uses images for each letter, rather than defining them through\n vector data. The loadFont() function constructs a new font and\n textFont() makes a font active. The list() method creates a\n list of the fonts installed on the computer, which is useful information to\n use with the createFont() function for dynamically converting fonts\n into a format to use with Processing. \n \n To create a new font dynamically, use the createFont() function. Do\n not use the syntax new PFont().\n\n ",
+ "type": "class",
+ "classanchor": "PFont",
+ "category": "typography",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PFont_list_.es.json b/content/references/translations/es/processing/PFont_list_.es.json
new file mode 100644
index 000000000..7a9a5ff62
--- /dev/null
+++ b/content/references/translations/es/processing/PFont_list_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets a list of the fonts installed on the system",
+ "related": [],
+ "name": "list()",
+ "description": "Gets a list of the fonts installed on the system. The data is returned as a\n String array. This list provides the names of each font for input into\n createFont(), which allows Processing to dynamically format fonts.",
+ "syntax": [".list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "pfont",
+ "subcategory": "",
+ "classanchor": "PFont",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PGraphics.es.json b/content/references/translations/es/processing/PGraphics.es.json
new file mode 100644
index 000000000..11d74a233
--- /dev/null
+++ b/content/references/translations/es/processing/PGraphics.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Main graphics and rendering context, as well as the base API\n implementation for processing \"core\"",
+ "constructors": ["PGraphics()"],
+ "related": ["createGraphics_"],
+ "methods": [
+ {
+ "anchor": "PGraphics_beginDraw_",
+ "name": "beginDraw()",
+ "desc": "Sets the default properties for a PGraphics object"
+ },
+ {
+ "anchor": "PGraphics_endDraw_",
+ "name": "endDraw()",
+ "desc": "Finalizes the rendering of a PGraphics object so that it can be shown on screen"
+ }
+ ],
+ "name": "PGraphics",
+ "classFields": [],
+ "description": "Main graphics and rendering context, as well as the base API implementation\n for processing \"core\". Use this class if you need to draw into an off-screen\n graphics buffer. A PGraphics object can be constructed with the\n createGraphics() function. The beginDraw() and endDraw()\n methods (see above example) are necessary to set up the buffer and to\n finalize it. The fields and methods for this class are extensive. For a\n complete list, visit the\n developer's\n reference. \n \n To create a new graphics context, use the createGraphics() function.\n Do not use the syntax new PGraphics().\n\n ",
+ "type": "class",
+ "classanchor": "PGraphics",
+ "category": "rendering",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PGraphics_beginDraw_.es.json b/content/references/translations/es/processing/PGraphics_beginDraw_.es.json
new file mode 100644
index 000000000..16fd47e58
--- /dev/null
+++ b/content/references/translations/es/processing/PGraphics_beginDraw_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Sets the default properties for a PGraphics object",
+ "related": [],
+ "name": "beginDraw()",
+ "description": "Sets the default properties for a PGraphics object. It should be called\n before anything is drawn into the object.\n\n ",
+ "syntax": ["graphics.beginDraw()"],
+ "returns": "void",
+ "type": "method",
+ "category": "pgraphics",
+ "subcategory": "method",
+ "classanchor": "PGraphics",
+ "parameters": [
+ {
+ "name": "graphics",
+ "description": " any object of the type PGraphics",
+ "type": ["PGraphics"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PGraphics_endDraw_.es.json b/content/references/translations/es/processing/PGraphics_endDraw_.es.json
new file mode 100644
index 000000000..4a7d96a19
--- /dev/null
+++ b/content/references/translations/es/processing/PGraphics_endDraw_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Finalizes the rendering of a PGraphics object so that it can be shown on screen",
+ "related": [],
+ "name": "endDraw()",
+ "description": "Finalizes the rendering of a PGraphics object so that it can be shown on screen.\n\n ",
+ "syntax": ["graphics.endDraw()"],
+ "returns": "void",
+ "type": "method",
+ "category": "pgraphics",
+ "subcategory": "method",
+ "classanchor": "PGraphics",
+ "parameters": [
+ {
+ "name": "graphics",
+ "description": " any object of the type PGraphics",
+ "type": ["PGraphics"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PI.es.json b/content/references/translations/es/processing/PI.es.json
new file mode 100644
index 000000000..7c87b8adc
--- /dev/null
+++ b/content/references/translations/es/processing/PI.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "PI es una constante matemática con el valor \n 3.14159265358979323846",
+ "related": ["TWO_PI", "TAU", "HALF_PI", "QUARTER_PI"],
+ "name": "PI",
+ "description": "PI es una constante matemática con el valor 3.1415927. Es la\n proporción entre la circunferencia de un circulo y su diámetro. Es útil en\n combinación con las funciones trigonométricas sin() y cos().",
+ "category": "constants",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/de/processing/PImage.de.json b/content/references/translations/es/processing/PImage.es.json
similarity index 63%
rename from content/references/translations/de/processing/PImage.de.json
rename to content/references/translations/es/processing/PImage.es.json
index 5d9997a68..d286a4483 100644
--- a/content/references/translations/de/processing/PImage.de.json
+++ b/content/references/translations/es/processing/PImage.es.json
@@ -1,31 +1,32 @@
{
- "brief": "Datatype for storing images.",
+ "brief": "Datatype for storing images",
"constructors": [
"PImage(width, height, format, factor)",
"PImage(width, height, pixels, requiresCheckAlpha, parent)",
- "PImage(width, height, pixels, requiresCheckAlpha, parent, format, factor)"
+ "PImage(width, height, pixels, requiresCheckAlpha, parent, format, factor)",
+ "PImage(img)"
],
"related": ["loadImage_", "imageMode_", "createImage_"],
"methods": [
{
"anchor": "PImage_loadPixels_",
"name": "loadPixels()",
- "desc": "Loads the pixel data for the image into its pixels[] array."
+ "desc": "Loads the pixel data for the image into its pixels[] array"
},
{
"anchor": "PImage_updatePixels_",
"name": "updatePixels()",
- "desc": "Updates the image with the data in its pixels[] array."
+ "desc": "Updates the image with the data in its pixels[] array"
},
{
"anchor": "PImage_resize_",
"name": "resize()",
- "desc": "Resize the image to a new width and height."
+ "desc": "Resize the image to a new width and height"
},
{
"anchor": "PImage_get_",
"name": "get()",
- "desc": "Reads the color of any pixel or grabs a rectangle of pixels."
+ "desc": "Reads the color of any pixel or grabs a rectangle of pixels"
},
{
"anchor": "PImage_set_",
@@ -50,17 +51,17 @@
{
"anchor": "PImage_blendColor_",
"name": "blendColor()",
- "desc": "Blends two color values together based on the blending mode given as the\n MODE parameter."
+ "desc": "Blends two color values together based on the blending mode given as the\n MODE parameter"
},
{
"anchor": "PImage_blend_",
"name": "blend()",
- "desc": "Copies a pixel or rectangle of pixels using different blending modes."
+ "desc": "Copies a pixel or rectangle of pixels using different blending modes"
},
{
"anchor": "PImage_save_",
"name": "save()",
- "desc": "Saves the image to a TIFF, TARGA, PNG, or JPEG file."
+ "desc": "Saves the image to a TIFF, TARGA, PNG, or JPEG file"
}
],
"name": "PImage",
@@ -68,20 +69,20 @@
{
"anchor": "PImage_pixels",
"name": "pixels[]",
- "desc": "Array containing the color of every pixel in the image."
+ "desc": "Array containing the color of every pixel in the image"
},
{
"anchor": "PImage_width",
"name": "width",
- "desc": "The width of the image in units of pixels."
+ "desc": "The width of the image in units of pixels"
},
{
"anchor": "PImage_height",
"name": "height",
- "desc": "The height of the image in units of pixels."
+ "desc": "The height of the image in units of pixels"
}
],
- "description": "DE Datatype for storing images. Processing can display .gif, .jpg,\n .tga, and .png images. Images may be displayed in 2D and 3D\n space. Before an image is used, it must be loaded with the loadImage()\n function. The PImage class contains fields for the width and\n height of the image, as well as an array called pixels[] that\n contains the values for every pixel in the image. The methods described below\n allow easy access to the image's pixels and alpha channel and simplify the\n process of compositing. \n \n Before using the pixels[] array, be sure to use the\n loadPixels() method on the image to make sure that the pixel data is\n properly loaded. \n \n To create a new image, use the createImage() function. Do not use the\n syntax new PImage().",
+ "description": "Datatype for storing images. Processing can display .gif, .jpg,\n .tga, and .png images. Images may be displayed in 2D and 3D\n space. Before an image is used, it must be loaded with the loadImage()\n function. The PImage class contains fields for the width and\n height of the image, as well as an array called pixels[] that\n contains the values for every pixel in the image. The methods described below\n allow easy access to the image's pixels and alpha channel and simplify the\n process of compositing. \n \n Before using the pixels[] array, be sure to use the\n loadPixels() method on the image to make sure that the pixel data is\n properly loaded. \n \n To create a new image, use the createImage() function. Do not use the\n syntax new PImage().",
"type": "class",
"classanchor": "PImage",
"category": "image",
diff --git a/content/references/translations/es/processing/PImage_blendColor_.es.json b/content/references/translations/es/processing/PImage_blendColor_.es.json
new file mode 100644
index 000000000..d7eb26d64
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_blendColor_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Blends two color values together based on the blending mode given as the\n MODE parameter",
+ "related": ["PImage_blend_"],
+ "name": "blendColor()",
+ "description": "Blends two color values together based on the blending mode given as the\n MODE parameter. The possible modes are described in the reference\n for the blend() function.\n\n ",
+ "syntax": ["pimg.blendColor(c1, c2, mode)"],
+ "returns": "int",
+ "type": "method",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "c1",
+ "description": "the first color to blend",
+ "type": ["int"]
+ },
+ {
+ "name": "c2",
+ "description": "the second color to blend",
+ "type": ["int"]
+ },
+ {
+ "name": "mode",
+ "description": "either BLEND, ADD, SUBTRACT, DARKEST, LIGHTEST, DIFFERENCE, EXCLUSION, MULTIPLY, SCREEN, OVERLAY, HARD_LIGHT, SOFT_LIGHT, DODGE, or BURN",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_blend_.es.json b/content/references/translations/es/processing/PImage_blend_.es.json
new file mode 100644
index 000000000..a7baa5f04
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_blend_.es.json
@@ -0,0 +1,60 @@
+{
+ "brief": "Copies a pixel or rectangle of pixels using different blending modes",
+ "related": ["alpha_", "PImage_copy_", "PImage_blendColor_"],
+ "name": "blend()",
+ "description": "Blends a region of pixels into the image specified by the img\n parameter. These copies utilize full alpha channel support and a choice\n of the following modes to blend the colors of source pixels (A) with the\n ones of pixels in the destination image (B): \n \n BLEND - linear interpolation of colours: C = A*factor + B \n \n ADD - additive blending with white clip: C = min(A*factor + B, 255) \n \n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor,\n 0) \n \n DARKEST - only the darkest colour succeeds: C = min(A*factor, B) \n \n LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B) \n \n DIFFERENCE - subtract colors from underlying image. \n \n EXCLUSION - similar to DIFFERENCE, but less extreme. \n \n MULTIPLY - Multiply the colors, result will always be darker. \n \n SCREEN - Opposite multiply, uses inverse values of the colors. \n \n OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values,\n and screens light values. \n \n HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower. \n \n SOFT_LIGHT - Mix of DARKEST and LIGHTEST.\n Works like OVERLAY, but not as harsh. \n \n DODGE - Lightens light tones and increases contrast, ignores darks.\n Called \"Color Dodge\" in Illustrator and Photoshop. \n \n BURN - Darker areas are applied, increasing contrast, ignores lights.\n Called \"Color Burn\" in Illustrator and Photoshop. \n \n All modes use the alpha information (highest byte) of source image\n pixels as the blending factor. If the source and destination regions are\n different sizes, the image will be automatically resized to match the\n destination size. If the srcImg parameter is not used, the\n display window is used as the source image. \n \n As of release 0149, this function ignores imageMode().",
+ "syntax": [
+ "pimg.blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)",
+ "pimg.blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "image",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "src",
+ "description": "an image variable referring to the source image",
+ "type": ["PImage"]
+ },
+ {
+ "name": "sx",
+ "description": "X coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "sy",
+ "description": "Y coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "sw", "description": "source image width", "type": ["int"] },
+ { "name": "sh", "description": "source image height", "type": ["int"] },
+ {
+ "name": "dx",
+ "description": "X coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "dy",
+ "description": "Y coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "dw", "description": "destination image width", "type": ["int"] },
+ {
+ "name": "dh",
+ "description": "destination image height",
+ "type": ["int"]
+ },
+ {
+ "name": "mode",
+ "description": "Either BLEND, ADD, SUBTRACT, LIGHTEST, DARKEST, DIFFERENCE, EXCLUSION, MULTIPLY, SCREEN, OVERLAY, HARD_LIGHT, SOFT_LIGHT, DODGE, BURN",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_copy_.es.json b/content/references/translations/es/processing/PImage_copy_.es.json
new file mode 100644
index 000000000..febc6d526
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_copy_.es.json
@@ -0,0 +1,56 @@
+{
+ "brief": "Copies the entire image",
+ "related": ["PGraphics_alpha_", "PImage_blend_"],
+ "name": "copy()",
+ "description": "Copies a region of pixels from one image into another. If the source and\n destination regions aren't the same size, it will automatically resize\n source pixels to fit the specified target region. No alpha information\n is used in the process, however if the source image has an alpha channel\n set, it will be copied as well.\n
\n As of release 0149, this function ignores imageMode().",
+ "syntax": [
+ "pimg.copy()",
+ "pimg.copy(sx, sy, sw, sh, dx, dy, dw, dh)",
+ "pimg.copy(src, sx, sy, sw, sh, dx, dy, dw, dh)"
+ ],
+ "returns": "void or PImage",
+ "type": "method",
+ "category": "image",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "sx",
+ "description": "X coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "sy",
+ "description": "Y coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "sw", "description": "source image width", "type": ["int"] },
+ { "name": "sh", "description": "source image height", "type": ["int"] },
+ {
+ "name": "dx",
+ "description": "X coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "dy",
+ "description": "Y coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "dw", "description": "destination image width", "type": ["int"] },
+ {
+ "name": "dh",
+ "description": "destination image height",
+ "type": ["int"]
+ },
+ {
+ "name": "src",
+ "description": "an image variable referring to the source image.",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_filter_.es.json b/content/references/translations/es/processing/PImage_filter_.es.json
new file mode 100644
index 000000000..1cadc3def
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_filter_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Converts the image to grayscale or black and white",
+ "related": [],
+ "name": "filter()",
+ "description": "Filters the image as defined by one of the following modes: \n \n THRESHOLD \n Converts the image to black and white pixels depending if they are above or\n below the threshold defined by the level parameter. The parameter must be\n between 0.0 (black) and 1.0 (white). If no level is specified, 0.5 is\n used. \n \n GRAY \n Converts any colors in the image to grayscale equivalents. No parameter is\n used. \n \n OPAQUE \n Sets the alpha channel to entirely opaque. No parameter is used. \n \n INVERT \n Sets each pixel to its inverse value. No parameter is used. \n \n POSTERIZE \n Limits each channel of the image to the number of colors specified as the\n parameter. The parameter can be set to values between 2 and 255, but results\n are most noticeable in the lower ranges. \n \n BLUR \n Executes a Gaussian blur with the level parameter specifying the extent of\n the blurring. If no parameter is used, the blur is equivalent to Gaussian\n blur of radius 1. Larger values increase the blur. \n \n ERODE \n Reduces the light areas. No parameter is used. \n \n DILATE \n Increases the light areas. No parameter is used.\n\n\n ",
+ "syntax": ["pimg.filter(kind)", "pimg.filter(kind, param)"],
+ "returns": "void",
+ "type": "method",
+ "category": "image",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "kind",
+ "description": "Either THRESHOLD, GRAY, OPAQUE, INVERT, POSTERIZE, BLUR, ERODE,\n or DILATE",
+ "type": ["int"]
+ },
+ {
+ "name": "param",
+ "description": "unique for each, see above",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_get_.es.json b/content/references/translations/es/processing/PImage_get_.es.json
new file mode 100644
index 000000000..57a058d54
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_get_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Reads the color of any pixel or grabs a rectangle of pixels",
+ "related": ["PImage_set_", "PImage_pixels", "PImage_copy_"],
+ "name": "get()",
+ "description": "Reads the color of any pixel or grabs a section of an image. If no\n parameters are specified, the entire image is returned. Use the x\n and y parameters to get the value of one pixel. Get a section of\n the display window by specifying an additional width and\n height parameter. When getting an image, the x and\n y parameters define the coordinates for the upper-left corner of\n the image, regardless of the current imageMode(). \n \n If the pixel requested is outside of the image window, black is\n returned. The numbers returned are scaled according to the current color\n ranges, but only RGB values are returned by this function. For example,\n even though you may have drawn a shape with colorMode(HSB), the\n numbers returned will be in RGB format. \n \n Getting the color of a single pixel with get(x, y) is easy, but\n not as fast as grabbing the data directly from pixels[]. The\n equivalent statement to get(x, y) using pixels[] is\n pixels[y*width+x]. See the reference for pixels[] for more information.\n\n\n ",
+ "syntax": ["pimg.get(x, y)", "pimg.get(x, y, w, h)", "pimg.get()"],
+ "returns": "int or PImage",
+ "type": "method",
+ "category": "image",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "w",
+ "description": "width of pixel rectangle to get",
+ "type": ["int"]
+ },
+ {
+ "name": "h",
+ "description": "height of pixel rectangle to get",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_height.es.json b/content/references/translations/es/processing/PImage_height.es.json
new file mode 100644
index 000000000..423cc3b01
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_height.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The height of the image in units of pixels",
+ "related": [],
+ "name": "height",
+ "description": "The height of the image in units of pixels.",
+ "syntax": ["pimg.height\n"],
+ "category": "pimage",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PImage",
+ "parameters": [{ "name": "pimg", "desc": " any object of type PImage" }]
+}
diff --git a/content/references/translations/es/processing/PImage_loadPixels_.es.json b/content/references/translations/es/processing/PImage_loadPixels_.es.json
new file mode 100644
index 000000000..75d1fd236
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_loadPixels_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Loads the pixel data for the image into its pixels[] array",
+ "related": [],
+ "name": "loadPixels()",
+ "description": "Loads the pixel data of the current display window into the pixels[]\n array. This function must always be called before reading from or writing to\n pixels[]. Subsequent changes to the display window will not be\n reflected in pixels until loadPixels() is called again.\n\n\n ",
+ "syntax": ["pimg.loadPixels()"],
+ "returns": "void",
+ "type": "method",
+ "category": "pimage",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_mask_.es.json b/content/references/translations/es/processing/PImage_mask_.es.json
new file mode 100644
index 000000000..d9b39e483
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_mask_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Masks part of an image with another image as an alpha channel",
+ "related": [],
+ "name": "mask()",
+ "description": "Masks part of an image from displaying by loading another image and\n using it as an alpha channel. This mask image should only contain\n grayscale data, but only the blue color channel is used. The mask image\n needs to be the same size as the image to which it is applied. \n \n In addition to using a mask image, an integer array containing the alpha\n channel data can be specified directly. This method is useful for\n creating dynamically generated alpha masks. This array must be of the\n same length as the target image's pixels array and should contain only\n grayscale data of values between 0-255.\n\n\n ",
+ "syntax": ["pimg.mask(maskArray)", "pimg.mask(img)"],
+ "returns": "void",
+ "type": "method",
+ "category": "image",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "maskArray",
+ "description": "array of integers used as the alpha channel, needs to be\n the same length as the image's pixel array.",
+ "type": ["int[]"]
+ },
+ {
+ "name": "img",
+ "description": "image to use as the mask",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_pixels.es.json b/content/references/translations/es/processing/PImage_pixels.es.json
new file mode 100644
index 000000000..92ee06173
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_pixels.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Array containing the color of every pixel in the image",
+ "related": [],
+ "name": "pixels[]",
+ "description": "The pixels[] array contains the values for all the pixels in the image. These\n values are of the color datatype. This array is the size of the image,\n meaning if the image is 100 x 100 pixels, there will be 10,000 values and if\n the window is 200 x 300 pixels, there will be 60,000 values. \n \n Before accessing this array, the data must loaded with the\n loadPixels() method. Failure to do so may result in a\n NullPointerException. After the array data has been modified, the\n updatePixels() method must be run to update the content of the display\n window.",
+ "syntax": ["pimg.pixels[]\n"],
+ "category": "image",
+ "subcategory": "pixels",
+ "type": "field",
+ "classanchor": "PImage",
+ "parameters": [{ "name": "pimg", "desc": " any object of type PImage" }]
+}
diff --git a/content/references/translations/es/processing/PImage_resize_.es.json b/content/references/translations/es/processing/PImage_resize_.es.json
new file mode 100644
index 000000000..74b88c1e3
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_resize_.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "Resize the image to a new width and height",
+ "related": ["PImage_get_"],
+ "name": "resize()",
+ "description": "Resize the image to a new width and height. To make the image scale\n proportionally, use 0 as the value for the wide or high\n parameter. For instance, to make the width of an image 150 pixels, and\n change the height using the same proportion, use resize(150, 0). \n \n Even though a PGraphics is technically a PImage, it is not possible to\n rescale the image data found in a PGraphics. (It's simply not possible\n to do this consistently across renderers: technically infeasible with\n P3D, or what would it even do with PDF?) If you want to resize PGraphics\n content, first get a copy of its image data using the get()\n method, and call resize() on the PImage that is returned.",
+ "syntax": ["pimg.resize(w, h)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pimage",
+ "subcategory": "method",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ { "name": "w", "description": "the resized image width", "type": ["int"] },
+ { "name": "h", "description": "the resized image height", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_save_.es.json b/content/references/translations/es/processing/PImage_save_.es.json
new file mode 100644
index 000000000..62e0f4816
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_save_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Saves the image to a TIFF, TARGA, PNG, or JPEG file",
+ "related": [],
+ "name": "save()",
+ "description": "Saves the image into a file. Append a file extension to the name of\n the file, to indicate the file format to be used: either TIFF (.tif),\n TARGA (.tga), JPEG (.jpg), or PNG (.png). If no extension is included\n in the filename, the image will save in TIFF format and .tif will be\n added to the name. These files are saved to the sketch's folder, which\n may be opened by selecting \"Show sketch folder\" from the \"Sketch\" menu.\n
To save an image created within the code, rather\n than through loading, it's necessary to make the image with the\n createImage() function so it is aware of the location of the\n program and can therefore save the file to the right place. See the\n createImage() reference for more information.\n\n ",
+ "syntax": ["pimg.save(filename)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "pimage",
+ "subcategory": "method",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "filename",
+ "description": "a sequence of letters and numbers",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_set_.es.json b/content/references/translations/es/processing/PImage_set_.es.json
new file mode 100644
index 000000000..fe73e9a1f
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_set_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Writes a color to any pixel or writes an image into another",
+ "related": ["PImage_get_", "PImage_pixels", "PImage_copy_"],
+ "name": "set()",
+ "description": "Changes the color of any pixel or writes an image directly into the\n display window. \n \n The x and y parameters specify the pixel to change and the\n color parameter specifies the color value. The color parameter is\n affected by the current color mode (the default is RGB values from 0 to\n 255). When setting an image, the x and y parameters define\n the coordinates for the upper-left corner of the image, regardless of\n the current imageMode().\n
\n Setting the color of a single pixel with set(x, y) is easy, but\n not as fast as putting the data directly into pixels[]. The\n equivalent statement to set(x, y, #000000) using pixels[]\n is pixels[y*width+x] = #000000. See the reference for\n pixels[] for more information.",
+ "syntax": ["pimg.set(x, y, c)", "pimg.set(x, y, img)"],
+ "returns": "void",
+ "type": "method",
+ "category": "image",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "c",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ },
+ {
+ "name": "img",
+ "description": "image to copy into the original image",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_updatePixels_.es.json b/content/references/translations/es/processing/PImage_updatePixels_.es.json
new file mode 100644
index 000000000..a3084019d
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_updatePixels_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Updates the image with the data in its pixels[] array",
+ "related": [],
+ "name": "updatePixels()",
+ "description": "Updates the display window with the data in the pixels[] array. Use in\n conjunction with loadPixels(). If you're only reading pixels from the\n array, there's no need to call updatePixels() — updating is only\n necessary to apply changes.\n\n ",
+ "syntax": ["pimg.updatePixels()", "pimg.updatePixels(x, y, w, h)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pimage",
+ "subcategory": "pixels",
+ "classanchor": "PImage",
+ "parameters": [
+ {
+ "name": "pimg",
+ "description": " any object of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the upper-left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the upper-left corner",
+ "type": ["int"]
+ },
+ { "name": "w", "description": "width", "type": ["int"] },
+ { "name": "h", "description": "height", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/PImage_width.es.json b/content/references/translations/es/processing/PImage_width.es.json
new file mode 100644
index 000000000..81bf6e5a0
--- /dev/null
+++ b/content/references/translations/es/processing/PImage_width.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The width of the image in units of pixels",
+ "related": [],
+ "name": "width",
+ "description": "The width of the image in units of pixels.",
+ "syntax": ["pimg.width\n"],
+ "category": "pimage",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PImage",
+ "parameters": [{ "name": "pimg", "desc": " any object of type PImage" }]
+}
diff --git a/content/references/translations/es/processing/PShader.es.json b/content/references/translations/es/processing/PShader.es.json
new file mode 100644
index 000000000..3eebfd223
--- /dev/null
+++ b/content/references/translations/es/processing/PShader.es.json
@@ -0,0 +1,54 @@
+{
+ "brief": "This class encapsulates a GLSL shader program, including a vertex\n and a fragment shader",
+ "methods": [
+ {
+ "anchor": "PShader_set_",
+ "name": "set()",
+ "desc": "Sets a variable within the shader"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This class encapsulates a GLSL shader program, including a vertex and a\n fragment shader. It's compatible with the P2D and P3D renderers, but not with\n the default renderer. Use the loadShader() function to load your\n shader code. [Note: It's strongly encouraged to use loadShader() to\n create a PShader object, rather than calling the PShader constructor\n manually.]",
+ "type": "class",
+ "constructors": [
+ "PShader()",
+ "PShader(parent)",
+ "PShader(parent, vertFilename, fragFilename)",
+ "PShader(parent, vertURL, fragURL)",
+ "PShader(parent, vertSource, fragSource)"
+ ],
+ "related": [],
+ "name": "PShader",
+ "classanchor": "PShader",
+ "category": "rendering",
+ "subcategory": "shaders",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "the parent program",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "vertFilename",
+ "description": "name of the vertex shader",
+ "type": ["String"]
+ },
+ {
+ "name": "fragFilename",
+ "description": "name of the fragment shader",
+ "type": ["String"]
+ },
+ {
+ "name": "vertURL",
+ "description": "network location of the vertex shader",
+ "type": ["URL"]
+ },
+ {
+ "name": "fragURL",
+ "description": "network location of the fragment shader",
+ "type": ["URL"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShader_set_.es.json b/content/references/translations/es/processing/PShader_set_.es.json
new file mode 100644
index 000000000..3b2055495
--- /dev/null
+++ b/content/references/translations/es/processing/PShader_set_.es.json
@@ -0,0 +1,75 @@
+{
+ "brief": "Sets a variable within the shader",
+ "related": [],
+ "name": "set()",
+ "description": "Sets the uniform variables inside the shader to modify the effect while the \n program is running.",
+ "syntax": [
+ ".set(name, x)",
+ ".set(name, x, y)",
+ ".set(name, x, y, z)",
+ ".set(name, x, y, z, w)",
+ ".set(name, vec)",
+ ".set(name, vec, ncoords)",
+ ".set(name, boolvec, ncoords)",
+ ".set(name, mat)",
+ ".set(name, mat, use3x3)",
+ ".set(name, tex)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "rendering",
+ "subcategory": "shaders",
+ "classanchor": "PShader",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "the name of the uniform variable to modify",
+ "type": ["String"]
+ },
+ {
+ "name": "x",
+ "description": "first component of the variable to modify",
+ "type": ["int", "float", "boolean"]
+ },
+ {
+ "name": "y",
+ "description": "second component of the variable to modify. The variable has to be declared with an array/vector type in the shader (i.e.: int[2], vec2)",
+ "type": ["int", "float", "boolean"]
+ },
+ {
+ "name": "z",
+ "description": "third component of the variable to modify. The variable has to be declared with an array/vector type in the shader (i.e.: int[3], vec3)",
+ "type": ["int", "float", "boolean"]
+ },
+ {
+ "name": "w",
+ "description": "fourth component of the variable to modify. The variable has to be declared with an array/vector type in the shader (i.e.: int[4], vec4)",
+ "type": ["int", "float", "boolean"]
+ },
+ {
+ "name": "vec",
+ "description": "modifies all the components of an array/vector uniform variable. PVector can only be used if the type of the variable is vec3.",
+ "type": ["PVector", "int[]", "float[]", "boolean[]"]
+ },
+ {
+ "name": "ncoords",
+ "description": "number of coordinates per element, max 4",
+ "type": ["int"]
+ },
+ {
+ "name": "mat",
+ "description": "matrix of values",
+ "type": ["PMatrix2D", "PMatrix3D"]
+ },
+ {
+ "name": "use3x3",
+ "description": "enforces the matrix is 3 x 3",
+ "type": ["boolean"]
+ },
+ {
+ "name": "tex",
+ "description": "sets the sampler uniform variable to read from this image texture",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape.es.json b/content/references/translations/es/processing/PShape.es.json
new file mode 100644
index 000000000..e245f6b8f
--- /dev/null
+++ b/content/references/translations/es/processing/PShape.es.json
@@ -0,0 +1,141 @@
+{
+ "brief": "Datatype for storing shapes",
+ "constructors": ["PShape(g, kind, params)"],
+ "related": ["loadShape_", "createShape_", "shapeMode_"],
+ "methods": [
+ {
+ "anchor": "PShape_isVisible_",
+ "name": "isVisible()",
+ "desc": "Returns a boolean value true if the image is set to be visible,\n false if not"
+ },
+ {
+ "anchor": "PShape_setVisible_",
+ "name": "setVisible()",
+ "desc": "Sets the shape to be visible or invisible"
+ },
+ {
+ "anchor": "PShape_disableStyle_",
+ "name": "disableStyle()",
+ "desc": "Disables the shape's style data and uses Processing styles"
+ },
+ {
+ "anchor": "PShape_enableStyle_",
+ "name": "enableStyle()",
+ "desc": "Enables the shape's style data and ignores the Processing styles"
+ },
+ {
+ "anchor": "PShape_beginContour_",
+ "name": "beginContour()",
+ "desc": "Starts a new contour"
+ },
+ {
+ "anchor": "PShape_endContour_",
+ "name": "endContour()",
+ "desc": "Ends a contour"
+ },
+ {
+ "anchor": "PShape_beginShape_",
+ "name": "beginShape()",
+ "desc": "Starts the creation of a new PShape"
+ },
+ {
+ "anchor": "PShape_endShape_",
+ "name": "endShape()",
+ "desc": "Finishes the creation of a new PShape"
+ },
+ {
+ "anchor": "PShape_getChildCount_",
+ "name": "getChildCount()",
+ "desc": "Returns the number of children"
+ },
+ {
+ "anchor": "PShape_getChild_",
+ "name": "getChild()",
+ "desc": "Returns a child element of a shape as a PShape object"
+ },
+ {
+ "anchor": "PShape_addChild_",
+ "name": "addChild()",
+ "desc": "Adds a new child"
+ },
+ {
+ "anchor": "PShape_getVertexCount_",
+ "name": "getVertexCount()",
+ "desc": "Returns the total number of vertices as an int"
+ },
+ {
+ "anchor": "PShape_getVertex_",
+ "name": "getVertex()",
+ "desc": "Returns the vertex at the index position"
+ },
+ {
+ "anchor": "PShape_setVertex_",
+ "name": "setVertex()",
+ "desc": "Sets the vertex at the index position"
+ },
+ {
+ "anchor": "PShape_setFill_",
+ "name": "setFill()",
+ "desc": "Set the fill value"
+ },
+ {
+ "anchor": "PShape_setStroke_",
+ "name": "setStroke()",
+ "desc": "Set the stroke value"
+ },
+ {
+ "anchor": "PShape_translate_",
+ "name": "translate()",
+ "desc": "Displaces the shape"
+ },
+ {
+ "anchor": "PShape_rotateX_",
+ "name": "rotateX()",
+ "desc": "Rotates the shape around the x-axis"
+ },
+ {
+ "anchor": "PShape_rotateY_",
+ "name": "rotateY()",
+ "desc": "Rotates the shape around the y-axis"
+ },
+ {
+ "anchor": "PShape_rotateZ_",
+ "name": "rotateZ()",
+ "desc": "Rotates the shape around the z-axis"
+ },
+ {
+ "anchor": "PShape_rotate_",
+ "name": "rotate()",
+ "desc": "Rotates the shape"
+ },
+ {
+ "anchor": "PShape_scale_",
+ "name": "scale()",
+ "desc": "Increases and decreases the size of a shape"
+ },
+ {
+ "anchor": "PShape_resetMatrix_",
+ "name": "resetMatrix()",
+ "desc": "Replaces the current matrix of a shape with the identity matrix"
+ }
+ ],
+ "name": "PShape",
+ "classFields": [
+ {
+ "anchor": "PShape_width",
+ "name": "width",
+ "desc": "Shape document width"
+ },
+ {
+ "anchor": "PShape_height",
+ "name": "height",
+ "desc": "Shape document height"
+ }
+ ],
+ "description": "Datatype for storing shapes. Before a shape is used, it must be loaded with\n the loadShape() or created with the createShape(). The\n shape() function is used to draw the shape to the display window.\n Processing can currently load and display SVG (Scalable Vector Graphics) and\n OBJ shapes. OBJ files can only be opened using the P3D renderer. The\n loadShape() function supports SVG files created with Inkscape and\n Adobe Illustrator. It is not a full SVG implementation, but offers some\n straightforward support for handling vector data. \n \n The PShape object contains a group of methods that can operate on the\n shape data. Some of the methods are listed below, but the full list used for\n creating and modifying shapes is\n available\n here in the Processing Javadoc. \n \n To create a new shape, use the createShape() function. Do not use the\n syntax new PShape().\n\n ",
+ "type": "class",
+ "classanchor": "PShape",
+ "category": "shape",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PShape_addChild_.es.json b/content/references/translations/es/processing/PShape_addChild_.es.json
new file mode 100644
index 000000000..d319a246b
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_addChild_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Adds a new child",
+ "related": ["PShape_getChild_"],
+ "name": "addChild()",
+ "description": "Adds a child PShape to a parent PShape that is defined as a GROUP. \n In the example, the three shapes path, rectangle, \n and circle are added to a parent PShape variable named \n house that is a GROUP.",
+ "syntax": ["sh.addChild(who)", "sh.addChild(who, idx)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "who",
+ "description": "any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "idx",
+ "description": "the layer position in which to insert the new child",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_beginContour_.es.json b/content/references/translations/es/processing/PShape_beginContour_.es.json
new file mode 100644
index 000000000..cf90e4fd7
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_beginContour_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Starts a new contour",
+ "related": ["PShape_endContour_"],
+ "name": "beginContour()",
+ "description": "The beginContour() and endContour() methods make it \n possible to define shapes with other shapes cut out of them. For \n example, the inside of a letter 'O'. These two functions are always \n used together, you'll never use one without the other. Between them, \n define the geometry you want to create. As you'll see when you run \n the example above, the second smaller shape is cut out of the first \n larger shape. \n \n The exterior shape and the interior contour must wind in \n opposite directions. This means that if the points of the geometry \n for the exterior shape are described in a clockwise order, the points \n on the interior shape are defined in a counterclockwise order.",
+ "syntax": ["sh.beginContour()"],
+ "returns": "void",
+ "type": "method",
+ "category": "shape",
+ "subcategory": "vertex",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_beginShape_.es.json b/content/references/translations/es/processing/PShape_beginShape_.es.json
new file mode 100644
index 000000000..8b1c7736c
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_beginShape_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Starts the creation of a new PShape",
+ "related": ["PShape_endShape_"],
+ "name": "beginShape()",
+ "description": "This method is used to start a custom shape created with the createShape() \n function. It's always and only used with createShape().",
+ "syntax": ["sh.beginShape()", "sh.beginShape(kind)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_disableStyle_.es.json b/content/references/translations/es/processing/PShape_disableStyle_.es.json
new file mode 100644
index 000000000..449a97c37
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_disableStyle_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Disables the shape's style data and uses Processing styles",
+ "related": ["PShape_enableStyle_"],
+ "name": "disableStyle()",
+ "description": "Disables the shape's style data and uses Processing's current styles.\n Styles include attributes such as colors, stroke weight, and stroke\n joints.\n\n ",
+ "syntax": ["sh.disableStyle()"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_enableStyle_.es.json b/content/references/translations/es/processing/PShape_enableStyle_.es.json
new file mode 100644
index 000000000..f771c9390
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_enableStyle_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Enables the shape's style data and ignores the Processing styles",
+ "related": ["PShape_disableStyle_"],
+ "name": "enableStyle()",
+ "description": "Enables the shape's style data and ignores Processing's current styles.\n Styles include attributes such as colors, stroke weight, and stroke\n joints.",
+ "syntax": ["sh.enableStyle()"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_endContour_.es.json b/content/references/translations/es/processing/PShape_endContour_.es.json
new file mode 100644
index 000000000..950de29f2
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_endContour_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Ends a contour",
+ "related": ["PShape_beginContour_"],
+ "name": "endContour()",
+ "description": "The beginContour() and endContour() methods make \n it possible to define shapes with other shapes cut out of them. \n For example, the inside of a letter 'O'. These two functions are \n always used together, you'll never use one without the other. \n Between them, define the geometry you want to create. As you'll \n see when you run the example above, the second smaller shape is \n cut out of the first larger shape. \n \n The exterior shape and the interior contour must wind \n in opposite directions. This means that if the points of the \n geometry for the exterior shape are described in a clockwise order, \n the points on the interior shape are defined in a counterclockwise order.",
+ "syntax": ["sh.endContour()"],
+ "returns": "void",
+ "type": "method",
+ "category": "shape",
+ "subcategory": "vertex",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_endShape_.es.json b/content/references/translations/es/processing/PShape_endShape_.es.json
new file mode 100644
index 000000000..aa273f528
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_endShape_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Finishes the creation of a new PShape",
+ "related": ["PShape_beginShape_"],
+ "name": "endShape()",
+ "description": "This method is used to complete a custom shape created with the createShape() \n function. It's always and only used with createShape().",
+ "syntax": ["sh.endShape()", "sh.endShape(mode)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_getChildCount_.es.json b/content/references/translations/es/processing/PShape_getChildCount_.es.json
new file mode 100644
index 000000000..6f3986437
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_getChildCount_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the number of children",
+ "related": [],
+ "name": "getChildCount()",
+ "description": "Returns the number of children within the PShape.",
+ "syntax": ["sh.getChildCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "",
+ "subcategory": "",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_getChild_.es.json b/content/references/translations/es/processing/PShape_getChild_.es.json
new file mode 100644
index 000000000..4f595c7d5
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_getChild_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Returns a child element of a shape as a PShape object",
+ "related": ["PShape_addChild_"],
+ "name": "getChild()",
+ "description": "Extracts a child shape from a parent shape. Specify the name of the\n shape with the target parameter. The shape is returned as a\n PShape object, or null is returned if there is an error.",
+ "syntax": ["sh.getChild(index)", "sh.getChild(target)"],
+ "returns": "PShape",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "index",
+ "description": "the layer position of the shape to get",
+ "type": ["int"]
+ },
+ {
+ "name": "target",
+ "description": "the name of the shape to get",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_getVertexCount_.es.json b/content/references/translations/es/processing/PShape_getVertexCount_.es.json
new file mode 100644
index 000000000..27a79e0bf
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_getVertexCount_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the total number of vertices as an int",
+ "related": ["PShape_getVertex_", "PShape_setVertex_"],
+ "name": "getVertexCount()",
+ "description": "The getVertexCount() method returns the number of vertices that \n make up a PShape. In the above example, the value 4 is returned by the \n getVertexCount() method because 4 vertices are defined in \n setup().",
+ "syntax": ["sh.getVertexCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_getVertex_.es.json b/content/references/translations/es/processing/PShape_getVertex_.es.json
new file mode 100644
index 000000000..6b1429d7c
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_getVertex_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Returns the vertex at the index position",
+ "related": ["PShape_setVertex_", "PShape_getVertexCount_"],
+ "name": "getVertex()",
+ "description": "The getVertex() method returns a PVector with the coordinates of \n the vertex point located at the position defined by the index \n parameter. This method works when shapes are created as shown in the \n example above, but won't work properly when a shape is defined explicitly \n (e.g. createShape(RECT, 20, 20, 80, 80).",
+ "syntax": ["sh.getVertex(index)", "sh.getVertex(index, vec)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "index",
+ "description": "the location of the vertex",
+ "type": ["int"]
+ },
+ {
+ "name": "vec",
+ "description": "PVector to assign the data to",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_height.es.json b/content/references/translations/es/processing/PShape_height.es.json
new file mode 100644
index 000000000..683eb0c72
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_height.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Shape document height",
+ "related": ["PShape_width"],
+ "name": "height",
+ "description": "The height of the PShape document.",
+ "syntax": ["sh.height\n"],
+ "category": "pshape",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PShape",
+ "parameters": [{ "name": "sh", "desc": " any variable of type PShape" }]
+}
diff --git a/content/references/translations/es/processing/PShape_isVisible_.es.json b/content/references/translations/es/processing/PShape_isVisible_.es.json
new file mode 100644
index 000000000..ce00d5c87
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_isVisible_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns a boolean value true if the image is set to be visible,\n false if not",
+ "related": ["PShape_setVisible_"],
+ "name": "isVisible()",
+ "description": "Returns a boolean value true if the image is set to be visible, false if\n not. This value can be modified with the setVisible() method. \n \n The default visibility of a shape is usually controlled by whatever program\n created the SVG file. For instance, this parameter is controlled by showing\n or hiding the shape in the layers palette in Adobe Illustrator.",
+ "syntax": ["sh.isVisible()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_resetMatrix_.es.json b/content/references/translations/es/processing/PShape_resetMatrix_.es.json
new file mode 100644
index 000000000..6622aaafc
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_resetMatrix_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Replaces the current matrix of a shape with the identity matrix",
+ "related": ["PShape_rotate_", "PShape_scale_", "PShape_translate_"],
+ "name": "resetMatrix()",
+ "description": "Replaces the current matrix of a shape with the identity matrix. The\n equivalent function in OpenGL is glLoadIdentity().",
+ "syntax": ["sh.resetMatrix()"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_rotateX_.es.json b/content/references/translations/es/processing/PShape_rotateX_.es.json
new file mode 100644
index 000000000..83744d74a
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_rotateX_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Rotates the shape around the x-axis",
+ "related": [
+ "PShape_rotate_",
+ "PShape_rotateY_",
+ "PShape_rotateZ_",
+ "PShape_scale_",
+ "PShape_translate_",
+ "PShape_resetMatrix_"
+ ],
+ "name": "rotateX()",
+ "description": "Rotates a shape around the x-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n
\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateX(HALF_PI) and then rotateX(HALF_PI) is the\n same as rotateX(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n
\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.",
+ "syntax": ["sh.rotateX(angle)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_rotateY_.es.json b/content/references/translations/es/processing/PShape_rotateY_.es.json
new file mode 100644
index 000000000..64518c781
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_rotateY_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Rotates the shape around the y-axis",
+ "related": [
+ "PShape_rotate_",
+ "PShape_rotateX_",
+ "PShape_rotateZ_",
+ "PShape_scale_",
+ "PShape_translate_",
+ "PShape_resetMatrix_"
+ ],
+ "name": "rotateY()",
+ "description": "Rotates a shape around the y-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n
\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateY(HALF_PI) and then rotateY(HALF_PI) is the\n same as rotateY(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n
\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.",
+ "syntax": ["sh.rotateY(angle)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_rotateZ_.es.json b/content/references/translations/es/processing/PShape_rotateZ_.es.json
new file mode 100644
index 000000000..7a2eaf1be
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_rotateZ_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Rotates the shape around the z-axis",
+ "related": [
+ "PShape_rotate_",
+ "PShape_rotateX_",
+ "PShape_rotateY_",
+ "PShape_scale_",
+ "PShape_translate_",
+ "PShape_resetMatrix_"
+ ],
+ "name": "rotateZ()",
+ "description": "Rotates a shape around the z-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n
\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateZ(HALF_PI) and then rotateZ(HALF_PI) is the\n same as rotateZ(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n
\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.",
+ "syntax": ["sh.rotateZ(angle)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_rotate_.es.json b/content/references/translations/es/processing/PShape_rotate_.es.json
new file mode 100644
index 000000000..a6c1773cb
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_rotate_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Rotates the shape",
+ "related": [
+ "PShape_rotateX_",
+ "PShape_rotateY_",
+ "PShape_rotateZ_",
+ "PShape_scale_",
+ "PShape_translate_",
+ "PShape_resetMatrix_"
+ ],
+ "name": "rotate()",
+ "description": "Rotates a shape the amount specified by the angle parameter.\n Angles should be specified in radians (values from 0 to TWO_PI) or\n converted to radians with the radians() method.\n
\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Transformations apply to everything that happens after and subsequent\n calls to the method accumulates the effect. For example, calling\n rotate(HALF_PI) and then rotate(HALF_PI) is the same as\n rotate(PI). This transformation is applied directly to the shape,\n it's not refreshed each time draw() is run.",
+ "syntax": ["sh.rotate(angle)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_scale_.es.json b/content/references/translations/es/processing/PShape_scale_.es.json
new file mode 100644
index 000000000..574e4b252
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_scale_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Increases and decreases the size of a shape",
+ "related": ["PShape_rotate_", "PShape_translate_", "PShape_resetMatrix_"],
+ "name": "scale()",
+ "description": "Increases or decreases the size of a shape by expanding and contracting\n vertices. Shapes always scale from the relative origin of their bounding\n box. Scale values are specified as decimal percentages. For example, the\n method call scale(2.0) increases the dimension of a shape by\n 200%. Subsequent calls to the method multiply the effect. For example,\n calling scale(2.0) and then scale(1.5) is the same as\n scale(3.0). This transformation is applied directly to the shape,\n it's not refreshed each time draw() is run.\n
\n Using this method with the z parameter requires using the P3D\n parameter in combination with size.",
+ "syntax": ["sh.scale(s)", "sh.scale(x, y)", "sh.scale(x, y, z)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "s",
+ "description": "percentate to scale the object",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "percentage to scale the object in the x-axis",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "percentage to scale the object in the y-axis",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "percentage to scale the object in the z-axis",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_setFill_.es.json b/content/references/translations/es/processing/PShape_setFill_.es.json
new file mode 100644
index 000000000..c63ac43f4
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_setFill_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the fill value",
+ "related": [],
+ "name": "setFill()",
+ "description": "The setFill() method defines the fill color of a PShape.\n This method is used after shapes are created or when a shape is defined explicitly\n (e.g. createShape(RECT, 20, 20, 80, 80)) as shown in the above example.\n When a shape is created with beginShape() and endShape(), its\n attributes may be changed with fill() and stroke() within\n beginShape() and endShape(). However, after the shape is\n created, only the setFill() method can define a new fill value for\n the PShape.",
+ "syntax": ["sh.setFill(fill)"],
+ "returns": "void",
+ "type": "method",
+ "category": "",
+ "subcategory": "",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_setStroke_.es.json b/content/references/translations/es/processing/PShape_setStroke_.es.json
new file mode 100644
index 000000000..8a235e417
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_setStroke_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the stroke value",
+ "related": [],
+ "name": "setStroke()",
+ "description": "The setStroke() method defines the outline color of a PShape.\n This method is used after shapes are created or when a shape is defined\n explicitly (e.g. createShape(RECT, 20, 20, 80, 80)) as shown in\n the above example. When a shape is created with beginShape() and\n endShape(), its attributes may be changed with fill() and\n stroke() within beginShape() and endShape().\n However, after the shape is created, only the setStroke() method\n can define a new stroke value for the PShape.",
+ "syntax": ["sh.setStroke(stroke)"],
+ "returns": "void",
+ "type": "method",
+ "category": "",
+ "subcategory": "",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_setVertex_.es.json b/content/references/translations/es/processing/PShape_setVertex_.es.json
new file mode 100644
index 000000000..93620fa18
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_setVertex_.es.json
@@ -0,0 +1,48 @@
+{
+ "brief": "Sets the vertex at the index position",
+ "related": ["PShape_getVertex_", "PShape_getVertexCount_"],
+ "name": "setVertex()",
+ "description": "The setVertex() method defines the coordinates of the vertex point \n located at the position defined by the index parameter. This method \n works when shapes are created as shown in the example above, but won't work \n properly when a shape is defined explicitly (e.g. createShape(RECT, 20, 20, 80, 80).",
+ "syntax": [
+ "sh.setVertex(index, x, y)",
+ "sh.setVertex(index, x, y, z)",
+ "sh.setVertex(index, vec)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "index",
+ "description": "the location of the vertex",
+ "type": ["int"]
+ },
+ {
+ "name": "x",
+ "description": "the x value for the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "the y value for the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "the z value for the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "vec",
+ "description": "the PVector to define the x, y, z coordinates",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_setVisible_.es.json b/content/references/translations/es/processing/PShape_setVisible_.es.json
new file mode 100644
index 000000000..62dab658e
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_setVisible_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Sets the shape to be visible or invisible",
+ "related": ["PShape_isVisible_"],
+ "name": "setVisible()",
+ "description": "Sets the shape to be visible or invisible. This is determined by the value of\n the visible parameter. \n \n The default visibility of a shape is usually controlled by whatever program\n created the SVG file. For instance, this parameter is controlled by showing\n or hiding the shape in the layers palette in Adobe Illustrator.",
+ "syntax": ["sh.setVisible(visible)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ {
+ "name": "visible",
+ "description": "\"false\" makes the shape invisible and \"true\" makes it visible",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_translate_.es.json b/content/references/translations/es/processing/PShape_translate_.es.json
new file mode 100644
index 000000000..50bcd6075
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_translate_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Displaces the shape",
+ "related": ["PShape_rotate_", "PShape_scale_", "PShape_resetMatrix_"],
+ "name": "translate()",
+ "description": "Specifies an amount to displace the shape. The x parameter\n specifies left/right translation, the y parameter specifies\n up/down translation, and the z parameter specifies translations\n toward/away from the screen. Subsequent calls to the method accumulates\n the effect. For example, calling translate(50, 0) and then\n translate(20, 0) is the same as translate(70, 0). This\n transformation is applied directly to the shape, it's not refreshed each\n time draw() is run.\n
\n Using this method with the z parameter requires using the P3D\n parameter in combination with size.",
+ "syntax": ["sh.translate(x, y)", "sh.translate(x, y, z)"],
+ "returns": "void",
+ "type": "method",
+ "category": "pshape",
+ "subcategory": "method",
+ "classanchor": "PShape",
+ "parameters": [
+ {
+ "name": "sh",
+ "description": " any variable of type PShape",
+ "type": ["PShape"]
+ },
+ { "name": "x", "description": "left/right translation", "type": ["float"] },
+ { "name": "y", "description": "up/down translation", "type": ["float"] },
+ {
+ "name": "z",
+ "description": "forward/back translation",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PShape_width.es.json b/content/references/translations/es/processing/PShape_width.es.json
new file mode 100644
index 000000000..ef4f7d9f1
--- /dev/null
+++ b/content/references/translations/es/processing/PShape_width.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Shape document width",
+ "related": ["PShape_height"],
+ "name": "width",
+ "description": "The width of the PShape document.",
+ "syntax": ["sh.width\n"],
+ "category": "pshape",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PShape",
+ "parameters": [{ "name": "sh", "desc": " any variable of type PShape" }]
+}
diff --git a/content/references/translations/es/processing/PVector.es.json b/content/references/translations/es/processing/PVector.es.json
new file mode 100644
index 000000000..57b5f111b
--- /dev/null
+++ b/content/references/translations/es/processing/PVector.es.json
@@ -0,0 +1,145 @@
+{
+ "brief": "A class to describe a two or three dimensional vector",
+ "constructors": ["PVector()", "PVector(x, y, z)", "PVector(x, y)"],
+ "related": [],
+ "methods": [
+ {
+ "anchor": "PVector_set_",
+ "name": "set()",
+ "desc": "Set the components of the vector"
+ },
+ {
+ "anchor": "PVector_random2D_",
+ "name": "random2D()",
+ "desc": "Make a new 2D unit vector with a random direction"
+ },
+ {
+ "anchor": "PVector_random3D_",
+ "name": "random3D()",
+ "desc": "Make a new 3D unit vector with a random direction"
+ },
+ {
+ "anchor": "PVector_fromAngle_",
+ "name": "fromAngle()",
+ "desc": "Make a new 2D unit vector from an angle"
+ },
+ {
+ "anchor": "PVector_copy_",
+ "name": "copy()",
+ "desc": "Get a copy of the vector"
+ },
+ {
+ "anchor": "PVector_mag_",
+ "name": "mag()",
+ "desc": "Calculate the magnitude of the vector"
+ },
+ {
+ "anchor": "PVector_magSq_",
+ "name": "magSq()",
+ "desc": "Calculate the magnitude of the vector, squared"
+ },
+ {
+ "anchor": "PVector_add_",
+ "name": "add()",
+ "desc": "Adds x, y, and z components to a vector, one vector to another, or\n two independent vectors"
+ },
+ {
+ "anchor": "PVector_sub_",
+ "name": "sub()",
+ "desc": "Subtract x, y, and z components from a vector, one vector from\n another, or two independent vectors"
+ },
+ {
+ "anchor": "PVector_mult_",
+ "name": "mult()",
+ "desc": "Multiply a vector by a scalar"
+ },
+ {
+ "anchor": "PVector_div_",
+ "name": "div()",
+ "desc": "Divide a vector by a scalar"
+ },
+ {
+ "anchor": "PVector_dist_",
+ "name": "dist()",
+ "desc": "Calculate the distance between two points"
+ },
+ {
+ "anchor": "PVector_dot_",
+ "name": "dot()",
+ "desc": "Calculate the dot product of two vectors"
+ },
+ {
+ "anchor": "PVector_cross_",
+ "name": "cross()",
+ "desc": "Calculate and return the cross product"
+ },
+ {
+ "anchor": "PVector_normalize_",
+ "name": "normalize()",
+ "desc": "Normalize the vector to a length of 1"
+ },
+ {
+ "anchor": "PVector_limit_",
+ "name": "limit()",
+ "desc": "Limit the magnitude of the vector"
+ },
+ {
+ "anchor": "PVector_setMag_",
+ "name": "setMag()",
+ "desc": "Set the magnitude of the vector"
+ },
+ {
+ "anchor": "PVector_heading_",
+ "name": "heading()",
+ "desc": "Calculate the angle of rotation for this vector"
+ },
+ {
+ "anchor": "PVector_rotate_",
+ "name": "rotate()",
+ "desc": "Rotate the vector by an angle (2D only)"
+ },
+ {
+ "anchor": "PVector_lerp_",
+ "name": "lerp()",
+ "desc": "Linear interpolate the vector to another vector"
+ },
+ {
+ "anchor": "PVector_angleBetween_",
+ "name": "angleBetween()",
+ "desc": "Calculate and return the angle between two vectors"
+ },
+ {
+ "anchor": "PVector_array_",
+ "name": "array()",
+ "desc": "Return a representation of the vector as a float array"
+ }
+ ],
+ "name": "PVector",
+ "classFields": [
+ {
+ "anchor": "PVector_x",
+ "name": "x",
+ "desc": "The x component of the vector"
+ },
+ {
+ "anchor": "PVector_y",
+ "name": "y",
+ "desc": "The y component of the vector"
+ },
+ {
+ "anchor": "PVector_z",
+ "name": "z",
+ "desc": "The z component of the vector"
+ }
+ ],
+ "description": "A class to describe a two or three dimensional vector, specifically a\n Euclidean (also known as geometric) vector. A vector is an entity that has\n both magnitude and direction. The datatype, however, stores the components of\n the vector (x,y for 2D, and x,y,z for 3D). The magnitude and direction can be\n accessed via the methods mag() and heading(). \n \n In many of the Processing examples, you will see PVector used to\n describe a position, velocity, or acceleration. For example, if you consider\n a rectangle moving across the screen, at any given instant it has a position\n (a vector that points from the origin to its location), a velocity (the rate\n at which the object's position changes per time unit, expressed as a vector),\n and acceleration (the rate at which the object's velocity changes per time\n unit, expressed as a vector). Since vectors represent groupings of values, we\n cannot simply use traditional addition/multiplication/etc. Instead, we'll\n need to do some \"vector\" math, which is made easy by the methods inside the\n PVector class.\n\n ",
+ "type": "class",
+ "classanchor": "PVector",
+ "category": "math",
+ "subcategory": "",
+ "parameters": [
+ { "name": "x", "description": "the x coordinate.", "type": ["float"] },
+ { "name": "y", "description": "the y coordinate.", "type": ["float"] },
+ { "name": "z", "description": "the z coordinate.", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_add_.es.json b/content/references/translations/es/processing/PVector_add_.es.json
new file mode 100644
index 000000000..649e543b6
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_add_.es.json
@@ -0,0 +1,47 @@
+{
+ "brief": "Adds x, y, and z components to a vector, one vector to another, or\n two independent vectors",
+ "related": [],
+ "name": "add()",
+ "description": "Adds x, y, and z components to a vector, adds one vector to another, or adds\n two independent vectors together. The version of the method that adds two\n vectors together is a static method and returns a new PVector, the others act\n directly on the vector itself. See the examples for more context.",
+ "syntax": [
+ ".add(v)",
+ ".add(x, y)",
+ ".add(x, y, z)",
+ ".add(v1, v2)",
+ ".add(v1, v2, target)"
+ ],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "the vector to be added",
+ "type": ["PVector"]
+ },
+ {
+ "name": "x",
+ "description": "x component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z component of the vector",
+ "type": ["float"]
+ },
+ { "name": "v1", "description": "a vector", "type": ["PVector"] },
+ { "name": "v2", "description": "another vector", "type": ["PVector"] },
+ {
+ "name": "target",
+ "description": "the target vector (if null, a new vector will be created)",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_angleBetween_.es.json b/content/references/translations/es/processing/PVector_angleBetween_.es.json
new file mode 100644
index 000000000..d6b463ed2
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_angleBetween_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Calculate and return the angle between two vectors",
+ "related": [],
+ "name": "angleBetween()",
+ "description": "Calculates and returns the angle (in radians) between two vectors.",
+ "syntax": [".angleBetween(v1, v2)"],
+ "returns": "float",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v1",
+ "description": "the x, y, and z components of a PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v2",
+ "description": "the x, y, and z components of a PVector",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_array_.es.json b/content/references/translations/es/processing/PVector_array_.es.json
new file mode 100644
index 000000000..a02620d22
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_array_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a representation of the vector as a float array",
+ "related": [],
+ "name": "array()",
+ "description": "Return a representation of this vector as a float array. This is only for\n temporary use. If used in any other fashion, the contents should be copied by\n using the copy() method to copy into your own array.",
+ "syntax": [".array()"],
+ "returns": "float[]",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PVector_copy_.es.json b/content/references/translations/es/processing/PVector_copy_.es.json
new file mode 100644
index 000000000..f6b89ba85
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_copy_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get a copy of the vector",
+ "related": [],
+ "name": "copy()",
+ "description": "Copies the components of the vector and returns the result as a PVector.",
+ "syntax": [".copy()"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PVector_cross_.es.json b/content/references/translations/es/processing/PVector_cross_.es.json
new file mode 100644
index 000000000..59c5a25a6
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_cross_.es.json
@@ -0,0 +1,44 @@
+{
+ "brief": "Calculate and return the cross product",
+ "related": [],
+ "name": "cross()",
+ "description": "Calculates and returns a vector composed of the cross product between\n two vectors.",
+ "syntax": [".cross(v)", ".cross(v, target)", ".cross(v1, v2, target)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "the vector to calculate the cross product",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "target",
+ "description": "PVector to store the result",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v1",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v2",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "target",
+ "description": "PVector to store the result",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_dist_.es.json b/content/references/translations/es/processing/PVector_dist_.es.json
new file mode 100644
index 000000000..300de6371
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_dist_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Calculate the distance between two points",
+ "related": [],
+ "name": "dist()",
+ "description": "Calculates the Euclidean distance between two points (considering a\n point as a vector object).",
+ "syntax": [".dist(v)", ".dist(v1, v2)"],
+ "returns": "float",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "the x, y, and z coordinates of a PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v1",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v2",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_div_.es.json b/content/references/translations/es/processing/PVector_div_.es.json
new file mode 100644
index 000000000..2ae8c5dd1
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_div_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Divide a vector by a scalar",
+ "related": [],
+ "name": "div()",
+ "description": "Divides a vector by a scalar. The version of the method that uses a float\n acts directly on the vector upon which it is called (as in the first example\n above). The version that receives both a PVector and a float as arguments is\n a static methods, and returns a new PVector that is the result of the\n division operation. Both examples above produce the same visual output.",
+ "syntax": [".div(n)", ".div(v, n)", ".div(v, n, target)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "n",
+ "description": "the number by which to divide the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "v",
+ "description": "the vector to divide by the scalar",
+ "type": ["PVector"]
+ },
+ {
+ "name": "target",
+ "description": "PVector in which to store the result",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_dot_.es.json b/content/references/translations/es/processing/PVector_dot_.es.json
new file mode 100644
index 000000000..f0898654d
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_dot_.es.json
@@ -0,0 +1,44 @@
+{
+ "brief": "Calculate the dot product of two vectors",
+ "related": [],
+ "name": "dot()",
+ "description": "Calculates the dot product of two vectors.",
+ "syntax": [".dot(v)", ".dot(x, y, z)", ".dot(v1, v2)"],
+ "returns": "float",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "x",
+ "description": "x component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v2",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_fromAngle_.es.json b/content/references/translations/es/processing/PVector_fromAngle_.es.json
new file mode 100644
index 000000000..57294e72d
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_fromAngle_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Make a new 2D unit vector from an angle",
+ "related": [],
+ "name": "fromAngle()",
+ "description": "Calculates and returns a new 2D unit vector from the specified angle value\n (in radians).",
+ "syntax": [".fromAngle(angle)", ".fromAngle(angle, target)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "the angle in radians",
+ "type": ["float"]
+ },
+ {
+ "name": "target",
+ "description": "the target vector (if null, a new vector will be created)",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_heading_.es.json b/content/references/translations/es/processing/PVector_heading_.es.json
new file mode 100644
index 000000000..064400b42
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_heading_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Calculate the angle of rotation for this vector",
+ "related": [],
+ "name": "heading()",
+ "description": "Calculate the angle of rotation for this vector (only 2D vectors)",
+ "syntax": [".heading()"],
+ "returns": "float",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PVector_lerp_.es.json b/content/references/translations/es/processing/PVector_lerp_.es.json
new file mode 100644
index 000000000..9110c9092
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_lerp_.es.json
@@ -0,0 +1,49 @@
+{
+ "brief": "Linear interpolate the vector to another vector",
+ "related": ["PVector_lerp_"],
+ "name": "lerp()",
+ "description": "Calculates linear interpolation from one vector to another vector. (Just like\n regular lerp(), but for vectors.) \n \n Note that there is one static version of this method, and two\n non-static versions. The static version, lerp(v1, v2, amt) is\n given the two vectors to interpolate and returns a new PVector object. The\n static version is used by referencing the PVector class directly. (See the\n middle example above.) The non-static versions, lerp(v, amt) and\n lerp(x, y, z, amt), do not create a new PVector, but transform the\n values of the PVector on which they are called. These non-static versions\n perform the same operation, but the former takes another vector as input,\n while the latter takes three float values. (See the top and bottom examples\n above, respectively.)",
+ "syntax": [".lerp(v, amt)", ".lerp(v1, v2, amt)", ".lerp(x, y, z, amt)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "the vector to lerp to",
+ "type": ["PVector"]
+ },
+ {
+ "name": "amt",
+ "description": "The amount of interpolation; some value between 0.0 (old vector)\n and 1.0 (new vector). 0.1 is very near the old vector; 0.5 is\n halfway in between.",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "the vector to start from",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v2",
+ "description": "the vector to lerp to",
+ "type": ["PVector"]
+ },
+ {
+ "name": "x",
+ "description": "the x component to lerp to",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "the y component to lerp to",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "the z component to lerp to",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_limit_.es.json b/content/references/translations/es/processing/PVector_limit_.es.json
new file mode 100644
index 000000000..de44d5304
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_limit_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Limit the magnitude of the vector",
+ "related": [],
+ "name": "limit()",
+ "description": "Limit the magnitude of this vector to the value used for the max parameter.",
+ "syntax": [".limit(max)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "max",
+ "description": "the maximum magnitude for the vector",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_magSq_.es.json b/content/references/translations/es/processing/PVector_magSq_.es.json
new file mode 100644
index 000000000..ad7a10936
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_magSq_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Calculate the magnitude of the vector, squared",
+ "related": ["PVector_mag_"],
+ "name": "magSq()",
+ "description": "Calculates the magnitude (length) of the vector, squared. This method is\n often used to improve performance since, unlike mag(), it does not\n require a sqrt() operation.",
+ "syntax": [".magSq()"],
+ "returns": "float",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PVector_mag_.es.json b/content/references/translations/es/processing/PVector_mag_.es.json
new file mode 100644
index 000000000..610cb526f
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_mag_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Calculate the magnitude of the vector",
+ "related": ["PVector_magSq_"],
+ "name": "mag()",
+ "description": "Calculates the magnitude (length) of the vector and returns the result\n as a float (this is simply the equation sqrt(x*x + y*y + z*z).)",
+ "syntax": [".mag()"],
+ "returns": "float",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PVector_mult_.es.json b/content/references/translations/es/processing/PVector_mult_.es.json
new file mode 100644
index 000000000..e51510402
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_mult_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Multiply a vector by a scalar",
+ "related": [],
+ "name": "mult()",
+ "description": "Multiplies a vector by a scalar. The version of the method that uses a float\n acts directly on the vector upon which it is called (as in the first example\n above). The versions that receive both a PVector and a float as arguments are\n static methods, and each returns a new PVector that is the result of the\n multiplication operation. Both examples above produce the same visual output.",
+ "syntax": [".mult(n)", ".mult(v, n)", ".mult(v, n, target)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "n",
+ "description": "the number to multiply with the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "v",
+ "description": "the vector to multiply by the scalar",
+ "type": ["PVector"]
+ },
+ {
+ "name": "target",
+ "description": "PVector in which to store the result",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_normalize_.es.json b/content/references/translations/es/processing/PVector_normalize_.es.json
new file mode 100644
index 000000000..e34c75dc6
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_normalize_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Normalize the vector to a length of 1",
+ "related": [],
+ "name": "normalize()",
+ "description": "Normalize the vector to length 1 (make it a unit vector).",
+ "syntax": [".normalize()", ".normalize(target)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "target",
+ "description": "Set to null to create a new vector",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_random2D_.es.json b/content/references/translations/es/processing/PVector_random2D_.es.json
new file mode 100644
index 000000000..c228a9d83
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_random2D_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Make a new 2D unit vector with a random direction",
+ "related": ["PVector_random3D_"],
+ "name": "random2D()",
+ "description": "Returns a new 2D unit vector with a random direction. If you pass in\n this as an argument, it will use the PApplet's random number\n generator.",
+ "syntax": [
+ ".random2D()",
+ ".random2D(parent)",
+ ".random2D(target)",
+ ".random2D(target, parent)"
+ ],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "current PApplet instance",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "target",
+ "description": "the target vector (if null, a new vector will be created)",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_random3D_.es.json b/content/references/translations/es/processing/PVector_random3D_.es.json
new file mode 100644
index 000000000..fb2073112
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_random3D_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Make a new 3D unit vector with a random direction",
+ "related": ["PVector_random2D_"],
+ "name": "random3D()",
+ "description": "Returns a new 3D unit vector with a random direction. If you pass in\n this as an argument, it will use the PApplet's random number\n generator.",
+ "syntax": [
+ ".random3D()",
+ ".random3D(parent)",
+ ".random3D(target)",
+ ".random3D(target, parent)"
+ ],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "current PApplet instance",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "target",
+ "description": "the target vector (if null, a new vector will be created)",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_rotate_.es.json b/content/references/translations/es/processing/PVector_rotate_.es.json
new file mode 100644
index 000000000..dc33dd7cd
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_rotate_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Rotate the vector by an angle (2D only)",
+ "related": [],
+ "name": "rotate()",
+ "description": "Rotate the vector by an angle (only 2D vectors), magnitude remains the same",
+ "syntax": [".rotate(theta)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "theta",
+ "description": "the angle of rotation",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_setMag_.es.json b/content/references/translations/es/processing/PVector_setMag_.es.json
new file mode 100644
index 000000000..7a87e60ea
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_setMag_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Set the magnitude of the vector",
+ "related": [],
+ "name": "setMag()",
+ "description": "Set the magnitude of this vector to the value used for the len parameter.",
+ "syntax": [".setMag(len)", ".setMag(target, len)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "len",
+ "description": "the new length for this vector",
+ "type": ["float"]
+ },
+ {
+ "name": "target",
+ "description": "Set to null to create a new vector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "len",
+ "description": "the new length for the new vector",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_set_.es.json b/content/references/translations/es/processing/PVector_set_.es.json
new file mode 100644
index 000000000..c860d19fa
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_set_.es.json
@@ -0,0 +1,49 @@
+{
+ "brief": "Set the components of the vector",
+ "related": [],
+ "name": "set()",
+ "description": "Sets the x, y, and z component of the vector using two or three separate\n variables, the data from a PVector, or the values from a float array.",
+ "syntax": [".set(x, y, z)", ".set(x, y)", ".set(v)", ".set(source)"],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "the x component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "the y component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "the z component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "the x component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "the y component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "v",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "source",
+ "description": "array to copy from",
+ "type": ["float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_sub_.es.json b/content/references/translations/es/processing/PVector_sub_.es.json
new file mode 100644
index 000000000..848ffcb0f
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_sub_.es.json
@@ -0,0 +1,55 @@
+{
+ "brief": "Subtract x, y, and z components from a vector, one vector from\n another, or two independent vectors",
+ "related": [],
+ "name": "sub()",
+ "description": "Subtracts x, y, and z components from a vector, subtracts one vector from\n another, or subtracts two independent vectors. The version of the method that\n substracts two vectors is a static method and returns a PVector, the others\n act directly on the vector. See the examples for more context. In all cases,\n the second vector (v2) is subtracted from the first (v1), resulting in v1-v2.",
+ "syntax": [
+ ".sub(v)",
+ ".sub(x, y)",
+ ".sub(x, y, z)",
+ ".sub(v1, v2)",
+ ".sub(v1, v2, target)"
+ ],
+ "returns": "PVector",
+ "type": "method",
+ "category": "pvector",
+ "subcategory": "method",
+ "classanchor": "PVector",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "any variable of type PVector",
+ "type": ["PVector"]
+ },
+ {
+ "name": "x",
+ "description": "the x component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "the y component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "the z component of the vector",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "the x, y, and z components of a PVector object",
+ "type": ["PVector"]
+ },
+ {
+ "name": "v2",
+ "description": "the x, y, and z components of a PVector object",
+ "type": ["PVector"]
+ },
+ {
+ "name": "target",
+ "description": "PVector in which to store the result",
+ "type": ["PVector"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PVector_x.es.json b/content/references/translations/es/processing/PVector_x.es.json
new file mode 100644
index 000000000..f6b89891c
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_x.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The x component of the vector",
+ "related": [],
+ "name": "x",
+ "description": "The x component of the vector. This field (variable) can be used to both\n get and set the value (see above example.)",
+ "syntax": [".x\n"],
+ "category": "pvector",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PVector",
+ "parameters": [{ "name": "", "desc": "" }]
+}
diff --git a/content/references/translations/es/processing/PVector_y.es.json b/content/references/translations/es/processing/PVector_y.es.json
new file mode 100644
index 000000000..a0bb64da2
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_y.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The y component of the vector",
+ "related": [],
+ "name": "y",
+ "description": "The y component of the vector. This field (variable) can be used to both\n get and set the value (see above example.)",
+ "syntax": [".y\n"],
+ "category": "pvector",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PVector",
+ "parameters": [{ "name": "", "desc": "" }]
+}
diff --git a/content/references/translations/es/processing/PVector_z.es.json b/content/references/translations/es/processing/PVector_z.es.json
new file mode 100644
index 000000000..9c8893223
--- /dev/null
+++ b/content/references/translations/es/processing/PVector_z.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The z component of the vector",
+ "related": [],
+ "name": "z",
+ "description": "The z component of the vector. This field (variable) can be used to both\n get and set the value (see above example.)",
+ "syntax": [".z\n"],
+ "category": "pvector",
+ "subcategory": "field",
+ "type": "field",
+ "classanchor": "PVector",
+ "parameters": [{ "name": "", "desc": "" }]
+}
diff --git a/content/references/translations/es/processing/PrintWriter.es.json b/content/references/translations/es/processing/PrintWriter.es.json
new file mode 100644
index 000000000..eb5cad4bf
--- /dev/null
+++ b/content/references/translations/es/processing/PrintWriter.es.json
@@ -0,0 +1,35 @@
+{
+ "name": "PrintWriter",
+ "brief": "Allows characters to print to a text-output stream",
+ "description": "Allows characters to print to a text-output stream. A new PrintWriter object is created with the createWriter() function. For the file to be made correctly, it should be flushed and must be closed with its flush() and close() methods (see above example). \n",
+ "constructors": [],
+ "classFields": [],
+ "methods": [
+ {
+ "name": "print()",
+ "desc": "Adds data to the stream",
+ "anchor": "PrintWriter_print_"
+ },
+ {
+ "name": "println()",
+ "desc": "Adds data to the stream and starts a new line",
+ "anchor": "PrintWriter_println_"
+ },
+ {
+ "name": "flush()",
+ "desc": "Flushes the stream",
+ "anchor": "PrintWriter_flush_"
+ },
+ {
+ "name": "close()",
+ "desc": "Closes the stream",
+ "anchor": "PrintWriter_close_"
+ }
+ ],
+ "related": ["createWriter_"],
+ "type": "class",
+ "classanchor": "PrintWriter",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/PrintWriter_close_.es.json b/content/references/translations/es/processing/PrintWriter_close_.es.json
new file mode 100644
index 000000000..41e7e8cef
--- /dev/null
+++ b/content/references/translations/es/processing/PrintWriter_close_.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "close()",
+ "brief": "Closes the PrintWriter object",
+ "description": "Closes the PrintWriter object.\n",
+ "related": [],
+ "syntax": ["pw.close()"],
+ "returns": "",
+ "type": "method",
+ "category": "PrintWriter",
+ "subcategory": "Method",
+ "classanchor": "PrintWriter",
+ "parameters": [
+ {
+ "name": "pw",
+ "description": "any object of the type PrintWriter",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PrintWriter_flush_.es.json b/content/references/translations/es/processing/PrintWriter_flush_.es.json
new file mode 100644
index 000000000..23ad61085
--- /dev/null
+++ b/content/references/translations/es/processing/PrintWriter_flush_.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "flush()",
+ "brief": "Flushes the PrintWriter object",
+ "description": "Flushes the PrintWriter object. This is necessary to ensure all remaining data is written to the file before it is closed.\n",
+ "related": [],
+ "syntax": ["pw.flush()"],
+ "returns": "",
+ "type": "method",
+ "category": "PrintWriter",
+ "subcategory": "Method",
+ "classanchor": "PrintWriter",
+ "parameters": [
+ {
+ "name": "pw",
+ "description": "any object of the type PrintWriter",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PrintWriter_print_.es.json b/content/references/translations/es/processing/PrintWriter_print_.es.json
new file mode 100644
index 000000000..d00ff1b57
--- /dev/null
+++ b/content/references/translations/es/processing/PrintWriter_print_.es.json
@@ -0,0 +1,24 @@
+{
+ "name": "print()",
+ "brief": "Writes data to a PrintWriter object stream",
+ "description": "Writes data to a PrintWriter object stream.\n",
+ "related": [],
+ "syntax": ["pw.print(data)"],
+ "returns": "",
+ "type": "method",
+ "category": "PrintWriter",
+ "subcategory": "Method",
+ "classanchor": "PrintWriter",
+ "parameters": [
+ {
+ "name": "pw",
+ "description": "any object of the type PrintWriter",
+ "type": []
+ },
+ {
+ "name": "data",
+ "description": "boolean, byte, char, color, int, float, String",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/PrintWriter_println_.es.json b/content/references/translations/es/processing/PrintWriter_println_.es.json
new file mode 100644
index 000000000..b5d288948
--- /dev/null
+++ b/content/references/translations/es/processing/PrintWriter_println_.es.json
@@ -0,0 +1,24 @@
+{
+ "name": "println()",
+ "brief": "Writes data to a PrintWriter object stream and then starts a new line",
+ "description": "Writes data to a PrintWriter object stream and then starts a new line.\n",
+ "related": [],
+ "syntax": ["pw.println(data)"],
+ "returns": "",
+ "type": "method",
+ "category": "PrintWriter",
+ "subcategory": "Method",
+ "classanchor": "PrintWriter",
+ "parameters": [
+ {
+ "name": "pw",
+ "description": "any object of the type PrintWriter",
+ "type": []
+ },
+ {
+ "name": "data",
+ "description": "boolean, byte, char, color, int, float, String",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/QUARTER_PI.es.json b/content/references/translations/es/processing/QUARTER_PI.es.json
new file mode 100644
index 000000000..58e17a8ce
--- /dev/null
+++ b/content/references/translations/es/processing/QUARTER_PI.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "QUARTER_PI es una constante matemática con el valor 0.7853982",
+ "related": ["PI", "TWO_PI", "TAU", "HALF_PI"],
+ "name": "QUARTER_PI",
+ "description": "QUARTER_PI es una constante matemática con el valor 0.7853982. Es\n un cuarto de la proporción entre la circunferencia de un circulo y su diamétro.\nEs útil en combinación con las funciones trigonométricas\n sin() y cos().",
+ "category": "constants",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/String.es.json b/content/references/translations/es/processing/String.es.json
new file mode 100644
index 000000000..3ecbaa0a6
--- /dev/null
+++ b/content/references/translations/es/processing/String.es.json
@@ -0,0 +1,65 @@
+{
+ "name": "String",
+ "brief": "A string is a sequence of characters",
+ "description": "A string is a sequence of characters. The class String includes methods for examining individual characters, comparing strings, searching strings, extracting parts of strings, and for converting an entire string uppercase and lowercase. Strings are always defined inside double quotes (\"Abc\"), and characters are always defined inside single quotes ('A'). \n \nTo compare the contents of two Strings, use the equals() method, as in if (a.equals(b)), instead of if (a == b). A String is an Object, so comparing them with the == operator only compares whether both Strings are stored in the same memory location. Using the equals() method will ensure that the actual contents are compared. (The troubleshooting reference has a longer explanation.) \n \nBecause a String is defined between double quotation marks, to include such marks within the String itself you must use the \ (backslash) character. (See the third example above.) This is known as an escape sequence. Other escape sequences include \t for the tab character and \n for new line. Because backslash is the escape character, to include a single backslash within a String, you must use two consecutive backslashes, as in: \\ \n \nThere are more string methods than those linked from this page. Additional documentation is located online in the official Java documentation.\n",
+ "related": ["char", "text_"],
+ "constructors": ["String(data)", "String(data, offset, length)"],
+ "methods": [
+ {
+ "anchor": "String_toUpperCase_",
+ "name": "toUpperCase()",
+ "desc": "Converts all of the characters in the string to uppercase"
+ },
+ {
+ "anchor": "String_toLowerCase_",
+ "name": "toLowerCase()",
+ "desc": "Converts all of the characters in the string to lowercase"
+ },
+ {
+ "anchor": "String_substring_",
+ "name": "substring()",
+ "desc": "Returns a new string that is a part of the original string"
+ },
+ {
+ "anchor": "String_length_",
+ "name": "length()",
+ "desc": "Returns the total number of characters included in the String as an integer number"
+ },
+ {
+ "anchor": "String_indexOf_",
+ "name": "indexOf()",
+ "desc": "Returns the index value of the first occurrence of a substring within the input string"
+ },
+ {
+ "anchor": "String_equals_",
+ "name": "equals()",
+ "desc": "Compares two strings to see if they are the same"
+ },
+ {
+ "anchor": "String_charAt_",
+ "name": "charAt()",
+ "desc": "Returns the character at the specified index"
+ }
+ ],
+ "returns": "",
+ "type": "class",
+ "category": "Data",
+ "subcategory": "Composite",
+ "parameters": [
+ {
+ "name": "data",
+ "description": "byte[] or char[]: either an array of bytes to be decoded into characters, or an array of characters to be combined into a string",
+ "type": []
+ },
+ {
+ "name": "offset",
+ "description": "int: index of the first character",
+ "type": []
+ },
+ {
+ "name": "length",
+ "description": "int: number of characters",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/StringDict.es.json b/content/references/translations/es/processing/StringDict.es.json
new file mode 100644
index 000000000..e4344ca93
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict.es.json
@@ -0,0 +1,87 @@
+{
+ "brief": "A simple class to use a String as a lookup for an String value",
+ "methods": [
+ {
+ "anchor": "StringDict_size_",
+ "name": "size()",
+ "desc": "Returns the number of key/value pairs"
+ },
+ {
+ "anchor": "StringDict_clear_",
+ "name": "clear()",
+ "desc": "Remove all entries"
+ },
+ {
+ "anchor": "StringDict_keys_",
+ "name": "keys()",
+ "desc": "Return the internal array being used to store the keys"
+ },
+ {
+ "anchor": "StringDict_keyArray_",
+ "name": "keyArray()",
+ "desc": "Return a copy of the internal keys array"
+ },
+ {
+ "anchor": "StringDict_values_",
+ "name": "values()",
+ "desc": "Return the internal array being used to store the values"
+ },
+ {
+ "anchor": "StringDict_valueArray_",
+ "name": "valueArray()",
+ "desc": "Create a new array and copy each of the values into it"
+ },
+ {
+ "anchor": "StringDict_get_",
+ "name": "get()",
+ "desc": "Return a value for the specified key"
+ },
+ {
+ "anchor": "StringDict_set_",
+ "name": "set()",
+ "desc": "Create a new key/value pair or change the value of one"
+ },
+ {
+ "anchor": "StringDict_hasKey_",
+ "name": "hasKey()",
+ "desc": "Check if a key is a part of the data structure"
+ },
+ {
+ "anchor": "StringDict_remove_",
+ "name": "remove()",
+ "desc": "Remove a key/value pair"
+ },
+ {
+ "anchor": "StringDict_sortKeys_",
+ "name": "sortKeys()",
+ "desc": "Sort the keys alphabetically"
+ },
+ {
+ "anchor": "StringDict_sortKeysReverse_",
+ "name": "sortKeysReverse()",
+ "desc": "Sort the keys alphabetically in reverse"
+ },
+ {
+ "anchor": "StringDict_sortValues_",
+ "name": "sortValues()",
+ "desc": "Sort by values in descending order"
+ },
+ {
+ "anchor": "StringDict_sortValuesReverse_",
+ "name": "sortValuesReverse()",
+ "desc": "Sort by values in descending order"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A simple class to use a String as a lookup for a String value. String \"keys\" \n are associated with String values.",
+ "type": "class",
+ "constructors": ["StringDict()", "StringDict(pairs)", "StringDict(row)"],
+ "related": ["IntDict", "FloatDict"],
+ "name": "StringDict",
+ "classanchor": "StringDict",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_clear_.es.json b/content/references/translations/es/processing/StringDict_clear_.es.json
new file mode 100644
index 000000000..6a2611755
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove all entries",
+ "related": [],
+ "name": "clear()",
+ "description": "Remove all entries.",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_get_.es.json b/content/references/translations/es/processing/StringDict_get_.es.json
new file mode 100644
index 000000000..3af63db18
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_get_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a value for the specified key",
+ "related": [],
+ "name": "get()",
+ "description": "Return a value for the specified key.",
+ "syntax": [".get(key)", ".get(key, alternate)"],
+ "returns": "String",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_hasKey_.es.json b/content/references/translations/es/processing/StringDict_hasKey_.es.json
new file mode 100644
index 000000000..7f2018e31
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_hasKey_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check if a key is a part of the data structure",
+ "related": [],
+ "name": "hasKey()",
+ "description": "Check if a key is a part of the data structure",
+ "syntax": [".hasKey(key)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_keyArray_.es.json b/content/references/translations/es/processing/StringDict_keyArray_.es.json
new file mode 100644
index 000000000..5ab0d60ea
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_keyArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return a copy of the internal keys array",
+ "related": [],
+ "name": "keyArray()",
+ "description": "Return a copy of the internal keys array.",
+ "syntax": [".keyArray()", ".keyArray(outgoing)"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_keys_.es.json b/content/references/translations/es/processing/StringDict_keys_.es.json
new file mode 100644
index 000000000..3d9210f8f
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_keys_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the internal array being used to store the keys",
+ "related": [],
+ "name": "keys()",
+ "description": "Return the internal array being used to store the keys.",
+ "syntax": [".keys()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_remove_.es.json b/content/references/translations/es/processing/StringDict_remove_.es.json
new file mode 100644
index 000000000..bac9983ad
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_remove_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove a key/value pair",
+ "related": [],
+ "name": "remove()",
+ "description": "Remove a key/value pair",
+ "syntax": [".remove(key)"],
+ "returns": "String",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_set_.es.json b/content/references/translations/es/processing/StringDict_set_.es.json
new file mode 100644
index 000000000..cf659fc16
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_set_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new key/value pair or change the value of one",
+ "related": [],
+ "name": "set()",
+ "description": "Create a new key/value pair or change the value of one",
+ "syntax": [".set(key, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_size_.es.json b/content/references/translations/es/processing/StringDict_size_.es.json
new file mode 100644
index 000000000..2a206255c
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of key/value pairs",
+ "related": [],
+ "name": "size()",
+ "description": "Returns the number of key/value pairs",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_sortKeysReverse_.es.json b/content/references/translations/es/processing/StringDict_sortKeysReverse_.es.json
new file mode 100644
index 000000000..d06cc9f15
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_sortKeysReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort the keys alphabetically in reverse",
+ "related": [],
+ "name": "sortKeysReverse()",
+ "description": "Sort the keys alphabetically in reverse",
+ "syntax": [".sortKeysReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_sortKeys_.es.json b/content/references/translations/es/processing/StringDict_sortKeys_.es.json
new file mode 100644
index 000000000..5562cdc0e
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_sortKeys_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort the keys alphabetically",
+ "related": [],
+ "name": "sortKeys()",
+ "description": "Sort the keys alphabetically.",
+ "syntax": [".sortKeys()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_sortValuesReverse_.es.json b/content/references/translations/es/processing/StringDict_sortValuesReverse_.es.json
new file mode 100644
index 000000000..3a2bfb982
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_sortValuesReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort by values in descending order",
+ "related": [],
+ "name": "sortValuesReverse()",
+ "description": "Sort by values in descending order",
+ "syntax": [".sortValuesReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_sortValues_.es.json b/content/references/translations/es/processing/StringDict_sortValues_.es.json
new file mode 100644
index 000000000..afface94b
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_sortValues_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sort by values in descending order",
+ "related": [],
+ "name": "sortValues()",
+ "description": "Sort by values in descending order.",
+ "syntax": [".sortValues()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_valueArray_.es.json b/content/references/translations/es/processing/StringDict_valueArray_.es.json
new file mode 100644
index 000000000..0fbee8bde
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_valueArray_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new array and copy each of the values into it",
+ "related": [],
+ "name": "valueArray()",
+ "description": "Create a new array and copy each of the values into it.",
+ "syntax": [".valueArray()", ".valueArray(array)"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringDict_values_.es.json b/content/references/translations/es/processing/StringDict_values_.es.json
new file mode 100644
index 000000000..6ca1b91cc
--- /dev/null
+++ b/content/references/translations/es/processing/StringDict_values_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Return the internal array being used to store the values",
+ "related": [],
+ "name": "values()",
+ "description": "Return the internal array being used to store the values",
+ "syntax": [".values()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "stringdict",
+ "subcategory": "method",
+ "classanchor": "StringDict",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList.es.json b/content/references/translations/es/processing/StringList.es.json
new file mode 100644
index 000000000..adf3af6f0
--- /dev/null
+++ b/content/references/translations/es/processing/StringList.es.json
@@ -0,0 +1,87 @@
+{
+ "brief": "Helper class for a list of Strings",
+ "methods": [
+ {
+ "anchor": "StringList_size_",
+ "name": "size()",
+ "desc": "Get the length of the list"
+ },
+ {
+ "anchor": "StringList_clear_",
+ "name": "clear()",
+ "desc": "Remove all entries from the list"
+ },
+ {
+ "anchor": "StringList_get_",
+ "name": "get()",
+ "desc": "Get an entry at a particular index"
+ },
+ {
+ "anchor": "StringList_set_",
+ "name": "set()",
+ "desc": "Set an entry at a particular index"
+ },
+ {
+ "anchor": "StringList_remove_",
+ "name": "remove()",
+ "desc": "Remove an element from the specified index"
+ },
+ {
+ "anchor": "StringList_append_",
+ "name": "append()",
+ "desc": "Add a new entry to the list"
+ },
+ {
+ "anchor": "StringList_hasValue_",
+ "name": "hasValue()",
+ "desc": "Check if a value is a part of the list"
+ },
+ {
+ "anchor": "StringList_sort_",
+ "name": "sort()",
+ "desc": "Sorts the array in place"
+ },
+ {
+ "anchor": "StringList_sortReverse_",
+ "name": "sortReverse()",
+ "desc": "A sort in reverse"
+ },
+ {
+ "anchor": "StringList_reverse_",
+ "name": "reverse()",
+ "desc": "Reverse the order of the list"
+ },
+ {
+ "anchor": "StringList_shuffle_",
+ "name": "shuffle()",
+ "desc": "Randomize the order of the list elements"
+ },
+ {
+ "anchor": "StringList_lower_",
+ "name": "lower()",
+ "desc": "Make the entire list lower case"
+ },
+ {
+ "anchor": "StringList_upper_",
+ "name": "upper()",
+ "desc": "Make the entire list upper case"
+ },
+ {
+ "anchor": "StringList_array_",
+ "name": "array()",
+ "desc": "Create a new array with a copy of all the values"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Helper class for a list of Strings. Lists are designed to have some of the\n features of ArrayLists, but to maintain the simplicity and efficiency of\n working with arrays.\n\n Functions like sort() and shuffle() always act on the list itself. To get\n a sorted copy, use list.copy().sort().",
+ "type": "class",
+ "constructors": ["StringList()"],
+ "related": ["IntList", "FloatList"],
+ "name": "StringList",
+ "classanchor": "StringList",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_append_.es.json b/content/references/translations/es/processing/StringList_append_.es.json
new file mode 100644
index 000000000..b8afff259
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_append_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Add a new entry to the list",
+ "related": [],
+ "name": "append()",
+ "description": "Add a new entry to the list.",
+ "syntax": [".append(value)", ".append(values)", ".append(list)"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_array_.es.json b/content/references/translations/es/processing/StringList_array_.es.json
new file mode 100644
index 000000000..ec93db216
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_array_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Create a new array with a copy of all the values",
+ "related": [],
+ "name": "array()",
+ "description": "Create a new array with a copy of all the values.",
+ "syntax": [".array()", ".array(array)"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_clear_.es.json b/content/references/translations/es/processing/StringList_clear_.es.json
new file mode 100644
index 000000000..412fbd19f
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_clear_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove all entries from the list",
+ "related": [],
+ "name": "clear()",
+ "description": "Remove all entries from the list.",
+ "syntax": [".clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_get_.es.json b/content/references/translations/es/processing/StringList_get_.es.json
new file mode 100644
index 000000000..acf2fdd2f
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_get_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get an entry at a particular index",
+ "related": [],
+ "name": "get()",
+ "description": "Get an entry at a particular index.",
+ "syntax": [".get(index)"],
+ "returns": "String",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_hasValue_.es.json b/content/references/translations/es/processing/StringList_hasValue_.es.json
new file mode 100644
index 000000000..a9800fcd3
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_hasValue_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check if a value is a part of the list",
+ "related": [],
+ "name": "hasValue()",
+ "description": "Check if a value is a part of the list",
+ "syntax": [".hasValue(value)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_lower_.es.json b/content/references/translations/es/processing/StringList_lower_.es.json
new file mode 100644
index 000000000..9df0eddf1
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_lower_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Make the entire list lower case",
+ "related": [],
+ "name": "lower()",
+ "description": "Make the entire list lower case.",
+ "syntax": [".lower()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_remove_.es.json b/content/references/translations/es/processing/StringList_remove_.es.json
new file mode 100644
index 000000000..1cb2f0786
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_remove_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove an element from the specified index",
+ "related": [],
+ "name": "remove()",
+ "description": "Remove an element from the specified index.",
+ "syntax": [".remove(index)"],
+ "returns": "String",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_reverse_.es.json b/content/references/translations/es/processing/StringList_reverse_.es.json
new file mode 100644
index 000000000..40e13c17a
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_reverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Reverse the order of the list",
+ "related": [],
+ "name": "reverse()",
+ "description": "Reverse the order of the list",
+ "syntax": [".reverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_set_.es.json b/content/references/translations/es/processing/StringList_set_.es.json
new file mode 100644
index 000000000..1ffe948d6
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_set_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Set an entry at a particular index",
+ "related": [],
+ "name": "set()",
+ "description": "Set the entry at a particular index. If the index is past the length of\n the list, it'll expand the list to accommodate, and fill the intermediate\n entries with null.",
+ "syntax": [".set(index, what)"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_shuffle_.es.json b/content/references/translations/es/processing/StringList_shuffle_.es.json
new file mode 100644
index 000000000..f86c0281f
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_shuffle_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Randomize the order of the list elements",
+ "related": [],
+ "name": "shuffle()",
+ "description": "Randomize the order of the list elements.",
+ "syntax": [".shuffle()", ".shuffle(sketch)"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_size_.es.json b/content/references/translations/es/processing/StringList_size_.es.json
new file mode 100644
index 000000000..31f0d71d3
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_size_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get the length of the list",
+ "related": [],
+ "name": "size()",
+ "description": "Get the length of the list.",
+ "syntax": [".size()"],
+ "returns": "int",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_sortReverse_.es.json b/content/references/translations/es/processing/StringList_sortReverse_.es.json
new file mode 100644
index 000000000..18502ea92
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_sortReverse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "A sort in reverse",
+ "related": [],
+ "name": "sortReverse()",
+ "description": "A sort in reverse. It's equivalent to running sort() and then \n reverse(), but is more efficient than running each separately.",
+ "syntax": [".sortReverse()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_sort_.es.json b/content/references/translations/es/processing/StringList_sort_.es.json
new file mode 100644
index 000000000..9a8010062
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_sort_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sorts the array in place",
+ "related": [],
+ "name": "sort()",
+ "description": "Sorts the array in place.",
+ "syntax": [".sort()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/StringList_upper_.es.json b/content/references/translations/es/processing/StringList_upper_.es.json
new file mode 100644
index 000000000..deb1715e7
--- /dev/null
+++ b/content/references/translations/es/processing/StringList_upper_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Make the entire list upper case",
+ "related": [],
+ "name": "upper()",
+ "description": "Make the entire list upper case.",
+ "syntax": [".upper()"],
+ "returns": "void",
+ "type": "method",
+ "category": "stringlist",
+ "subcategory": "method",
+ "classanchor": "StringList",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/String_charAt_.es.json b/content/references/translations/es/processing/String_charAt_.es.json
new file mode 100644
index 000000000..d627fade9
--- /dev/null
+++ b/content/references/translations/es/processing/String_charAt_.es.json
@@ -0,0 +1,24 @@
+{
+ "name": "charAt()",
+ "brief": "Returns the character at the specified index",
+ "description": "Returns the character at the specified index. An index ranges from 0 to the length of the string minus 1. The first character of the sequence is at index 0, the next at index 1, etc. \n",
+ "related": [],
+ "syntax": ["str.charAt(index)"],
+ "returns": "char",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any variable of type String",
+ "type": []
+ },
+ {
+ "name": "index",
+ "description": "int: the index of the character",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/String_equals_.es.json b/content/references/translations/es/processing/String_equals_.es.json
new file mode 100644
index 000000000..17e4b8482
--- /dev/null
+++ b/content/references/translations/es/processing/String_equals_.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "equals()",
+ "brief": "Compares two strings to see if they are the same",
+ "description": "Compares two strings to see if they are the same. This method is necessary because it's not possible to compare strings using the equality operator (==). Returns true if the strings are the same and false if they are not.\n",
+ "related": [],
+ "syntax": ["str.equals(str)"],
+ "returns": "Boolean",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any valid String",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/String_indexOf_.es.json b/content/references/translations/es/processing/String_indexOf_.es.json
new file mode 100644
index 000000000..3d53bf2cb
--- /dev/null
+++ b/content/references/translations/es/processing/String_indexOf_.es.json
@@ -0,0 +1,29 @@
+{
+ "name": "indexOf()",
+ "brief": "Returns the index value of the first occurrence of a substring within the input string",
+ "description": "Tests to see if a substring is embedded in a String, and returns the index position of the first occurrence of the substring defined in the str parameter. If the str substring is not found within the String, -1 is returned.\n",
+ "related": [],
+ "syntax": ["str.indexOf(str)", "str.indexOf(str, fromIndex)"],
+ "returns": "int",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any variable of type String",
+ "type": []
+ },
+ {
+ "name": "str",
+ "description": "String: the substring to search",
+ "type": []
+ },
+ {
+ "name": "fromIndex",
+ "description": "int: the index from which to start the search",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/String_length_.es.json b/content/references/translations/es/processing/String_length_.es.json
new file mode 100644
index 000000000..23a54243c
--- /dev/null
+++ b/content/references/translations/es/processing/String_length_.es.json
@@ -0,0 +1,24 @@
+{
+ "name": "length()",
+ "brief": "Returns the total number of characters included in the String as an integer number",
+ "description": "Returns the total number of characters included in the String as an integer number.\n
\nPeople are often confused by the use of length() to get the size of a String and length to get the size of an array. Notice the absence of the parentheses when working with arrays. \n",
+ "related": [],
+ "syntax": ["str.length()"],
+ "returns": "int",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any variable of type String",
+ "type": []
+ },
+ {
+ "name": "",
+ "description": "",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/String_substring_.es.json b/content/references/translations/es/processing/String_substring_.es.json
new file mode 100644
index 000000000..ffca2f9e8
--- /dev/null
+++ b/content/references/translations/es/processing/String_substring_.es.json
@@ -0,0 +1,32 @@
+{
+ "name": "substring()",
+ "brief": "Returns a new string that is a part of the original string",
+ "description": "Returns a new string that is a part of the original string. When using the endIndex parameter, the string between beginIndex and endIndex-1 is returned.\n",
+ "related": [],
+ "syntax": [
+ "str.substring(beginIndex)",
+ "str.substring(beginIndex, endIndex)"
+ ],
+ "returns": "String",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any variable of type String",
+ "type": []
+ },
+ {
+ "name": "beginIndex",
+ "description": "int: position from which to begin (inclusive)",
+ "type": []
+ },
+ {
+ "name": "endIndex",
+ "description": "int: position from which to end (exclusive)",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/String_toLowerCase_.es.json b/content/references/translations/es/processing/String_toLowerCase_.es.json
new file mode 100644
index 000000000..b5e452505
--- /dev/null
+++ b/content/references/translations/es/processing/String_toLowerCase_.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "toLowerCase()",
+ "brief": "Converts all of the characters in the string to lowercase",
+ "description": "Converts all of the characters in the string to lowercase. For example, \"ABC\" will convert to \"abc\".\n",
+ "related": [],
+ "syntax": ["str.toLowerCase()"],
+ "returns": "String",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any variable of type String",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/String_toUpperCase_.es.json b/content/references/translations/es/processing/String_toUpperCase_.es.json
new file mode 100644
index 000000000..a54c30d5d
--- /dev/null
+++ b/content/references/translations/es/processing/String_toUpperCase_.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "toUpperCase()",
+ "brief": "Converts all of the characters in the string to uppercase",
+ "description": "Converts all of the characters in the string to uppercase. For example, \"abc\" will convert to \"ABC\". \n",
+ "related": [],
+ "syntax": ["str.toUpperCase()"],
+ "returns": "String",
+ "type": "method",
+ "category": "string",
+ "subcategory": "method",
+ "classanchor": "String",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "String: any variable of type String",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TAU.es.json b/content/references/translations/es/processing/TAU.es.json
new file mode 100644
index 000000000..543e5d90c
--- /dev/null
+++ b/content/references/translations/es/processing/TAU.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "Es un alias para TWO_PI",
+ "related": ["PI", "TWO_PI", "HALF_PI", "QUARTER_PI"],
+ "name": "TAU",
+ "description": "TAU es una constante matemática con el valor 6.2831855.Es la\n constante relacionando la circunferencia de un circulo con su radio.\n Es útil en combinación con funciones trigonométricas como sin() y\n cos().",
+ "category": "constants",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/TWO_PI.es.json b/content/references/translations/es/processing/TWO_PI.es.json
new file mode 100644
index 000000000..ae642bb8e
--- /dev/null
+++ b/content/references/translations/es/processing/TWO_PI.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "TWO_PI es una constante matemática con el valor 6.28318530717958647693",
+ "related": ["PI", "TAU", "HALF_PI", "QUARTER_PI"],
+ "name": "TWO_PI",
+ "description": "TWO_PI es una constante matemática con el valor 6.2831855.\n Es el doble de la proporción entre la circunferencia de un circulo y su diámetro.\n Es útil en combinación con las funciones trigonométricas \n sin() y cos().",
+ "category": "constants",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/Table.es.json b/content/references/translations/es/processing/Table.es.json
new file mode 100644
index 000000000..dfe391314
--- /dev/null
+++ b/content/references/translations/es/processing/Table.es.json
@@ -0,0 +1,137 @@
+{
+ "brief": "Generic class for handling tabular data, typically from a CSV, TSV,\n or other sort of spreadsheet file",
+ "methods": [
+ {
+ "anchor": "Table_addColumn_",
+ "name": "addColumn()",
+ "desc": "Adds a new column to a table"
+ },
+ {
+ "anchor": "Table_removeColumn_",
+ "name": "removeColumn()",
+ "desc": "Removes a column from a table"
+ },
+ {
+ "anchor": "Table_getColumnCount_",
+ "name": "getColumnCount()",
+ "desc": "Returns the total number of columns in a table"
+ },
+ {
+ "anchor": "Table_getRowCount_",
+ "name": "getRowCount()",
+ "desc": "Returns the total number of rows in a Table"
+ },
+ {
+ "anchor": "Table_clearRows_",
+ "name": "clearRows()",
+ "desc": "Removes all rows from a Table"
+ },
+ {
+ "anchor": "Table_addRow_",
+ "name": "addRow()",
+ "desc": "Adds a new row of data to a Table object"
+ },
+ {
+ "anchor": "Table_removeRow_",
+ "name": "removeRow()",
+ "desc": "Removes a row from a Table object"
+ },
+ {
+ "anchor": "Table_getRow_",
+ "name": "getRow()",
+ "desc": "Returns a reference to the specified TableRow"
+ },
+ {
+ "anchor": "Table_rows_",
+ "name": "rows()",
+ "desc": "Gets all rows from the table"
+ },
+ {
+ "anchor": "Table_getInt_",
+ "name": "getInt()",
+ "desc": "Retrieves an integer value from the Table's specified row and column"
+ },
+ {
+ "anchor": "Table_setInt_",
+ "name": "setInt()",
+ "desc": "Stores an integer value in the Table's specified row and column"
+ },
+ {
+ "anchor": "Table_getFloat_",
+ "name": "getFloat()",
+ "desc": "Retrieves a float value from the Table's specified row and column"
+ },
+ {
+ "anchor": "Table_setFloat_",
+ "name": "setFloat()",
+ "desc": "Stores a float value in the Table's specified row and column"
+ },
+ {
+ "anchor": "Table_getString_",
+ "name": "getString()",
+ "desc": "Retrieves a String value from the Table's specified row and column"
+ },
+ {
+ "anchor": "Table_setString_",
+ "name": "setString()",
+ "desc": "Stores a String value in the Table's specified row and column"
+ },
+ {
+ "anchor": "Table_getStringColumn_",
+ "name": "getStringColumn()",
+ "desc": "Retrieves all values in the specified column"
+ },
+ {
+ "anchor": "Table_findRow_",
+ "name": "findRow()",
+ "desc": "Finds a row that contains the given value"
+ },
+ {
+ "anchor": "Table_findRows_",
+ "name": "findRows()",
+ "desc": "Finds multiple rows that contain the given value"
+ },
+ {
+ "anchor": "Table_matchRow_",
+ "name": "matchRow()",
+ "desc": "Finds a row that matches the given expression"
+ },
+ {
+ "anchor": "Table_matchRows_",
+ "name": "matchRows()",
+ "desc": "Finds multiple rows that match the given expression"
+ },
+ {
+ "anchor": "Table_matchRowIterator_",
+ "name": "matchRowIterator()",
+ "desc": "Finds multiple rows that match the given expression"
+ },
+ {
+ "anchor": "Table_removeTokens_",
+ "name": "removeTokens()",
+ "desc": "Removes characters from the table"
+ },
+ {
+ "anchor": "Table_trim_",
+ "name": "trim()",
+ "desc": "Trims whitespace from values"
+ },
+ {
+ "anchor": "Table_sort_",
+ "name": "sort()",
+ "desc": "Orders a table based on the values in a column"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Table objects store data with multiple rows and columns, much like in\n a traditional spreadsheet. Tables can be generated from scratch, dynamically,\n or using data from an existing file. Tables can also be output and saved to\n disk, as in the example above. \n \n Additional Table methods are documented in the Processing\n Table Javadoc.\n\n ",
+ "type": "class",
+ "constructors": ["Table()", "Table(rows)"],
+ "related": ["loadTable_", "saveTable_", "TableRow"],
+ "name": "Table",
+ "classanchor": "Table",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/TableRow.es.json b/content/references/translations/es/processing/TableRow.es.json
new file mode 100644
index 000000000..8117e0a2a
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow.es.json
@@ -0,0 +1,64 @@
+{
+ "brief": "Represents a single row of data values, stored in columns, from a Table",
+ "methods": [
+ {
+ "anchor": "TableRow_getString_",
+ "name": "getString()",
+ "desc": "Get a String value from the specified column"
+ },
+ {
+ "anchor": "TableRow_getInt_",
+ "name": "getInt()",
+ "desc": "Get an integer value from the specified column"
+ },
+ {
+ "anchor": "TableRow_getFloat_",
+ "name": "getFloat()",
+ "desc": "Get a float value from the specified column"
+ },
+ {
+ "anchor": "TableRow_setString_",
+ "name": "setString()",
+ "desc": "Store a String value in the specified column"
+ },
+ {
+ "anchor": "TableRow_setInt_",
+ "name": "setInt()",
+ "desc": "Store an integer value in the specified column"
+ },
+ {
+ "anchor": "TableRow_setFloat_",
+ "name": "setFloat()",
+ "desc": "Store a float value in the specified column"
+ },
+ {
+ "anchor": "TableRow_getColumnCount_",
+ "name": "getColumnCount()",
+ "desc": "Get the column count"
+ },
+ {
+ "anchor": "TableRow_getColumnTitle_",
+ "name": "getColumnTitle()",
+ "desc": "Get the column title."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "A TableRow object represents a single row of data values, \n stored in columns, from a Table. \n \n Additional TableRow methods are documented in the \n Processing Data Javadoc.",
+ "type": "class",
+ "constructors": [],
+ "related": [
+ "Table",
+ "Table_addRow_",
+ "Table_removeRow_",
+ "Table_clearRows_",
+ "Table_getRow_",
+ "Table_rows_"
+ ],
+ "name": "TableRow",
+ "classanchor": "TableRow",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/TableRow_getColumnCount_.es.json b/content/references/translations/es/processing/TableRow_getColumnCount_.es.json
new file mode 100644
index 000000000..026e77da4
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_getColumnCount_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get the column count",
+ "related": [],
+ "name": "getColumnCount()",
+ "description": "Returns the number of columns in a TableRow.",
+ "syntax": [".getColumnCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/TableRow_getColumnTitle_.es.json b/content/references/translations/es/processing/TableRow_getColumnTitle_.es.json
new file mode 100644
index 000000000..6082a3114
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_getColumnTitle_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Get the column title.",
+ "related": [],
+ "name": "getColumnTitle()",
+ "description": "Returns the name for a column in a TableRow based on its ID (e.g. 0, 1, 2, etc.)",
+ "syntax": [".getColumnTitle(column)"],
+ "returns": "String",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TableRow_getFloat_.es.json b/content/references/translations/es/processing/TableRow_getFloat_.es.json
new file mode 100644
index 000000000..bea8a4df6
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_getFloat_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Get a float value from the specified column",
+ "related": ["TableRow_getInt_", "TableRow_getString_"],
+ "name": "getFloat()",
+ "description": "Retrieves a float value from the TableRow's specified column. \n The column may be specified by either its ID or title.",
+ "syntax": [".getFloat(column)", ".getFloat(columnName)"],
+ "returns": "float",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the column to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to reference",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TableRow_getInt_.es.json b/content/references/translations/es/processing/TableRow_getInt_.es.json
new file mode 100644
index 000000000..43e8fc69b
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_getInt_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Get an integer value from the specified column",
+ "related": ["TableRow_getFloat_", "TableRow_getString_"],
+ "name": "getInt()",
+ "description": "Retrieves an integer value from the TableRow's specified column. \n The column may be specified by either its ID or title.",
+ "syntax": [".getInt(column)", ".getInt(columnName)"],
+ "returns": "int",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the column to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to reference",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TableRow_getString_.es.json b/content/references/translations/es/processing/TableRow_getString_.es.json
new file mode 100644
index 000000000..b4943a072
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_getString_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Get a String value from the specified column",
+ "related": ["TableRow_getInt_", "TableRow_getFloat_"],
+ "name": "getString()",
+ "description": "Retrieves a String value from the TableRow's specified column. \n The column may be specified by either its ID or title.",
+ "syntax": [".getString(column)", ".getString(columnName)"],
+ "returns": "String",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the column to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to reference",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TableRow_setFloat_.es.json b/content/references/translations/es/processing/TableRow_setFloat_.es.json
new file mode 100644
index 000000000..da66f15bb
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_setFloat_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Store a float value in the specified column",
+ "related": ["TableRow_setInt_", "TableRow_setString_"],
+ "name": "setFloat()",
+ "description": "Stores a float value in the TableRow's specified column. The column \n may be specified by either its ID or title.",
+ "syntax": [".setFloat(column, value)", ".setFloat(columnName, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ },
+ { "name": "value", "description": "value to assign", "type": ["float"] },
+ {
+ "name": "columnName",
+ "description": "title of the target column",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TableRow_setInt_.es.json b/content/references/translations/es/processing/TableRow_setInt_.es.json
new file mode 100644
index 000000000..aac0034f9
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_setInt_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Store an integer value in the specified column",
+ "related": ["TableRow_setFloat_", "TableRow_setString_"],
+ "name": "setInt()",
+ "description": "Stores an integer value in the TableRow's specified column. The column \n may be specified by either its ID or title.",
+ "syntax": [".setInt(column, value)", ".setInt(columnName, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ },
+ { "name": "value", "description": "value to assign", "type": ["int"] },
+ {
+ "name": "columnName",
+ "description": "title of the target column",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/TableRow_setString_.es.json b/content/references/translations/es/processing/TableRow_setString_.es.json
new file mode 100644
index 000000000..1cd90f9a9
--- /dev/null
+++ b/content/references/translations/es/processing/TableRow_setString_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Store a String value in the specified column",
+ "related": ["TableRow_setInt_", "TableRow_setFloat_"],
+ "name": "setString()",
+ "description": "Stores a String value in the TableRow's specified column. The column \n may be specified by either its ID or title.",
+ "syntax": [".setString(column, value)", ".setString(columnName, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "tablerow",
+ "subcategory": "method",
+ "classanchor": "TableRow",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ },
+ { "name": "value", "description": "value to assign", "type": ["String"] },
+ {
+ "name": "columnName",
+ "description": "title of the target column",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_addColumn_.es.json b/content/references/translations/es/processing/Table_addColumn_.es.json
new file mode 100644
index 000000000..cf00117e8
--- /dev/null
+++ b/content/references/translations/es/processing/Table_addColumn_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Adds a new column to a table",
+ "related": ["Table_removeColumn_"],
+ "name": "addColumn()",
+ "description": "Use addColumn() to add a new column to a Table object.\n Typically, you will want to specify a title, so the column may be easily\n referenced later by name. (If no title is specified, the new column's title\n will be null.) A column type may also be specified, in which case all values\n stored in this column must be of the same type (e.g., Table.INT or\n Table.FLOAT). If no type is specified, the default type of STRING is used.",
+ "syntax": [".addColumn()", ".addColumn(title)", ".addColumn(title, type)"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "title",
+ "description": "the title to be used for the new column",
+ "type": ["String"]
+ },
+ {
+ "name": "type",
+ "description": "the type to be used for the new column: INT, LONG, FLOAT, DOUBLE, or STRING",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_addRow_.es.json b/content/references/translations/es/processing/Table_addRow_.es.json
new file mode 100644
index 000000000..c8ff7e904
--- /dev/null
+++ b/content/references/translations/es/processing/Table_addRow_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Adds a new row of data to a Table object",
+ "related": ["Table_removeRow_", "Table_clearRows_"],
+ "name": "addRow()",
+ "description": "Use addRow() to add a new row of data to a Table object. By\n default, an empty row is created. Typically, you would store a reference to\n the new row in a TableRow object (see newRow in the example\n above), and then set individual values using setInt(),\n setFloat(), or setString(). If a TableRow object is\n included as a parameter, then that row is duplicated and added to the table.",
+ "syntax": [".addRow()", ".addRow(source)"],
+ "returns": "TableRow",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "source",
+ "description": "a reference to the original row to be duplicated",
+ "type": ["TableRow"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_clearRows_.es.json b/content/references/translations/es/processing/Table_clearRows_.es.json
new file mode 100644
index 000000000..2aa86c33c
--- /dev/null
+++ b/content/references/translations/es/processing/Table_clearRows_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Removes all rows from a Table",
+ "related": ["Table_addRow_", "Table_removeRow_"],
+ "name": "clearRows()",
+ "description": "Removes all rows from a Table. While all rows are removed, columns\n and column titles are maintained.",
+ "syntax": [".clearRows()"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/Table_findRow_.es.json b/content/references/translations/es/processing/Table_findRow_.es.json
new file mode 100644
index 000000000..6481d28ca
--- /dev/null
+++ b/content/references/translations/es/processing/Table_findRow_.es.json
@@ -0,0 +1,35 @@
+{
+ "brief": "Finds a row that contains the given value",
+ "related": [
+ "Table_getRow_",
+ "Table_rows_",
+ "Table_findRows_",
+ "Table_matchRow_",
+ "Table_matchRows_"
+ ],
+ "name": "findRow()",
+ "description": "Finds the first row in the Table that contains the value provided,\n and returns a reference to that row. Even if multiple rows are possible\n matches, only the first matching row is returned. The column to search may\n be specified by either its ID or title.",
+ "syntax": [".findRow(value, column)", ".findRow(value, columnName)"],
+ "returns": "TableRow",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the value to match",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to search",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to search",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_findRows_.es.json b/content/references/translations/es/processing/Table_findRows_.es.json
new file mode 100644
index 000000000..2a4efa546
--- /dev/null
+++ b/content/references/translations/es/processing/Table_findRows_.es.json
@@ -0,0 +1,35 @@
+{
+ "brief": "Finds multiple rows that contain the given value",
+ "related": [
+ "Table_getRow_",
+ "Table_rows_",
+ "Table_findRow_",
+ "Table_matchRow_",
+ "Table_matchRows_"
+ ],
+ "name": "findRows()",
+ "description": "Finds the rows in the Table that contain the value provided,\n and returns references to those rows. Returns an iterator, so for\n must be used to iterate through all the rows, as shown in the example above.\n The column to search may be specified by either its ID or title.",
+ "syntax": [".findRows(value, column)", ".findRows(value, columnName)"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the value to match",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to search",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to search",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_getColumnCount_.es.json b/content/references/translations/es/processing/Table_getColumnCount_.es.json
new file mode 100644
index 000000000..868912e88
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getColumnCount_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the total number of columns in a table",
+ "related": ["Table_getRowCount_"],
+ "name": "getColumnCount()",
+ "description": "Returns the total number of columns in a table.",
+ "syntax": [".getColumnCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/Table_getFloat_.es.json b/content/references/translations/es/processing/Table_getFloat_.es.json
new file mode 100644
index 000000000..2e43cd63f
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getFloat_.es.json
@@ -0,0 +1,36 @@
+{
+ "brief": "Retrieves a float value from the Table's specified row and column",
+ "related": [
+ "Table_getInt_",
+ "Table_getString_",
+ "Table_getStringColumn_",
+ "Table_setInt_",
+ "Table_setFloat_",
+ "Table_setString_"
+ ],
+ "name": "getFloat()",
+ "description": "Retrieves a float value from the Table's specified row and column.\n The row is specified by its ID, while the column may be specified by either\n its ID or title.",
+ "syntax": [".getFloat(row, column)", ".getFloat(row, columnName)"],
+ "returns": "float",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the row to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to reference",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_getInt_.es.json b/content/references/translations/es/processing/Table_getInt_.es.json
new file mode 100644
index 000000000..0a6f58f29
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getInt_.es.json
@@ -0,0 +1,36 @@
+{
+ "brief": "Retrieves an integer value from the Table's specified row and column",
+ "related": [
+ "Table_getFloat_",
+ "Table_getString_",
+ "Table_getStringColumn_",
+ "Table_setInt_",
+ "Table_setFloat_",
+ "Table_setString_"
+ ],
+ "name": "getInt()",
+ "description": "Retrieves an integer value from the Table's specified row and column.\n The row is specified by its ID, while the column may be specified by either\n its ID or title.",
+ "syntax": [".getInt(row, column)", ".getInt(row, columnName)"],
+ "returns": "int",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the row to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to reference",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_getRowCount_.es.json b/content/references/translations/es/processing/Table_getRowCount_.es.json
new file mode 100644
index 000000000..388b98142
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getRowCount_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the total number of rows in a Table",
+ "related": ["Table_getColumnCount_"],
+ "name": "getRowCount()",
+ "description": "Returns the total number of rows in a Table.",
+ "syntax": [".getRowCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/Table_getRow_.es.json b/content/references/translations/es/processing/Table_getRow_.es.json
new file mode 100644
index 000000000..eff9cf96f
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getRow_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Returns a reference to the specified TableRow",
+ "related": [
+ "Table_rows_",
+ "Table_findRow_",
+ "Table_findRows_",
+ "Table_matchRow_",
+ "Table_matchRows_"
+ ],
+ "name": "getRow()",
+ "description": "Returns a reference to the specified TableRow. The reference can then\n be used to get and set values of the selected row, as illustrated in the example above.",
+ "syntax": [".getRow(row)"],
+ "returns": "TableRow",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the row to get",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_getStringColumn_.es.json b/content/references/translations/es/processing/Table_getStringColumn_.es.json
new file mode 100644
index 000000000..8898678f6
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getStringColumn_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Retrieves all values in the specified column",
+ "related": [
+ "Table_getInt_",
+ "Table_getFloat_",
+ "Table_getString_",
+ "Table_setInt_",
+ "Table_setFloat_",
+ "Table_setString_"
+ ],
+ "name": "getStringColumn()",
+ "description": "Retrieves all values in the specified column, and returns them as a String\n array. The column may be specified by either its ID or title.",
+ "syntax": [".getStringColumn(columnName)", ".getStringColumn(column)"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "columnName",
+ "description": "title of the column to search",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to search",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_getString_.es.json b/content/references/translations/es/processing/Table_getString_.es.json
new file mode 100644
index 000000000..20a1948dd
--- /dev/null
+++ b/content/references/translations/es/processing/Table_getString_.es.json
@@ -0,0 +1,36 @@
+{
+ "brief": "Retrieves a String value from the Table's specified row and column",
+ "related": [
+ "Table_getInt_",
+ "Table_getFloat_",
+ "Table_getStringColumn_",
+ "Table_setInt_",
+ "Table_setFloat_",
+ "Table_setString_"
+ ],
+ "name": "getString()",
+ "description": "Retrieves a String value from the Table's specified row and column.\n The row is specified by its ID, while the column may be specified by either\n its ID or title.",
+ "syntax": [".getString(row, column)", ".getString(row, columnName)"],
+ "returns": "String",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the row to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to reference",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to reference",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_matchRowIterator_.es.json b/content/references/translations/es/processing/Table_matchRowIterator_.es.json
new file mode 100644
index 000000000..7ba9a3e37
--- /dev/null
+++ b/content/references/translations/es/processing/Table_matchRowIterator_.es.json
@@ -0,0 +1,32 @@
+{
+ "brief": "Finds multiple rows that match the given expression",
+ "related": [],
+ "name": "matchRowIterator()",
+ "description": "Finds multiple rows that match the given expression",
+ "syntax": [
+ ".matchRowIterator(value, column)",
+ ".matchRowIterator(value, columnName)"
+ ],
+ "returns": "Iterator",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the regular expression to match",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to search",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to search",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_matchRow_.es.json b/content/references/translations/es/processing/Table_matchRow_.es.json
new file mode 100644
index 000000000..739c79a75
--- /dev/null
+++ b/content/references/translations/es/processing/Table_matchRow_.es.json
@@ -0,0 +1,35 @@
+{
+ "brief": "Finds a row that matches the given expression",
+ "related": [
+ "Table_getRow_",
+ "Table_rows_",
+ "Table_findRow_",
+ "Table_findRows_",
+ "Table_matchRows_"
+ ],
+ "name": "matchRow()",
+ "description": "Finds the first row in the Table that matches the regular expression\n provided, and returns a reference to that row. Even if multiple rows are\n possible matches, only the first matching row is returned. The column to\n search may be specified by either its ID or title.",
+ "syntax": [".matchRow(regexp, column)", ".matchRow(regexp, columnName)"],
+ "returns": "TableRow",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "regexp",
+ "description": "the regular expression to match",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to search",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to search",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_matchRows_.es.json b/content/references/translations/es/processing/Table_matchRows_.es.json
new file mode 100644
index 000000000..68b9bda1a
--- /dev/null
+++ b/content/references/translations/es/processing/Table_matchRows_.es.json
@@ -0,0 +1,35 @@
+{
+ "brief": "Finds multiple rows that match the given expression",
+ "related": [
+ "Table_getRow_",
+ "Table_rows_",
+ "Table_findRow_",
+ "Table_findRows_",
+ "Table_matchRow_"
+ ],
+ "name": "matchRows()",
+ "description": "Finds the rows in the Table that match the regular expression provided,\n and returns references to those rows. Returns an iterator, so for\n must be used to iterate through all the rows, as shown in the example above.\n The column to search may be specified by either its ID or title.",
+ "syntax": [".matchRows(regexp, column)", ".matchRows(regexp, columnName)"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "regexp",
+ "description": "the regular expression to match",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to search",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to search",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_removeColumn_.es.json b/content/references/translations/es/processing/Table_removeColumn_.es.json
new file mode 100644
index 000000000..861cace60
--- /dev/null
+++ b/content/references/translations/es/processing/Table_removeColumn_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Removes a column from a table",
+ "related": ["Table_addColumn_"],
+ "name": "removeColumn()",
+ "description": "Use removeColumn() to remove an existing column from a Table\n object. The column to be removed may be identified by either its title (a\n String) or its index value (an int). removeColumn(0) would remove the\n first column, removeColumn(1) would remove the second column, and so\n on.",
+ "syntax": [".removeColumn(columnName)", ".removeColumn(column)"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "columnName",
+ "description": "the title of the column to be removed",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "the index number of the column to be removed",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_removeRow_.es.json b/content/references/translations/es/processing/Table_removeRow_.es.json
new file mode 100644
index 000000000..7ede89ac0
--- /dev/null
+++ b/content/references/translations/es/processing/Table_removeRow_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Removes a row from a Table object",
+ "related": ["Table_addRow_", "Table_clearRows_"],
+ "name": "removeRow()",
+ "description": "Removes a row from a Table object",
+ "syntax": [".removeRow(row)"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the row to remove",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_removeTokens_.es.json b/content/references/translations/es/processing/Table_removeTokens_.es.json
new file mode 100644
index 000000000..a13c4ed39
--- /dev/null
+++ b/content/references/translations/es/processing/Table_removeTokens_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Removes characters from the table",
+ "related": ["Table_trim_"],
+ "name": "removeTokens()",
+ "description": "Removes any of the specified characters (or \"tokens\"). The example above\n removes all commas, dollar signs, and spaces from the table. \n \n If no column is specified, then the values in all columns and rows are\n processed. A specific column may be referenced by either its ID or title.",
+ "syntax": [
+ ".removeTokens(tokens)",
+ ".removeTokens(tokens, column)",
+ ".removeTokens(tokens, columnName)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "tokens",
+ "description": "a list of individual characters to be removed",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the column to process",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to process",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_rows_.es.json b/content/references/translations/es/processing/Table_rows_.es.json
new file mode 100644
index 000000000..141285f52
--- /dev/null
+++ b/content/references/translations/es/processing/Table_rows_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Gets all rows from the table",
+ "related": [
+ "Table_getRow_",
+ "Table_findRow_",
+ "Table_findRows_",
+ "Table_matchRow_",
+ "Table_matchRows_"
+ ],
+ "name": "rows()",
+ "description": "Gets all rows from the table. Returns an iterator, so for must be\n used to iterate through all the rows, as shown in the example above.",
+ "syntax": [".rows()"],
+ "returns": "Iterable",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/Table_setFloat_.es.json b/content/references/translations/es/processing/Table_setFloat_.es.json
new file mode 100644
index 000000000..2dc06866b
--- /dev/null
+++ b/content/references/translations/es/processing/Table_setFloat_.es.json
@@ -0,0 +1,40 @@
+{
+ "brief": "Stores a float value in the Table's specified row and column",
+ "related": [
+ "Table_setInt_",
+ "Table_setString_",
+ "Table_getInt_",
+ "Table_getFloat_",
+ "Table_getString_",
+ "Table_getStringColumn_"
+ ],
+ "name": "setFloat()",
+ "description": "Stores a float value in the Table's specified row and column.\n The row is specified by its ID, while the column may be specified by\n either its ID or title.",
+ "syntax": [
+ ".setFloat(row, column, value)",
+ ".setFloat(row, columnName, value)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the target row",
+ "type": ["int"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ },
+ { "name": "value", "description": "value to assign", "type": ["float"] },
+ {
+ "name": "columnName",
+ "description": "title of the target column",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_setInt_.es.json b/content/references/translations/es/processing/Table_setInt_.es.json
new file mode 100644
index 000000000..ef406b442
--- /dev/null
+++ b/content/references/translations/es/processing/Table_setInt_.es.json
@@ -0,0 +1,37 @@
+{
+ "brief": "Stores an integer value in the Table's specified row and column",
+ "related": [
+ "Table_setFloat_",
+ "Table_setString_",
+ "Table_getInt_",
+ "Table_getFloat_",
+ "Table_getString_",
+ "Table_getStringColumn_"
+ ],
+ "name": "setInt()",
+ "description": "Stores an integer value in the Table's specified row and column.\n The row is specified by its ID, while the column may be specified by\n either its ID or title.",
+ "syntax": [".setInt(row, column, value)", ".setInt(row, columnName, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the target row",
+ "type": ["int"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ },
+ { "name": "value", "description": "value to assign", "type": ["int"] },
+ {
+ "name": "columnName",
+ "description": "title of the target column",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_setString_.es.json b/content/references/translations/es/processing/Table_setString_.es.json
new file mode 100644
index 000000000..50cac8752
--- /dev/null
+++ b/content/references/translations/es/processing/Table_setString_.es.json
@@ -0,0 +1,40 @@
+{
+ "brief": "Stores a String value in the Table's specified row and column",
+ "related": [
+ "Table_setInt_",
+ "Table_setFloat_",
+ "Table_getInt_",
+ "Table_getFloat_",
+ "Table_getString_",
+ "Table_getStringColumn_"
+ ],
+ "name": "setString()",
+ "description": "Stores a String value in the Table's specified row and column.\n The row is specified by its ID, while the column may be specified by\n either its ID or title.",
+ "syntax": [
+ ".setString(row, column, value)",
+ ".setString(row, columnName, value)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "row",
+ "description": "ID number of the target row",
+ "type": ["int"]
+ },
+ {
+ "name": "column",
+ "description": "ID number of the target column",
+ "type": ["int"]
+ },
+ { "name": "value", "description": "value to assign", "type": ["String"] },
+ {
+ "name": "columnName",
+ "description": "title of the target column",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_sort_.es.json b/content/references/translations/es/processing/Table_sort_.es.json
new file mode 100644
index 000000000..db74b4dfd
--- /dev/null
+++ b/content/references/translations/es/processing/Table_sort_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Orders a table based on the values in a column",
+ "related": ["Table_trim_"],
+ "name": "sort()",
+ "description": "Sorts (orders) a table based on the values in a column.",
+ "syntax": [".sort(columnName)", ".sort(column)"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "columnName",
+ "description": "the name of the column to sort",
+ "type": ["String"]
+ },
+ {
+ "name": "column",
+ "description": "the column ID, e.g. 0, 1, 2",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/Table_trim_.es.json b/content/references/translations/es/processing/Table_trim_.es.json
new file mode 100644
index 000000000..4e9f9d81d
--- /dev/null
+++ b/content/references/translations/es/processing/Table_trim_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Trims whitespace from values",
+ "related": ["Table_removeTokens_"],
+ "name": "trim()",
+ "description": "Trims leading and trailing whitespace, such as spaces and tabs, from String\n table values. If no column is specified, then the values in all columns\n and rows are trimmed. A specific column may be referenced by either its ID\n or title.",
+ "syntax": [".trim()", ".trim(column)", ".trim(columnName)"],
+ "returns": "void",
+ "type": "method",
+ "category": "table",
+ "subcategory": "method",
+ "classanchor": "Table",
+ "parameters": [
+ {
+ "name": "column",
+ "description": "ID number of the column to trim",
+ "type": ["int"]
+ },
+ {
+ "name": "columnName",
+ "description": "title of the column to trim",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML.es.json b/content/references/translations/es/processing/XML.es.json
new file mode 100644
index 000000000..e09ec65be
--- /dev/null
+++ b/content/references/translations/es/processing/XML.es.json
@@ -0,0 +1,153 @@
+{
+ "brief": "This is the base class used for the Processing XML library,\n representing a single node of an XML tree",
+ "methods": [
+ {
+ "anchor": "XML_parse_",
+ "name": "parse()",
+ "desc": "Converts String content to an XML object"
+ },
+ {
+ "anchor": "XML_getParent_",
+ "name": "getParent()",
+ "desc": "Gets a copy of the element's parent"
+ },
+ {
+ "anchor": "XML_getName_",
+ "name": "getName()",
+ "desc": "Gets the element's full name"
+ },
+ {
+ "anchor": "XML_setName_",
+ "name": "setName()",
+ "desc": "Sets the element's name"
+ },
+ {
+ "anchor": "XML_getChildCount_",
+ "name": "getChildCount()",
+ "desc": "Returns the element's number of children"
+ },
+ {
+ "anchor": "XML_hasChildren_",
+ "name": "hasChildren()",
+ "desc": "Checks whether or not an element has any children"
+ },
+ {
+ "anchor": "XML_listChildren_",
+ "name": "listChildren()",
+ "desc": "Returns the names of all children as an array"
+ },
+ {
+ "anchor": "XML_getChildren_",
+ "name": "getChildren()",
+ "desc": "Returns an array containing all child elements"
+ },
+ {
+ "anchor": "XML_getChild_",
+ "name": "getChild()",
+ "desc": "Returns the child element with the specified index value or path"
+ },
+ {
+ "anchor": "XML_addChild_",
+ "name": "addChild()",
+ "desc": "Appends a new child to the element"
+ },
+ {
+ "anchor": "XML_removeChild_",
+ "name": "removeChild()",
+ "desc": "Removes the specified child"
+ },
+ {
+ "anchor": "XML_getAttributeCount_",
+ "name": "getAttributeCount()",
+ "desc": "Counts the specified element's number of attributes"
+ },
+ {
+ "anchor": "XML_listAttributes_",
+ "name": "listAttributes()",
+ "desc": "Returns a list of names of all attributes as an array"
+ },
+ {
+ "anchor": "XML_hasAttribute_",
+ "name": "hasAttribute()",
+ "desc": "Checks whether or not an element has the specified attribute"
+ },
+ {
+ "anchor": "XML_getString_",
+ "name": "getString()",
+ "desc": "Gets the content of an attribute as a String"
+ },
+ {
+ "anchor": "XML_setString_",
+ "name": "setString()",
+ "desc": "Sets the content of an attribute as a String"
+ },
+ {
+ "anchor": "XML_getInt_",
+ "name": "getInt()",
+ "desc": "Gets the content of an attribute as an int"
+ },
+ {
+ "anchor": "XML_setInt_",
+ "name": "setInt()",
+ "desc": "Sets the content of an attribute as an int"
+ },
+ {
+ "anchor": "XML_getFloat_",
+ "name": "getFloat()",
+ "desc": "Gets the content of an attribute as a float"
+ },
+ {
+ "anchor": "XML_setFloat_",
+ "name": "setFloat()",
+ "desc": "Sets the content of an attribute as a float"
+ },
+ {
+ "anchor": "XML_getContent_",
+ "name": "getContent()",
+ "desc": "Gets the content of an element"
+ },
+ {
+ "anchor": "XML_getIntContent_",
+ "name": "getIntContent()",
+ "desc": "Gets the content of an element as an int"
+ },
+ {
+ "anchor": "XML_getFloatContent_",
+ "name": "getFloatContent()",
+ "desc": "Gets the content of an element as a float"
+ },
+ {
+ "anchor": "XML_setContent_",
+ "name": "setContent()",
+ "desc": "Sets the content of an element"
+ },
+ {
+ "anchor": "XML_format_",
+ "name": "format()",
+ "desc": "Formats XML data as a String"
+ },
+ {
+ "anchor": "XML_toString_",
+ "name": "toString()",
+ "desc": "Gets XML data as a String using default formatting"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "XML is a representation of an XML object, able to parse XML code. Use\n loadXML() to load external XML files and create XML\n objects. \n \n Only files encoded as UTF-8 (or plain ASCII) are parsed properly; the\n encoding parameter inside XML files is ignored.",
+ "type": "class",
+ "constructors": ["XML(name)"],
+ "related": ["loadXML_", "parseXML_", "saveXML_"],
+ "name": "XML",
+ "classanchor": "XML",
+ "category": "data",
+ "subcategory": "composite",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "creates a node with this name",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_addChild_.es.json b/content/references/translations/es/processing/XML_addChild_.es.json
new file mode 100644
index 000000000..73cf6af7f
--- /dev/null
+++ b/content/references/translations/es/processing/XML_addChild_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Appends a new child to the element",
+ "related": [],
+ "name": "addChild()",
+ "description": "Appends a new child to the element. The child can be specified with either a\n String, which will be used as the new tag's name, or as a reference to an\n existing XML object. \n \n A reference to the newly created child is returned as an XML object.",
+ "syntax": [".addChild(tag)", ".addChild(child)"],
+ "returns": "XML",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_format_.es.json b/content/references/translations/es/processing/XML_format_.es.json
new file mode 100644
index 000000000..19bfb4c9f
--- /dev/null
+++ b/content/references/translations/es/processing/XML_format_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Formats XML data as a String",
+ "related": ["XML_toString_"],
+ "name": "format()",
+ "description": "Takes an XML object and converts it to a String, formatting its content as\n specified with the indent parameter. \n \n If indent is set to -1, then the String is returned with no line breaks, no\n indentation, and no XML declaration. \n \n If indent is set to 0 or greater, then the String is returned with line\n breaks, and the specified number of spaces as indent values. Meaning, there\n will be no indentation if 0 is specified, or each indent will be replaced\n with the corresponding number of spaces: 1, 2, 3, and so on.",
+ "syntax": [".format(indent)"],
+ "returns": "String",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "indent",
+ "description": "-1 for a single line (and no declaration), >= 0 for indents and\n newlines",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getAttributeCount_.es.json b/content/references/translations/es/processing/XML_getAttributeCount_.es.json
new file mode 100644
index 000000000..8fc0ddac7
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getAttributeCount_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Counts the specified element's number of attributes",
+ "related": [],
+ "name": "getAttributeCount()",
+ "description": "Counts the specified element's number of attributes, returned as an int.",
+ "syntax": [".getAttributeCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_getChildCount_.es.json b/content/references/translations/es/processing/XML_getChildCount_.es.json
new file mode 100644
index 000000000..8c8ef620c
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getChildCount_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the element's number of children",
+ "related": [],
+ "name": "getChildCount()",
+ "description": "Returns the number of children.",
+ "syntax": [".getChildCount()"],
+ "returns": "int",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_getChild_.es.json b/content/references/translations/es/processing/XML_getChild_.es.json
new file mode 100644
index 000000000..28a4fb4ae
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getChild_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the child element with the specified index value or path",
+ "related": [],
+ "name": "getChild()",
+ "description": "Returns the first of the element's children that matches the name \n parameter. The name or path is a series of elements and sub-elements, \n separated by slashes.",
+ "syntax": [".getChild(index)", ".getChild(name)"],
+ "returns": "XML",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "element name or path/to/element",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getChildren_.es.json b/content/references/translations/es/processing/XML_getChildren_.es.json
new file mode 100644
index 000000000..732e0dc93
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getChildren_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns an array containing all child elements",
+ "related": [],
+ "name": "getChildren()",
+ "description": "Returns all of the element's children as an array of XML objects. When \n the name parameter is specified, then it will return all children \n that match that name or path. The path is a series of elements and \n sub-elements, separated by slashes.",
+ "syntax": [".getChildren()", ".getChildren(name)"],
+ "returns": "XML[]",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "element name or path/to/element",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getContent_.es.json b/content/references/translations/es/processing/XML_getContent_.es.json
new file mode 100644
index 000000000..2025e1609
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getContent_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets the content of an element",
+ "related": ["XML_getIntContent_", "XML_getFloatContent_"],
+ "name": "getContent()",
+ "description": "Returns the content of an element. If there is no such content, \n null is returned.",
+ "syntax": [".getContent()", ".getContent(defaultValue)"],
+ "returns": "String",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_getFloatContent_.es.json b/content/references/translations/es/processing/XML_getFloatContent_.es.json
new file mode 100644
index 000000000..29cf59149
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getFloatContent_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Gets the content of an element as a float",
+ "related": ["XML_getContent_", "XML_getIntContent_"],
+ "name": "getFloatContent()",
+ "description": "Returns the content of an element as a float. If there is no such content, \n either null or the provided default value is returned.",
+ "syntax": [".getFloatContent()", ".getFloatContent(defaultValue)"],
+ "returns": "float",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "defaultValue",
+ "description": "the default value of the attribute",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getFloat_.es.json b/content/references/translations/es/processing/XML_getFloat_.es.json
new file mode 100644
index 000000000..2ff45ff5c
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getFloat_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Gets the content of an attribute as a float",
+ "related": [],
+ "name": "getFloat()",
+ "description": "Returns an attribute value of the element as a float. If the\n defaultValue parameter is specified and the attribute doesn't exist,\n then defaultValue is returned. If no defaultValue is specified\n and the attribute doesn't exist, the value 0.0 is returned.",
+ "syntax": [".getFloat(name)", ".getFloat(name, defaultValue)"],
+ "returns": "float",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "the non-null full name of the attribute.",
+ "type": ["String"]
+ },
+ {
+ "name": "defaultValue",
+ "description": "the default value of the attribute.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getIntContent_.es.json b/content/references/translations/es/processing/XML_getIntContent_.es.json
new file mode 100644
index 000000000..9266fcc90
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getIntContent_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Gets the content of an element as an int",
+ "related": ["XML_getContent_", "XML_getFloatContent_"],
+ "name": "getIntContent()",
+ "description": "Returns the content of an element as an int. If there is no such content, \n either null or the provided default value is returned.",
+ "syntax": [".getIntContent()", ".getIntContent(defaultValue)"],
+ "returns": "int",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "defaultValue",
+ "description": "the default value of the attribute",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getInt_.es.json b/content/references/translations/es/processing/XML_getInt_.es.json
new file mode 100644
index 000000000..fa45556eb
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getInt_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Gets the content of an attribute as an int",
+ "related": [],
+ "name": "getInt()",
+ "description": "Returns an attribute value of the element as an int. If the defaultValue \n parameter is specified and the attribute doesn't exist, then defaultValue \n is returned. If no defaultValue is specified and the attribute doesn't \n exist, the value 0 is returned.",
+ "syntax": [".getInt(name)", ".getInt(name, defaultValue)"],
+ "returns": "int",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "the non-null full name of the attribute",
+ "type": ["String"]
+ },
+ {
+ "name": "defaultValue",
+ "description": "the default value of the attribute",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/XML_getName_.es.json b/content/references/translations/es/processing/XML_getName_.es.json
new file mode 100644
index 000000000..a803863d0
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getName_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets the element's full name",
+ "related": [],
+ "name": "getName()",
+ "description": "Gets the element's full name, which is returned as a String.",
+ "syntax": [".getName()"],
+ "returns": "String",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_getParent_.es.json b/content/references/translations/es/processing/XML_getParent_.es.json
new file mode 100644
index 000000000..a9fe7cbfb
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getParent_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets a copy of the element's parent",
+ "related": [],
+ "name": "getParent()",
+ "description": "Gets a copy of the element's parent. Returns the parent as another XML object.",
+ "syntax": [".getParent()"],
+ "returns": "XML",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_getString_.es.json b/content/references/translations/es/processing/XML_getString_.es.json
new file mode 100644
index 000000000..cc8adf160
--- /dev/null
+++ b/content/references/translations/es/processing/XML_getString_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets the content of an attribute as a String",
+ "related": [],
+ "name": "getString()",
+ "description": "Returns an attribute value of the element as a String. If the defaultValue \n parameter is specified and the attribute doesn't exist, then defaultValue \n is returned. If no defaultValue is specified and the attribute doesn't \n exist, null is returned.",
+ "syntax": [".getString(name)", ".getString(name, defaultValue)"],
+ "returns": "String",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_hasAttribute_.es.json b/content/references/translations/es/processing/XML_hasAttribute_.es.json
new file mode 100644
index 000000000..3d6590c45
--- /dev/null
+++ b/content/references/translations/es/processing/XML_hasAttribute_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Checks whether or not an element has the specified attribute",
+ "related": [],
+ "name": "hasAttribute()",
+ "description": "Checks whether or not an element has the specified attribute. The attribute \n must be specified as a String, and a boolean is returned.",
+ "syntax": [".hasAttribute(name)"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_hasChildren_.es.json b/content/references/translations/es/processing/XML_hasChildren_.es.json
new file mode 100644
index 000000000..331ae326a
--- /dev/null
+++ b/content/references/translations/es/processing/XML_hasChildren_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Checks whether or not an element has any children",
+ "related": [],
+ "name": "hasChildren()",
+ "description": "Checks whether or not the element has any children, and returns the result as a boolean.",
+ "syntax": [".hasChildren()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_listAttributes_.es.json b/content/references/translations/es/processing/XML_listAttributes_.es.json
new file mode 100644
index 000000000..214ff3b5f
--- /dev/null
+++ b/content/references/translations/es/processing/XML_listAttributes_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns a list of names of all attributes as an array",
+ "related": [],
+ "name": "listAttributes()",
+ "description": "Gets all of the specified element's attributes, and returns them as an array of Strings.",
+ "syntax": [".listAttributes()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_listChildren_.es.json b/content/references/translations/es/processing/XML_listChildren_.es.json
new file mode 100644
index 000000000..51f1da960
--- /dev/null
+++ b/content/references/translations/es/processing/XML_listChildren_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the names of all children as an array",
+ "related": [],
+ "name": "listChildren()",
+ "description": "Get the names of all of the element's children, and returns the names as an \n array of Strings. This is the same as looping through and calling getName() \n on each child element individually.",
+ "syntax": [".listChildren()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_parse_.es.json b/content/references/translations/es/processing/XML_parse_.es.json
new file mode 100644
index 000000000..8119ca964
--- /dev/null
+++ b/content/references/translations/es/processing/XML_parse_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Converts String content to an XML object",
+ "related": [],
+ "name": "parse()",
+ "description": "Converts String content to an XML object",
+ "syntax": [],
+ "returns": "XML",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_removeChild_.es.json b/content/references/translations/es/processing/XML_removeChild_.es.json
new file mode 100644
index 000000000..01d6ca798
--- /dev/null
+++ b/content/references/translations/es/processing/XML_removeChild_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Removes the specified child",
+ "related": [],
+ "name": "removeChild()",
+ "description": "Removes the specified element. First use getChild() to get a reference\n to the desired element. Then pass that reference to removeChild() to\n delete it.",
+ "syntax": [".removeChild(kid)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_setContent_.es.json b/content/references/translations/es/processing/XML_setContent_.es.json
new file mode 100644
index 000000000..5902faed5
--- /dev/null
+++ b/content/references/translations/es/processing/XML_setContent_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sets the content of an element",
+ "related": [],
+ "name": "setContent()",
+ "description": "Sets the element's content, which is specified as a String.",
+ "syntax": [".setContent(text)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_setFloat_.es.json b/content/references/translations/es/processing/XML_setFloat_.es.json
new file mode 100644
index 000000000..c875d1811
--- /dev/null
+++ b/content/references/translations/es/processing/XML_setFloat_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sets the content of an attribute as a float",
+ "related": [],
+ "name": "setFloat()",
+ "description": "Sets the content of an element's attribute as a float. A String specifies \n the attribute name, while the float specifies the new content.",
+ "syntax": [".setFloat(name, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_setInt_.es.json b/content/references/translations/es/processing/XML_setInt_.es.json
new file mode 100644
index 000000000..2686cbfce
--- /dev/null
+++ b/content/references/translations/es/processing/XML_setInt_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sets the content of an attribute as an int",
+ "related": [],
+ "name": "setInt()",
+ "description": "Sets the content of an element's attribute as an int. A String specifies \n the attribute name, while the int specifies the new content.",
+ "syntax": [".setInt(name, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_setLong_.es.json b/content/references/translations/es/processing/XML_setLong_.es.json
new file mode 100644
index 000000000..05a99730a
--- /dev/null
+++ b/content/references/translations/es/processing/XML_setLong_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sets the content of an element as an int",
+ "related": [],
+ "name": "setLong()",
+ "description": "Sets the content of an element as an int",
+ "syntax": [".setLong(name, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_setName_.es.json b/content/references/translations/es/processing/XML_setName_.es.json
new file mode 100644
index 000000000..ec863f6d6
--- /dev/null
+++ b/content/references/translations/es/processing/XML_setName_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sets the element's name",
+ "related": [],
+ "name": "setName()",
+ "description": "Sets the element's name, which is specified as a String.",
+ "syntax": [".setName(newName)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_setString_.es.json b/content/references/translations/es/processing/XML_setString_.es.json
new file mode 100644
index 000000000..2cfe73555
--- /dev/null
+++ b/content/references/translations/es/processing/XML_setString_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Sets the content of an attribute as a String",
+ "related": [],
+ "name": "setString()",
+ "description": "Sets the content of an element's attribute as a String. The first String \n specifies the attribute name, while the second specifies the new content.",
+ "syntax": [".setString(name, value)"],
+ "returns": "void",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/XML_toString_.es.json b/content/references/translations/es/processing/XML_toString_.es.json
new file mode 100644
index 000000000..e0ce0d4ad
--- /dev/null
+++ b/content/references/translations/es/processing/XML_toString_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Gets XML data as a String using default formatting",
+ "related": ["XML_format_"],
+ "name": "toString()",
+ "description": "Takes an XML object and converts it to a String, using default formatting\n rules (includes an XML declaration, line breaks, and two spaces for indents).\n These are the same formatting rules used by println() when printing an\n XML object. This method produces the same results as using format(2).",
+ "syntax": [".toString()"],
+ "returns": "String",
+ "type": "method",
+ "category": "xml",
+ "subcategory": "method",
+ "classanchor": "XML",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/abs_.es.json b/content/references/translations/es/processing/abs_.es.json
new file mode 100644
index 000000000..4dc71c407
--- /dev/null
+++ b/content/references/translations/es/processing/abs_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Calcula el valor absoluto (magnitud) de un número",
+ "related": [],
+ "lang": "es",
+ "name": "abs()",
+ "description": "Calcula el valor absoluto (magnitud) de un número. El valor\n absoluto de un número siempre es positivo.",
+ "syntax": ["abs(n)"],
+ "returns": "float o int",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "n",
+ "description": "Número a calcular",
+ "type": ["float", "int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/acos_.es.json b/content/references/translations/es/processing/acos_.es.json
new file mode 100644
index 000000000..9dada7007
--- /dev/null
+++ b/content/references/translations/es/processing/acos_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "El inverso de cos(), regresa el arco coseno de un valor",
+ "related": ["cos_", "asin_", "atan_"],
+ "name": "acos()",
+ "description": "El inverso del cos(), regresa el arco coseno de un valor. Esta\n función espera valores en el rango -1 a 1 y los valores son\n regresados en el rango 0 a PI (3.1415927).",
+ "syntax": ["acos(valor)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ {
+ "name": "valor",
+ "description": "el valor cuyo arco coseno será devuelto",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/addassign.es.json b/content/references/translations/es/processing/addassign.es.json
new file mode 100644
index 000000000..4fc7ce812
--- /dev/null
+++ b/content/references/translations/es/processing/addassign.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "+= (asignar suma)",
+ "brief": "Combina una suma con una asignación",
+ "description": "Combina una suma con una asignación. La expresión a += b es equivalente a a = a + b. \n",
+ "related": ["assign", "addition", "subtractassign"],
+ "syntax": ["value1 += value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int o float",
+ "type": []
+ },
+ {
+ "name": "value2",
+ "description": "cualquier valor numérico del mismo tipo que value1",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/addition.es.json b/content/references/translations/es/processing/addition.es.json
new file mode 100644
index 000000000..731c17172
--- /dev/null
+++ b/content/references/translations/es/processing/addition.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "+ (suma)",
+ "brief": "Suma dos valores numéricos o concatena dos cadenas (strings)",
+ "description": "Suma dos valores numéricos o concatena dos cadenas (strings). Como operador matemático calcula la suma de dos valores. Como operador sobre cadenas, combina dos cadenas en una nueva y convierte de tipos primitivos a tipo de datos String si es necesario. \n",
+ "related": ["increment", "addassign", "minus"],
+ "syntax": ["value1 + value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "String, int, float, char, byte, boolean",
+ "type": []
+ },
+ {
+ "name": "value2",
+ "description": "String, int, float, char, byte, boolean",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/alpha_.es.json b/content/references/translations/es/processing/alpha_.es.json
new file mode 100644
index 000000000..87067df90
--- /dev/null
+++ b/content/references/translations/es/processing/alpha_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Extrae el valor alfa de un color",
+ "related": ["red_", "green_", "blue_", "hue_", "saturation_", "brightness_"],
+ "name": "alpha()",
+ "description": "Extrae el valor alfa de un color.",
+ "syntax": ["alpha(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "un valor del tipo de dato color",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/ambientLight_.es.json b/content/references/translations/es/processing/ambientLight_.es.json
new file mode 100644
index 000000000..eac40ca75
--- /dev/null
+++ b/content/references/translations/es/processing/ambientLight_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Adds an ambient light",
+ "related": ["lights_", "directionalLight_", "pointLight_", "spotLight_"],
+ "name": "ambientLight()",
+ "description": "Adds an ambient light. Ambient light doesn't come from a specific direction,\n the rays of light have bounced around so much that objects are evenly lit\n from all sides. Ambient lights are almost always used in combination with\n other types of lights. Lights need to be included in the draw() to\n remain persistent in a looping program. Placing them in the setup() of\n a looping program will cause them to only have an effect the first time\n through the loop. The v1, v2, and v3 parameters are\n interpreted as either RGB or HSB values, depending on the current color mode.",
+ "syntax": ["ambientLight(v1, v2, v3)", "ambientLight(v1, v2, v3, x, y, z)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z-coordinate of the light",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/ambient_.es.json b/content/references/translations/es/processing/ambient_.es.json
new file mode 100644
index 000000000..5663c929e
--- /dev/null
+++ b/content/references/translations/es/processing/ambient_.es.json
@@ -0,0 +1,38 @@
+{
+ "brief": "Sets the ambient reflectance for shapes drawn to the screen",
+ "related": ["emissive_", "specular_", "shininess_"],
+ "name": "ambient()",
+ "description": "Sets the ambient reflectance for shapes drawn to the screen. This is\n combined with the ambient light component of environment. The color\n components set through the parameters define the reflectance. For\n example in the default color mode, setting v1=255, v2=126, v3=0, would\n cause all the red light to reflect and half of the green light to\n reflect. Used in combination with emissive(), specular(),\n and shininess() in setting the material properties of shapes.",
+ "syntax": ["ambient(rgb)", "ambient(gray)", "ambient(v1, v2, v3)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "material properties",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ },
+ {
+ "name": "gray",
+ "description": "number specifying value between white and black",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/append_.es.json b/content/references/translations/es/processing/append_.es.json
new file mode 100644
index 000000000..68265d616
--- /dev/null
+++ b/content/references/translations/es/processing/append_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Expands an array by one element and adds data to the new position",
+ "related": ["shorten_", "expand_"],
+ "name": "append()",
+ "description": "Expands an array by one element and adds data to the new position. The\n datatype of the element parameter must be the same as the\n datatype of the array.\n
\n When using an array of objects, the data returned from the function must\n be cast to the object array's data type. For example: SomeClass[]\n items = (SomeClass[]) append(originalArray, element).",
+ "syntax": ["append(array, value)"],
+ "returns": "byte[], char[], int[], float[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "array",
+ "description": "array to append",
+ "type": ["byte[]", "char[]", "int[]", "float[]", "String[]", "Object"]
+ },
+ {
+ "name": "value",
+ "description": "new data for the array",
+ "type": ["byte", "char", "int", "float", "String", "Object"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/applyMatrix_.es.json b/content/references/translations/es/processing/applyMatrix_.es.json
new file mode 100644
index 000000000..196ffd38b
--- /dev/null
+++ b/content/references/translations/es/processing/applyMatrix_.es.json
@@ -0,0 +1,97 @@
+{
+ "brief": "Multiplies the current matrix by the one specified through the\n parameters",
+ "related": ["pushMatrix_", "popMatrix_", "resetMatrix_", "printMatrix_"],
+ "name": "applyMatrix()",
+ "description": "Multiplies the current matrix by the one specified through the\n parameters. This is very slow because it will try to calculate the\n inverse of the transform, so avoid it whenever possible. The equivalent\n function in OpenGL is glMultMatrix().",
+ "syntax": [
+ "applyMatrix(source)",
+ "applyMatrix(n00, n01, n02, n10, n11, n12)",
+ "applyMatrix(n00, n01, n02, n03, n10, n11, n12, n13, n20, n21, n22, n23, n30, n31, n32, n33)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "n00",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n01",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n02",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n10",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n11",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n12",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n03",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n13",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n20",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n21",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n22",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n23",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n30",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n31",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n32",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ },
+ {
+ "name": "n33",
+ "description": "numbers which define the 4x4 matrix to be multiplied",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/arc_.es.json b/content/references/translations/es/processing/arc_.es.json
new file mode 100644
index 000000000..d7c85f48b
--- /dev/null
+++ b/content/references/translations/es/processing/arc_.es.json
@@ -0,0 +1,46 @@
+{
+ "brief": "Draws an arc in the display window",
+ "related": ["ellipse_", "ellipseMode_", "radians_", "degrees_"],
+ "name": "arc()",
+ "description": "Draws an arc to the screen. Arcs are drawn along the outer edge of an ellipse\n defined by the a, b, c, and d parameters. The\n origin of the arc's ellipse may be changed with the ellipseMode()\n function. Use the start and stop parameters to specify the\n angles (in radians) at which to draw the arc. The start/stop values must be\n in clockwise order. \n \n There are three ways to draw an arc; the rendering technique used is defined\n by the optional seventh parameter. The three options, depicted in the above\n examples, are PIE, OPEN, and CHORD. The default mode is the OPEN stroke with\n a PIE fill. \n \n In some cases, the arc() function isn't accurate enough for smooth\n drawing. For example, the shape may jitter on screen when rotating slowly. If\n you're having an issue with how arcs are rendered, you'll need to draw the\n arc yourself with beginShape()/endShape() or a PShape.",
+ "syntax": [
+ "arc(a, b, c, d, start, stop)",
+ "arc(a, b, c, d, start, stop, mode)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "x-coordinate of the arc's ellipse",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "y-coordinate of the arc's ellipse",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "width of the arc's ellipse by default",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "height of the arc's ellipse by default",
+ "type": ["float"]
+ },
+ {
+ "name": "start",
+ "description": "angle to start the arc, specified in radians",
+ "type": ["float"]
+ },
+ {
+ "name": "stop",
+ "description": "angle to stop the arc, specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/arrayCopy_.es.json b/content/references/translations/es/processing/arrayCopy_.es.json
new file mode 100644
index 000000000..17a4138ea
--- /dev/null
+++ b/content/references/translations/es/processing/arrayCopy_.es.json
@@ -0,0 +1,38 @@
+{
+ "brief": "Copia un arreglo o parte de un arreglo dentro de otro.",
+ "related": ["concat_"],
+ "name": "arrayCopy()",
+ "description": "Copia un arreglo o parte de un arreglo dentro de otro. El arreglo src\n es copiado al arreglo dst, comenzando en la posición \n especificada por srcPosition dentro de la posición especificada por \n dstPosition. El número de elementos a copiar es determinado por\n length. Nota que copiar los valores sobreescribe los valores existentes en\n el arreglo destino. Para adjuntar valores en vez de sobreescribirlos, usa\n concat(). \n \n La versión simplificada con solo dos argumentos — arrayCopy(src,\n dst) — copia un arreglo entero a otro del mismo tamaño. Es el \n equivalente a arrayCopy(src, 0, dst, 0, src.length). \n \n Usar esta función es bastante más eficiente para copiar arreglos que\n iterar usando un ciclo for() y copiar cada elemento \n individualmente. Esta función sólo copia referencias, lo que significa que\n para la mayoría de los propósitos sólo copia arreglos unidimensionales (sólo un conjunto de paréntesis).\n Si es usado con arreglos de dos o más dimensiones,\n copiará solamente las referencias al primer nivel, porque un arreglo bidimensional\n es simplemente un \"arreglo de arreglos\". Esto, sin embargo, no produce un error puesto que usualmente\n el comportamiento deseado. Internamente, esta\n función llama al método de Java System.arraycopy()\n , así que la mayoría de las cosas que aplican en ese caso son heredadas.",
+ "syntax": [
+ "arrayCopy(src, srcPosition, dst, dstPosition, length)",
+ "arrayCopy(src, dst, length)",
+ "arrayCopy(src, dst)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array_functions",
+ "parameters": [
+ { "name": "src", "description": "el arreglo origen", "type": ["Object"] },
+ {
+ "name": "srcPosition",
+ "description": "posición inicial en el arreglo origen",
+ "type": ["int"]
+ },
+ {
+ "name": "dst",
+ "description": "el arreglo destino con el mismo tipo de datos que el arreglo origen",
+ "type": ["Object"]
+ },
+ {
+ "name": "dstPosition",
+ "description": "posición de inicio para el arreglo destino",
+ "type": ["int"]
+ },
+ {
+ "name": "length",
+ "description": "número de elementos a ser copiados",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/arrayaccess.es.json b/content/references/translations/es/processing/arrayaccess.es.json
new file mode 100644
index 000000000..c93676009
--- /dev/null
+++ b/content/references/translations/es/processing/arrayaccess.es.json
@@ -0,0 +1,25 @@
+{
+ "lang": "es" ,
+ "name": "[] (acceso de arreglos)",
+ "brief": "El operador para acceso de arreglos es usado para especificar una ubicación dentro de un arreglo",
+ "description": "El operador para acceso de arreglos es usado para especificar una ubicación dentro de un arreglo. El dato en esta ubicación puede ser definido con la sintaxis array[element] = value and read with the syntax value = array[element] como se muestra en el ejemplo anterior.\n",
+ "related": ["Arreglo"],
+ "syntax": ["datatype[]", "array[element]"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "datatype",
+ "description": " Cualquier tipo de dato primitivo o compuesto, incluyendo clases definidas por el usuario",
+ "type": []
+ },
+ { "name": "array", "description": "cualquier nombre de variable válido", "type": [] },
+ {
+ "name": "element",
+ "description": "int: no debe exceder la longitud del arreglo (length) menos 1",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/asin_.es.json b/content/references/translations/es/processing/asin_.es.json
new file mode 100644
index 000000000..bd7c531f9
--- /dev/null
+++ b/content/references/translations/es/processing/asin_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "The inverse of sin(), returns the arc sine of a value",
+ "related": ["sin_", "acos_", "atan_"],
+ "name": "asin()",
+ "description": "The inverse of sin(), returns the arc sine of a value. This\n function expects the values in the range of -1 to 1 and values are\n returned in the range -PI/2 to PI/2.",
+ "syntax": ["asin(value)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the value whose arc sine is to be returned",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/assign.es.json b/content/references/translations/es/processing/assign.es.json
new file mode 100644
index 000000000..4be7fe2de
--- /dev/null
+++ b/content/references/translations/es/processing/assign.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "= (asignar)",
+ "brief": "Asigna un valor a una variable",
+ "description": "Assigns a value to a variable. The \"=\" sign does not mean \"equals\", but is used to place data within a variable. The \"=\" operator is formally called the assignment operator. There are many different types of variables (int, floats, strings, etc.) and the assignment operator can only assign values which are the same type as the variable it is assigning. For example, if the variable is of type int, the value must also be an int.\n",
+ "related": ["addassign", "subtractassign"],
+ "syntax": ["var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ { "name": "var", "description": "any valid variable name", "type": [] },
+ {
+ "name": "value",
+ "description": "any value of the same type as the variable. For example, if the variable is of type \"int\", the value must also be an int",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/atan2_.es.json b/content/references/translations/es/processing/atan2_.es.json
new file mode 100644
index 000000000..e9c83e0af
--- /dev/null
+++ b/content/references/translations/es/processing/atan2_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Calculates the angle (in radians) from a specified point to the\n coordinate origin as measured from the positive x-axis",
+ "related": ["tan_"],
+ "name": "atan2()",
+ "description": "Calculates the angle (in radians) from a specified point to the\n coordinate origin as measured from the positive x-axis. Values are\n returned as a float in the range from PI to -PI.\n The atan2() function is most often used for orienting geometry to\n the position of the cursor. Note: The y-coordinate of the point is the\n first parameter and the x-coordinate is the second due the the structure\n of calculating the tangent.",
+ "syntax": ["atan2(y, x)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ {
+ "name": "y",
+ "description": "y-coordinate of the point",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/atan_.es.json b/content/references/translations/es/processing/atan_.es.json
new file mode 100644
index 000000000..fa41fcf0c
--- /dev/null
+++ b/content/references/translations/es/processing/atan_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "The inverse of tan(), returns the arc tangent of a value",
+ "related": ["tan_", "asin_", "acos_"],
+ "name": "atan()",
+ "description": "The inverse of tan(), returns the arc tangent of a value. This\n function expects the values in the range of -Infinity to Infinity\n (exclusive) and values are returned in the range -PI/2 to PI/2 .",
+ "syntax": ["atan(value)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "-Infinity to Infinity (exclusive)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/background_.es.json b/content/references/translations/es/processing/background_.es.json
new file mode 100644
index 000000000..037ed150d
--- /dev/null
+++ b/content/references/translations/es/processing/background_.es.json
@@ -0,0 +1,56 @@
+{
+ "brief": "Sets the color used for the background of the Processing window",
+ "related": ["stroke_", "fill_", "tint_", "colorMode_"],
+ "name": "background()",
+ "description": "The background() function sets the color used for the background of\n the Processing window. The default background is light gray. This function is\n typically used within draw() to clear the display window at the\n beginning of each frame, but it can be used inside setup() to set the\n background on the first frame of animation or if the background need only be\n set once. \n \n An image can also be used as the background for a sketch, although the\n image's width and height must match that of the sketch window. Images used\n with background() will ignore the current tint() setting. To\n resize an image to the size of the sketch window, use image.resize(width,\n height). \n \n It is not possible to use the transparency alpha parameter with\n background colors on the main drawing surface. It can only be used along with\n a PGraphics object and createGraphics().\n\n\n ",
+ "syntax": [
+ "background(rgb)",
+ "background(rgb, alpha)",
+ "background(gray)",
+ "background(gray, alpha)",
+ "background(v1, v2, v3)",
+ "background(v1, v2, v3, alpha)",
+ "background(image)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ },
+ {
+ "name": "alpha",
+ "description": "opacity of the background",
+ "type": ["float"]
+ },
+ {
+ "name": "gray",
+ "description": "specifies a value between white and black",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on the current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on the current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on the current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "image",
+ "description": "PImage to set as background (must be same size as the sketch window)",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/beginCamera_.es.json b/content/references/translations/es/processing/beginCamera_.es.json
new file mode 100644
index 000000000..4de2d52f0
--- /dev/null
+++ b/content/references/translations/es/processing/beginCamera_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "The beginCamera() and endCamera() functions enable\n advanced customization of the camera space",
+ "related": [
+ "camera_",
+ "endCamera_",
+ "applyMatrix_",
+ "resetMatrix_",
+ "translate_",
+ "scale_"
+ ],
+ "name": "beginCamera()",
+ "description": "The beginCamera() and endCamera() functions enable\n advanced customization of the camera space. The functions are useful if\n you want to more control over camera movement, however for most users,\n the camera() function will be sufficient.
The camera\n functions will replace any transformations (such as rotate() or\n translate()) that occur before them in draw(), but they\n will not automatically replace the camera transform itself. For this\n reason, camera functions should be placed at the beginning of\n draw() (so that transformations happen afterwards), and the\n camera() function can be used after beginCamera() if you\n want to reset the camera before applying transformations.
This function sets the matrix mode to the camera matrix so calls such\n as translate(), rotate(), applyMatrix() and resetMatrix()\n affect the camera. beginCamera() should always be used with a\n following endCamera() and pairs of beginCamera() and\n endCamera() cannot be nested.",
+ "syntax": ["beginCamera()"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/beginContour_.es.json b/content/references/translations/es/processing/beginContour_.es.json
new file mode 100644
index 000000000..331753239
--- /dev/null
+++ b/content/references/translations/es/processing/beginContour_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Begins recording vertices for the shape",
+ "related": [],
+ "name": "beginContour()",
+ "description": "Use the beginContour() and endContour() function to\n create negative shapes within shapes such as the center of the\n letter 'O'. beginContour() begins recording vertices for the\n shape and endContour() stops recording. The vertices that\n define a negative shape must \"wind\" in the opposite direction from\n the exterior shape. First draw vertices for the exterior shape in\n clockwise order, then for internal shapes, draw vertices counterclockwise. \n \n These functions can only be used within a beginShape()/endShape()\n pair and transformations such as translate(), rotate(), and\n scale() do not work within a beginContour()/endContour()\n pair. It is also not possible to use other shapes, such as ellipse()\n or rect() within.",
+ "syntax": ["beginContour()"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/beginRaw_.es.json b/content/references/translations/es/processing/beginRaw_.es.json
new file mode 100644
index 000000000..3f35a253c
--- /dev/null
+++ b/content/references/translations/es/processing/beginRaw_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "To create vectors from 3D data, use the beginRaw() and\n endRaw() commands",
+ "related": ["endRaw_"],
+ "name": "beginRaw()",
+ "description": "To create vectors from 3D data, use the beginRaw() and\n endRaw() commands. These commands will grab the shape data just\n before it is rendered to the screen. At this stage, your entire scene is\n nothing but a long list of individual lines and triangles. This means\n that a shape created with sphere() function will be made up of\n hundreds of triangles, rather than a single object. Or that a\n multi-segment line shape (such as a curve) will be rendered as\n individual segments.\n
\n When using beginRaw() and endRaw(), it's possible to write\n to either a 2D or 3D renderer. For instance, beginRaw() with the\n PDF library will write the geometry as flattened triangles and lines,\n even if recording from the P3D renderer.\n
\n If you want a background to show up in your files, use rect(0, 0,\n width, height) after setting the fill() to the background\n color. Otherwise the background will not be rendered to the file because\n the background is not shape.\n
\n Using hint(ENABLE_DEPTH_SORT) can improve the appearance of 3D\n geometry drawn to 2D file formats. See the hint() reference for\n more details.\n
\n See examples in the reference for the PDF and DXF\n libraries for more information.",
+ "syntax": ["beginRaw(renderer, filename)"],
+ "returns": "PGraphics or void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "renderer",
+ "description": "for example, PDF or DXF",
+ "type": ["String"]
+ },
+ {
+ "name": "filename",
+ "description": "filename for output",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/beginRecord_.es.json b/content/references/translations/es/processing/beginRecord_.es.json
new file mode 100644
index 000000000..1acabe718
--- /dev/null
+++ b/content/references/translations/es/processing/beginRecord_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Opens a new file and all subsequent drawing functions are echoed\n to this file as well as the display window",
+ "related": ["endRecord_"],
+ "name": "beginRecord()",
+ "description": "Opens a new file and all subsequent drawing functions are echoed to this\n file as well as the display window. The beginRecord() function\n requires two parameters, the first is the renderer and the second is the\n file name. This function is always used with endRecord() to stop the\n recording process and close the file. \n \n Note that beginRecord() will only pick up any settings that happen\n after it has been called. For instance, if you call textFont()\n before beginRecord(), then that font will not be set for the file\n that you're recording to. \n \n beginRecord() works only with the PDF and SVG renderers.",
+ "syntax": ["beginRecord(renderer, filename)"],
+ "returns": "PGraphics or void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ { "name": "renderer", "description": "PDF or SVG", "type": ["String"] },
+ {
+ "name": "filename",
+ "description": "filename for output",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/beginShape_.es.json b/content/references/translations/es/processing/beginShape_.es.json
new file mode 100644
index 000000000..52c50ca83
--- /dev/null
+++ b/content/references/translations/es/processing/beginShape_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Using the beginShape() and endShape() functions allow\n creating more complex forms",
+ "related": [
+ "PShape",
+ "endShape_",
+ "vertex_",
+ "curveVertex_",
+ "bezierVertex_"
+ ],
+ "name": "beginShape()",
+ "description": "Using the beginShape() and endShape() functions allow creating\n more complex forms. beginShape() begins recording vertices for a shape\n and endShape() stops recording. The value of the kind parameter\n tells it which types of shapes to create from the provided vertices. With no\n mode specified, the shape can be any irregular polygon. The parameters\n available for beginShape() are POINTS, LINES, TRIANGLES, TRIANGLE_FAN,\n TRIANGLE_STRIP, QUADS, and QUAD_STRIP. After calling the beginShape()\n function, a series of vertex() commands must follow. To stop drawing\n the shape, call endShape(). The vertex() function with two\n parameters specifies a position in 2D and the vertex() function with\n three parameters specifies a position in 3D. Each shape will be outlined with\n the current stroke color and filled with the fill color. \n \n Transformations such as translate(), rotate(), and\n scale() do not work within beginShape(). It is also not\n possible to use other shapes, such as ellipse() or rect()\n within beginShape(). \n \n The P2D and P3D renderers allow stroke() and fill() to be\n altered on a per-vertex basis, but the default renderer does not. Settings\n such as strokeWeight(), strokeCap(), and strokeJoin()\n cannot be changed while inside a beginShape()/endShape() block\n with any renderer.",
+ "syntax": ["beginShape()", "beginShape(kind)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": [
+ {
+ "name": "kind",
+ "description": "Either POINTS, LINES, TRIANGLES, TRIANGLE_FAN, TRIANGLE_STRIP,\n QUADS, or QUAD_STRIP",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/bezierDetail_.es.json b/content/references/translations/es/processing/bezierDetail_.es.json
new file mode 100644
index 000000000..43c83a8e8
--- /dev/null
+++ b/content/references/translations/es/processing/bezierDetail_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the resolution at which Beziers display",
+ "related": ["curve_", "curveVertex_", "curveTightness_"],
+ "name": "bezierDetail()",
+ "description": "Sets the resolution at which Beziers display. The default value is 20. This\n function is only useful when using the P3D renderer; the default\n P2D renderer does not use this information.",
+ "syntax": ["bezierDetail(detail)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "detail",
+ "description": "resolution of the curves",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/bezierPoint_.es.json b/content/references/translations/es/processing/bezierPoint_.es.json
new file mode 100644
index 000000000..6bd6f190d
--- /dev/null
+++ b/content/references/translations/es/processing/bezierPoint_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Evaluates the Bezier at point t for points a, b, c, d",
+ "related": ["bezier_", "bezierVertex_", "curvePoint_"],
+ "name": "bezierPoint()",
+ "description": "Evaluates the Bezier at point t for points a, b, c, d. The parameter t\n varies between 0 and 1, a and d are points on the curve, and b and c are\n the control points. This can be done once with the x coordinates and a\n second time with the y coordinates to get the location of a bezier curve\n at t.\n\n\n ",
+ "syntax": ["bezierPoint(a, b, c, d, t)"],
+ "returns": "float",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "coordinate of first point on the curve",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "coordinate of first control point",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "coordinate of second control point",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "coordinate of second point on the curve",
+ "type": ["float"]
+ },
+ { "name": "t", "description": "value between 0 and 1", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/bezierTangent_.es.json b/content/references/translations/es/processing/bezierTangent_.es.json
new file mode 100644
index 000000000..82ebc9b84
--- /dev/null
+++ b/content/references/translations/es/processing/bezierTangent_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Calculates the tangent of a point on a Bezier curve",
+ "related": ["bezier_", "bezierVertex_", "curvePoint_"],
+ "name": "bezierTangent()",
+ "description": "Calculates the tangent of a point on a Bezier curve. There is a good\n definition of tangent on Wikipedia.\n\n\n ",
+ "syntax": ["bezierTangent(a, b, c, d, t)"],
+ "returns": "float",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "coordinate of first point on the curve",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "coordinate of first control point",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "coordinate of second control point",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "coordinate of second point on the curve",
+ "type": ["float"]
+ },
+ { "name": "t", "description": "value between 0 and 1", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/bezierVertex_.es.json b/content/references/translations/es/processing/bezierVertex_.es.json
new file mode 100644
index 000000000..91f95d9af
--- /dev/null
+++ b/content/references/translations/es/processing/bezierVertex_.es.json
@@ -0,0 +1,61 @@
+{
+ "brief": "Specifies vertex coordinates for Bezier curves",
+ "related": ["curveVertex_", "vertex_", "quadraticVertex_", "bezier_"],
+ "name": "bezierVertex()",
+ "description": "Specifies vertex coordinates for Bezier curves. Each call to\n bezierVertex() defines the position of two control points and one\n anchor point of a Bezier curve, adding a new segment to a line or shape.\n The first time bezierVertex() is used within a\n beginShape() call, it must be prefaced with a call to\n vertex() to set the first anchor point. This function must be\n used between beginShape() and endShape() and only when\n there is no MODE parameter specified to beginShape(). Using the\n 3D version requires rendering with P3D (see the Environment reference\n for more information).",
+ "syntax": [
+ "bezierVertex(x2, y2, x3, y3, x4, y4)",
+ "bezierVertex(x2, y2, z2, x3, y3, z3, x4, y4, z4)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": [
+ {
+ "name": "x2",
+ "description": "the x-coordinate of the 1st control point",
+ "type": ["float"]
+ },
+ {
+ "name": "y2",
+ "description": "the y-coordinate of the 1st control point",
+ "type": ["float"]
+ },
+ {
+ "name": "z2",
+ "description": "the z-coordinate of the 1st control point",
+ "type": ["float"]
+ },
+ {
+ "name": "x3",
+ "description": "the x-coordinate of the 2nd control point",
+ "type": ["float"]
+ },
+ {
+ "name": "y3",
+ "description": "the y-coordinate of the 2nd control point",
+ "type": ["float"]
+ },
+ {
+ "name": "z3",
+ "description": "the z-coordinate of the 2nd control point",
+ "type": ["float"]
+ },
+ {
+ "name": "x4",
+ "description": "the x-coordinate of the anchor point",
+ "type": ["float"]
+ },
+ {
+ "name": "y4",
+ "description": "the y-coordinate of the anchor point",
+ "type": ["float"]
+ },
+ {
+ "name": "z4",
+ "description": "the z-coordinate of the anchor point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/de/processing/bezier_.de.json b/content/references/translations/es/processing/bezier_.es.json
similarity index 73%
rename from content/references/translations/de/processing/bezier_.de.json
rename to content/references/translations/es/processing/bezier_.es.json
index 629bc4de4..1a5dda153 100644
--- a/content/references/translations/de/processing/bezier_.de.json
+++ b/content/references/translations/es/processing/bezier_.es.json
@@ -1,9 +1,8 @@
{
- "examples": "",
+ "brief": "Draws a Bezier curve on the screen",
"related": ["bezierVertex_", "curve_"],
- "usage": "",
"name": "bezier()",
- "description": " DEeee ( begin auto-generated from bezier.xml )\n\n Draws a Bezier curve on the screen. These curves are defined by a series\n of anchor and control points. The first two parameters specify the first\n anchor point and the last two parameters specify the other anchor point.\n The middle parameters specify the control points which define the shape\n of the curve. Bezier curves were developed by French engineer Pierre\n Bezier. Using the 3D version requires rendering with P3D (see the\n Environment reference for more information).\n\n ( end auto-generated )\n\n ",
+ "description": "Draws a Bezier curve on the screen. These curves are defined by a series\n of anchor and control points. The first two parameters specify the first\n anchor point and the last two parameters specify the other anchor point.\n The middle parameters specify the control points which define the shape\n of the curve. Bezier curves were developed by French engineer Pierre\n Bezier. Using the 3D version requires rendering with P3D (see the\n Environment reference for more information).\n\n\n ",
"syntax": [
"bezier(x1, y1, x2, y2, x3, y3, x4, y4)",
"bezier(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4)"
diff --git a/content/references/translations/es/processing/binary_.es.json b/content/references/translations/es/processing/binary_.es.json
new file mode 100644
index 000000000..b6e811d87
--- /dev/null
+++ b/content/references/translations/es/processing/binary_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Converts an int, byte, char, or color to a\n String containing the equivalent binary notation",
+ "related": ["unbinary_", "hex_", "unhex_"],
+ "name": "binary()",
+ "description": "Converts an int, byte, char, or color to a\n String containing the equivalent binary notation. For example, the\n color value produced by color(0, 102, 153, 255) will convert\n to the String value \"11111111000000000110011010011001\". This\n function can help make your geeky debugging sessions much happier. \n \n Note that the maximum number of digits is 32, because an int value\n can only represent up to 32 bits. Specifying more than 32 digits will have\n no effect.",
+ "syntax": ["binary(value)", "binary(value, digits)"],
+ "returns": "String",
+ "type": "function",
+ "category": "data",
+ "subcategory": "conversion",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "value to convert",
+ "type": ["int", "char"]
+ },
+ {
+ "name": "digits",
+ "description": "number of digits to return",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/bitwiseAND.es.json b/content/references/translations/es/processing/bitwiseAND.es.json
new file mode 100644
index 000000000..91adb0a7d
--- /dev/null
+++ b/content/references/translations/es/processing/bitwiseAND.es.json
@@ -0,0 +1,15 @@
+{
+ "name": "& (bitwise AND)",
+ "brief": "Compares each corresponding bit in the binary representation of the values",
+ "description": "Compares each corresponding bit in the binary representation of the values. For each comparison two 1's yield 1, 1 and 0 yield 0, and two 0's yield 0. This is easy to see when we look at the binary representation of numbers \n \n
\n \nTo see the binary representation of a number, use the binary() function with println().\n",
+ "related": ["bitwiseOR", "binary_"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Bitwise Operators",
+ "parameters": [
+ { "name": "value1", "description": "int, char, byte", "type": [] },
+ { "name": "value2", "description": "int, char, byte", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/bitwiseOR.es.json b/content/references/translations/es/processing/bitwiseOR.es.json
new file mode 100644
index 000000000..d46bd971a
--- /dev/null
+++ b/content/references/translations/es/processing/bitwiseOR.es.json
@@ -0,0 +1,15 @@
+{
+ "name": "| (bitwise OR)",
+ "brief": "Compares each corresponding bit in the binary representation of the values",
+ "description": "Compares each corresponding bit in the binary representation of the values. For each comparison two 1's yield 1, 1 and 0 yield 1, and two 0's yield 0. This is easy to see when we look at the binary representation of numbers \n \n
\n \nTo see the binary representation of a number, use the binary() function with println().\n",
+ "related": ["bitwiseAND", "binary_"],
+ "syntax": ["value | value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Bitwise Operators",
+ "parameters": [
+ { "name": "value1", "description": "int, char, byte", "type": [] },
+ { "name": "value2", "description": "int, char, byte", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/blendMode_.es.json b/content/references/translations/es/processing/blendMode_.es.json
new file mode 100644
index 000000000..a019133e1
--- /dev/null
+++ b/content/references/translations/es/processing/blendMode_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Blends the pixels in the display window according to a defined mode",
+ "related": [],
+ "name": "blendMode()",
+ "description": "Blends the pixels in the display window according to a defined mode.\n There is a choice of the following modes to blend the source pixels (A)\n with the ones of pixels already in the display window (B). Each pixel's\n final color is the result of applying one of the blend modes with each\n channel of (A) and (B) independently. The red channel is compared with\n red, green with green, and blue with blue. \n \n BLEND - linear interpolation of colors: C = A*factor + B. This is the default. \n \n ADD - additive blending with white clip: C = min(A*factor + B, 255) \n \n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor, 0) \n \n DARKEST - only the darkest color succeeds: C = min(A*factor, B) \n \n LIGHTEST - only the lightest color succeeds: C = max(A*factor, B) \n \n DIFFERENCE - subtract colors from underlying image. \n \n EXCLUSION - similar to DIFFERENCE, but less extreme. \n \n MULTIPLY - multiply the colors, result will always be darker. \n \n SCREEN - opposite multiply, uses inverse values of the colors. \n \n REPLACE - the pixels entirely replace the others and don't utilize alpha (transparency) values \n \n We recommend using blendMode() and not the previous blend()\n function. However, unlike blend(), the blendMode() function\n does not support the following: HARD_LIGHT, SOFT_LIGHT, OVERLAY, DODGE,\n BURN. On older hardware, the LIGHTEST, DARKEST, and DIFFERENCE modes might\n not be available as well.",
+ "syntax": ["blendMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "the blending mode to use",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/blend_.es.json b/content/references/translations/es/processing/blend_.es.json
new file mode 100644
index 000000000..5f6fd5560
--- /dev/null
+++ b/content/references/translations/es/processing/blend_.es.json
@@ -0,0 +1,54 @@
+{
+ "brief": "Copies a pixel or rectangle of pixels using different blending modes",
+ "related": ["alpha_", "copy_", "PImage_blendColor_"],
+ "name": "blend()",
+ "description": "Blends a region of pixels into the image specified by the img\n parameter. These copies utilize full alpha channel support and a choice\n of the following modes to blend the colors of source pixels (A) with the\n ones of pixels in the destination image (B): \n \n BLEND - linear interpolation of colours: C = A*factor + B \n \n ADD - additive blending with white clip: C = min(A*factor + B, 255) \n \n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor,\n 0) \n \n DARKEST - only the darkest colour succeeds: C = min(A*factor, B) \n \n LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B) \n \n DIFFERENCE - subtract colors from underlying image. \n \n EXCLUSION - similar to DIFFERENCE, but less extreme. \n \n MULTIPLY - Multiply the colors, result will always be darker. \n \n SCREEN - Opposite multiply, uses inverse values of the colors. \n \n OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values,\n and screens light values. \n \n HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower. \n \n SOFT_LIGHT - Mix of DARKEST and LIGHTEST.\n Works like OVERLAY, but not as harsh. \n \n DODGE - Lightens light tones and increases contrast, ignores darks.\n Called \"Color Dodge\" in Illustrator and Photoshop. \n \n BURN - Darker areas are applied, increasing contrast, ignores lights.\n Called \"Color Burn\" in Illustrator and Photoshop. \n \n All modes use the alpha information (highest byte) of source image\n pixels as the blending factor. If the source and destination regions are\n different sizes, the image will be automatically resized to match the\n destination size. If the srcImg parameter is not used, the\n display window is used as the source image. \n \n As of release 0149, this function ignores imageMode().",
+ "syntax": [
+ "blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)",
+ "blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": [
+ {
+ "name": "src",
+ "description": "an image variable referring to the source image",
+ "type": ["PImage"]
+ },
+ {
+ "name": "sx",
+ "description": "X coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "sy",
+ "description": "Y coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "sw", "description": "source image width", "type": ["int"] },
+ { "name": "sh", "description": "source image height", "type": ["int"] },
+ {
+ "name": "dx",
+ "description": "X coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "dy",
+ "description": "Y coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "dw", "description": "destination image width", "type": ["int"] },
+ {
+ "name": "dh",
+ "description": "destination image height",
+ "type": ["int"]
+ },
+ {
+ "name": "mode",
+ "description": "Either BLEND, ADD, SUBTRACT, LIGHTEST, DARKEST, DIFFERENCE, EXCLUSION, MULTIPLY, SCREEN, OVERLAY, HARD_LIGHT, SOFT_LIGHT, DODGE, BURN",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/blue_.es.json b/content/references/translations/es/processing/blue_.es.json
new file mode 100644
index 000000000..cd1598074
--- /dev/null
+++ b/content/references/translations/es/processing/blue_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Extracts the blue value from a color, scaled to match current\n colorMode()",
+ "related": [
+ "red_",
+ "green_",
+ "alpha_",
+ "hue_",
+ "saturation_",
+ "brightness_",
+ "rightshift_"
+ ],
+ "name": "blue()",
+ "description": "Extracts the blue value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value. \n \n The blue() function is easy to use and understand, but it is slower\n than a technique called bit masking. When working in colorMode(RGB,\n 255), you can achieve the same results as blue() but with greater\n speed by using a bit mask to remove the other color components. For example,\n the following two lines of code are equivalent means of getting the blue\n value of the color value c: \n \n\n
\n float b1 = blue(c); // Simpler, but slower to calculate\n float b2 = c & 0xFF; // Very fast to calculate\n
",
+ "syntax": ["blue(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/boolean.es.json b/content/references/translations/es/processing/boolean.es.json
new file mode 100644
index 000000000..777dd693c
--- /dev/null
+++ b/content/references/translations/es/processing/boolean.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "boolean",
+ "brief": "Datatype for the Boolean values true and false",
+ "description": "Datatype for the Boolean values true and false. It is common to use boolean values with control statements to determine the flow of a program. The first time a variable is written, it must be declared with a statement expressing its datatype.\n",
+ "related": ["true", "false"],
+ "syntax": ["boolean var", "boolean var = booleanvalue"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the value",
+ "type": []
+ },
+ { "name": "booleanvalue", "description": "true or false", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/booleanconvert_.es.json b/content/references/translations/es/processing/booleanconvert_.es.json
new file mode 100644
index 000000000..708d50a51
--- /dev/null
+++ b/content/references/translations/es/processing/booleanconvert_.es.json
@@ -0,0 +1,10 @@
+{
+ "name": "boolean()",
+ "brief": "Converts an int or String to its boolean representation",
+ "description": "Converts an int or String to its boolean representation. For an int, any non-zero value (positive or negative) evaluates to true, while zero evaluates to false. For a String, the value \"true\" evaluates to true, while any other value (including \"false\" or \"hippopotamus\") evaluates to false. \n \nWhen an array of int or String values is passed in, then a boolean array of the same length is returned.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Conversion"
+}
diff --git a/content/references/translations/es/processing/box_.es.json b/content/references/translations/es/processing/box_.es.json
new file mode 100644
index 000000000..c568484b6
--- /dev/null
+++ b/content/references/translations/es/processing/box_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "A box is an extruded rectangle",
+ "related": ["sphere_"],
+ "name": "box()",
+ "description": "A box is an extruded rectangle. A box with equal dimension on all sides\n is a cube.",
+ "syntax": ["box(size)", "box(w, h, d)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "3d primitives",
+ "parameters": [
+ {
+ "name": "size",
+ "description": "dimension of the box in all dimensions (creates a cube)",
+ "type": ["float"]
+ },
+ {
+ "name": "w",
+ "description": "dimension of the box in the x-dimension",
+ "type": ["float"]
+ },
+ {
+ "name": "h",
+ "description": "dimension of the box in the y-dimension",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "dimension of the box in the z-dimension",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/break.es.json b/content/references/translations/es/processing/break.es.json
new file mode 100644
index 000000000..5e8aca35f
--- /dev/null
+++ b/content/references/translations/es/processing/break.es.json
@@ -0,0 +1,11 @@
+{
+ "name": "break",
+ "brief": "Ends the execution of a structure such as switch, for, or while and jumps to the next statement after",
+ "description": "Ends the execution of a structure such as switch, for, or while and jumps to the next statement after.\n",
+ "related": ["switch", "for", "while"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals"
+}
diff --git a/content/references/translations/es/processing/brightness_.es.json b/content/references/translations/es/processing/brightness_.es.json
new file mode 100644
index 000000000..a087f407f
--- /dev/null
+++ b/content/references/translations/es/processing/brightness_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Extracts the brightness value from a color",
+ "related": ["red_", "green_", "blue_", "alpha_", "hue_", "saturation_"],
+ "name": "brightness()",
+ "description": "Extracts the brightness value from a color.",
+ "syntax": ["brightness(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/byte.es.json b/content/references/translations/es/processing/byte.es.json
new file mode 100644
index 000000000..74e9d8d63
--- /dev/null
+++ b/content/references/translations/es/processing/byte.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "byte",
+ "brief": "Datatype for bytes, 8 bits of information storing numerical values from 127 to -128",
+ "description": "Datatype for bytes, 8 bits of information storing numerical values from 127 to -128. Bytes are a convenient datatype for sending information to and from the serial port and for representing letters in a simpler format than the char datatype. The first time a variable is written, it must be declared with a statement expressing its datatype. Subsequent uses of this variable must not reference the datatype because Processing will think the variable is being declared again.\n",
+ "related": ["int", "float", "boolean"],
+ "syntax": ["byte var", "byte var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the value",
+ "type": []
+ },
+ {
+ "name": "value",
+ "description": "a number between 127 to -128",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/byteconvert_.es.json b/content/references/translations/es/processing/byteconvert_.es.json
new file mode 100644
index 000000000..f9cc60918
--- /dev/null
+++ b/content/references/translations/es/processing/byteconvert_.es.json
@@ -0,0 +1,10 @@
+{
+ "name": "byte()",
+ "brief": "Converts any value of a primitive data type (boolean, byte, char, color, double, float, int, or long) to its byte representation",
+ "description": "Converts any value of a primitive data type (boolean, byte, char, color, double, float, int, or long) to its byte representation. A byte can only be a whole number between -128 and 127, so when a value outside of this range is converted, it wraps around to the corresponding byte representation. (For example, byte(128) evaluates to -128.) \n \nWhen an array of values is passed in, then a byte array of the same length is returned.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Conversion"
+}
diff --git a/content/references/translations/es/processing/camera_.es.json b/content/references/translations/es/processing/camera_.es.json
new file mode 100644
index 000000000..43478c66d
--- /dev/null
+++ b/content/references/translations/es/processing/camera_.es.json
@@ -0,0 +1,61 @@
+{
+ "brief": "Sets the position of the camera",
+ "related": ["beginCamera_", "endCamera_", "frustum_"],
+ "name": "camera()",
+ "description": "Sets the position of the camera through setting the eye position, the\n center of the scene, and which axis is facing upward. Moving the eye\n position and the direction it is pointing (the center of the scene)\n allows the images to be seen from different angles. The version without\n any parameters sets the camera to the default position, pointing to the\n center of the display window with the Y axis as up. The default values\n are camera(width/2.0, height/2.0, (height/2.0) / tan(PI*30.0 /\n 180.0), width/2.0, height/2.0, 0, 0, 1, 0). This function is similar\n to gluLookAt() in OpenGL, but it first clears the current camera settings.",
+ "syntax": [
+ "camera()",
+ "camera(eyeX, eyeY, eyeZ, centerX, centerY, centerZ, upX, upY, upZ)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": [
+ {
+ "name": "eyeX",
+ "description": "x-coordinate for the eye",
+ "type": ["float"]
+ },
+ {
+ "name": "eyeY",
+ "description": "y-coordinate for the eye",
+ "type": ["float"]
+ },
+ {
+ "name": "eyeZ",
+ "description": "z-coordinate for the eye",
+ "type": ["float"]
+ },
+ {
+ "name": "centerX",
+ "description": "x-coordinate for the center of the scene",
+ "type": ["float"]
+ },
+ {
+ "name": "centerY",
+ "description": "y-coordinate for the center of the scene",
+ "type": ["float"]
+ },
+ {
+ "name": "centerZ",
+ "description": "z-coordinate for the center of the scene",
+ "type": ["float"]
+ },
+ {
+ "name": "upX",
+ "description": "usually 0.0, 1.0, or -1.0",
+ "type": ["float"]
+ },
+ {
+ "name": "upY",
+ "description": "usually 0.0, 1.0, or -1.0",
+ "type": ["float"]
+ },
+ {
+ "name": "upZ",
+ "description": "usually 0.0, 1.0, or -1.0",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/case.es.json b/content/references/translations/es/processing/case.es.json
new file mode 100644
index 000000000..20a1129cd
--- /dev/null
+++ b/content/references/translations/es/processing/case.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "case",
+ "brief": "Denotes the different names to be evaluated with the parameter in the switch structure",
+ "description": "Denotes the different names to be evaluated with the parameter in the switch structure.\n",
+ "related": ["switch", "default", "break"],
+ "syntax": ["case name: statements"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals",
+ "parameters": [
+ { "name": "name", "description": "byte, char, or int", "type": [] },
+ {
+ "name": "statements",
+ "description": "one or more valid statements",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/catch.es.json b/content/references/translations/es/processing/catch.es.json
new file mode 100644
index 000000000..f4125b5d0
--- /dev/null
+++ b/content/references/translations/es/processing/catch.es.json
@@ -0,0 +1,34 @@
+{
+ "name": "catch",
+ "brief": "The catch keyword is used with try to handle exceptions",
+ "description": "The catch keyword is used with try to handle exceptions. Sun's Java documentation defines an exception as \"an event, which occurs during the execution of a program, that disrupts the normal flow of the program's instructions.\" This could be, for example, an error while a file is read.\n",
+ "related": [],
+ "syntax": [
+ "try {",
+ " tryStatements",
+ "} catch (exception) {",
+ " catchStatements",
+ "} "
+ ],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "tryStatements",
+ "description": "if this code throws an exception, then the code in \"catch\" is run",
+ "type": []
+ },
+ {
+ "name": "exception",
+ "description": "the Java exception that was thrown",
+ "type": []
+ },
+ {
+ "name": "catchStatements",
+ "description": "code that handles the exception",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/ceil_.es.json b/content/references/translations/es/processing/ceil_.es.json
new file mode 100644
index 000000000..e3457eca4
--- /dev/null
+++ b/content/references/translations/es/processing/ceil_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the closest int value that is greater than or equal to the\n value of the parameter",
+ "related": ["floor_", "round_"],
+ "name": "ceil()",
+ "description": "Calculates the closest int value that is greater than or equal to the\n value of the parameter. For example, ceil(9.03) returns the value 10.",
+ "syntax": ["ceil(n)"],
+ "returns": "int",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "number to round up", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/char.es.json b/content/references/translations/es/processing/char.es.json
new file mode 100644
index 000000000..868c808bf
--- /dev/null
+++ b/content/references/translations/es/processing/char.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "char",
+ "brief": "Datatype for characters, typographic symbols such as A, d, and $",
+ "description": "Datatype for characters, typographic symbols such as A, d, and $. A char stores letters and symbols in the Unicode format, a coding system developed to support a variety of world languages. Each char is two bytes (16 bits) in length and is distinguished by surrounding it with single quotes. Character escapes may also stored as a char. For example, the representation for the \"delete\" key is 127. The first time a variable is written, it must be declared with a statement expressing its datatype. Subsequent uses of this variable must not reference the datatype because Processing will think the variable is being declared again.\n",
+ "related": ["String"],
+ "syntax": ["char var", "char var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the value",
+ "type": []
+ },
+ { "name": "value", "description": "any character", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/charconvert_.es.json b/content/references/translations/es/processing/charconvert_.es.json
new file mode 100644
index 000000000..a6a432cee
--- /dev/null
+++ b/content/references/translations/es/processing/charconvert_.es.json
@@ -0,0 +1,10 @@
+{
+ "name": "char()",
+ "brief": "Converts any value of a primitive data type (boolean, byte, char, color, double, float, int, or long) to its numeric character representation",
+ "description": "Converts any value of a primitive data type (boolean, byte, char, color, double, float, int, or long) to its numeric character representation. \n \nWhen an array of values is passed in, then a char array of the same length is returned.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Conversion"
+}
diff --git a/content/references/translations/es/processing/circle_.es.json b/content/references/translations/es/processing/circle_.es.json
new file mode 100644
index 000000000..df8397a21
--- /dev/null
+++ b/content/references/translations/es/processing/circle_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Draws a circle to the screen",
+ "related": ["ellipse_", "ellipseMode_"],
+ "name": "circle()",
+ "description": "Draws a circle to the screen. By default, the first two parameters\n set the location of the center, and the third sets the shape's width\n and height. The origin may be changed with the ellipseMode()\n function.",
+ "syntax": ["circle(x, y, extent)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "x-coordinate of the ellipse",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the ellipse",
+ "type": ["float"]
+ },
+ {
+ "name": "extent",
+ "description": "width and height of the ellipse by default",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/class.es.json b/content/references/translations/es/processing/class.es.json
new file mode 100644
index 000000000..1683e9529
--- /dev/null
+++ b/content/references/translations/es/processing/class.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "class",
+ "brief": "\rKeyword used to indicate the declaration of a class",
+ "description": "\rKeyword used to indicate the declaration of a class. A class is a composite of fields (data) and methods (functions that are a part of the class) which may be instantiated as objects. The first letter of a class name is usually uppercase to separate it from other kinds of variables. A related tutorial on Object-Oriented Programming is hosted on the Oracle website.\r\n",
+ "related": ["Object"],
+ "syntax": ["class ClassName {\r", " statements\r", "}\r"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "ClassName",
+ "description": "Any valid variable name",
+ "type": []
+ },
+ { "name": "statements", "description": "any valid statements", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/clear_.es.json b/content/references/translations/es/processing/clear_.es.json
new file mode 100644
index 000000000..3656af9f1
--- /dev/null
+++ b/content/references/translations/es/processing/clear_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Limpia los pixeles dentro de un buffer",
+ "related": [],
+ "name": "clear()",
+ "description": "Clears the pixels within a buffer. This function only works on\n PGraphics objects created with the createGraphics()\n function. Unlike the main graphics context (the display window),\n pixels in additional graphics areas created with createGraphics()\n can be entirely or partially transparent. This function clears\n everything in a PGraphics object to make all of the pixels\n 100% transparent.",
+ "syntax": ["clear()"],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/clip_.es.json b/content/references/translations/es/processing/clip_.es.json
new file mode 100644
index 000000000..195bfa8cc
--- /dev/null
+++ b/content/references/translations/es/processing/clip_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Limits the rendering to the boundaries of a rectangle defined\n by the parameters",
+ "related": [],
+ "name": "clip()",
+ "description": "Limits the rendering to the boundaries of a rectangle defined\n by the parameters. The boundaries are drawn based on the state\n of the imageMode() function, either CORNER, CORNERS, or CENTER.",
+ "syntax": ["clip(a, b, c, d)"],
+ "returns": "void",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "x-coordinate of the rectangle, by default",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "y-coordinate of the rectangle, by default",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "width of the rectangle, by default",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "height of the rectangle, by default",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/colorMode_.es.json b/content/references/translations/es/processing/colorMode_.es.json
new file mode 100644
index 000000000..ad042d7cd
--- /dev/null
+++ b/content/references/translations/es/processing/colorMode_.es.json
@@ -0,0 +1,44 @@
+{
+ "brief": "Changes the way Processing interprets color data",
+ "related": ["background_", "fill_", "stroke_"],
+ "name": "colorMode()",
+ "description": "Changes the way Processing interprets color data. By default, the parameters\n for fill(), stroke(), background(), and color()\n are defined by values between 0 and 255 using the RGB color model. The\n colorMode() function is used to change the numerical range used for\n specifying colors and to switch color systems. For example, calling\n colorMode(RGB, 1.0) will specify that values are specified between 0\n and 1. The limits for defining colors are altered by setting the parameters\n max, max1, max2, max3, and maxA. \n \n After changing the range of values for colors with code like\n colorMode(HSB, 360, 100, 100), those ranges remain in use until they\n are explicitly changed again. For example, after running colorMode(HSB,\n 360, 100, 100) and then changing back to colorMode(RGB), the range\n for R will be 0 to 360 and the range for G and B will be 0 to 100. To avoid\n this, be explicit about the ranges when changing the color mode. For\n instance, instead of colorMode(RGB), write colorMode(RGB, 255, 255,\n 255).",
+ "syntax": [
+ "colorMode(mode)",
+ "colorMode(mode, max)",
+ "colorMode(mode, max1, max2, max3)",
+ "colorMode(mode, max1, max2, max3, maxA)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "Either RGB or HSB, corresponding to Red/Green/Blue and\n Hue/Saturation/Brightness",
+ "type": ["int"]
+ },
+ {
+ "name": "max",
+ "description": "range for all color elements",
+ "type": ["float"]
+ },
+ {
+ "name": "max1",
+ "description": "range for the red or hue depending on the current color mode",
+ "type": ["float"]
+ },
+ {
+ "name": "max2",
+ "description": "range for the green or saturation depending on the current color mode",
+ "type": ["float"]
+ },
+ {
+ "name": "max3",
+ "description": "range for the blue or brightness depending on the current color mode",
+ "type": ["float"]
+ },
+ { "name": "maxA", "description": "range for the alpha", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/color_.es.json b/content/references/translations/es/processing/color_.es.json
new file mode 100644
index 000000000..f84dc7e6d
--- /dev/null
+++ b/content/references/translations/es/processing/color_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Creates colors for storing in variables of the color\n datatype",
+ "related": ["colorMode_"],
+ "name": "color()",
+ "description": "Creates colors for storing in variables of the color datatype. The\n parameters are interpreted as RGB or HSB values depending on the current\n colorMode(). The default mode is RGB values from 0 to 255 and,\n therefore, color(255, 204, 0) will return a bright yellow color (see\n the first example above). \n \n Note that if only one value is provided to color(), it will be\n interpreted as a grayscale value. Add a second value, and it will be used\n for alpha transparency. When three values are specified, they are\n interpreted as either RGB or HSB values. Adding a fourth value applies\n alpha transparency. \n \n Note that when using hexadecimal notation, it is not necessary to use\n color(), as in: color c = #006699 \n \n More about how colors are stored can be found in the reference for the\n color datatype.",
+ "syntax": [
+ "color(gray)",
+ "color(gray, alpha)",
+ "color(v1, v2, v3)",
+ "color(v1, v2, v3, alpha)"
+ ],
+ "returns": "int",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "gray",
+ "description": "number specifying value between white and black",
+ "type": ["int"]
+ },
+ {
+ "name": "alpha",
+ "description": "relative to current color range",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue values relative to the current color range",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation values relative to the current color range",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness values relative to the current color range",
+ "type": ["int", "float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/color_datatype.es.json b/content/references/translations/es/processing/color_datatype.es.json
new file mode 100644
index 000000000..b580bf152
--- /dev/null
+++ b/content/references/translations/es/processing/color_datatype.es.json
@@ -0,0 +1,10 @@
+{
+ "name": "color",
+ "brief": "Datatype for storing color values",
+ "description": "Datatype for storing color values. Colors may be assigned with get() and color() or they may be specified directly using hexadecimal notation such as #FFCC00 or 0xFFFFCC00. \n
\nUsing print() or println() on a color will produce strange results (usually negative numbers) because of the way colors are stored in memory. A better technique is to use the hex() function to format the color data, or use the red(), green(), and blue() functions to get individual values and print those. The hue(), saturation(), and brightness() functions work in a similar fashion. To extract red, green, and blue values more quickly (for instance when analyzing an image or a frame of video), use bit shifting.\n
\nValues can also be created using web color notation. For example: color c = #006699\n
\nWeb color notation only works for opaque colors. To define a color with an alpha value, you can either use color() or hexadecimal notation. For hex notation, prefix the values with 0x, for instance color c = 0xCC006699. In that example, CC (the hex value of 204) is the alpha value, and the remainder is identical to a web color. Note that in hexadecimal notation, the alpha value appears in the first position. (The alpha value appears last when used within color(), fill(), and stroke().) The following is an equivalent way of writing the preceding example, but using color() and specifying the alpha value as its second parameter: color c = color(#006699, 191)\n
\nFrom a technical standpoint, colors are 32 bits of information ordered as AAAAAAAARRRRRRRRGGGGGGGGBBBBBBBB where the A's contain the alpha value, the R's are the red value, G's are green, and B's are blue. Each component is 8 bits (a number between 0 and 255). These values can be manipulated with bit shifting.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive"
+}
diff --git a/content/references/translations/es/processing/comma.es.json b/content/references/translations/es/processing/comma.es.json
new file mode 100644
index 000000000..b39839591
--- /dev/null
+++ b/content/references/translations/es/processing/comma.es.json
@@ -0,0 +1,18 @@
+{
+ "name": ", (comma)",
+ "brief": "Separates parameters in function calls and elements during assignment",
+ "description": "Separates parameters in function calls and elements during assignment.\n",
+ "related": [],
+ "syntax": ["value1, ..., valueN"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "value1, ..., valueN",
+ "description": "any int, float, byte, boolean, color, char, String",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/comment.es.json b/content/references/translations/es/processing/comment.es.json
new file mode 100644
index 000000000..658f9969a
--- /dev/null
+++ b/content/references/translations/es/processing/comment.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "// (comment)",
+ "brief": "Explanatory notes embedded within the code",
+ "description": "Explanatory notes embedded within the code. Comments are used to remind yourself and to inform others about the details of the code. Single-line comments are signified with the two forward slash characters. Comments are ignored by the compiler.\n",
+ "related": ["multilinecomment", "doccomment"],
+ "syntax": ["// comment"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "comment",
+ "description": "any sequence of characters",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/concat_.es.json b/content/references/translations/es/processing/concat_.es.json
new file mode 100644
index 000000000..f306bea3d
--- /dev/null
+++ b/content/references/translations/es/processing/concat_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Concatenates two arrays",
+ "related": ["splice_", "arrayCopy_"],
+ "name": "concat()",
+ "description": "Concatenates two arrays. For example, concatenating the array { 1, 2, 3 }\n and the array { 4, 5, 6 } yields { 1, 2, 3, 4, 5, 6 }. Both parameters must\n be arrays of the same datatype. \n \n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) concat(array1, array2).",
+ "syntax": ["concat(a, b)"],
+ "returns": "boolean[], byte[], char[], int[], float[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "first array to concatenate",
+ "type": [
+ "boolean[]",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "float[]",
+ "String[]",
+ "Object"
+ ]
+ },
+ {
+ "name": "b",
+ "description": "second array to concatenate",
+ "type": [
+ "boolean[]",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "float[]",
+ "String[]",
+ "Object"
+ ]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/conditional.es.json b/content/references/translations/es/processing/conditional.es.json
new file mode 100644
index 000000000..0038edefc
--- /dev/null
+++ b/content/references/translations/es/processing/conditional.es.json
@@ -0,0 +1,24 @@
+{
+ "name": "?: (conditional)",
+ "brief": "A shortcut for writing an if and else structure",
+ "description": "A shortcut for writing an if and else structure. The conditional operator, ?: is sometimes called the ternary operator, an operator that takes three arguments. If the test evaluates to true, expression1 is evaluated and returned. If the condition evaluates to false, expression2 is evaluated and returned.\n
\nThe following conditional expression: \n
result = test ? expression1 : expression2
\nis equivalent to this structure: \n
if (test) { \n result = expression1 \n} else { \n result = expression2 \n}
\n",
+ "related": ["if", "else"],
+ "syntax": ["test ? expression1 : expression2"],
+ "returns": "Variable, dependent on the datatype of the expressions",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals",
+ "parameters": [
+ {
+ "name": "test",
+ "description": "any valid expression which evaluates to true or false",
+ "type": []
+ },
+ {
+ "name": "expression1",
+ "description": "any valid expression",
+ "type": []
+ },
+ { "name": "expression2", "description": "any valid expression", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/constrain_.es.json b/content/references/translations/es/processing/constrain_.es.json
new file mode 100644
index 000000000..3fbe248b8
--- /dev/null
+++ b/content/references/translations/es/processing/constrain_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Constrains a value to not exceed a maximum and minimum value",
+ "related": ["max_", "min_"],
+ "name": "constrain()",
+ "description": "Constrains a value to not exceed a maximum and minimum value.",
+ "syntax": ["constrain(amt, low, high)"],
+ "returns": "float or int",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "amt",
+ "description": "the value to constrain",
+ "type": ["float", "int"]
+ },
+ { "name": "low", "description": "minimum limit", "type": ["float", "int"] },
+ { "name": "high", "description": "maximum limit", "type": ["float", "int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/continue.es.json b/content/references/translations/es/processing/continue.es.json
new file mode 100644
index 000000000..e7d245df7
--- /dev/null
+++ b/content/references/translations/es/processing/continue.es.json
@@ -0,0 +1,11 @@
+{
+ "name": "continue",
+ "brief": "When run inside of a for or while, it skips the remainder of the block and starts the next iteration",
+ "description": "When run inside of a for or while, it skips the remainder of the block and starts the next iteration.\n",
+ "related": ["for", "while"],
+ "syntax": ["continue"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals"
+}
diff --git a/content/references/translations/es/processing/copy_.es.json b/content/references/translations/es/processing/copy_.es.json
new file mode 100644
index 000000000..0aa0cb231
--- /dev/null
+++ b/content/references/translations/es/processing/copy_.es.json
@@ -0,0 +1,50 @@
+{
+ "brief": "Copies the entire image",
+ "related": ["alpha_", "blend_"],
+ "name": "copy()",
+ "description": "Copies a region of pixels from one image into another. If the source and\n destination regions aren't the same size, it will automatically resize\n source pixels to fit the specified target region. No alpha information\n is used in the process, however if the source image has an alpha channel\n set, it will be copied as well.\n
\n As of release 0149, this function ignores imageMode().",
+ "syntax": [
+ "copy()",
+ "copy(sx, sy, sw, sh, dx, dy, dw, dh)",
+ "copy(src, sx, sy, sw, sh, dx, dy, dw, dh)"
+ ],
+ "returns": "void or PImage",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": [
+ {
+ "name": "sx",
+ "description": "X coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "sy",
+ "description": "Y coordinate of the source's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "sw", "description": "source image width", "type": ["int"] },
+ { "name": "sh", "description": "source image height", "type": ["int"] },
+ {
+ "name": "dx",
+ "description": "X coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ {
+ "name": "dy",
+ "description": "Y coordinate of the destination's upper left corner",
+ "type": ["int"]
+ },
+ { "name": "dw", "description": "destination image width", "type": ["int"] },
+ {
+ "name": "dh",
+ "description": "destination image height",
+ "type": ["int"]
+ },
+ {
+ "name": "src",
+ "description": "an image variable referring to the source image.",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/cos_.es.json b/content/references/translations/es/processing/cos_.es.json
new file mode 100644
index 000000000..9b8aeedc5
--- /dev/null
+++ b/content/references/translations/es/processing/cos_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the cosine of an angle",
+ "related": ["sin_", "tan_", "radians_"],
+ "name": "cos()",
+ "description": "Calculates the cosine of an angle. This function expects the values of\n the angle parameter to be provided in radians (values from 0 to\n PI*2). Values are returned in the range -1 to 1.",
+ "syntax": ["cos(angle)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ { "name": "angle", "description": "an angle in radians", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/createFont_.es.json b/content/references/translations/es/processing/createFont_.es.json
new file mode 100644
index 000000000..0a15ae523
--- /dev/null
+++ b/content/references/translations/es/processing/createFont_.es.json
@@ -0,0 +1,37 @@
+{
+ "brief": "Dynamically converts a font to the format used by Processing",
+ "related": ["PFont", "textFont_", "text_", "loadFont_"],
+ "name": "createFont()",
+ "description": "Dynamically converts a font to the format used by Processing from a .ttf or\n .otf file inside the sketch's \"data\" folder or a font that's installed\n elsewhere on the computer. If you want to use a font installed on your\n computer, use the PFont.list() method to first determine the names\n for the fonts recognized by the computer and are compatible with this\n function. Not all fonts can be used and some might work with one operating\n system and not others. When sharing a sketch with other people or posting\n it on the web, you may need to include a .ttf or .otf version of your font\n in the data directory of the sketch because other people might not have the\n font installed on their computer. Only fonts that can legally be\n distributed should be included with a sketch. \n \n The size parameter states the font size you want to generate. The\n smooth parameter specifies if the font should be anti-aliased or not.\n The charset parameter is an array of chars that specifies the\n characters to generate. \n \n This function allows Processing to work with the font natively in the\n default renderer, so the letters are defined by vector geometry and are\n rendered quickly. In the P2D and P3D renderers, the function\n sets the project to render the font as a series of small textures. For\n instance, when using the default renderer, the actual native version of the\n font will be employed by the sketch, improving drawing quality and\n performance. With the P2D and P3D renderers, the bitmapped\n version will be used to improve speed and appearance, but the results are\n poor when exporting if the sketch does not include the .otf or .ttf file,\n and the requested font is not available on the machine running the sketch.",
+ "syntax": [
+ "createFont(name, size)",
+ "createFont(name, size, smooth)",
+ "createFont(name, size, smooth, charset)"
+ ],
+ "returns": "PFont",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "name of the font to load",
+ "type": ["String"]
+ },
+ {
+ "name": "size",
+ "description": "point size of the font",
+ "type": ["float"]
+ },
+ {
+ "name": "smooth",
+ "description": "true for an anti-aliased font, false for aliased",
+ "type": ["boolean"]
+ },
+ {
+ "name": "charset",
+ "description": "array containing characters to be generated",
+ "type": ["char[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createGraphics_.es.json b/content/references/translations/es/processing/createGraphics_.es.json
new file mode 100644
index 000000000..58650d300
--- /dev/null
+++ b/content/references/translations/es/processing/createGraphics_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Creates and returns a new PGraphics object of the types\n P2D or P3D",
+ "related": [],
+ "name": "createGraphics()",
+ "description": "Creates and returns a new PGraphics object. Use this class if you\n need to draw into an off-screen graphics buffer. The first two parameters\n define the width and height in pixels. The third, optional parameter\n specifies the renderer. It can be defined as P2D, P3D, PDF, or SVG. If the\n third parameter isn't used, the default renderer is set. The PDF and SVG\n renderers require the filename parameter. \n \n It's important to consider the renderer used with createGraphics()\n in relation to the main renderer specified in size(). For example,\n it's only possible to use P2D or P3D with createGraphics() when one\n of them is defined in size(). Unlike Processing 1.0, P2D and P3D use\n OpenGL for drawing, and when using an OpenGL renderer it's necessary for\n the main drawing surface to be OpenGL-based. If P2D or P3D are used as the\n renderer in size(), then any of the options can be used with\n createGraphics(). If the default renderer is used in size(),\n then only the default, PDF, or SVG can be used with\n createGraphics(). \n \n It's important to run all drawing functions between the beginDraw()\n and endDraw(). As the exception to this rule, smooth() should\n be run on the PGraphics object before beginDraw(). See the reference\n for smooth() for more detail. \n \n The createGraphics() function should almost never be used inside\n draw() because of the memory and time needed to set up the graphics.\n One-time or occasional use during draw() might be acceptable, but\n code that calls createGraphics() at 60 frames per second might run\n out of memory or freeze your sketch. \n \n Unlike the main drawing surface which is completely opaque, surfaces\n created with createGraphics() can have transparency. This makes it\n possible to draw into a graphics and maintain the alpha channel. By using\n save() to write a PNG or TGA file, the transparency of the graphics\n object will be honored.\n\n ",
+ "syntax": [
+ "createGraphics(w, h)",
+ "createGraphics(w, h, renderer)",
+ "createGraphics(w, h, renderer, path)"
+ ],
+ "returns": "PGraphics",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "",
+ "parameters": [
+ { "name": "w", "description": "width in pixels", "type": ["int"] },
+ { "name": "h", "description": "height in pixels", "type": ["int"] },
+ {
+ "name": "renderer",
+ "description": "Either P2D, P3D, or PDF",
+ "type": ["String"]
+ },
+ {
+ "name": "path",
+ "description": "the name of the file (can be an absolute or relative path)",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createImage_.es.json b/content/references/translations/es/processing/createImage_.es.json
new file mode 100644
index 000000000..b4e76cf37
--- /dev/null
+++ b/content/references/translations/es/processing/createImage_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Creates a new PImage (the datatype for storing images)",
+ "related": ["PImage", "PGraphics"],
+ "name": "createImage()",
+ "description": "Creates a new PImage (the datatype for storing images). This provides a\n fresh buffer of pixels to play with. Set the size of the buffer with the\n width and height parameters. The format parameter\n defines how the pixels are stored. See the PImage reference for more information.\n
\n Be sure to include all three parameters, specifying only the width and\n height (but no format) will produce a strange error.\n
\n Advanced users please note that createImage() should be used instead of\n the syntax new PImage().\n\n\n ",
+ "syntax": ["createImage(w, h, format)"],
+ "returns": "PImage",
+ "type": "function",
+ "category": "image",
+ "subcategory": "",
+ "parameters": [
+ { "name": "w", "description": "width in pixels", "type": ["int"] },
+ { "name": "h", "description": "height in pixels", "type": ["int"] },
+ {
+ "name": "format",
+ "description": "Either RGB, ARGB, ALPHA (grayscale alpha channel)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createInput_.es.json b/content/references/translations/es/processing/createInput_.es.json
new file mode 100644
index 000000000..eabccdf36
--- /dev/null
+++ b/content/references/translations/es/processing/createInput_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "This is a function for advanced programmers to open a Java InputStream",
+ "related": ["createOutput_", "selectOutput_", "selectInput_"],
+ "name": "createInput()",
+ "description": "This is a function for advanced programmers to open a Java InputStream.\n It's useful if you want to use the facilities provided by PApplet to\n easily open files from the data folder or from a URL, but want an\n InputStream object so that you can use other parts of Java to take more\n control of how the stream is read. \n \n The filename passed in can be: \n - A URL, for instance openStream(\"http://processing.org/\") \n - A file in the sketch's data folder \n - The full path to a file to be opened locally (when running as an\n application) \n \n If the requested item doesn't exist, null is returned. If not online,\n this will also check to see if the user is asking for a file whose name\n isn't properly capitalized. If capitalization is different, an error\n will be printed to the console. This helps prevent issues that appear\n when a sketch is exported to the web, where case sensitivity matters, as\n opposed to running from inside the Processing Development Environment on\n Windows or Mac OS, where case sensitivity is preserved but ignored. \n \n If the file ends with .gz, the stream will automatically be gzip\n decompressed. If you don't want the automatic decompression, use the\n related function createInputRaw().\n \n In earlier releases, this function was called openStream(). \n \n\n\n ",
+ "syntax": ["createInput(filename)"],
+ "returns": "InputStream",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "the name of the file to use as input",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createOutput_.es.json b/content/references/translations/es/processing/createOutput_.es.json
new file mode 100644
index 000000000..ff896c47f
--- /dev/null
+++ b/content/references/translations/es/processing/createOutput_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Similar to createInput(), this creates a Java\n OutputStream for a given filename or path",
+ "related": ["createInput_", "selectOutput_"],
+ "name": "createOutput()",
+ "description": "Similar to createInput(), this creates a Java OutputStream\n for a given filename or path. The file will be created in the sketch\n folder, or in the same folder as an exported application. \n \n If the path does not exist, intermediate folders will be created. If an\n exception occurs, it will be printed to the console, and null will\n be returned. \n \n This function is a convenience over the Java approach that requires you to\n 1) create a FileOutputStream object, 2) determine the exact file location,\n and 3) handle exceptions. Exceptions are handled internally by the\n function, which is more appropriate for \"sketch\" projects. \n \n If the output filename ends with .gz, the output will be\n automatically GZIP compressed as it is written.",
+ "syntax": ["createOutput(filename)"],
+ "returns": "OutputStream",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the file to open",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createReader_.es.json b/content/references/translations/es/processing/createReader_.es.json
new file mode 100644
index 000000000..8527fae4f
--- /dev/null
+++ b/content/references/translations/es/processing/createReader_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Creates a BufferedReader object that can be used to read\n files line-by-line as individual String objects",
+ "related": ["createWriter_"],
+ "name": "createReader()",
+ "description": "Creates a BufferedReader object that can be used to read files\n line-by-line as individual String objects. This is the complement to\n the createWriter() function. For more information about the\n BufferedReader class and its methods like readLine() and\n close used in the above example, please consult a Java\n reference. \n \n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files are\n moved to other platforms.",
+ "syntax": ["createReader(filename)"],
+ "returns": "BufferedReader",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the file to be opened",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createShape_.es.json b/content/references/translations/es/processing/createShape_.es.json
new file mode 100644
index 000000000..75b5ceb54
--- /dev/null
+++ b/content/references/translations/es/processing/createShape_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "The createShape() function is used to define a new shape",
+ "related": ["PShape", "endShape_", "loadShape_"],
+ "name": "createShape()",
+ "description": "The createShape() function is used to define a new shape.\n Once created, this shape can be drawn with the shape()\n function. The basic way to use the function defines new primitive\n shapes. One of the following parameters are used as the first\n parameter: ELLIPSE, RECT, ARC, TRIANGLE,\n SPHERE, BOX, QUAD, or LINE. The\n parameters for each of these different shapes are the same as their\n corresponding functions: ellipse(), rect(), arc(),\n triangle(), sphere(), box(), quad(), and\n line(). The first example above clarifies how this works. \n \n Custom, unique shapes can be made by using createShape() without\n a parameter. After the shape is started, the drawing attributes and\n geometry can be set directly to the shape within the beginShape()\n and endShape() methods. See the second example above for specifics,\n and the reference for beginShape() for all of its options. \n \n The createShape() function can also be used to make a complex\n shape made of other shapes. This is called a \"group\" and it's created by\n using the parameter GROUP as the first parameter. See the fourth\n example above to see how it works. \n \n After using createShape(), stroke and fill color can be set by\n calling methods like setFill() and setStroke(), as seen\n in the examples above. The complete list of methods and fields for the\n PShape class are in the Processing Javadoc.",
+ "syntax": ["createShape()", "createShape(type)", "createShape(kind, p)"],
+ "returns": "PShape",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "kind",
+ "description": "either POINT, LINE, TRIANGLE, QUAD, RECT, ELLIPSE, ARC, BOX, SPHERE",
+ "type": ["int"]
+ },
+ {
+ "name": "p",
+ "description": "parameters that match the kind of shape",
+ "type": ["float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/createWriter_.es.json b/content/references/translations/es/processing/createWriter_.es.json
new file mode 100644
index 000000000..e754e4381
--- /dev/null
+++ b/content/references/translations/es/processing/createWriter_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Creates a new file in the sketch folder, and a PrintWriter object\n to write to it",
+ "related": ["createReader_"],
+ "name": "createWriter()",
+ "description": "Creates a new file in the sketch folder, and a PrintWriter object\n to write to it. For the file to be made correctly, it should be flushed\n and must be closed with its flush() and close() methods\n (see above example).\n
\n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files\n are moved to other platforms.",
+ "syntax": ["createWriter(filename)"],
+ "returns": "PrintWriter",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the file to be created",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/curlybraces.es.json b/content/references/translations/es/processing/curlybraces.es.json
new file mode 100644
index 000000000..c558b514d
--- /dev/null
+++ b/content/references/translations/es/processing/curlybraces.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "{} (curly braces)",
+ "brief": "Define the beginning and end of functions blocks and statement blocks such as the for and if structures",
+ "description": "Define the beginning and end of functions blocks and statement blocks such as the for and if structures. Curly braces are also used for defining initial values in array declarations.\n",
+ "related": ["parentheses"],
+ "syntax": ["{ statements }", "{ ele0, ..., eleN }"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "statements",
+ "description": "any sequence of valid statements",
+ "type": []
+ },
+ {
+ "name": "ele0, ..., eleN",
+ "description": "list of elements separated by commas",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/cursor_.es.json b/content/references/translations/es/processing/cursor_.es.json
new file mode 100644
index 000000000..1c255dcf4
--- /dev/null
+++ b/content/references/translations/es/processing/cursor_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Sets the cursor to a predefined symbol, an image, or makes it\n visible if already hidden",
+ "related": ["noCursor_"],
+ "name": "cursor()",
+ "description": "Sets the cursor to a predefined symbol or an image, or makes it visible if\n already hidden. If you are trying to set an image as the cursor, the\n recommended size is 16x16 or 32x32 pixels. The values for parameters\n x and y must be less than the dimensions of the image. \n \n Setting or hiding the cursor does not generally work with \"Present\" mode\n (when running full-screen). \n \n With the P2D and P3D renderers, a generic set of cursors are used because\n the OpenGL renderer doesn't have access to the default cursor images for\n each platform\n (Issue\n 3791).",
+ "syntax": ["cursor(kind)", "cursor(img)", "cursor(img, x, y)", "cursor()"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "kind",
+ "description": "either ARROW, CROSS, HAND, MOVE, TEXT, or WAIT",
+ "type": ["int"]
+ },
+ {
+ "name": "img",
+ "description": "any variable of type PImage",
+ "type": ["PImage"]
+ },
+ {
+ "name": "x",
+ "description": "the horizontal active spot of the cursor",
+ "type": ["int"]
+ },
+ {
+ "name": "y",
+ "description": "the vertical active spot of the cursor",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/curveDetail_.es.json b/content/references/translations/es/processing/curveDetail_.es.json
new file mode 100644
index 000000000..d8210846f
--- /dev/null
+++ b/content/references/translations/es/processing/curveDetail_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the resolution at which curves display",
+ "related": ["curve_", "curveVertex_", "curveTightness_"],
+ "name": "curveDetail()",
+ "description": "Sets the resolution at which curves display. The default value is 20.\n This function is only useful when using the P3D renderer as the default\n P2D renderer does not use this information.",
+ "syntax": ["curveDetail(detail)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "detail",
+ "description": "resolution of the curves",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/curvePoint_.es.json b/content/references/translations/es/processing/curvePoint_.es.json
new file mode 100644
index 000000000..c6073ba47
--- /dev/null
+++ b/content/references/translations/es/processing/curvePoint_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Evaluates the curve at point t for points a, b, c, d",
+ "related": ["curve_", "curveVertex_", "bezierPoint_"],
+ "name": "curvePoint()",
+ "description": "Evaluates the curve at point t for points a, b,\n c, d. The parameter t may range from 0 (the start of the\n curve) and 1 (the end of the curve). a and d are the control\n points, and b and c are points on the curve. As seen in the\n example above, this can be used once with the x coordinates and a\n second time with the y coordinates to get the location of a curve at\n t.",
+ "syntax": ["curvePoint(a, b, c, d, t)"],
+ "returns": "float",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "coordinate of first control point",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "coordinate of first point on the curve",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "coordinate of second point on the curve",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "coordinate of second control point",
+ "type": ["float"]
+ },
+ { "name": "t", "description": "value between 0 and 1", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/curveTangent_.es.json b/content/references/translations/es/processing/curveTangent_.es.json
new file mode 100644
index 000000000..87b312402
--- /dev/null
+++ b/content/references/translations/es/processing/curveTangent_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Calculates the tangent of a point on a curve",
+ "related": ["curve_", "curveVertex_", "curvePoint_", "bezierTangent_"],
+ "name": "curveTangent()",
+ "description": "Calculates the tangent of a point on a curve. There's a good definition\n of tangent on Wikipedia.\n\n\n ",
+ "syntax": ["curveTangent(a, b, c, d, t)"],
+ "returns": "float",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "coordinate of first point on the curve",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "coordinate of first control point",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "coordinate of second control point",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "coordinate of second point on the curve",
+ "type": ["float"]
+ },
+ { "name": "t", "description": "value between 0 and 1", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/curveTightness_.es.json b/content/references/translations/es/processing/curveTightness_.es.json
new file mode 100644
index 000000000..858f92936
--- /dev/null
+++ b/content/references/translations/es/processing/curveTightness_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Modifies the quality of forms created with curve() and\n curveVertex()",
+ "related": ["curve_", "curveVertex_"],
+ "name": "curveTightness()",
+ "description": "Modifies the quality of forms created with curve() and\n curveVertex(). The parameter tightness determines how the curve\n fits to the vertex points. The value 0.0 is the default value for\n tightness (this value defines the curves to be Catmull-Rom splines)\n and the value 1.0 connects all the points with straight lines. Values within\n the range -5.0 and 5.0 will deform the curves but will leave them\n recognizable and as values increase in magnitude, they will continue to\n deform.",
+ "syntax": ["curveTightness(tightness)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "curves",
+ "parameters": [
+ {
+ "name": "tightness",
+ "description": "amount of deformation from the original vertices",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/curveVertex_.es.json b/content/references/translations/es/processing/curveVertex_.es.json
new file mode 100644
index 000000000..4b5a7fb1a
--- /dev/null
+++ b/content/references/translations/es/processing/curveVertex_.es.json
@@ -0,0 +1,35 @@
+{
+ "brief": "Specifies vertex coordinates for curves",
+ "related": [
+ "curve_",
+ "beginShape_",
+ "endShape_",
+ "vertex_",
+ "bezier_",
+ "quadraticVertex_"
+ ],
+ "name": "curveVertex()",
+ "description": "Specifies vertex coordinates for curves. This function may only be used\n between beginShape() and endShape() and only when there is\n no MODE parameter specified to beginShape(). The first and last\n points in a series of curveVertex() lines will be used to guide\n the beginning and end of a the curve. A minimum of four points is\n required to draw a tiny curve between the second and third points.\n Adding a fifth point with curveVertex() will draw the curve\n between the second, third, and fourth points. The curveVertex()\n function is an implementation of Catmull-Rom splines. Using the 3D\n version requires rendering with P3D (see the Environment reference for\n more information).",
+ "syntax": ["curveVertex(x, y)", "curveVertex(x, y, z)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "the x-coordinate of the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "the y-coordinate of the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "the z-coordinate of the vertex",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/de/processing/curve_.de.json b/content/references/translations/es/processing/curve_.es.json
similarity index 66%
rename from content/references/translations/de/processing/curve_.de.json
rename to content/references/translations/es/processing/curve_.es.json
index dab5b428a..a6ee50e4e 100644
--- a/content/references/translations/de/processing/curve_.de.json
+++ b/content/references/translations/es/processing/curve_.es.json
@@ -1,9 +1,8 @@
{
- "examples": "",
- "related": ["curveVertex_.html", "curveTightness_.html", "bezier_.html"],
- "usage": "",
+ "brief": "Draws a curved line on the screen",
+ "related": ["curveVertex_", "curveTightness_", "bezier_"],
"name": "curve()",
- "description": "( begin auto-generated from curve.xml )\n\n Draws a curved line on the screen. The first and second parameters\n specify the beginning control point and the last two parameters specify\n the ending control point. The middle parameters specify the start and\n stop of the curve. Longer curves can be created by putting a series of\n curve() functions together or using curveVertex(). An\n additional function called curveTightness() provides control for\n the visual quality of the curve. The curve() function is an\n implementation of Catmull-Rom splines. Using the 3D version requires\n rendering with P3D (see the Environment reference for more information).\n\n ( end auto-generated )\n\n ",
+ "description": "Draws a curved line on the screen. The first and second parameters\n specify the beginning control point and the last two parameters specify\n the ending control point. The middle parameters specify the start and\n stop of the curve. Longer curves can be created by putting a series of\n curve() functions together or using curveVertex(). An\n additional function called curveTightness() provides control for\n the visual quality of the curve. The curve() function is an\n implementation of Catmull-Rom splines. Using the 3D version requires\n rendering with P3D (see the Environment reference for more information).\n\n\n ",
"syntax": [
"curve(x1, y1, x2, y2, x3, y3, x4, y4)",
"curve(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4)"
diff --git a/content/references/translations/es/processing/day_.es.json b/content/references/translations/es/processing/day_.es.json
new file mode 100644
index 000000000..a3e88528d
--- /dev/null
+++ b/content/references/translations/es/processing/day_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the current day as a value from 1 - 31",
+ "related": ["millis_", "second_", "minute_", "hour_", "month_", "year_"],
+ "name": "day()",
+ "description": "Processing communicates with the clock on your computer. The\n day() function returns the current day as a value from 1 - 31.\n\n\n ",
+ "syntax": ["day()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/decrement.es.json b/content/references/translations/es/processing/decrement.es.json
new file mode 100644
index 000000000..a3e11ca50
--- /dev/null
+++ b/content/references/translations/es/processing/decrement.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "-- (decrement)",
+ "brief": "Substracts the value of an integer variable by 1",
+ "description": "Substracts the value of an integer variable by 1. Equivalent to the operation i = i - 1. If the value of the variable i is five, then the expression i-- decreases the value of i to 4.\n",
+ "related": ["minus", "subtractassign", "increment"],
+ "syntax": ["var--"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [{ "name": "var", "description": "int", "type": [] }]
+}
diff --git a/content/references/translations/es/processing/default.es.json b/content/references/translations/es/processing/default.es.json
new file mode 100644
index 000000000..d4c55fa1f
--- /dev/null
+++ b/content/references/translations/es/processing/default.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "default",
+ "brief": "Keyword for defining the default condition of a switch",
+ "description": "Keyword for defining the default condition of a switch. If none of the case names match the switch parameter, the statement(s) after the default syntax are executed. Switch structures don't require a default.\n",
+ "related": ["switch", "break", "case"],
+ "syntax": ["default: statements"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals",
+ "parameters": [
+ {
+ "name": "statements",
+ "description": "one or more valid statements to be executed",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/degrees_.es.json b/content/references/translations/es/processing/degrees_.es.json
new file mode 100644
index 000000000..eb0e6e4d5
--- /dev/null
+++ b/content/references/translations/es/processing/degrees_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Converts a radian measurement to its corresponding value in degrees",
+ "related": ["radians_"],
+ "name": "degrees()",
+ "description": "Converts a radian measurement to its corresponding value in degrees.\n Radians and degrees are two ways of measuring the same thing. There are\n 360 degrees in a circle and 2*PI radians in a circle. For example,\n 90° = PI/2 = 1.5707964. All trigonometric functions in Processing\n require their parameters to be specified in radians.",
+ "syntax": ["degrees(radians)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ {
+ "name": "radians",
+ "description": "radian value to convert to degrees",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/delay_.es.json b/content/references/translations/es/processing/delay_.es.json
new file mode 100644
index 000000000..e411ee607
--- /dev/null
+++ b/content/references/translations/es/processing/delay_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "The delay() function causes the program to halt for a specified time",
+ "related": ["frameRate", "draw_"],
+ "name": "delay()",
+ "description": "The delay() function causes the program to halt for a specified time.\n Delay times are specified in thousandths of a second. For example,\n running delay(3000) will stop the program for three seconds and\n delay(500) will stop the program for a half-second.\n\n The screen only updates when the end of draw() is reached, so delay()\n cannot be used to slow down drawing. For instance, you cannot use delay()\n to control the timing of an animation.\n\n The delay() function should only be used for pausing scripts (i.e.\n a script that needs to pause a few seconds before attempting a download,\n or a sketch that needs to wait a few milliseconds before reading from\n the serial port).",
+ "syntax": ["delay(napTime)"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "napTime",
+ "description": "milliseconds to pause before running draw() again",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/directionalLight_.es.json b/content/references/translations/es/processing/directionalLight_.es.json
new file mode 100644
index 000000000..8a00a5b4f
--- /dev/null
+++ b/content/references/translations/es/processing/directionalLight_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Adds a directional light",
+ "related": ["lights_", "ambientLight_", "pointLight_", "spotLight_"],
+ "name": "directionalLight()",
+ "description": "Adds a directional light. Directional light comes from one direction and\n is stronger when hitting a surface squarely and weaker if it hits at a a\n gentle angle. After hitting a surface, a directional lights scatters in\n all directions. Lights need to be included in the draw() to\n remain persistent in a looping program. Placing them in the\n setup() of a looping program will cause them to only have an\n effect the first time through the loop. The affect of the v1,\n v2, and v3 parameters is determined by the current color\n mode. The nx, ny, and nz parameters specify the\n direction the light is facing. For example, setting ny to -1 will\n cause the geometry to be lit from below (the light is facing directly upward).",
+ "syntax": ["directionalLight(v1, v2, v3, nx, ny, nz)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "nx",
+ "description": "direction along the x-axis",
+ "type": ["float"]
+ },
+ {
+ "name": "ny",
+ "description": "direction along the y-axis",
+ "type": ["float"]
+ },
+ {
+ "name": "nz",
+ "description": "direction along the z-axis",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/displayDensity_.es.json b/content/references/translations/es/processing/displayDensity_.es.json
new file mode 100644
index 000000000..e6a83ed5b
--- /dev/null
+++ b/content/references/translations/es/processing/displayDensity_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Returns \"2\" if the screen is high-density and \"1\" if not",
+ "related": ["pixelDensity_", "size_"],
+ "name": "displayDensity()",
+ "description": "This function returns the number \"2\" if the screen is a high-density\n screen (called a Retina display on OS X or high-dpi on Windows and Linux)\n and a \"1\" if not. This information is useful for a program to adapt to\n run at double the pixel density on a screen that supports it.",
+ "syntax": ["displayDensity()", "displayDensity(display)"],
+ "returns": "int",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "display",
+ "description": "the display number to check\n (1-indexed to match the Preferences dialog box)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/displayHeight.es.json b/content/references/translations/es/processing/displayHeight.es.json
new file mode 100644
index 000000000..379b06a77
--- /dev/null
+++ b/content/references/translations/es/processing/displayHeight.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "Variable that stores the height of the computer screen",
+ "related": ["displayWidth", "size_"],
+ "name": "displayHeight",
+ "description": "System variable that stores the height of the computer screen. For\n example, if the current screen resolution is 1920x1080,\n displayWidth is 1920 and displayHeight is 1080.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/displayWidth.es.json b/content/references/translations/es/processing/displayWidth.es.json
new file mode 100644
index 000000000..fa8691153
--- /dev/null
+++ b/content/references/translations/es/processing/displayWidth.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "Variable that stores the width of the computer screen",
+ "related": ["displayHeight", "size_"],
+ "name": "displayWidth",
+ "description": "System variable that stores the width of the computer screen. For\n example, if the current screen resolution is 1920x1080,\n displayWidth is 1920 and displayHeight is 1080.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/dist_.es.json b/content/references/translations/es/processing/dist_.es.json
new file mode 100644
index 000000000..ab87dd511
--- /dev/null
+++ b/content/references/translations/es/processing/dist_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Calculates the distance between two points",
+ "related": [],
+ "name": "dist()",
+ "description": "Calculates the distance between two points.",
+ "syntax": ["dist(x1, y1, x2, y2)", "dist(x1, y1, z1, x2, y2, z2)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "x1",
+ "description": "x-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "y1",
+ "description": "y-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "z1",
+ "description": "z-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "x2",
+ "description": "x-coordinate of the second point",
+ "type": ["float"]
+ },
+ {
+ "name": "y2",
+ "description": "y-coordinate of the second point",
+ "type": ["float"]
+ },
+ {
+ "name": "z2",
+ "description": "z-coordinate of the second point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/divide.es.json b/content/references/translations/es/processing/divide.es.json
new file mode 100644
index 000000000..0aa3e483a
--- /dev/null
+++ b/content/references/translations/es/processing/divide.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "/ (divide)",
+ "brief": "Divides the value of the first parameter by the value of the second parameter",
+ "description": "Divides the value of the first parameter by the value of the second parameter. The answer to the equation 20 / 4 is 5. The number 20 is the sum of four occurences of the number 5. As an equation we see that 5 + 5 + 5 + 5 = 20.\n",
+ "related": ["multiply", "modulo"],
+ "syntax": ["value1 / value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ { "name": "value1", "description": "int or float", "type": [] },
+ {
+ "name": "value2",
+ "description": "int or float, but not zero (it is not possible divide by zero)",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/divideassign.es.json b/content/references/translations/es/processing/divideassign.es.json
new file mode 100644
index 000000000..19292c38f
--- /dev/null
+++ b/content/references/translations/es/processing/divideassign.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "/= (divide assign)",
+ "brief": "Combines division with assignment",
+ "description": "Combines division with assignment. The expression a /= b is equivalent to a = a / b. \n",
+ "related": ["divide", "assign"],
+ "syntax": ["value1 /= value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ { "name": "value1", "description": "int or float", "type": [] },
+ {
+ "name": "value2",
+ "description": "any numerical value the same datatype as value1",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/doccomment.es.json b/content/references/translations/es/processing/doccomment.es.json
new file mode 100644
index 000000000..94cef4501
--- /dev/null
+++ b/content/references/translations/es/processing/doccomment.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "/** */ (doc comment)",
+ "brief": "Explanatory notes embedded within the code",
+ "description": "Explanatory notes embedded within the code. Doc comments (documentation comments) are used to describe and document your sketch, classes, and methods. Comments are ignored by the compiler.\n
\nDoc comments may be converted into browseable documentation using external editors and tools such as the command line javadoc, doc generators such as Doxygen, or IDEs such as Eclipse, Netbeans, or IntelliJ IDEA.\n",
+ "related": ["comment", "multilinecomment"],
+ "syntax": ["/**", " comment", "*/"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "comment",
+ "description": "any sequence of characters",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/dot.es.json b/content/references/translations/es/processing/dot.es.json
new file mode 100644
index 000000000..f5d73f82d
--- /dev/null
+++ b/content/references/translations/es/processing/dot.es.json
@@ -0,0 +1,28 @@
+{
+ "name": ". (punto)",
+ "brief": "Provee acceso a los datos y métodos de un objeto",
+ "description": "Provee acceso a los datos y métodos de un objeto. Un objeto es una instancia de una clase y puede contener tanto métodos (funciones del objeto) como datos (variables y constantes del objeto), especificados en la definición de la clase. El operador punto dirige el programa a la información encapsulada dentro del objeto.\n",
+ "related": ["Object"],
+ "syntax": ["object.method()", "object.data"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "object",
+ "description": "el objeto a ser accesado",
+ "type": []
+ },
+ {
+ "name": "method()",
+ "description": "un método encapsulado en el objeto",
+ "type": []
+ },
+ {
+ "name": "data",
+ "description": "una variable o constante encapsulada en el objeto",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/double.es.json b/content/references/translations/es/processing/double.es.json
new file mode 100644
index 000000000..6063260f2
--- /dev/null
+++ b/content/references/translations/es/processing/double.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "double",
+ "brief": "Datatype for floating-point numbers larger than those that can be stored in a float",
+ "description": "Datatype for floating-point numbers larger than those that can be stored in a float. A float is a 32-bit values that can be as large as 3.40282347E+38 and as low as -3.40282347E+38. A double can be used similarly to a float, but can have a greater magnitude because it's a 64-bit number. Processing functions don't use this datatype, so while they work in the language, you'll usually have to convert to a float using the (float) syntax before passing into a function.",
+ "related": ["float"],
+ "syntax": ["double var", "double var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the float",
+ "type": []
+ },
+ { "name": "value", "description": "any floating-point value", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/draw_.es.json b/content/references/translations/es/processing/draw_.es.json
new file mode 100644
index 000000000..6cabebbb3
--- /dev/null
+++ b/content/references/translations/es/processing/draw_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Called directly after setup() and continuously executes the lines\n of code contained inside its block until the program is stopped or\n noLoop() is called",
+ "related": [
+ "setup_",
+ "loop_",
+ "noLoop_",
+ "redraw_",
+ "frameRate_",
+ "background_"
+ ],
+ "name": "draw()",
+ "description": "Called directly after setup(), the draw() function continuously\n executes the lines of code contained inside its block until the program is\n stopped or noLoop() is called. draw() is called automatically\n and should never be called explicitly. All Processing programs update the\n screen at the end of draw(), never earlier. \n \n To stop the code inside of draw() from running continuously, use\n noLoop(), redraw() and loop(). If noLoop() is\n used to stop the code in draw() from running, then redraw()\n will cause the code inside draw() to run a single time, and\n loop() will cause the code inside draw() to resume running\n continuously. \n \n The number of times draw() executes in each second may be controlled\n with the frameRate() function. \n \n It is common to call background() near the beginning of the\n draw() loop to clear the contents of the window, as shown in the first\n example above. Since pixels drawn to the window are cumulative, omitting\n background() may result in unintended results. \n \n There can only be one draw() function for each sketch, and draw()\n must exist if you want the code to run continuously, or to process events such\n as mousePressed(). Sometimes, you might have an empty call to\n draw() in your program, as shown in the second example above.",
+ "syntax": ["draw()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/ellipseMode_.es.json b/content/references/translations/es/processing/ellipseMode_.es.json
new file mode 100644
index 000000000..855e0edae
--- /dev/null
+++ b/content/references/translations/es/processing/ellipseMode_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "The origin of the ellipse is modified by the ellipseMode()\n function",
+ "related": ["ellipse_", "arc_"],
+ "name": "ellipseMode()",
+ "description": "Modifies the location from which ellipses are drawn by changing the way in\n which parameters given to ellipse() are interpreted. \n \n The default mode is ellipseMode(CENTER), which interprets the first\n two parameters of ellipse() as the shape's center point, while the\n third and fourth parameters are its width and height. \n \n ellipseMode(RADIUS) also uses the first two parameters of\n ellipse() as the shape's center point, but uses the third and fourth\n parameters to specify half of the shape's width and height. \n \n ellipseMode(CORNER) interprets the first two parameters of\n ellipse() as the upper-left corner of the shape, while the third and\n fourth parameters are its width and height. \n \n ellipseMode(CORNERS) interprets the first two parameters of\n ellipse() as the location of one corner of the ellipse's bounding box,\n and the third and fourth parameters as the location of the opposite\n corner. \n \n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.",
+ "syntax": ["ellipseMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "either CENTER, RADIUS, CORNER, or CORNERS",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/ellipse_.es.json b/content/references/translations/es/processing/ellipse_.es.json
new file mode 100644
index 000000000..b029bdade
--- /dev/null
+++ b/content/references/translations/es/processing/ellipse_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Draws an ellipse (oval) in the display window",
+ "related": ["ellipseMode_", "arc_"],
+ "name": "ellipse()",
+ "description": "Draws an ellipse (oval) to the screen. An ellipse with equal width and height\n is a circle. By default, the first two parameters set the location, and the\n third and fourth parameters set the shape's width and height. The origin may\n be changed with the ellipseMode() function.",
+ "syntax": ["ellipse(a, b, c, d)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "x-coordinate of the ellipse",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "y-coordinate of the ellipse",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "width of the ellipse by default",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "height of the ellipse by default",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/else.es.json b/content/references/translations/es/processing/else.es.json
new file mode 100644
index 000000000..8d8f68bb8
--- /dev/null
+++ b/content/references/translations/es/processing/else.es.json
@@ -0,0 +1,37 @@
+{
+ "name": "else",
+ "brief": "Extends the if structure allowing the program to choose between two or more blocks of code",
+ "description": "Extends the if structure allowing the program to choose between two or more blocks of code. It specifies a block of code to execute when the expression in if is false.\n",
+ "related": ["if"],
+ "syntax": [
+ "if (expression) { ",
+ " statements ",
+ "} else { ",
+ " statements ",
+ "} ",
+ "",
+ "if (expression) { ",
+ " statements ",
+ "} else if (expression) { ",
+ " statements ",
+ "} else { ",
+ " statements ",
+ "}"
+ ],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals",
+ "parameters": [
+ {
+ "name": "expression",
+ "description": "any valid expression that evaluates to true or false",
+ "type": []
+ },
+ {
+ "name": "statements",
+ "description": "one or more statements to be executed",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/emissive_.es.json b/content/references/translations/es/processing/emissive_.es.json
new file mode 100644
index 000000000..6de717be9
--- /dev/null
+++ b/content/references/translations/es/processing/emissive_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Sets the emissive color of the material used for drawing shapes drawn to\n the screen",
+ "related": ["ambient_", "specular_", "shininess_"],
+ "name": "emissive()",
+ "description": "Sets the emissive color of the material used for drawing shapes drawn to\n the screen. Used in combination with ambient(),\n specular(), and shininess() in setting the material\n properties of shapes.",
+ "syntax": ["emissive(rgb)", "emissive(gray)", "emissive(v1, v2, v3)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "material properties",
+ "parameters": [
+ { "name": "rgb", "description": "color to set", "type": ["int"] },
+ {
+ "name": "gray",
+ "description": "value between black and white, by default 0 to 255",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/endCamera_.es.json b/content/references/translations/es/processing/endCamera_.es.json
new file mode 100644
index 000000000..1075e2492
--- /dev/null
+++ b/content/references/translations/es/processing/endCamera_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The beginCamera() and endCamera() functions enable\n advanced customization of the camera space",
+ "related": ["beginCamera_", "camera_"],
+ "name": "endCamera()",
+ "description": "The beginCamera() and endCamera() functions enable\n advanced customization of the camera space. Please see the reference for\n beginCamera() for a description of how the functions are used.",
+ "syntax": ["endCamera()"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/endContour_.es.json b/content/references/translations/es/processing/endContour_.es.json
new file mode 100644
index 000000000..8cbdc5c84
--- /dev/null
+++ b/content/references/translations/es/processing/endContour_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Stops recording vertices for the shape",
+ "related": [],
+ "name": "endContour()",
+ "description": "Use the beginContour() and endContour() function to\n create negative shapes within shapes such as the center of the\n letter 'O'. beginContour() begins recording vertices for\n the shape and endContour() stops recording. The vertices\n that define a negative shape must \"wind\" in the opposite direction\n from the exterior shape. First draw vertices for the exterior shape\n in clockwise order, then for internal shapes, draw vertices counterclockwise. \n \n These functions can only be used within a beginShape()/endShape()\n pair and transformations such as translate(), rotate(), and\n scale() do not work within a beginContour()/endContour()\n pair. It is also not possible to use other shapes, such as ellipse()\n or rect() within.",
+ "syntax": ["endContour()"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/endRaw_.es.json b/content/references/translations/es/processing/endRaw_.es.json
new file mode 100644
index 000000000..b3aa1f18f
--- /dev/null
+++ b/content/references/translations/es/processing/endRaw_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Complement to beginRaw(); they must always be used together",
+ "related": ["beginRaw_"],
+ "name": "endRaw()",
+ "description": "Complement to beginRaw(); they must always be used together. See\n the beginRaw() reference for details.",
+ "syntax": ["endRaw()"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/endRecord_.es.json b/content/references/translations/es/processing/endRecord_.es.json
new file mode 100644
index 000000000..432858cf8
--- /dev/null
+++ b/content/references/translations/es/processing/endRecord_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Stops the recording process started by beginRecord() and closes\n the file",
+ "related": ["beginRecord_"],
+ "name": "endRecord()",
+ "description": "Stops the recording process started by beginRecord() and closes\n the file.",
+ "syntax": ["endRecord()"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/endShape_.es.json b/content/references/translations/es/processing/endShape_.es.json
new file mode 100644
index 000000000..0eaa1a3e4
--- /dev/null
+++ b/content/references/translations/es/processing/endShape_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "the companion to beginShape() and may only be called after beginShape()",
+ "related": ["PShape", "beginShape_"],
+ "name": "endShape()",
+ "description": "The endShape() function is the companion to beginShape()\n and may only be called after beginShape(). When endshape()\n is called, all of image data defined since the previous call to\n beginShape() is written into the image buffer. The constant CLOSE\n as the value for the MODE parameter to close the shape (to connect the\n beginning and the end).",
+ "syntax": ["endShape()", "endShape(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "use CLOSE to close the shape",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/equality.es.json b/content/references/translations/es/processing/equality.es.json
new file mode 100644
index 000000000..617d8915a
--- /dev/null
+++ b/content/references/translations/es/processing/equality.es.json
@@ -0,0 +1,29 @@
+{
+ "name": "== (equality)",
+ "brief": "Determines if two values are equivalent",
+ "description": "Determines if two values are equivalent. Please note the equality operator (==) is different from the assignment operator (=) and although they look similar, they have a different use. If you're comparing two variables, the equality operator (==) only works with primitive data types like int, boolean, and char. It doesn't work with composite data types like Array, Table, and PVector. \n \nNote that when comparing String objects, you must use the equals() method instead of ==. See the reference for String or the troubleshooting note for more explanation. \n \n",
+ "related": [
+ "greaterthan",
+ "lessthan",
+ "greaterthanorequalto",
+ "lessthanorequalto",
+ "inequality"
+ ],
+ "syntax": ["value1 == value2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Relational Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, char, byte, boolean",
+ "type": []
+ },
+ {
+ "name": "value2",
+ "description": "int, float, char, byte, boolean",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/exit_.es.json b/content/references/translations/es/processing/exit_.es.json
new file mode 100644
index 000000000..c82959f8e
--- /dev/null
+++ b/content/references/translations/es/processing/exit_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Para/sale del programa",
+ "related": [],
+ "name": "exit()",
+ "description": "Para/sale del programa. Programas sin una función draw()\n salen automáticamente después de que la última línea se ha ejecutado, pero programas con\n draw() corren continuamente hasta que el programa es parado manualmente o un \n exit() es ejecutado. \n \n Mas que terminar inmediatamente, exit() causará la salida del sketch\n después de que draw() se haya completado (o después de que el setup()\n se complete si fue llamado durante una función setup() ). \n \n Para los programadores Java, esto no es lo mismo que System.exit().\n Más aun, System.exit() no debe ser usado porque cerrar una aplicación asi \n mientras draw() esta corriendo puede causar un crash\n (particularmente con P3D).",
+ "syntax": ["exit()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/exp_.es.json b/content/references/translations/es/processing/exp_.es.json
new file mode 100644
index 000000000..544f949a8
--- /dev/null
+++ b/content/references/translations/es/processing/exp_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Returns Euler's number e (2.71828...) raised to the power of the\n value parameter",
+ "related": [],
+ "name": "exp()",
+ "description": "Returns Euler's number e (2.71828...) raised to the power of the\n value parameter.",
+ "syntax": ["exp(n)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "exponent to raise", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/expand_.es.json b/content/references/translations/es/processing/expand_.es.json
new file mode 100644
index 000000000..0b0720f3e
--- /dev/null
+++ b/content/references/translations/es/processing/expand_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Increases the size of an array",
+ "related": ["shorten_"],
+ "name": "expand()",
+ "description": "Increases the size of a one-dimensional array. By default, this function\n doubles the size of the array, but the optional newSize parameter\n provides precise control over the increase in size. \n \n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) expand(originalArray)",
+ "syntax": ["expand(list)", "expand(list, newSize)"],
+ "returns": "boolean[], byte[], char[], int[], long[], float[], double[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "list",
+ "description": "the array to expand",
+ "type": [
+ "boolean[]",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "long[]",
+ "float[]",
+ "double[]",
+ "String[]",
+ "Object"
+ ]
+ },
+ {
+ "name": "newSize",
+ "description": "new size for the array",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/extends.es.json b/content/references/translations/es/processing/extends.es.json
new file mode 100644
index 000000000..a64a9eec9
--- /dev/null
+++ b/content/references/translations/es/processing/extends.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "extends",
+ "brief": "Allows a new class to inherit the methods and data fields (variables and constants) from an existing class",
+ "description": "Allows a new class to inherit the methods and data fields (variables and constants) from an existing class. In code, state the name of the new class, followed by the keyword extends and the name of the base class. The concept of inheritance is one of the fundamental principles of object oriented programming. \n \nNote that in Java, and therefore also Processing, you cannot extend a class more than once. Instead, see implements.\n",
+ "related": ["class", "super", "implements"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/false.es.json b/content/references/translations/es/processing/false.es.json
new file mode 100644
index 000000000..d67a9e977
--- /dev/null
+++ b/content/references/translations/es/processing/false.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "false",
+ "brief": "Reserved word representing the logical value \"false\"",
+ "description": "Reserved word representing the logical value \"false\". Only variables of type boolean may be assigned the value false.\n",
+ "related": ["true", "boolean"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/fill_.es.json b/content/references/translations/es/processing/fill_.es.json
new file mode 100644
index 000000000..86060a120
--- /dev/null
+++ b/content/references/translations/es/processing/fill_.es.json
@@ -0,0 +1,57 @@
+{
+ "brief": "Sets the color used to fill shapes",
+ "related": [
+ "noFill_",
+ "stroke_",
+ "noStroke_",
+ "tint_",
+ "background_",
+ "colorMode_"
+ ],
+ "name": "fill()",
+ "description": "Sets the color used to fill shapes. For example, if you run fill(204,\n 102, 0), all subsequent shapes will be filled with orange. This\n color is either specified in terms of the RGB or HSB color depending on\n the current colorMode() (the default color space is RGB, with\n each value in the range from 0 to 255).\n
\n When using hexadecimal notation to specify a color, use \"#\" or \"0x\"\n before the values (e.g. #CCFFAA, 0xFFCCFFAA). The # syntax uses six\n digits to specify a color (the way colors are specified in HTML and\n CSS). When using the hexadecimal notation starting with \"0x\", the\n hexadecimal value must be specified with eight characters; the first two\n characters define the alpha component and the remainder the red, green,\n and blue components.\n
\n The value for the parameter \"gray\" must be less than or equal to the\n current maximum value as specified by colorMode(). The default\n maximum value is 255.\n
\n To change the color of an image (or a texture), use tint().",
+ "syntax": [
+ "fill(rgb)",
+ "fill(rgb, alpha)",
+ "fill(gray)",
+ "fill(gray, alpha)",
+ "fill(v1, v2, v3)",
+ "fill(v1, v2, v3, alpha)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "color variable or hex value",
+ "type": ["int"]
+ },
+ {
+ "name": "alpha",
+ "description": "opacity of the fill",
+ "type": ["float"]
+ },
+ {
+ "name": "gray",
+ "description": "number specifying value between white and black",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/filter_.es.json b/content/references/translations/es/processing/filter_.es.json
new file mode 100644
index 000000000..666dc69e6
--- /dev/null
+++ b/content/references/translations/es/processing/filter_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Converts the image to grayscale or black and white",
+ "related": [],
+ "name": "filter()",
+ "description": "Filters the image as defined by one of the following modes: \n \n THRESHOLD \n Converts the image to black and white pixels depending if they are above or\n below the threshold defined by the level parameter. The parameter must be\n between 0.0 (black) and 1.0 (white). If no level is specified, 0.5 is\n used. \n \n GRAY \n Converts any colors in the image to grayscale equivalents. No parameter is\n used. \n \n OPAQUE \n Sets the alpha channel to entirely opaque. No parameter is used. \n \n INVERT \n Sets each pixel to its inverse value. No parameter is used. \n \n POSTERIZE \n Limits each channel of the image to the number of colors specified as the\n parameter. The parameter can be set to values between 2 and 255, but results\n are most noticeable in the lower ranges. \n \n BLUR \n Executes a Gaussian blur with the level parameter specifying the extent of\n the blurring. If no parameter is used, the blur is equivalent to Gaussian\n blur of radius 1. Larger values increase the blur. \n \n ERODE \n Reduces the light areas. No parameter is used. \n \n DILATE \n Increases the light areas. No parameter is used.\n\n\n ",
+ "syntax": ["filter(shader)", "filter(kind)", "filter(kind, param)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": [
+ {
+ "name": "shader",
+ "description": "the fragment shader to apply",
+ "type": ["PShader"]
+ },
+ {
+ "name": "kind",
+ "description": "Either THRESHOLD, GRAY, OPAQUE, INVERT, POSTERIZE, BLUR, ERODE,\n or DILATE",
+ "type": ["int"]
+ },
+ {
+ "name": "param",
+ "description": "unique for each, see above",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/final.es.json b/content/references/translations/es/processing/final.es.json
new file mode 100644
index 000000000..a6ece275b
--- /dev/null
+++ b/content/references/translations/es/processing/final.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "final",
+ "brief": "Keyword used to state that a value, class, or method can't be changed",
+ "description": "Keyword used to state that a value, class, or method can't be changed. If the final keyword is used to define a variable, the variable can't be changed within the program. When used to define a class, a final class cannot be subclassed. When used to define a function or method, a final method can't be overridden by subclasses. \n \nThis keyword is an essential part of Java programming and is not usually used with Processing. Consult a Java language reference or tutorial for more information. \n",
+ "related": [],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/float.es.json b/content/references/translations/es/processing/float.es.json
new file mode 100644
index 000000000..843768e7c
--- /dev/null
+++ b/content/references/translations/es/processing/float.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "float",
+ "brief": "Data type for floating-point numbers, e",
+ "description": "Data type for floating-point numbers, e.g. numbers that have a decimal point. \n \nFloats are not precise, so adding small values (such as 0.0001) may not always increment precisely due to rounding errors. If you want to increment a value in small intervals, use an int, and divide by a float value before using it. (See the second example above.) \n \nFloating-point numbers can be as large as 3.40282347E+38 and as low as -3.40282347E+38. They are stored as 32 bits (4 bytes) of information. The float data type is inherited from Java; you can read more about the technical details here and here. \n \nProcessing supports the double datatype from Java as well. However, none of the Processing functions use double values, which use more memory and are typically overkill for most work created in Processing. We do not plan to add support for double values, as doing so would require increasing the number of API functions significantly.\n",
+ "related": ["int", "double"],
+ "syntax": ["float var", "float var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the float",
+ "type": []
+ },
+ { "name": "value", "description": "any floating-point value", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/floatconvert_.es.json b/content/references/translations/es/processing/floatconvert_.es.json
new file mode 100644
index 000000000..aa97a4ccd
--- /dev/null
+++ b/content/references/translations/es/processing/floatconvert_.es.json
@@ -0,0 +1,11 @@
+{
+ "name": "float()",
+ "brief": "Converts an int or String to its floating point representation",
+ "description": "Converts an int or String to its floating point representation. An int is easily converted to a float, but the contents of a String must resemble a number, or NaN (not a number) will be returned. For example, float(\"1234.56\") evaluates to 1234.56, but float(\"giraffe\") will return NaN. \n \nWhen an array of int or String values is passed in, then a floating point array of the same length is returned.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Conversion",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/floor_.es.json b/content/references/translations/es/processing/floor_.es.json
new file mode 100644
index 000000000..ac0d134a9
--- /dev/null
+++ b/content/references/translations/es/processing/floor_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the closest int value that is less than or equal to the value\n of the parameter",
+ "related": ["ceil_", "round_"],
+ "name": "floor()",
+ "description": "Calculates the closest int value that is less than or equal to the value\n of the parameter.",
+ "syntax": ["floor(n)"],
+ "returns": "int",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "number to round down", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/focused.es.json b/content/references/translations/es/processing/focused.es.json
new file mode 100644
index 000000000..515e5fe41
--- /dev/null
+++ b/content/references/translations/es/processing/focused.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "Confirms if a Processing program is \"focused\"",
+ "related": [],
+ "name": "focused",
+ "description": "Confirms if a Processing program is \"focused\", meaning that it is active\n and will accept input from mouse or keyboard. This variable is true if\n it is focused and false if not.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/for.es.json b/content/references/translations/es/processing/for.es.json
new file mode 100644
index 000000000..14b218da3
--- /dev/null
+++ b/content/references/translations/es/processing/for.es.json
@@ -0,0 +1,56 @@
+{
+ "name": "for",
+ "brief": "Controls a sequence of repetitions",
+ "description": "Controls a sequence of repetitions. A basic for structure has three parts: init, test, and update. Each part must be separated by a semicolon (;). The loop continues until the test evaluates to false. When a for structure is executed, the following sequence of events occurs: \n \n1. The init statement is run. \n2. The test is evaluated to be true or false. \n3. If the test is true, jump to step 4. If the test is false, jump to step 6. \n4. Run the statements within the block. \n5. Run the update statement and jump to step 2. \n6. Exit the loop. \n \nIn the first example above, the for structure is executed 40 times. In the init statement, the value i is created and set to zero. i is less than 40, so the test evaluates as true. At the end of each loop, i is incremented by one. On the 41st execution, the test is evaluated as false, because i is then equal to 40, so i < 40 is no longer true. Thus, the loop exits. \n \nA second type of for structure makes it easier to iterate over each element of an array. The last example above shows how it works. Within the parentheses, first define the datatype of the array, then define a variable name. This variable name will be assigned to each element of the array in turn as the for moves through the entire array. Finally, after the colon, define the array name to be used. \n",
+ "related": ["while"],
+ "syntax": [
+ "for (init; test; update) { ",
+ " statements",
+ "} ",
+ "",
+ "for (datatype element : array) { ",
+ " statements",
+ "}"
+ ],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Iteration",
+ "parameters": [
+ {
+ "name": "init",
+ "description": "statement executed once when beginning loop",
+ "type": []
+ },
+ {
+ "name": "test",
+ "description": "if the test evaluates to true, the statements execute",
+ "type": []
+ },
+ {
+ "name": "update",
+ "description": "executes at the end of each iteration",
+ "type": []
+ },
+ {
+ "name": "statements",
+ "description": "collection of statements executed each time through the loop",
+ "type": []
+ },
+ {
+ "name": "datatype",
+ "description": "datatype of elements in the array",
+ "type": []
+ },
+ {
+ "name": "element",
+ "description": "temporary name to use for each element of the array",
+ "type": []
+ },
+ {
+ "name": "array",
+ "description": "name of the array to iterate through",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/frameCount.es.json b/content/references/translations/es/processing/frameCount.es.json
new file mode 100644
index 000000000..44a19b5e2
--- /dev/null
+++ b/content/references/translations/es/processing/frameCount.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "The system variable that contains the number of frames\n displayed since the program started",
+ "related": ["frameRate_", "frameRate"],
+ "name": "frameCount",
+ "description": "The system variable frameCount contains the number of frames\n displayed since the program started. Inside setup() the value is\n 0 and and after the first iteration of draw it is 1, etc.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/frameRate.es.json b/content/references/translations/es/processing/frameRate.es.json
new file mode 100644
index 000000000..21ea5a1e6
--- /dev/null
+++ b/content/references/translations/es/processing/frameRate.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "The system variable that contains the approximate frame rate\n of the software as it executes",
+ "related": ["frameRate_", "frameCount"],
+ "name": "frameRate",
+ "description": "The system variable frameRate contains the approximate frame rate\n of the software as it executes. The initial value is 10 fps and is\n updated with each frame. The value is averaged (integrated) over several\n frames. As such, this value won't be valid until after 5-10 frames.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/frameRate_.es.json b/content/references/translations/es/processing/frameRate_.es.json
new file mode 100644
index 000000000..2408c31cf
--- /dev/null
+++ b/content/references/translations/es/processing/frameRate_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Specifies the number of frames to be displayed every second",
+ "related": [
+ "frameRate",
+ "frameCount",
+ "setup_",
+ "draw_",
+ "loop_",
+ "noLoop_",
+ "redraw_"
+ ],
+ "name": "frameRate()",
+ "description": "Specifies the number of frames to be displayed every second. For example,\n the function call frameRate(30) will attempt to refresh 30 times a\n second. If the processor is not fast enough to maintain the specified rate,\n the frame rate will not be achieved. Setting the frame rate within\n setup() is recommended. The default rate is 60 frames per second.",
+ "syntax": ["frameRate(fps)"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "fps",
+ "description": "number of desired frames per second",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/frustum_.es.json b/content/references/translations/es/processing/frustum_.es.json
new file mode 100644
index 000000000..ad3b85dee
--- /dev/null
+++ b/content/references/translations/es/processing/frustum_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Sets a perspective matrix defined through the parameters",
+ "related": ["camera_", "beginCamera_", "endCamera_", "perspective_"],
+ "name": "frustum()",
+ "description": "Sets a perspective matrix as defined by the parameters. \n \n A frustum is a geometric form: a pyramid with its top cut off. With the\n viewer's eye at the imaginary top of the pyramid, the six planes of the\n frustum act as clipping planes when rendering a 3D view. Thus, any form\n inside the clipping planes is rendered and visible; anything outside those\n planes is not visible. \n \n Setting the frustum has the effect of changing the perspective with\n which the scene is rendered. This can be achieved more simply in many cases\n by using perspective(). \n \n Note that the near value must be greater than zero (as the point of the\n frustum \"pyramid\" cannot converge \"behind\" the viewer). Similarly, the far\n value must be greater than the near value (as the \"far\" plane of the frustum\n must be \"farther away\" from the viewer than the near plane). \n \n Works like glFrustum, except it wipes out the current perspective matrix\n rather than multiplying itself with it.",
+ "syntax": ["frustum(left, right, bottom, top, near, far)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": [
+ {
+ "name": "left",
+ "description": "left coordinate of the clipping plane",
+ "type": ["float"]
+ },
+ {
+ "name": "right",
+ "description": "right coordinate of the clipping plane",
+ "type": ["float"]
+ },
+ {
+ "name": "bottom",
+ "description": "bottom coordinate of the clipping plane",
+ "type": ["float"]
+ },
+ {
+ "name": "top",
+ "description": "top coordinate of the clipping plane",
+ "type": ["float"]
+ },
+ {
+ "name": "near",
+ "description": "near component of the clipping plane; must be greater than zero",
+ "type": ["float"]
+ },
+ {
+ "name": "far",
+ "description": "far component of the clipping plane; must be greater than the\n near value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/fullScreen_.es.json b/content/references/translations/es/processing/fullScreen_.es.json
new file mode 100644
index 000000000..6eaeadaa9
--- /dev/null
+++ b/content/references/translations/es/processing/fullScreen_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Opens a sketch using the full size of the computer's display",
+ "related": ["settings_", "setup_", "size_", "smooth_"],
+ "name": "fullScreen()",
+ "description": "This function is new for Processing 3.0. It opens a sketch using the full\n size of the computer's display. This function must be the first line in\n setup(). The size() and fullScreen() functions cannot\n both be used in the same program, just choose one. \n \n When fullScreen() is used without a parameter, it draws the sketch\n to the screen currently selected inside the Preferences window. When it is\n used with a single parameter, this number defines the screen to display to\n program on (e.g. 1, 2, 3...). When used with two parameters, the first\n defines the renderer to use (e.g. P2D) and the second defines the screen.\n The SPAN parameter can be used in place of a screen number to draw\n the sketch as a full-screen window across all of the attached displays if\n there are more than one. \n \n Prior to Processing 3.0, a full-screen program was defined with\n size(displayWidth, displayHeight).",
+ "syntax": [
+ "fullScreen()",
+ "fullScreen(display)",
+ "fullScreen(renderer)",
+ "fullScreen(renderer, display)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "renderer",
+ "description": "the renderer to use, e.g. P2D, P3D, JAVA2D (default)",
+ "type": ["String"]
+ },
+ {
+ "name": "display",
+ "description": "the screen to run the sketch on (1, 2, 3, etc. or on multiple screens using SPAN)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/get_.es.json b/content/references/translations/es/processing/get_.es.json
new file mode 100644
index 000000000..42a4a3caa
--- /dev/null
+++ b/content/references/translations/es/processing/get_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Reads the color of any pixel or grabs a rectangle of pixels",
+ "related": ["set_", "pixels", "copy_"],
+ "name": "get()",
+ "description": "Reads the color of any pixel or grabs a section of an image. If no\n parameters are specified, the entire image is returned. Use the x\n and y parameters to get the value of one pixel. Get a section of\n the display window by specifying an additional width and\n height parameter. When getting an image, the x and\n y parameters define the coordinates for the upper-left corner of\n the image, regardless of the current imageMode(). \n \n If the pixel requested is outside of the image window, black is\n returned. The numbers returned are scaled according to the current color\n ranges, but only RGB values are returned by this function. For example,\n even though you may have drawn a shape with colorMode(HSB), the\n numbers returned will be in RGB format. \n \n Getting the color of a single pixel with get(x, y) is easy, but\n not as fast as grabbing the data directly from pixels[]. The\n equivalent statement to get(x, y) using pixels[] is\n pixels[y*width+x]. See the reference for pixels[] for more information.\n\n\n ",
+ "syntax": ["get(x, y)", "get(x, y, w, h)", "get()"],
+ "returns": "int or PImage",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "x-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "w",
+ "description": "width of pixel rectangle to get",
+ "type": ["int"]
+ },
+ {
+ "name": "h",
+ "description": "height of pixel rectangle to get",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/greaterthan.es.json b/content/references/translations/es/processing/greaterthan.es.json
new file mode 100644
index 000000000..c3e37830e
--- /dev/null
+++ b/content/references/translations/es/processing/greaterthan.es.json
@@ -0,0 +1,25 @@
+{
+ "name": "> (greater than)",
+ "brief": "Tests if the value on the left is larger than the value on the right",
+ "description": "Tests if the value on the left is larger than the value on the right. \n",
+ "related": [
+ "lessthan",
+ "greaterthanorequalto",
+ "lessthanorequalto",
+ "equality",
+ "inequality"
+ ],
+ "syntax": ["value1 > value2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Relational Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, char, or byte",
+ "type": []
+ },
+ { "name": "value2", "description": "int, float, char, or byte", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/greaterthanorequalto.es.json b/content/references/translations/es/processing/greaterthanorequalto.es.json
new file mode 100644
index 000000000..8dc605c5b
--- /dev/null
+++ b/content/references/translations/es/processing/greaterthanorequalto.es.json
@@ -0,0 +1,25 @@
+{
+ "name": ">= (greater than or equal to)",
+ "brief": "Tests if the value on the left is larger than the value on the right or if the values are equivalent",
+ "description": "Tests if the value on the left is larger than the value on the right or if the values are equivalent. \n",
+ "related": [
+ "greaterthan",
+ "lessthan",
+ "lessthanorequalto",
+ "equality",
+ "inequality"
+ ],
+ "syntax": ["value1 >= value2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Relational Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, char, or byte",
+ "type": []
+ },
+ { "name": "value2", "description": "int, float, char, or byte", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/green_.es.json b/content/references/translations/es/processing/green_.es.json
new file mode 100644
index 000000000..da39a3391
--- /dev/null
+++ b/content/references/translations/es/processing/green_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Extracts the green value from a color, scaled to match current\n colorMode()",
+ "related": [
+ "red_",
+ "blue_",
+ "alpha_",
+ "hue_",
+ "saturation_",
+ "brightness_",
+ "rightshift_"
+ ],
+ "name": "green()",
+ "description": "Extracts the green value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value. \n \n The green() function is easy to use and understand, but it is slower\n than a technique called bit shifting. When working in colorMode(RGB,\n 255), you can achieve the same results as green() but with greater\n speed by using the right shift operator (>>) with a bit mask. For\n example, the following two lines of code are equivalent means of getting the\n green value of the color value c: \n \n\n
\n float g1 = green(c); // Simpler, but slower to calculate\n float g2 = c >> 8 & 0xFF; // Very fast to calculate\n
",
+ "syntax": ["green(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/height.es.json b/content/references/translations/es/processing/height.es.json
new file mode 100644
index 000000000..8cc5e39d2
--- /dev/null
+++ b/content/references/translations/es/processing/height.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "System variable which stores the height of the display window",
+ "related": ["width", "size_"],
+ "name": "height",
+ "description": "System variable which stores the height of the display window. This\n value is set by the second parameter of the size() function. For\n example, the function call size(320, 240) sets the height\n variable to the value 240. The value of height defaults to 100 if\n size() is not used in a program.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/hex_.es.json b/content/references/translations/es/processing/hex_.es.json
new file mode 100644
index 000000000..5a5a970ca
--- /dev/null
+++ b/content/references/translations/es/processing/hex_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Converts a byte, char, int, or color to a String containing the\n equivalent hexadecimal notation",
+ "related": ["unhex_", "binary_", "unbinary_"],
+ "name": "hex()",
+ "description": "Converts an int, byte, char, or color to a\n String containing the equivalent hexadecimal notation. For example,\n the color value produced by color(0, 102, 153) will convert\n to the String value \"FF006699\". This function can help make\n your geeky debugging sessions much happier. \n \n Note that the maximum number of digits is 8, because an int value\n can only represent up to 32 bits. Specifying more than 8 digits will not\n increase the length of the String further.",
+ "syntax": ["hex(value)", "hex(value, digits)"],
+ "returns": "String",
+ "type": "function",
+ "category": "data",
+ "subcategory": "conversion",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the value to convert",
+ "type": ["byte", "char", "int"]
+ },
+ {
+ "name": "digits",
+ "description": "the number of digits (maximum 8)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/hint_.es.json b/content/references/translations/es/processing/hint_.es.json
new file mode 100644
index 000000000..6e0bb0624
--- /dev/null
+++ b/content/references/translations/es/processing/hint_.es.json
@@ -0,0 +1,14 @@
+{
+ "name": "hint()",
+ "brief": "This function is used to enable or disable special features that control how graphics are drawn",
+ "description": "This function is used to enable or disable special features that control how graphics are drawn. In the course of developing Processing, we had to make hard decisions about tradeoffs between performance and visual quality. We put significant effort into determining what makes most sense for the largest number of users, and then use functions like hint() to allow people to tune the settings for their particular sketch. Implementing a hint() is a last resort that's used when a more elegant solution cannot be found. Some options might graduate to standard features instead of hints over time, or be added and removed between (major) releases.\n \n \nHints used by the default renderer:\n
\nENABLE_STROKE_PURE \nFixes a problem with shapes that have a stroke and are rendered using small steps (for instance, using vertex() with points that are close to one another), or are drawn at small sizes.\n \n \nHints for use with P2D and P3D:\n
\nDISABLE_ASYNC_SAVEFRAME \nsave() and saveFrame() will not use separate threads for saving and will block until the image is written to the drive. This was the default behavior in 3.0b7 and before. To enable, call hint(ENABLE_ASYNC_SAVEFRAME).\n
\nDISABLE_OPENGL_ERRORS \nSpeeds up the P3D renderer setting by not checking for errors while running.\n
\nDISABLE_TEXTURE_MIPMAPS \nDisable generation of texture mipmaps in P2D or P3D. This results in lower quality - but faster - rendering of texture images when they appear smaller than their native resolutions (the mipmaps are scaled-down versions of a texture that make it look better when drawing it at a small size). However, the difference in performance is fairly minor on recent desktop video cards.\n \n \nHints for use with P3D only:\n
\nDISABLE_DEPTH_MASK \nDisables writing into the depth buffer. This means that a shape drawn with this hint can be hidden by another shape drawn later, irrespective of their distances to the camera. Note that this is different from disabling the depth test. The depth test is still applied, as long as the DISABLE_DEPTH_TEST hint is not called, but the depth values of the objects are not recorded. This is useful when drawing a semi-transparent 3D object without depth sorting, in order to avoid visual glitches due the faces of the object being at different distances from the camera, but still having the object properly occluded by the rest of the objects in the scene.\n
\nENABLE_DEPTH_SORT \nEnable primitive z-sorting of triangles and lines in P3D. This can slow performance considerably, and the algorithm is not yet perfect.\n
\nDISABLE_DEPTH_TEST \nDisable the zbuffer, allowing you to draw on top of everything at will. When depth testing is disabled, items will be drawn to the screen sequentially, like a painting. This hint is most often used to draw in 3D, then draw in 2D on top of it (for instance, to draw GUI controls in 2D on top of a 3D interface). When called, this will also clear the depth buffer. Restore the default with hint(ENABLE_DEPTH_TEST), but note that with the depth buffer cleared, any 3D drawing that happens later in will ignore existing shapes on the screen.\n
\nDISABLE_OPTIMIZED_STROKE \nForces the P3D renderer to draw each shape (including its strokes) separately, instead of batching them into larger groups for better performance. One consequence of this is that 2D items drawn with P3D are correctly stacked on the screen, depending on the order in which they were drawn. Otherwise, glitches such as the stroke lines being drawn on top of the interior of all the shapes will occur. However, this hint can make rendering substantially slower, so it is recommended to use it only when drawing a small amount of shapes. For drawing two-dimensional scenes, use the P2D renderer instead, which doesn't need the hint to properly stack shapes and their strokes.\n
\nENABLE_STROKE_PERSPECTIVE \nEnables stroke geometry (lines and points) to be affected by the perspective, meaning that they will look smaller as they move away from the camera.\n",
+ "related": ["PGraphics", "createGraphics_", "size_"],
+ "syntax": ["hint(which)"],
+ "returns": "void",
+ "type": "function",
+ "category": "Rendering",
+ "subcategory": "",
+ "parameters": [
+ { "name": "which", "description": "int: the hint mode to use", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/hour_.es.json b/content/references/translations/es/processing/hour_.es.json
new file mode 100644
index 000000000..c357687fa
--- /dev/null
+++ b/content/references/translations/es/processing/hour_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the current hour as a value from 0 - 23",
+ "related": ["millis_", "second_", "minute_", "day_", "month_", "year_"],
+ "name": "hour()",
+ "description": "Processing communicates with the clock on your computer. The\n hour() function returns the current hour as a value from 0 - 23.",
+ "syntax": ["hour()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/hue_.es.json b/content/references/translations/es/processing/hue_.es.json
new file mode 100644
index 000000000..c120fc4ac
--- /dev/null
+++ b/content/references/translations/es/processing/hue_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Extracts the hue value from a color",
+ "related": [
+ "red_",
+ "green_",
+ "blue_",
+ "alpha_",
+ "saturation_",
+ "brightness_"
+ ],
+ "name": "hue()",
+ "description": "Extracts the hue value from a color.",
+ "syntax": ["hue(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/if.es.json b/content/references/translations/es/processing/if.es.json
new file mode 100644
index 000000000..e8cbc8d60
--- /dev/null
+++ b/content/references/translations/es/processing/if.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "if",
+ "brief": "Allows the program to make a decision about which code to execute",
+ "description": "Allows the program to make a decision about which code to execute. If the test evaluates to true, the statements enclosed within the block are executed and if the test evaluates to false the statements are not executed.\n",
+ "related": ["else"],
+ "syntax": ["if (test) { ", " statements ", "} "],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals",
+ "parameters": [
+ {
+ "name": "test",
+ "description": "any valid expression that evaluates to true or false",
+ "type": []
+ },
+ {
+ "name": "statements",
+ "description": "one or more statements to be executed",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/imageMode_.es.json b/content/references/translations/es/processing/imageMode_.es.json
new file mode 100644
index 000000000..d187feeb4
--- /dev/null
+++ b/content/references/translations/es/processing/imageMode_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Modifies the location from which images draw",
+ "related": ["loadImage_", "PImage", "image_", "background_"],
+ "name": "imageMode()",
+ "description": "Modifies the location from which images are drawn by changing the way in\n which parameters given to image() are interpreted. \n \n The default mode is imageMode(CORNER), which interprets the second and\n third parameters of image() as the upper-left corner of the image. If\n two additional parameters are specified, they are used to set the image's\n width and height. \n \n imageMode(CORNERS) interprets the second and third parameters of\n image() as the location of one corner, and the fourth and fifth\n parameters as the opposite corner. \n \n imageMode(CENTER) interprets the second and third parameters of\n image() as the image's center point. If two additional parameters are\n specified, they are used to set the image's width and height. \n \n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.",
+ "syntax": ["imageMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "either CORNER, CORNERS, or CENTER",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/image_.es.json b/content/references/translations/es/processing/image_.es.json
new file mode 100644
index 000000000..25c415580
--- /dev/null
+++ b/content/references/translations/es/processing/image_.es.json
@@ -0,0 +1,45 @@
+{
+ "brief": "Displays images to the screen",
+ "related": [
+ "loadImage_",
+ "PImage",
+ "imageMode_",
+ "tint_",
+ "background_",
+ "alpha_"
+ ],
+ "name": "image()",
+ "description": "The image() function draws an image to the display window. Images must\n be in the sketch's \"data\" directory to load correctly. Select \"Add file...\"\n from the \"Sketch\" menu to add the image to the data directory, or just drag\n the image file onto the sketch window. Processing currently works with GIF,\n JPEG, and PNG images. \n \n The img parameter specifies the image to display and by default the\n a and b parameters define the location of its upper-left\n corner. The image is displayed at its original size unless the c and\n d parameters specify a different size. The imageMode() function\n can be used to change the way these parameters draw the image. \n \n The color of an image may be modified with the tint() function. This\n function will maintain transparency for GIF and PNG images.\n\n ",
+ "syntax": ["image(img, a, b)", "image(img, a, b, c, d)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "img",
+ "description": "the image to display",
+ "type": ["PImage"]
+ },
+ {
+ "name": "a",
+ "description": "x-coordinate of the image by default",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "y-coordinate of the image by default",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "width to display the image by default",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "height to display the image by default",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/implements.es.json b/content/references/translations/es/processing/implements.es.json
new file mode 100644
index 000000000..5d4db8440
--- /dev/null
+++ b/content/references/translations/es/processing/implements.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "implements",
+ "brief": "Implements an interface or group of interfaces",
+ "description": "Implements an interface or group of interfaces. Interfaces are used to establish a protocol between classes; they establish the form for a class (method names, return types, etc.) but no implementation. After implementation, an interface can be used and extended like any other class. \n \nBecause Java doesn't allow extending more than one class at a time, you can create interfaces instead, so specific methods and fields can be found in the class which implements it. A Thread is an example; it implements the \"Runnable\" interface, which means the class has a method called \"public void run()\" inside it. \n",
+ "related": ["extends"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/import.es.json b/content/references/translations/es/processing/import.es.json
new file mode 100644
index 000000000..449425a46
--- /dev/null
+++ b/content/references/translations/es/processing/import.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "import",
+ "brief": "The keyword import is used to load a library into a Processing sketch",
+ "description": "The keyword import is used to load a library into a Processing sketch. \nA library is one or more classes that are grouped together to extend the capabilities of Processing. \nThe * character is often used at the end of the import line (see the code example above)\nto load all of the related classes at once, without having to reference them individually. \n \nThe import statement will be created for you by selecting a library from the \"Import Library...\" \nitem in the Sketch menu.\n",
+ "related": [],
+ "syntax": ["import libraryName"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "libraryName",
+ "description": "the name of the library to load (e.g. \"processing.pdf.*\")",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/increment.es.json b/content/references/translations/es/processing/increment.es.json
new file mode 100644
index 000000000..2b68f25e9
--- /dev/null
+++ b/content/references/translations/es/processing/increment.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "++ (incremento)",
+ "brief": "Incrementa le valor de una variable entera en 1",
+ "description": "Incrementa le valor de una variable entera en 1. Es equivalente a la operación i = i + 1. Si el valor de la variable i es 5, entonces la expresión i++ incrementa el valor de i a 6.\n",
+ "related": ["addition", "addassign", "decrement"],
+ "syntax": ["value++"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [{ "name": "value", "description": "int", "type": [] }]
+}
diff --git a/content/references/translations/es/processing/inequality.es.json b/content/references/translations/es/processing/inequality.es.json
new file mode 100644
index 000000000..790700c36
--- /dev/null
+++ b/content/references/translations/es/processing/inequality.es.json
@@ -0,0 +1,29 @@
+{
+ "name": "!= (inequality)",
+ "brief": "Determines if one expression is not equivalent to another",
+ "description": "Determines if one expression is not equivalent to another.\n",
+ "related": [
+ "greaterthan",
+ "lessthan",
+ "greaterthanorequalto",
+ "lessthanorequalto",
+ "equality"
+ ],
+ "syntax": ["value1 != value2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Relational Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, char, byte, boolean",
+ "type": []
+ },
+ {
+ "name": "value2",
+ "description": "int, float, char, byte, boolean",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/int.es.json b/content/references/translations/es/processing/int.es.json
new file mode 100644
index 000000000..93ad724ee
--- /dev/null
+++ b/content/references/translations/es/processing/int.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "int",
+ "brief": "Datatype for integers, numbers without a decimal point",
+ "description": "Datatype for integers, numbers without a decimal point. Integers can be as large as 2,147,483,647 and as low as -2,147,483,648. They are stored as 32 bits of information. The first time a variable is written, it must be declared with a statement expressing its datatype. Subsequent uses of this variable must not reference the datatype because Processing will think the variable is being declared again.\n",
+ "related": ["float"],
+ "syntax": ["int var", "int var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the value",
+ "type": []
+ },
+ { "name": "value", "description": "any integer value", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/intconvert_.es.json b/content/references/translations/es/processing/intconvert_.es.json
new file mode 100644
index 000000000..e47671da5
--- /dev/null
+++ b/content/references/translations/es/processing/intconvert_.es.json
@@ -0,0 +1,11 @@
+{
+ "name": "int()",
+ "brief": "Converts any value of a primitive data type (boolean, byte, char, color, float, int, or long) or String to its integer representation",
+ "description": "Converts any value of a primitive data type (boolean, byte, char, color, float, int, or long) or String to its integer representation. \n \nWhen an array of values is passed in, then an int array of the same length is returned.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Conversion",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/join_.es.json b/content/references/translations/es/processing/join_.es.json
new file mode 100644
index 000000000..e588d9647
--- /dev/null
+++ b/content/references/translations/es/processing/join_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Combines an array of Strings into one String, each separated by the\n character(s) used for the separator parameter",
+ "related": ["split_", "trim_", "nf_", "nfs_"],
+ "name": "join()",
+ "description": "Combines an array of Strings into one String, each separated by the\n character(s) used for the separator parameter. To join arrays of\n ints or floats, it's necessary to first convert them to Strings using\n nf() or nfs().",
+ "syntax": ["join(list, separator)"],
+ "returns": "String",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ { "name": "list", "description": "array of Strings", "type": ["String[]"] },
+ {
+ "name": "separator",
+ "description": "char or String to be placed between each item",
+ "type": ["char", "String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/key.es.json b/content/references/translations/es/processing/key.es.json
new file mode 100644
index 000000000..a5032a805
--- /dev/null
+++ b/content/references/translations/es/processing/key.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "The system variable that always contains the value of the most\n recent key on the keyboard that was used (either pressed or released)",
+ "related": ["keyCode", "keyPressed", "keyPressed_", "keyReleased_"],
+ "name": "key",
+ "description": "The system variable key always contains the value of the most\n recent key on the keyboard that was used (either pressed or released).\n
\n For non-ASCII keys, use the keyCode variable. The keys included\n in the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and\n DELETE) do not require checking to see if they key is coded, and you\n should simply use the key variable instead of keyCode If\n you're making cross-platform projects, note that the ENTER key is\n commonly used on PCs and Unix and the RETURN key is used instead on\n Macintosh. Check for both ENTER and RETURN to make sure your program\n will work for all platforms.\n
\n There are issues with how keyCode behaves across different\n renderers and operating systems. Watch out for unexpected behavior as\n you switch renderers and operating systems.\n\n ",
+ "category": "input",
+ "subcategory": "keyboard",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/keyCode.es.json b/content/references/translations/es/processing/keyCode.es.json
new file mode 100644
index 000000000..424a6ed7c
--- /dev/null
+++ b/content/references/translations/es/processing/keyCode.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "Used to detect special keys such as the UP, DOWN, LEFT, RIGHT arrow keys and ALT, CONTROL, SHIFT",
+ "related": ["key", "keyPressed", "keyPressed_", "keyReleased_"],
+ "name": "keyCode",
+ "description": "The variable keyCode is used to detect special keys such as the\n UP, DOWN, LEFT, RIGHT arrow keys and ALT, CONTROL, SHIFT.\n
\n When checking for these keys, it can be useful to first check if the key\n is coded. This is done with the conditional if (key == CODED), as\n shown in the example above.\n
\n The keys included in the ASCII specification (BACKSPACE, TAB, ENTER,\n RETURN, ESC, and DELETE) do not require checking to see if the key is\n coded; for those keys, you should simply use the key variable\n directly (and not keyCode). If you're making cross-platform\n projects, note that the ENTER key is commonly used on PCs and Unix,\n while the RETURN key is used on Macs. Make sure your program will work\n on all platforms by checking for both ENTER and RETURN.\n
\n For those familiar with Java, the values for UP and DOWN are simply\n shorter versions of Java's KeyEvent.VK_UP and KeyEvent.VK_DOWN.\n Other keyCode values can be found in the Java\n KeyEvent\n reference.\n
\n There are issues with how keyCode behaves across different renderers\n and operating systems. Watch out for unexpected behavior as you switch\n renderers and operating systems and you are using keys are aren't mentioned\n in this reference entry.\n
\n If you are using P2D or P3D as your renderer, use the\n NEWT KeyEvent constants.\n\n\n ",
+ "category": "input",
+ "subcategory": "keyboard",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/keyPressed.es.json b/content/references/translations/es/processing/keyPressed.es.json
new file mode 100644
index 000000000..4cc4aaacb
--- /dev/null
+++ b/content/references/translations/es/processing/keyPressed.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "The boolean system variable that is true if any key\n is pressed and false if no keys are pressed",
+ "related": ["key", "keyCode", "keyPressed_", "keyReleased_"],
+ "name": "keyPressed",
+ "description": "The boolean system variable keyPressed is true if any key\n is pressed and false if no keys are pressed.\n
\n Note that there is a similarly named function called keyPressed().\n See its reference page for more information.",
+ "category": "input",
+ "subcategory": "keyboard",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/keyPressed_.es.json b/content/references/translations/es/processing/keyPressed_.es.json
new file mode 100644
index 000000000..6701ce481
--- /dev/null
+++ b/content/references/translations/es/processing/keyPressed_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Called once every time a key is pressed",
+ "related": ["key", "keyCode", "keyPressed", "keyReleased_"],
+ "name": "keyPressed()",
+ "description": "The keyPressed() function is called once every time a key is\n pressed. The key that was pressed is stored in the key variable.\n \n \n For non-ASCII keys, use the keyCode variable. The keys included in\n the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and DELETE) do\n not require checking to see if the key is coded; for those keys, you should\n simply use the key variable directly (and not keyCode). If\n you're making cross-platform projects, note that the ENTER key is commonly\n used on PCs and Unix, while the RETURN key is used on Macs. Make sure your\n program will work on all platforms by checking for both ENTER and RETURN.\n \n \n Because of how operating systems handle key repeats, holding down a key may\n cause multiple calls to keyPressed(). The rate of repeat is set by\n the operating system, and may be configured differently on each computer.\n \n \n Note that there is a similarly named boolean variable called\n keyPressed. See its reference page for more information. \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events. \n \n With the release of macOS Sierra, Apple changed how key repeat works, so\n keyPressed may not function as expected. See here\n for details of the problem and how to fix it.\n\n ",
+ "syntax": ["keyPressed()", "keyPressed(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "keyboard",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/keyReleased_.es.json b/content/references/translations/es/processing/keyReleased_.es.json
new file mode 100644
index 000000000..7aedb94a9
--- /dev/null
+++ b/content/references/translations/es/processing/keyReleased_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Called once every time a key is released",
+ "related": ["key", "keyCode", "keyPressed", "keyPressed_"],
+ "name": "keyReleased()",
+ "description": "The keyReleased() function is called once every time a key is\n released. The key that was released will be stored in the key\n variable. See key and keyCode for more information. \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.",
+ "syntax": ["keyReleased()", "keyReleased(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "keyboard",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/keyTyped_.es.json b/content/references/translations/es/processing/keyTyped_.es.json
new file mode 100644
index 000000000..14917e8b1
--- /dev/null
+++ b/content/references/translations/es/processing/keyTyped_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Called once every time a key is pressed, but action keys such as\n Ctrl, Shift, and Alt are ignored",
+ "related": ["keyPressed", "key", "keyCode", "keyReleased_"],
+ "name": "keyTyped()",
+ "description": "The keyTyped() function is called once every time a key is pressed,\n but action keys such as Ctrl, Shift, and Alt are ignored. \n \n Because of how operating systems handle key repeats, holding down a key may\n cause multiple calls to keyTyped(). The rate of repeat is set by the\n operating system, and may be configured differently on each computer.\n \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.",
+ "syntax": ["keyTyped()", "keyTyped(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "keyboard",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/launch_.es.json b/content/references/translations/es/processing/launch_.es.json
new file mode 100644
index 000000000..8373e28a3
--- /dev/null
+++ b/content/references/translations/es/processing/launch_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Attempts to open an application or file using your platform's\n launcher",
+ "related": [],
+ "name": "launch()",
+ "description": "Attempts to open an application or file using your platform's launcher. The\n filename parameter is a String specifying the file name and\n location. The location parameter must be a full path name, or the name of\n an executable in the system's PATH. In most cases, using a full path is the\n best option, rather than relying on the system PATH. Be sure to make the\n file executable before attempting to open it (chmod +x). \n \n This function (roughly) emulates what happens when you double-click an\n application or document in the macOS Finder, the Windows Explorer, or your\n favorite Linux file manager. If you're trying to run command line functions\n directly, use the exec() function instead (see below). \n \n This function behaves differently on each platform. On Windows, the\n parameters are sent to the Windows shell via \"cmd /c\". On Mac OS X, the\n \"open\" command is used (type \"man open\" in Terminal.app for documentation).\n On Linux, it first tries gnome-open, then kde-open, but if neither are\n available, it sends the command to the shell and prays that something\n useful happens. \n \n For users familiar with Java, this is not the same as Runtime.exec(),\n because the launcher command is prepended. Instead, the\n exec(String[]) function is a shortcut for\n Runtime.getRuntime.exec(String[]). The exec() function is documented\n in the\n JavaDoc\n in the PApplet class.",
+ "syntax": ["launch(args)"],
+ "returns": "Process",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "args",
+ "description": "arguments to the launcher, eg. a filename.",
+ "type": ["String[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/leftshift.es.json b/content/references/translations/es/processing/leftshift.es.json
new file mode 100644
index 000000000..9ef8346b4
--- /dev/null
+++ b/content/references/translations/es/processing/leftshift.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "<< (left shift)",
+ "brief": "Shifts bits to the left",
+ "description": "Shifts bits to the left. The number to the left of the operator is shifted the number of places specified by the number to the right. Each shift to the left doubles the number, therefore each left shift multiplies the original number by 2. Use the left shift for fast multiplication or to pack a group of numbers together into one larger number. Left shifting only works with integers or numbers which automatically convert to an integer such at byte and char.\n",
+ "related": ["rightshift"],
+ "syntax": ["value << n"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Bitwise Operators",
+ "parameters": [
+ { "name": "value", "description": "int: the value to shift", "type": [] },
+ {
+ "name": "n",
+ "description": "int: the number of places to shift left",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/lerpColor_.es.json b/content/references/translations/es/processing/lerpColor_.es.json
new file mode 100644
index 000000000..69cbd55ba
--- /dev/null
+++ b/content/references/translations/es/processing/lerpColor_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Calculates a color or colors between two colors at a specific\n increment",
+ "related": ["PImage_blendColor_", "color_", "lerp_"],
+ "name": "lerpColor()",
+ "description": "Calculates a color between two colors at a specific increment. The\n amt parameter is the amount to interpolate between the two values\n where 0.0 is equal to the first point, 0.1 is very near the first point,\n 0.5 is halfway in between, etc. \n An amount below 0 will be treated as 0. Likewise, amounts above 1 will be\n capped at 1. This is different from the behavior of lerp(), but necessary\n because otherwise numbers outside the range will produce strange and\n unexpected colors.",
+ "syntax": ["lerpColor(c1, c2, amt)"],
+ "returns": "int",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "c1",
+ "description": "interpolate from this color",
+ "type": ["int"]
+ },
+ {
+ "name": "c2",
+ "description": "interpolate to this color",
+ "type": ["int"]
+ },
+ { "name": "amt", "description": "between 0.0 and 1.0", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/lerp_.es.json b/content/references/translations/es/processing/lerp_.es.json
new file mode 100644
index 000000000..c2e488bd3
--- /dev/null
+++ b/content/references/translations/es/processing/lerp_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Calculates a number between two numbers at a specific increment",
+ "related": ["curvePoint_", "bezierPoint_", "lerp_", "lerpColor_"],
+ "name": "lerp()",
+ "description": "Calculates a number between two numbers at a specific increment. The\n amt parameter is the amount to interpolate between the two values\n where 0.0 equal to the first point, 0.1 is very near the first point,\n 0.5 is half-way in between, etc. The lerp function is convenient for\n creating motion along a straight path and for drawing dotted lines.",
+ "syntax": ["lerp(start, stop, amt)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "start", "description": "first value", "type": ["float"] },
+ { "name": "stop", "description": "second value", "type": ["float"] },
+ {
+ "name": "amt",
+ "description": "float between 0.0 and 1.0",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/lessthan.es.json b/content/references/translations/es/processing/lessthan.es.json
new file mode 100644
index 000000000..2b21b635f
--- /dev/null
+++ b/content/references/translations/es/processing/lessthan.es.json
@@ -0,0 +1,25 @@
+{
+ "name": "< (less than)",
+ "brief": "Tests if the value on the left is smaller than the value on the right",
+ "description": "Tests if the value on the left is smaller than the value on the right. \n",
+ "related": [
+ "greaterthan",
+ "greaterthanorequalto",
+ "lessthanorequalto",
+ "equality",
+ "inequality"
+ ],
+ "syntax": ["value1 < value2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Relational Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, char, or byte",
+ "type": []
+ },
+ { "name": "value2", "description": "int, float, char, or byte", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/lessthanorequalto.es.json b/content/references/translations/es/processing/lessthanorequalto.es.json
new file mode 100644
index 000000000..0fa647bac
--- /dev/null
+++ b/content/references/translations/es/processing/lessthanorequalto.es.json
@@ -0,0 +1,25 @@
+{
+ "name": "<= (less than or equal to)",
+ "brief": "Tests if the value on the left is less than the value on the right or if the values are equivalent",
+ "description": "Tests if the value on the left is less than the value on the right or if the values are equivalent. \n",
+ "related": [
+ "greaterthan",
+ "greaterthanorequalto",
+ "lessthan",
+ "equality",
+ "inequality"
+ ],
+ "syntax": ["value1 <= value2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Relational Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, char, or byte",
+ "type": []
+ },
+ { "name": "value2", "description": "int, float, char, or byte", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/lightFalloff_.es.json b/content/references/translations/es/processing/lightFalloff_.es.json
new file mode 100644
index 000000000..98c0c266f
--- /dev/null
+++ b/content/references/translations/es/processing/lightFalloff_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Sets the falloff rates for point lights, spot lights, and ambient\n lights",
+ "related": [
+ "lights_",
+ "ambientLight_",
+ "pointLight_",
+ "spotLight_",
+ "lightSpecular_"
+ ],
+ "name": "lightFalloff()",
+ "description": "Sets the falloff rates for point lights, spot lights, and ambient lights.\n Like fill(), it affects only the elements which are created after it\n in the code. The default value is lightFalloff(1.0, 0.0, 0.0), and the\n parameters are used to calculate the falloff with the following\n equation: \n \n d = distance from light position to vertex position \n falloff = 1 / (CONSTANT + d * LINEAR + (d*d) * QUADRATIC) \n \n Thinking about an ambient light with a falloff can be tricky. If you want a\n region of your scene to be ambient lit with one color and another region to\n be ambient lit with another color, you could use an ambient light with\n location and falloff. You can think of it as a point light that doesn't care\n which direction a surface is facing.",
+ "syntax": ["lightFalloff(constant, linear, quadratic)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ {
+ "name": "constant",
+ "description": "constant value or determining falloff",
+ "type": ["float"]
+ },
+ {
+ "name": "linear",
+ "description": "linear value for determining falloff",
+ "type": ["float"]
+ },
+ {
+ "name": "quadratic",
+ "description": "quadratic value for determining falloff",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/lightSpecular_.es.json b/content/references/translations/es/processing/lightSpecular_.es.json
new file mode 100644
index 000000000..586059c89
--- /dev/null
+++ b/content/references/translations/es/processing/lightSpecular_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Sets the specular color for lights",
+ "related": [
+ "specular_",
+ "lights_",
+ "ambientLight_",
+ "pointLight_",
+ "spotLight_"
+ ],
+ "name": "lightSpecular()",
+ "description": "Sets the specular color for lights. Like fill(), it affects only\n the elements which are created after it in the code. Specular refers to\n light which bounces off a surface in a preferred direction (rather than\n bouncing in all directions like a diffuse light) and is used for\n creating highlights. The specular quality of a light interacts with the\n specular material qualities set through the specular() and\n shininess() functions.",
+ "syntax": ["lightSpecular(v1, v2, v3)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/lights_.es.json b/content/references/translations/es/processing/lights_.es.json
new file mode 100644
index 000000000..47c835a8a
--- /dev/null
+++ b/content/references/translations/es/processing/lights_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the default ambient light, directional light, falloff, and specular\n values",
+ "related": [
+ "ambientLight_",
+ "directionalLight_",
+ "pointLight_",
+ "spotLight_",
+ "noLights_"
+ ],
+ "name": "lights()",
+ "description": "Sets the default ambient light, directional light, falloff, and specular\n values. The defaults are ambientLight(128, 128, 128) and\n directionalLight(128, 128, 128, 0, 0, -1), lightFalloff(1, 0, 0), and\n lightSpecular(0, 0, 0). Lights need to be included in the draw() to\n remain persistent in a looping program. Placing them in the setup() of a\n looping program will cause them to only have an effect the first time\n through the loop.",
+ "syntax": ["lights()"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/line_.es.json b/content/references/translations/es/processing/line_.es.json
new file mode 100644
index 000000000..75bab136f
--- /dev/null
+++ b/content/references/translations/es/processing/line_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Draws a line (a direct path between two points) to the screen",
+ "related": ["strokeWeight_", "strokeJoin_", "strokeCap_", "beginShape_"],
+ "name": "line()",
+ "description": "Draws a line (a direct path between two points) to the screen. The\n version of line() with four parameters draws the line in 2D. To\n color a line, use the stroke() function. A line cannot be filled,\n therefore the fill() function will not affect the color of a\n line. 2D lines are drawn with a width of one pixel by default, but this\n can be changed with the strokeWeight() function. The version with\n six parameters allows the line to be placed anywhere within XYZ space.\n Drawing this shape in 3D with the z parameter requires the P3D\n parameter in combination with size() as shown in the above example.",
+ "syntax": ["line(x1, y1, x2, y2)", "line(x1, y1, z1, x2, y2, z2)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "x1",
+ "description": "x-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "y1",
+ "description": "y-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "x2",
+ "description": "x-coordinate of the second point",
+ "type": ["float"]
+ },
+ {
+ "name": "y2",
+ "description": "y-coordinate of the second point",
+ "type": ["float"]
+ },
+ {
+ "name": "z1",
+ "description": "z-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "z2",
+ "description": "z-coordinate of the second point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadBytes_.es.json b/content/references/translations/es/processing/loadBytes_.es.json
new file mode 100644
index 000000000..0d8cc89e9
--- /dev/null
+++ b/content/references/translations/es/processing/loadBytes_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Reads the contents of a file or url and places it in a byte\n array",
+ "related": ["loadStrings_", "saveStrings_", "saveBytes_"],
+ "name": "loadBytes()",
+ "description": "Reads the contents of a file and places it in a byte array. If the name of\n the file is used as the parameter, as in the above example, the file must\n be loaded in the sketch's \"data\" directory/folder. \n \n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network. \n \n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null. ",
+ "syntax": ["loadBytes(filename)"],
+ "returns": "byte[]",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of a file in the data folder or a URL.",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadFont_.es.json b/content/references/translations/es/processing/loadFont_.es.json
new file mode 100644
index 000000000..6e9017f07
--- /dev/null
+++ b/content/references/translations/es/processing/loadFont_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Loads a font into a variable of type PFont",
+ "related": ["PFont", "textFont_", "createFont_"],
+ "name": "loadFont()",
+ "description": "Loads a .vlw formatted font into a PFont object. Create a .vlw font\n by selecting \"Create Font...\" from the Tools menu. This tool creates a\n texture for each alphanumeric character and then adds them as a .vlw file\n to the current sketch's data folder. Because the letters are defined as\n textures (and not vector data) the size at which the fonts are created must\n be considered in relation to the size at which they are drawn. For example,\n load a 32pt font if the sketch displays the font at 32 pixels or smaller.\n Conversely, if a 12pt font is loaded and displayed at 48pts, the letters\n will be distorted because the program will be stretching a small graphic to\n a large size. \n \n Like loadImage() and other functions that load data, the\n loadFont() function should not be used inside draw(), because\n it will slow down the sketch considerably, as the font will be re-loaded\n from the disk (or network) on each frame. It's recommended to load files\n inside setup() \n \n To load correctly, fonts must be located in the \"data\" folder of the\n current sketch. Alternatively, the file maybe be loaded from anywhere on\n the local computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename parameter\n can be a URL for a file found on a network. \n \n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null. \n \n Use createFont() (instead of loadFont()) to enable vector\n data to be used with the default renderer setting. This can be helpful when\n many font sizes are needed, or when using any renderer based on the default\n renderer, such as the PDF library.",
+ "syntax": ["loadFont(filename)"],
+ "returns": "PFont",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the font to load",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadImage_.es.json b/content/references/translations/es/processing/loadImage_.es.json
new file mode 100644
index 000000000..d3078dc40
--- /dev/null
+++ b/content/references/translations/es/processing/loadImage_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Loads an image into a variable of type PImage",
+ "related": ["PImage", "image_", "imageMode_", "background_"],
+ "name": "loadImage()",
+ "description": "Loads an image into a variable of type PImage. Four types of images\n ( .gif, .jpg, .tga, .png) images may be loaded.\n To load correctly, images must be located in the data directory of the\n current sketch. \n \n In most cases, load all images in setup() to preload them at the\n start of the program. Loading images inside draw() will reduce the\n speed of a program. Images cannot be loaded outside setup() unless\n they're inside a function that's called after setup() has already\n run. \n \n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network. \n \n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null. \n \n The extension parameter is used to determine the image type in cases\n where the image filename does not end with a proper extension. Specify the\n extension as the second parameter to loadImage(), as shown in the\n third example on this page. Note that CMYK images are not supported. \n \n Depending on the type of error, a PImage object may still be\n returned, but the width and height of the image will be set to -1. This\n happens if bad image data is returned or cannot be decoded properly.\n Sometimes this happens with image URLs that produce a 403 error or that\n redirect to a password prompt, because loadImage() will attempt to\n interpret the HTML as image data.",
+ "syntax": ["loadImage(filename)", "loadImage(filename, extension)"],
+ "returns": "PImage",
+ "type": "function",
+ "category": "image",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of file to load, can be .gif, .jpg, .tga, or a handful of\n other image types depending on your platform",
+ "type": ["String"]
+ },
+ {
+ "name": "extension",
+ "description": "type of image to load, for example \"png\", \"gif\", \"jpg\"",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadJSONArray_.es.json b/content/references/translations/es/processing/loadJSONArray_.es.json
new file mode 100644
index 000000000..8faf30088
--- /dev/null
+++ b/content/references/translations/es/processing/loadJSONArray_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Takes a String, parses its contents, and returns a\n JSONArray",
+ "related": [
+ "JSONArray",
+ "loadJSONObject_",
+ "saveJSONObject_",
+ "saveJSONArray_"
+ ],
+ "name": "loadJSONArray()",
+ "description": "Loads an array of JSON objects from the data folder or a URL, and returns a\n JSONArray. Per standard JSON syntax, the array must be enclosed in a\n pair of hard brackets [], and each object within the array must be\n separated by a comma. \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": ["loadJSONArray(filename)", "loadJSONArray(file)"],
+ "returns": "JSONArray",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of a file in the data folder or a URL",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadJSONObject_.es.json b/content/references/translations/es/processing/loadJSONObject_.es.json
new file mode 100644
index 000000000..90f3f1434
--- /dev/null
+++ b/content/references/translations/es/processing/loadJSONObject_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Loads a JSON from the data folder or a URL, and returns a\n JSONObject",
+ "related": [
+ "JSONObject",
+ "JSONArray",
+ "loadJSONArray_",
+ "saveJSONObject_",
+ "saveJSONArray_"
+ ],
+ "name": "loadJSONObject()",
+ "description": "Loads a JSON from the data folder or a URL, and returns a\n JSONObject. \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": ["loadJSONObject(filename)"],
+ "returns": "JSONObject",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of a file in the data folder or a URL",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadPixels_.es.json b/content/references/translations/es/processing/loadPixels_.es.json
new file mode 100644
index 000000000..ccc5f5f68
--- /dev/null
+++ b/content/references/translations/es/processing/loadPixels_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Loads the pixel data for the display window into the\n pixels[] array",
+ "related": ["pixels", "updatePixels_"],
+ "name": "loadPixels()",
+ "description": "Loads the pixel data of the current display window into the pixels[]\n array. This function must always be called before reading from or writing\n to pixels[]. Subsequent changes to the display window will not be\n reflected in pixels until loadPixels() is called again.\n\n ",
+ "syntax": ["loadPixels()"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/loadShader_.es.json b/content/references/translations/es/processing/loadShader_.es.json
new file mode 100644
index 000000000..fbf46bfe8
--- /dev/null
+++ b/content/references/translations/es/processing/loadShader_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Loads a shader into the PShader object",
+ "related": [],
+ "name": "loadShader()",
+ "description": "Loads a shader into the PShader object. The shader file must be\n loaded in the sketch's \"data\" folder/directory to load correctly.\n Shaders are compatible with the P2D and P3D renderers, but not\n with the default renderer. \n \n Alternatively, the file maybe be loaded from anywhere on the local\n computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename\n parameter can be a URL for a file found on a network. \n \n If the file is not available or an error occurs, null will\n be returned and an error message will be printed to the console.\n The error message does not halt the program, however the null\n value may cause a NullPointerException if your code does not check\n whether the value returned is null. ",
+ "syntax": [
+ "loadShader(fragFilename)",
+ "loadShader(fragFilename, vertFilename)"
+ ],
+ "returns": "PShader",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "shaders",
+ "parameters": [
+ {
+ "name": "fragFilename",
+ "description": "name of fragment shader file",
+ "type": ["String"]
+ },
+ {
+ "name": "vertFilename",
+ "description": "name of vertex shader file",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadShape_.es.json b/content/references/translations/es/processing/loadShape_.es.json
new file mode 100644
index 000000000..84a229170
--- /dev/null
+++ b/content/references/translations/es/processing/loadShape_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Loads geometry into a variable of type PShape",
+ "related": ["PShape", "createShape_"],
+ "name": "loadShape()",
+ "description": "Loads geometry into a variable of type PShape. SVG and OBJ\n files may be loaded. To load correctly, the file must be located\n in the data directory of the current sketch. In most cases,\n loadShape() should be used inside setup() because\n loading shapes inside draw() will reduce the speed of a sketch. \n \n Alternatively, the file maybe be loaded from anywhere on the local\n computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename\n parameter can be a URL for a file found on a network. \n \n If the file is not available or an error occurs, null will\n be returned and an error message will be printed to the console.\n The error message does not halt the program, however the null value\n may cause a NullPointerException if your code does not check whether\n the value returned is null. ",
+ "syntax": ["loadShape(filename)"],
+ "returns": "PShape",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of file to load, can be .svg or .obj",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadStrings_.es.json b/content/references/translations/es/processing/loadStrings_.es.json
new file mode 100644
index 000000000..d6d09ac56
--- /dev/null
+++ b/content/references/translations/es/processing/loadStrings_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Reads the contents of a file or url and creates a String array of\n its individual lines",
+ "related": ["loadBytes_", "saveStrings_", "saveBytes_"],
+ "name": "loadStrings()",
+ "description": "Reads the contents of a file and creates a String array of its individual\n lines. If the name of the file is used as the parameter, as in the above\n example, the file must be loaded in the sketch's \"data\" directory/folder.\n \n \n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network. \n \n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null. \n \n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files are\n moved to other platforms.\n\n\n ",
+ "syntax": ["loadStrings(filename)", "loadStrings(reader)"],
+ "returns": "String[]",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the file or url to load",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadTable_.es.json b/content/references/translations/es/processing/loadTable_.es.json
new file mode 100644
index 000000000..4ca506f6c
--- /dev/null
+++ b/content/references/translations/es/processing/loadTable_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Reads the contents of a file or URL and creates a Table object\n with its values",
+ "related": ["Table", "saveTable_", "loadBytes_", "loadStrings_", "loadXML_"],
+ "name": "loadTable()",
+ "description": "Reads the contents of a file or URL and creates an Table object with its\n values. If a file is specified, it must be located in the sketch's \"data\"\n folder. The filename parameter can also be a URL to a file found online.\n The filename must either end in an extension or an extension must be\n specified in the options parameter. For example, to use\n tab-separated data, include \"tsv\" in the options parameter if the filename\n or URL does not end in .tsv. Note: If an extension is in both\n places, the extension in the options is used. \n \n If the file contains a header row, include \"header\" in the options\n parameter. If the file does not have a header row, then simply omit the\n \"header\" option. \n \n Some CSV files contain newline (CR or LF) characters inside cells. This is\n rare, but adding the \"newlines\" option will handle them properly. (This is\n not enabled by default because the parsing code is much slower.) \n \n When specifying multiple options, separate them with commas, as in:\n loadTable(\"data.csv\", \"header, tsv\") \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": ["loadTable(filename)", "loadTable(filename, options)"],
+ "returns": "Table",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of a file in the data folder or a URL.",
+ "type": ["String"]
+ },
+ {
+ "name": "options",
+ "description": "may contain \"header\", \"tsv\", \"csv\", or \"bin\" separated by commas",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/loadXML_.es.json b/content/references/translations/es/processing/loadXML_.es.json
new file mode 100644
index 000000000..96e038823
--- /dev/null
+++ b/content/references/translations/es/processing/loadXML_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Reads the contents of a file or URL and creates an XML\n object with its values",
+ "related": [
+ "XML",
+ "parseXML_",
+ "saveXML_",
+ "loadBytes_",
+ "loadStrings_",
+ "loadTable_"
+ ],
+ "name": "loadXML()",
+ "description": "Reads the contents of a file or URL and creates an XML\n object with its values. If a file is specified, it must\n be located in the sketch's \"data\" folder. The filename\n parameter can also be a URL to a file found online.
\n All files loaded and saved by the Processing API use\n UTF-8 encoding. If you need to load an XML file that's\n not in UTF-8 format, see the \n developer's reference for the XML object.",
+ "syntax": ["loadXML(filename)"],
+ "returns": "XML",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of a file in the data folder or a URL.",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/log_.es.json b/content/references/translations/es/processing/log_.es.json
new file mode 100644
index 000000000..72c7d8f12
--- /dev/null
+++ b/content/references/translations/es/processing/log_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the natural logarithm (the base-e logarithm) of a\n number",
+ "related": [],
+ "name": "log()",
+ "description": "Calculates the natural logarithm (the base-e logarithm) of a\n number. This function expects the values greater than 0.0.",
+ "syntax": ["log(n)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "number greater than 0.0", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/logicalAND.es.json b/content/references/translations/es/processing/logicalAND.es.json
new file mode 100644
index 000000000..d2c174b75
--- /dev/null
+++ b/content/references/translations/es/processing/logicalAND.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "&& (logical AND)",
+ "brief": "Compares two expressions and returns true only if both evaluate to true",
+ "description": "Compares two expressions and returns true only if both evaluate to true. Returns false if one or both evaluate to false. The following list shows all possible combinations:
true && false // Evaluates false because the second is false false && true // Evaluates false because the first is false true && true // Evaluates true because both are true false && false // Evaluates false because both are false\n",
+ "related": ["logicalOR", "logicalNOT", "if"],
+ "syntax": ["expression1 && expression2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Logical Operators",
+ "parameters": [
+ {
+ "name": "expression1",
+ "description": "any valid expression",
+ "type": []
+ },
+ { "name": "expression2", "description": "any valid expression", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/logicalNOT.es.json b/content/references/translations/es/processing/logicalNOT.es.json
new file mode 100644
index 000000000..ececaa04d
--- /dev/null
+++ b/content/references/translations/es/processing/logicalNOT.es.json
@@ -0,0 +1,14 @@
+{
+ "name": "! (logical NOT)",
+ "brief": "Inverts the Boolean value of an expression",
+ "description": "Inverts the Boolean value of an expression. Returns true if the expression is false and returns false if the expression is true. If the expression (a>b) evaluates to true, then !(a>b) evaluates to false. \n",
+ "related": ["logicalAND", "logicalOR", "if"],
+ "syntax": ["!expression"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Logical Operators",
+ "parameters": [
+ { "name": "expression", "description": "any valid expression", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/logicalOR.es.json b/content/references/translations/es/processing/logicalOR.es.json
new file mode 100644
index 000000000..9e673e0be
--- /dev/null
+++ b/content/references/translations/es/processing/logicalOR.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "|| (logical OR)",
+ "brief": "Compares two expressions and returns true if one or both evaluate to true",
+ "description": "Compares two expressions and returns true if one or both evaluate to true. Returns false only if both expressions are false. The following list shows all possible combinations:
true || false // Evaluates true because the first is true false || true // Evaluates true because the second is true true || true // Evaluates true because both are true false || false // Evaluates false because both are false \n",
+ "related": ["logicalAND", "logicalNOT", "if"],
+ "syntax": ["expression1 || expression2"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Logical Operators",
+ "parameters": [
+ {
+ "name": "expression1",
+ "description": "any valid expression",
+ "type": []
+ },
+ { "name": "expression2", "description": "any valid expression", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/long.es.json b/content/references/translations/es/processing/long.es.json
new file mode 100644
index 000000000..5728e5777
--- /dev/null
+++ b/content/references/translations/es/processing/long.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "long",
+ "brief": "Datatype for large integers",
+ "description": "Datatype for large integers. While integers can be as large as 2,147,483,647 and as low as -2,147,483,648 (stored as 32 bits), a long integer has a minimum value of -9,223,372,036,854,775,808 and a maximum value of 9,223,372,036,854,775,807 (stored as 64 bits). Use this datatype when you need a number to have a greater magnitude than can be stored within an int. When assigning literal values that are larger than this magnitude, it is necessary to also append the qualifier \"L\" to the number, as shown in the example above. Processing functions don't use this datatype, so while they work in the language, you'll usually have to convert to a int using the (int) syntax before passing into a function.\n",
+ "related": ["int"],
+ "syntax": ["long var", "long var = value"],
+ "returns": "",
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Primitive",
+ "parameters": [
+ {
+ "name": "var",
+ "description": "variable name referencing the value",
+ "type": []
+ },
+ { "name": "value", "description": "any integer value", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/loop_.es.json b/content/references/translations/es/processing/loop_.es.json
new file mode 100644
index 000000000..ae2d0322a
--- /dev/null
+++ b/content/references/translations/es/processing/loop_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Causes Processing to continuously execute the code within\n draw()",
+ "related": ["noLoop_", "redraw_", "draw_"],
+ "name": "loop()",
+ "description": "By default, Processing loops through draw() continuously, executing\n the code within it. However, the draw() loop may be stopped by calling\n noLoop(). In that case, the draw() loop can be resumed with\n loop().",
+ "syntax": ["loop()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mag_.es.json b/content/references/translations/es/processing/mag_.es.json
new file mode 100644
index 000000000..fbb3595ae
--- /dev/null
+++ b/content/references/translations/es/processing/mag_.es.json
@@ -0,0 +1,16 @@
+{
+ "brief": "Calculates the magnitude (or length) of a vector",
+ "related": ["dist_"],
+ "name": "mag()",
+ "description": "Calculates the magnitude (or length) of a vector. A vector is a\n direction in space commonly used in computer graphics and linear\n algebra. Because it has no \"start\" position, the magnitude of a vector\n can be thought of as the distance from coordinate (0,0) to its (x,y)\n value. Therefore, mag() is a shortcut for writing dist(0, 0, x, y).",
+ "syntax": ["mag(a, b)", "mag(a, b, c)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "a", "description": "first value", "type": ["float"] },
+ { "name": "b", "description": "second value", "type": ["float"] },
+ { "name": "c", "description": "third value", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/map_.es.json b/content/references/translations/es/processing/map_.es.json
new file mode 100644
index 000000000..44e1b12b8
--- /dev/null
+++ b/content/references/translations/es/processing/map_.es.json
@@ -0,0 +1,38 @@
+{
+ "brief": "Re-maps a number from one range to another",
+ "related": ["norm_", "lerp_"],
+ "name": "map()",
+ "description": "Re-maps a number from one range to another. \n \n In the first example above, the number 25 is converted from a value in the\n range of 0 to 100 into a value that ranges from the left edge of the window\n (0) to the right edge (width). \n \n As shown in the second example, numbers outside of the range are not\n clamped to the minimum and maximum parameters values, because out-of-range\n values are often intentional and useful.",
+ "syntax": ["map(value, start1, stop1, start2, stop2)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the incoming value to be converted",
+ "type": ["float"]
+ },
+ {
+ "name": "start1",
+ "description": "lower bound of the value's current range",
+ "type": ["float"]
+ },
+ {
+ "name": "stop1",
+ "description": "upper bound of the value's current range",
+ "type": ["float"]
+ },
+ {
+ "name": "start2",
+ "description": "lower bound of the value's target range",
+ "type": ["float"]
+ },
+ {
+ "name": "stop2",
+ "description": "upper bound of the value's target range",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/mask_.es.json b/content/references/translations/es/processing/mask_.es.json
new file mode 100644
index 000000000..4a3708334
--- /dev/null
+++ b/content/references/translations/es/processing/mask_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Masks part of an image with another image as an alpha channel",
+ "related": [],
+ "name": "mask()",
+ "description": "Masks part of an image from displaying by loading another image and\n using it as an alpha channel. This mask image should only contain\n grayscale data, but only the blue color channel is used. The mask image\n needs to be the same size as the image to which it is applied. \n \n In addition to using a mask image, an integer array containing the alpha\n channel data can be specified directly. This method is useful for\n creating dynamically generated alpha masks. This array must be of the\n same length as the target image's pixels array and should contain only\n grayscale data of values between 0-255.\n\n\n ",
+ "syntax": ["mask(img)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": [
+ {
+ "name": "img",
+ "description": "image to use as the mask",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/matchAll_.es.json b/content/references/translations/es/processing/matchAll_.es.json
new file mode 100644
index 000000000..7951fc6d2
--- /dev/null
+++ b/content/references/translations/es/processing/matchAll_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "This function is used to apply a regular expression to a piece of\n text",
+ "related": ["match_", "split_", "splitTokens_", "join_", "trim_"],
+ "name": "matchAll()",
+ "description": "This function is used to apply a regular expression to a piece of text, and\n return a list of matching groups (elements found inside parentheses) as a\n two-dimensional String array. If there are no matches, a null value will be\n returned. If no groups are specified in the regular expression, but the\n sequence matches, a two dimensional array is still returned, but the second\n dimension is only of length one. \n \n To use the function, first check to see if the result is null. If the\n result is null, then the sequence did not match at all. If the sequence did\n match, a 2D array is returned. \n \n If there are groups (specified by sets of parentheses) in the regular\n expression, then the contents of each will be returned in the array.\n Assuming a loop with counter variable i, element [i][0] of a regular\n expression match returns the entire matching string, and the match groups\n start at element [i][1] (the first group is [i][1], the second [i][2], and\n so on). \n \n The syntax can be found in the reference for Java's Pattern\n class. For regular expression syntax, read the\n Java\n Tutorial on the topic.",
+ "syntax": ["matchAll(str, regexp)"],
+ "returns": "String[][]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "the String to be searched",
+ "type": ["String"]
+ },
+ {
+ "name": "regexp",
+ "description": "the regexp to be used for matching",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/match_.es.json b/content/references/translations/es/processing/match_.es.json
new file mode 100644
index 000000000..a969a8ad6
--- /dev/null
+++ b/content/references/translations/es/processing/match_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "The function is used to apply a regular expression to a\n piece of text, and return matching groups (elements found inside\n parentheses) as a String array",
+ "related": ["matchAll_", "split_", "splitTokens_", "join_", "trim_"],
+ "name": "match()",
+ "description": "This function is used to apply a regular expression to a piece of text, and\n return matching groups (elements found inside parentheses) as a String\n array. If there are no matches, a null value will be returned. If no groups\n are specified in the regular expression, but the sequence matches, an array\n of length 1 (with the matched text as the first element of the array) will\n be returned. \n \n To use the function, first check to see if the result is null. If the\n result is null, then the sequence did not match at all. If the sequence did\n match, an array is returned. \n \n If there are groups (specified by sets of parentheses) in the regular\n expression, then the contents of each will be returned in the array.\n Element [0] of a regular expression match returns the entire matching\n string, and the match groups start at element [1] (the first group is [1],\n the second [2], and so on). \n \n The syntax can be found in the reference for Java's Pattern\n class. For regular expression syntax, read the\n Java\n Tutorial on the topic.",
+ "syntax": ["match(str, regexp)"],
+ "returns": "String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "str",
+ "description": "the String to be searched",
+ "type": ["String"]
+ },
+ {
+ "name": "regexp",
+ "description": "the regexp to be used for matching",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/max_.es.json b/content/references/translations/es/processing/max_.es.json
new file mode 100644
index 000000000..6c20e5390
--- /dev/null
+++ b/content/references/translations/es/processing/max_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Determines the largest value in a sequence of numbers",
+ "related": ["min_"],
+ "name": "max()",
+ "description": "Determines the largest value in a sequence of numbers, and then returns that\n value. max() accepts either two or three float or int\n values as parameters, or an array of any length.",
+ "syntax": ["max(a, b)", "max(a, b, c)", "max(list)"],
+ "returns": "int or float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "first number to compare",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "b",
+ "description": "second number to compare",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "c",
+ "description": "third number to compare",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "list",
+ "description": "array of numbers to compare",
+ "type": ["int[]", "float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/millis_.es.json b/content/references/translations/es/processing/millis_.es.json
new file mode 100644
index 000000000..f9ae011ba
--- /dev/null
+++ b/content/references/translations/es/processing/millis_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the number of milliseconds (thousandths of a second) since\n starting an applet",
+ "related": ["second_", "minute_", "hour_", "day_", "month_", "year_"],
+ "name": "millis()",
+ "description": "Returns the number of milliseconds (thousandths of a second) since\n starting an applet. This information is often used for timing animation\n sequences.\n\n\n ",
+ "syntax": ["millis()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/min_.es.json b/content/references/translations/es/processing/min_.es.json
new file mode 100644
index 000000000..36d157ded
--- /dev/null
+++ b/content/references/translations/es/processing/min_.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "Determines the smallest value in a sequence of numbers",
+ "related": ["max_"],
+ "name": "min()",
+ "description": "Determines the smallest value in a sequence of numbers, and then returns that\n value. min() accepts either two or three float or int\n values as parameters, or an array of any length.",
+ "syntax": ["min(a, b)", "min(a, b, c)", "min(list)"],
+ "returns": "float or int",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "a", "description": "first number", "type": ["float", "int"] },
+ { "name": "b", "description": "second number", "type": ["float", "int"] },
+ { "name": "c", "description": "third number", "type": ["float", "int"] },
+ {
+ "name": "list",
+ "description": "array of numbers to compare",
+ "type": ["int[]", "float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/minus.es.json b/content/references/translations/es/processing/minus.es.json
new file mode 100644
index 000000000..e701eed47
--- /dev/null
+++ b/content/references/translations/es/processing/minus.es.json
@@ -0,0 +1,15 @@
+{
+ "name": "- (minus)",
+ "brief": "Subtracts one value from another and may also be used to negate a value",
+ "description": "Subtracts one value from another and may also be used to negate a value. As a subtraction operator, the value of the second parameter is subtracted from the first. For example, 5 - 3 yields the number 2. As a negation operator, it is equivalent to multiplying a number by -1. For example, -5 is the same as 5 * -1. \n",
+ "related": ["decrement", "subtractassign", "addition"],
+ "syntax": ["-value1", "value1 - value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ { "name": "value1", "description": "int or float", "type": [] },
+ { "name": "value2", "description": "int or float", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/minute_.es.json b/content/references/translations/es/processing/minute_.es.json
new file mode 100644
index 000000000..4ba9cc6c7
--- /dev/null
+++ b/content/references/translations/es/processing/minute_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the current minute as a value from 0 - 59",
+ "related": ["millis_", "second_", "hour_", "day_", "month_", "year_"],
+ "name": "minute()",
+ "description": "Processing communicates with the clock on your computer. The\n minute() function returns the current minute as a value from 0 - 59.",
+ "syntax": ["minute()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/modelX_.es.json b/content/references/translations/es/processing/modelX_.es.json
new file mode 100644
index 000000000..016f3ed5d
--- /dev/null
+++ b/content/references/translations/es/processing/modelX_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Returns the three-dimensional X, Y, Z position in model space",
+ "related": ["modelY_", "modelZ_"],
+ "name": "modelX()",
+ "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the X value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The X value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use.\n
\n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.",
+ "syntax": ["modelX(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "coordinates",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "3D x-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "3D y-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "3D z-coordinate to be mapped",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/modelY_.es.json b/content/references/translations/es/processing/modelY_.es.json
new file mode 100644
index 000000000..813a8fe2a
--- /dev/null
+++ b/content/references/translations/es/processing/modelY_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Returns the three-dimensional X, Y, Z position in model space",
+ "related": ["modelX_", "modelZ_"],
+ "name": "modelY()",
+ "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the Y value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The Y value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use. \n \n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.",
+ "syntax": ["modelY(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "coordinates",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "3D x-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "3D y-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "3D z-coordinate to be mapped",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/modelZ_.es.json b/content/references/translations/es/processing/modelZ_.es.json
new file mode 100644
index 000000000..3289df04b
--- /dev/null
+++ b/content/references/translations/es/processing/modelZ_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Returns the three-dimensional X, Y, Z position in model space",
+ "related": ["modelX_", "modelY_"],
+ "name": "modelZ()",
+ "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the Z value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The Z value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use. \n \n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.",
+ "syntax": ["modelZ(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "coordinates",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "3D x-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "3D y-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "3D z-coordinate to be mapped",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/modulo.es.json b/content/references/translations/es/processing/modulo.es.json
new file mode 100644
index 000000000..b608172ce
--- /dev/null
+++ b/content/references/translations/es/processing/modulo.es.json
@@ -0,0 +1,15 @@
+{
+ "name": "% (modulo)",
+ "brief": "Calculates the remainder when one number is divided by another",
+ "description": "Calculates the remainder when one number is divided by another. For example, when 52.1 is divided by 10, the divisor (10) goes into the dividend (52.1) five times (5 * 10 == 50), and there is a remainder of 2.1 (52.1 - 50 == 2.1). Thus, 52.1 % 10 produces 2.1. \n \nNote that when the divisor is greater than the dividend, the remainder constitutes the value of the entire dividend. That is, a number cannot be divided by any number larger than itself. For example, when 9 is divided by 10, the result is zero with a remainder of 9. Thus, 9 % 10 produces 9. \n \nModulo is extremely useful for ensuring values stay within a boundary, such as when keeping a shape on the screen. (See the second example above.)\n",
+ "related": ["divide"],
+ "syntax": ["value1 % value2"],
+ "returns": "int or float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ { "name": "value1", "description": "int or float", "type": [] },
+ { "name": "value2", "description": "int or float", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/month_.es.json b/content/references/translations/es/processing/month_.es.json
new file mode 100644
index 000000000..8c3ab3fee
--- /dev/null
+++ b/content/references/translations/es/processing/month_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the current month as a value from 1 - 12",
+ "related": ["millis_", "second_", "minute_", "hour_", "day_", "year_"],
+ "name": "month()",
+ "description": "Processing communicates with the clock on your computer. The\n month() function returns the current month as a value from 1 - 12.",
+ "syntax": ["month()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mouseButton.es.json b/content/references/translations/es/processing/mouseButton.es.json
new file mode 100644
index 000000000..d9dfdbff5
--- /dev/null
+++ b/content/references/translations/es/processing/mouseButton.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "Shows which mouse button is pressed",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseWheel_"
+ ],
+ "name": "mouseButton",
+ "description": "When a mouse button is pressed, the value of the system variable\n mouseButton is set to either LEFT, RIGHT, or\n CENTER, depending on which button is pressed. (If no button is\n pressed, mouseButton may be reset to 0. For that reason,\n it's best to use mousePressed first to test if any button is being\n pressed, and only then test the value of mouseButton, as shown in\n the examples above.)\n\n\n ",
+ "category": "input",
+ "subcategory": "mouse",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/mouseClicked_.es.json b/content/references/translations/es/processing/mouseClicked_.es.json
new file mode 100644
index 000000000..d500ee82b
--- /dev/null
+++ b/content/references/translations/es/processing/mouseClicked_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Called once after a mouse button has been pressed and then\n released",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mouseClicked()",
+ "description": "The mouseClicked() function is called after a mouse button\n has been pressed and then released. \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.\n\n ",
+ "syntax": ["mouseClicked()", "mouseClicked(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "mouse",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mouseDragged_.es.json b/content/references/translations/es/processing/mouseDragged_.es.json
new file mode 100644
index 000000000..696e5a7dc
--- /dev/null
+++ b/content/references/translations/es/processing/mouseDragged_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Called once every time the mouse moves and a mouse button is\n pressed",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mouseDragged()",
+ "description": "The mouseDragged() function is called once every time the mouse\n moves while a mouse button is pressed. (If a button is not being\n pressed, mouseMoved() is called instead.) \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.",
+ "syntax": ["mouseDragged()", "mouseDragged(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "mouse",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mouseMoved_.es.json b/content/references/translations/es/processing/mouseMoved_.es.json
new file mode 100644
index 000000000..5539af11e
--- /dev/null
+++ b/content/references/translations/es/processing/mouseMoved_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Called every time the mouse moves and a mouse button is not\n pressed",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mouseMoved()",
+ "description": "The mouseMoved() function is called every time the mouse moves and a\n mouse button is not pressed. (If a button is being pressed,\n mouseDragged() is called instead.) \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.",
+ "syntax": ["mouseMoved()", "mouseMoved(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "mouse",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mousePressed.es.json b/content/references/translations/es/processing/mousePressed.es.json
new file mode 100644
index 000000000..dc13a5500
--- /dev/null
+++ b/content/references/translations/es/processing/mousePressed.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "Variable storing if a mouse button is pressed",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mousePressed",
+ "description": "The mousePressed() function is called once after every time a\n mouse button is pressed. The mouseButton variable (see the\n related reference entry) can be used to determine which button has\n been pressed.\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops\n listening for events.",
+ "category": "input",
+ "subcategory": "mouse",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/mousePressed_.es.json b/content/references/translations/es/processing/mousePressed_.es.json
new file mode 100644
index 000000000..ebe1f505e
--- /dev/null
+++ b/content/references/translations/es/processing/mousePressed_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Called once after every time a mouse button is pressed",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mousePressed()",
+ "description": "The mousePressed() function is called once after every time a mouse\n button is pressed. The mouseButton variable (see the related\n reference entry) can be used to determine which button has been pressed.\n \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.\n\n ",
+ "syntax": ["mousePressed()", "mousePressed(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "mouse",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mouseReleased_.es.json b/content/references/translations/es/processing/mouseReleased_.es.json
new file mode 100644
index 000000000..249a57135
--- /dev/null
+++ b/content/references/translations/es/processing/mouseReleased_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Called every time a mouse button is released",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mouseReleased()",
+ "description": "The mouseReleased() function is called every time a mouse button is\n released. \n \n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.",
+ "syntax": ["mouseReleased()", "mouseReleased(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "mouse",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/mouseWheel_.es.json b/content/references/translations/es/processing/mouseWheel_.es.json
new file mode 100644
index 000000000..ed3b72f81
--- /dev/null
+++ b/content/references/translations/es/processing/mouseWheel_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "The code within the mouseWheel() event function\n is run when the mouse wheel is moved",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton"
+ ],
+ "name": "mouseWheel()",
+ "description": "The code within the mouseWheel() event function\n is run when the mouse wheel is moved. (Some mice don't\n have wheels and this function is only applicable with\n mice that have a wheel.) The getCount() function\n used within mouseWheel() returns positive values\n when the mouse wheel is rotated down (toward the user),\n and negative values for the other direction (up or away\n from the user). On OS X with \"natural\" scrolling enabled,\n the values are opposite.\n
\n Mouse and keyboard events only work when a program has\n draw(). Without draw(), the code is only\n run once and then stops listening for events.",
+ "syntax": ["mouseWheel(event)"],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "mouse",
+ "parameters": [
+ { "name": "event", "description": "the MouseEvent", "type": ["MouseEvent"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/mouseX.es.json b/content/references/translations/es/processing/mouseX.es.json
new file mode 100644
index 000000000..e52bb7e36
--- /dev/null
+++ b/content/references/translations/es/processing/mouseX.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "The system variable that always contains the current horizontal coordinate of the mouse",
+ "related": [
+ "mouseY",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mouseX",
+ "description": "The system variable mouseX always contains the current horizontal\n coordinate of the mouse.\n
\n Note that Processing can only track the mouse position when the pointer\n is over the current window. The default value of mouseX is 0,\n so 0 will be returned until the mouse moves in front of the sketch\n window. (This typically happens when a sketch is first run.) Once the\n mouse moves away from the window, mouseX will continue to report\n its most recent position.",
+ "category": "input",
+ "subcategory": "mouse",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/mouseY.es.json b/content/references/translations/es/processing/mouseY.es.json
new file mode 100644
index 000000000..56eded55d
--- /dev/null
+++ b/content/references/translations/es/processing/mouseY.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "The system variable that always contains the current vertical coordinate of the mouse",
+ "related": [
+ "mouseX",
+ "pmouseX",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "mouseY",
+ "description": "The system variable mouseY always contains the current vertical\n coordinate of the mouse.\n
\n Note that Processing can only track the mouse position when the pointer\n is over the current window. The default value of mouseY is 0,\n so 0 will be returned until the mouse moves in front of the sketch\n window. (This typically happens when a sketch is first run.) Once the\n mouse moves away from the window, mouseY will continue to report\n its most recent position.",
+ "category": "input",
+ "subcategory": "mouse",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/multilinecomment.es.json b/content/references/translations/es/processing/multilinecomment.es.json
new file mode 100644
index 000000000..d4239dd3f
--- /dev/null
+++ b/content/references/translations/es/processing/multilinecomment.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "/* */ (multiline comment)",
+ "brief": "Explanatory notes embedded within the code",
+ "description": "Explanatory notes embedded within the code. Comments are used to remind yourself and to inform others about the function of your program. Multiline comments are used for large text descriptions of code or to comment out chunks of code while debugging applications. Comments are ignored by the compiler.\n",
+ "related": ["comment", "doccomment"],
+ "syntax": ["/*", " comment", "*/"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "comment",
+ "description": "any sequence of characters",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/multiply.es.json b/content/references/translations/es/processing/multiply.es.json
new file mode 100644
index 000000000..52a5d5a75
--- /dev/null
+++ b/content/references/translations/es/processing/multiply.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "* (multiply)",
+ "brief": "Multiplies the values of the two parameters",
+ "description": "Multiplies the values of the two parameters. Multiplication is equivalent to a sequence of addition. For example 5 * 4 is equivalent to 5 + 5 + 5 + 5.\n",
+ "related": ["addition", "divide"],
+ "syntax": ["value1 * value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ {
+ "name": "value1",
+ "description": "int, float, byte, or char",
+ "type": []
+ },
+ { "name": "value2", "description": "int, float, byte, or char", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/multiplyassign.es.json b/content/references/translations/es/processing/multiplyassign.es.json
new file mode 100644
index 000000000..f3c759509
--- /dev/null
+++ b/content/references/translations/es/processing/multiplyassign.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "*= (multiply assign)",
+ "brief": "Combines multiplication with assignment",
+ "description": "Combines multiplication with assignment. The expression a *= b is equivalent to a = a * b. \n",
+ "related": ["multiply", "assign"],
+ "syntax": ["value1 *= value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ { "name": "value1", "description": "int or float", "type": [] },
+ {
+ "name": "value2",
+ "description": "any numerical value the same datatype as value1",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/new.es.json b/content/references/translations/es/processing/new.es.json
new file mode 100644
index 000000000..ee3ca3a1e
--- /dev/null
+++ b/content/references/translations/es/processing/new.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "new",
+ "brief": "Creates a \"new\" object",
+ "description": "Creates a \"new\" object. The keyword new is typically used similarly to the applications in the above example. In this example, a new object \"h1\" of the datatype \"HLine\" is created. On the following line, a new array of floats called \"speeds\" is created.\n",
+ "related": [],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/nf_.es.json b/content/references/translations/es/processing/nf_.es.json
new file mode 100644
index 000000000..c0bb832c3
--- /dev/null
+++ b/content/references/translations/es/processing/nf_.es.json
@@ -0,0 +1,45 @@
+{
+ "brief": "Utility function for formatting numbers into strings",
+ "related": ["nfs_", "nfp_", "nfc_"],
+ "name": "nf()",
+ "description": "Utility function for formatting numbers into strings. There are two\n versions: one for formatting floats, and one for formatting ints. The\n values for the digits and right parameters should always be\n positive integers. The left parameter should be positive or 0. If it\n is zero, only the right side is formatted. \n \n As shown in the above example, nf() is used to add zeros to the left\n and/or right of a number. This is typically for aligning a list of numbers.\n To remove digits from a floating-point number, use the\n int(), ceil(), floor(), or round() functions.",
+ "syntax": [
+ "nf(num)",
+ "nf(nums)",
+ "nf(nums, digits)",
+ "nf(num, digits)",
+ "nf(nums, left, right)",
+ "nf(num, left, right)"
+ ],
+ "returns": "String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "nums",
+ "description": "the numbers to format",
+ "type": ["int[]", "float[]"]
+ },
+ {
+ "name": "digits",
+ "description": "number of digits to pad with zero",
+ "type": ["int"]
+ },
+ {
+ "name": "num",
+ "description": "the number to format",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "left",
+ "description": "number of digits to the left of the decimal point",
+ "type": ["int"]
+ },
+ {
+ "name": "right",
+ "description": "number of digits to the right of the decimal point",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/nfc_.es.json b/content/references/translations/es/processing/nfc_.es.json
new file mode 100644
index 000000000..f174284ca
--- /dev/null
+++ b/content/references/translations/es/processing/nfc_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Utility function for formatting numbers into strings and placing\n appropriate commas to mark units of 1000",
+ "related": ["nf_", "nfp_", "nfs_"],
+ "name": "nfc()",
+ "description": "Utility function for formatting numbers into strings and placing\n appropriate commas to mark units of 1000. There are four versions: one for\n formatting ints, one for formatting an array of ints, one for formatting\n floats, and one for formatting an array of floats. \n \n The value for the right parameter should always be a positive\n integer. \n \n For a non-US locale, this will insert periods instead of commas,\n or whatever is appropriate for that region.",
+ "syntax": ["nfc(nums)", "nfc(num)", "nfc(nums, right)", "nfc(num, right)"],
+ "returns": "String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "nums",
+ "description": "the numbers to format",
+ "type": ["int[]", "float[]"]
+ },
+ {
+ "name": "num",
+ "description": "the number to format",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "right",
+ "description": "number of digits to the right of the decimal point",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/nfp_.es.json b/content/references/translations/es/processing/nfp_.es.json
new file mode 100644
index 000000000..c0ee91444
--- /dev/null
+++ b/content/references/translations/es/processing/nfp_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Utility function for formatting numbers into strings",
+ "related": ["nf_", "nfs_", "nfc_"],
+ "name": "nfp()",
+ "description": "Utility function for formatting numbers into strings. Similar to nf()\n but puts a \"+\" in front of positive numbers and a \"-\" in front of negative\n numbers. There are two versions: one for formatting floats, and one for\n formatting ints. The values for the digits, left, and\n right parameters should always be positive integers.",
+ "syntax": [
+ "nfp(num, digits)",
+ "nfp(nums, digits)",
+ "nfp(nums, left, right)",
+ "nfp(num, left, right)"
+ ],
+ "returns": "String or String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "num",
+ "description": "the number to format",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "digits",
+ "description": "number of digits to pad with zeroes",
+ "type": ["int"]
+ },
+ {
+ "name": "nums",
+ "description": "the numbers to format",
+ "type": ["int[]", "float[]"]
+ },
+ {
+ "name": "left",
+ "description": "the number of digits to the left of the decimal point",
+ "type": ["int"]
+ },
+ {
+ "name": "right",
+ "description": "the number of digits to the right of the decimal point",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/nfs_.es.json b/content/references/translations/es/processing/nfs_.es.json
new file mode 100644
index 000000000..ac35b8b04
--- /dev/null
+++ b/content/references/translations/es/processing/nfs_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Utility function for formatting numbers into strings",
+ "related": ["nf_", "nfp_", "nfc_"],
+ "name": "nfs()",
+ "description": "Utility function for formatting numbers into strings. Similar to\n nf() but leaves a blank space in front of positive numbers so\n they align with negative numbers in spite of the minus symbol. There are\n two versions, one for formatting floats and one for formatting ints. The\n values for the digits, left, and right parameters\n should always be positive integers.",
+ "syntax": [
+ "nfs(num, digits)",
+ "nfs(nums, digits)",
+ "nfs(nums, left, right)",
+ "nfs(num, left, right)"
+ ],
+ "returns": "String or String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "num",
+ "description": "the number to format",
+ "type": ["int", "float"]
+ },
+ {
+ "name": "digits",
+ "description": "number of digits to pad with zeroes",
+ "type": ["int"]
+ },
+ {
+ "name": "nums",
+ "description": "the numbers to format",
+ "type": ["int[]", "float[]"]
+ },
+ {
+ "name": "left",
+ "description": "the number of digits to the left of the decimal point",
+ "type": ["int"]
+ },
+ {
+ "name": "right",
+ "description": "the number of digits to the right of the decimal point",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/noClip_.es.json b/content/references/translations/es/processing/noClip_.es.json
new file mode 100644
index 000000000..797850978
--- /dev/null
+++ b/content/references/translations/es/processing/noClip_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Disables the clipping previously started by the clip() function",
+ "related": [],
+ "name": "noClip()",
+ "description": "Disables the clipping previously started by the clip() function.",
+ "syntax": ["noClip()"],
+ "returns": "void",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noCursor_.es.json b/content/references/translations/es/processing/noCursor_.es.json
new file mode 100644
index 000000000..27b9e8dde
--- /dev/null
+++ b/content/references/translations/es/processing/noCursor_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Hides the cursor from view",
+ "related": ["cursor_"],
+ "name": "noCursor()",
+ "description": "Hides the cursor from view. Will not work when running the program in a\n web browser or when running in full screen (Present) mode.\n\n ",
+ "syntax": ["noCursor()"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noFill_.es.json b/content/references/translations/es/processing/noFill_.es.json
new file mode 100644
index 000000000..ba5c22f2a
--- /dev/null
+++ b/content/references/translations/es/processing/noFill_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Disables filling geometry",
+ "related": ["fill_", "stroke_", "noStroke_"],
+ "name": "noFill()",
+ "description": "Disables filling geometry. If both noStroke() and noFill()\n are called, nothing will be drawn to the screen.",
+ "syntax": ["noFill()"],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noLights_.es.json b/content/references/translations/es/processing/noLights_.es.json
new file mode 100644
index 000000000..0c376cf1b
--- /dev/null
+++ b/content/references/translations/es/processing/noLights_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Disable all lighting",
+ "related": ["lights_"],
+ "name": "noLights()",
+ "description": "Disable all lighting. Lighting is turned off by default and enabled with\n the lights() function. This function can be used to disable\n lighting so that 2D geometry (which does not require lighting) can be\n drawn after a set of lighted 3D geometry.",
+ "syntax": ["noLights()"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noLoop_.es.json b/content/references/translations/es/processing/noLoop_.es.json
new file mode 100644
index 000000000..d75048722
--- /dev/null
+++ b/content/references/translations/es/processing/noLoop_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Stops Processing from continuously executing the code within draw()",
+ "related": ["loop_", "redraw_", "draw_"],
+ "name": "noLoop()",
+ "description": "Stops Processing from continuously executing the code within\n draw(). If loop() is called, the code in draw()\n begin to run continuously again. If using noLoop() in\n setup(), it should be the last line inside the block.\n
\n When noLoop() is used, it's not possible to manipulate or access\n the screen inside event handling functions such as mousePressed()\n or keyPressed(). Instead, use those functions to call\n redraw() or loop(), which will run draw(), which\n can update the screen properly. This means that when noLoop() has been\n called, no drawing can happen, and functions like saveFrame() or\n loadPixels() may not be used.\n
\n Note that if the sketch is resized, redraw() will be called to\n update the sketch, even after noLoop() has been specified.\n Otherwise, the sketch would enter an odd state until loop() was called.",
+ "syntax": ["noLoop()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noSmooth_.es.json b/content/references/translations/es/processing/noSmooth_.es.json
new file mode 100644
index 000000000..6952ec2f4
--- /dev/null
+++ b/content/references/translations/es/processing/noSmooth_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Draws all geometry and fonts with jagged (aliased)\n edges and images with hard edges between the pixels\n when enlarged rather than interpolating pixels",
+ "related": [],
+ "name": "noSmooth()",
+ "description": "Draws all geometry and fonts with jagged (aliased)\n edges and images with hard edges between the pixels\n when enlarged rather than interpolating pixels. Note\n that smooth() is active by default, so it is necessary\n to call noSmooth() to disable smoothing of geometry,\n fonts, and images. Since the release of Processing 3.0,\n the noSmooth() function can only be run once for each\n sketch, either at the top of a sketch without a setup(),\n or after the size() function when used in a sketch with\n setup(). See the examples above for both scenarios.",
+ "syntax": ["noSmooth()"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noStroke_.es.json b/content/references/translations/es/processing/noStroke_.es.json
new file mode 100644
index 000000000..40cddf12e
--- /dev/null
+++ b/content/references/translations/es/processing/noStroke_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Disables drawing the stroke (outline)",
+ "related": ["stroke_", "fill_", "noFill_"],
+ "name": "noStroke()",
+ "description": "Disables drawing the stroke (outline). If both noStroke() and\n noFill() are called, nothing will be drawn to the screen.",
+ "syntax": ["noStroke()"],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noTint_.es.json b/content/references/translations/es/processing/noTint_.es.json
new file mode 100644
index 000000000..448f0c9bd
--- /dev/null
+++ b/content/references/translations/es/processing/noTint_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Removes the current fill value for displaying images and reverts to\n displaying images with their original hues",
+ "related": ["tint_", "image_"],
+ "name": "noTint()",
+ "description": "Removes the current fill value for displaying images and reverts to\n displaying images with their original hues.",
+ "syntax": ["noTint()"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "loading & displaying",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/noiseDetail_.es.json b/content/references/translations/es/processing/noiseDetail_.es.json
new file mode 100644
index 000000000..6c0c0f149
--- /dev/null
+++ b/content/references/translations/es/processing/noiseDetail_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Adjusts the character and level of detail produced by the Perlin\n noise function",
+ "related": ["noise_", "noiseDetail_"],
+ "name": "noiseDetail()",
+ "description": "Adjusts the character and level of detail produced by the Perlin noise\n function. Similar to harmonics in physics, noise is computed over several\n octaves. Lower octaves contribute more to the output signal and as such\n define the overall intensity of the noise, whereas higher octaves create\n finer-grained details in the noise sequence. \n \n By default, noise is computed over 4 octaves with each octave contributing\n exactly half than its predecessor, starting at 50% strength for the first\n octave. This falloff amount can be changed by adding an additional function\n parameter. For example, a falloff factor of 0.75 means each octave will now\n have 75% impact (25% less) of the previous lower octave. While any number\n between 0.0 and 1.0 is valid, note that values greater than 0.5 may result\n in noise() returning values greater than 1.0. \n \n By changing these parameters, the signal created by the noise()\n function can be adapted to fit very specific needs and characteristics.",
+ "syntax": ["noiseDetail(lod)", "noiseDetail(lod, falloff)"],
+ "returns": "void",
+ "type": "function",
+ "category": "math",
+ "subcategory": "random",
+ "parameters": [
+ {
+ "name": "lod",
+ "description": "number of octaves to be used by the noise",
+ "type": ["int"]
+ },
+ {
+ "name": "falloff",
+ "description": "falloff factor for each octave",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/noiseSeed_.es.json b/content/references/translations/es/processing/noiseSeed_.es.json
new file mode 100644
index 000000000..ab3cf32e6
--- /dev/null
+++ b/content/references/translations/es/processing/noiseSeed_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Sets the seed value for noise()",
+ "related": ["noise_", "noiseDetail_", "random_", "randomSeed_"],
+ "name": "noiseSeed()",
+ "description": "Sets the seed value for noise(). By default, noise()\n produces different results each time the program is run. Set the\n value parameter to a constant to return the same pseudo-random\n numbers each time the software is run.",
+ "syntax": ["noiseSeed(seed)"],
+ "returns": "void",
+ "type": "function",
+ "category": "math",
+ "subcategory": "random",
+ "parameters": [
+ { "name": "seed", "description": "seed value", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/noise_.es.json b/content/references/translations/es/processing/noise_.es.json
new file mode 100644
index 000000000..078629fdf
--- /dev/null
+++ b/content/references/translations/es/processing/noise_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Returns the Perlin noise value at specified coordinates",
+ "related": ["noiseSeed_", "noiseDetail_", "random_"],
+ "name": "noise()",
+ "description": "Returns the Perlin noise value at specified coordinates. Perlin noise is a\n random sequence generator producing a more natural, harmonic succession of\n numbers than that of the standard random() function. It was\n developed by Ken Perlin in the 1980s and has been used in graphical\n applications to generate procedural textures, shapes, terrains, and other\n seemingly organic forms. \n \n In contrast to the random() function, Perlin noise is defined in an\n infinite n-dimensional space, in which each pair of coordinates corresponds\n to a fixed semi-random value (fixed only for the lifespan of the program).\n The resulting value will always be between 0.0 and 1.0. Processing can\n compute 1D, 2D and 3D noise, depending on the number of coordinates given.\n The noise value can be animated by moving through the noise space, as\n demonstrated in the first example above. The 2nd and 3rd dimensions can\n also be interpreted as time. \n \n The actual noise structure is similar to that of an audio signal, in\n respect to the function's use of frequencies. Similar to the concept of\n harmonics in physics, Perlin noise is computed over several octaves which\n are added together for the final result. \n \n Another way to adjust the character of the resulting sequence is the scale\n of the input coordinates. As the function works within an infinite space,\n the value of the coordinates doesn't matter as such; only the\n distance between successive coordinates is important (such as when\n using noise() within a loop). As a general rule, the smaller the\n difference between coordinates, the smoother the resulting noise sequence.\n Steps of 0.005-0.03 work best for most applications, but this will differ\n depending on use. \n \n There have been debates over the accuracy of the implementation of noise in\n Processing. For clarification, it's an implementation of \"classic Perlin\n noise\" from 1983, and not the newer \"simplex noise\" method from 2001.",
+ "syntax": ["noise(x)", "noise(x, y)", "noise(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "random",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "x-coordinate in noise space",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate in noise space",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z-coordinate in noise space",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/norm_.es.json b/content/references/translations/es/processing/norm_.es.json
new file mode 100644
index 000000000..4a1f53681
--- /dev/null
+++ b/content/references/translations/es/processing/norm_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Normalizes a number from another range into a value between 0 and\n 1",
+ "related": ["map_", "lerp_"],
+ "name": "norm()",
+ "description": "Normalizes a number from another range into a value between 0 and 1.\n Identical to map(value, low, high, 0, 1). \n \n Numbers outside of the range are not clamped to 0 and 1, because\n out-of-range values are often intentional and useful. (See the second\n example above.)",
+ "syntax": ["norm(value, start, stop)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the incoming value to be converted",
+ "type": ["float"]
+ },
+ {
+ "name": "start",
+ "description": "lower bound of the value's current range",
+ "type": ["float"]
+ },
+ {
+ "name": "stop",
+ "description": "upper bound of the value's current range",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/normal_.es.json b/content/references/translations/es/processing/normal_.es.json
new file mode 100644
index 000000000..acfafbde6
--- /dev/null
+++ b/content/references/translations/es/processing/normal_.es.json
@@ -0,0 +1,16 @@
+{
+ "brief": "Sets the current normal vector",
+ "related": ["beginShape_", "endShape_", "lights_"],
+ "name": "normal()",
+ "description": "Sets the current normal vector. Used for drawing three dimensional shapes and\n surfaces, normal() specifies a vector perpendicular to a shape's\n surface which, in turn, determines how lighting affects it. Processing\n attempts to automatically assign normals to shapes, but since that's\n imperfect, this is a better option when you want more control. This function\n is identical to glNormal3f() in OpenGL.",
+ "syntax": ["normal(nx, ny, nz)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ { "name": "nx", "description": "x direction", "type": ["float"] },
+ { "name": "ny", "description": "y direction", "type": ["float"] },
+ { "name": "nz", "description": "z direction", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/null.es.json b/content/references/translations/es/processing/null.es.json
new file mode 100644
index 000000000..7fdf6c127
--- /dev/null
+++ b/content/references/translations/es/processing/null.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "null",
+ "brief": "Special value used to signify the target is not a valid data element",
+ "description": "Special value used to signify the target is not a valid data element. In Processing, you may run across the keyword null when trying to access data which is not there.\n",
+ "related": [],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/ortho_.es.json b/content/references/translations/es/processing/ortho_.es.json
new file mode 100644
index 000000000..fe6fd1aa0
--- /dev/null
+++ b/content/references/translations/es/processing/ortho_.es.json
@@ -0,0 +1,47 @@
+{
+ "brief": "Sets an orthographic projection and defines a parallel clipping\n volume",
+ "related": [],
+ "name": "ortho()",
+ "description": "Sets an orthographic projection and defines a parallel clipping volume. All\n objects with the same dimension appear the same size, regardless of whether\n they are near or far from the camera. The parameters to this function specify\n the clipping volume where left and right are the minimum and maximum x\n values, top and bottom are the minimum and maximum y values, and near and far\n are the minimum and maximum z values. If no parameters are given, the default\n is used: ortho(-width/2, width/2, -height/2, height/2).",
+ "syntax": [
+ "ortho()",
+ "ortho(left, right, bottom, top)",
+ "ortho(left, right, bottom, top, near, far)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": [
+ {
+ "name": "left",
+ "description": "left plane of the clipping volume",
+ "type": ["float"]
+ },
+ {
+ "name": "right",
+ "description": "right plane of the clipping volume",
+ "type": ["float"]
+ },
+ {
+ "name": "bottom",
+ "description": "bottom plane of the clipping volume",
+ "type": ["float"]
+ },
+ {
+ "name": "top",
+ "description": "top plane of the clipping volume",
+ "type": ["float"]
+ },
+ {
+ "name": "near",
+ "description": "maximum distance from the origin to the viewer",
+ "type": ["float"]
+ },
+ {
+ "name": "far",
+ "description": "maximum distance from the origin away from the viewer",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/parentheses.es.json b/content/references/translations/es/processing/parentheses.es.json
new file mode 100644
index 000000000..aa7947cf6
--- /dev/null
+++ b/content/references/translations/es/processing/parentheses.es.json
@@ -0,0 +1,29 @@
+{
+ "name": "() (parentheses)",
+ "brief": "Grouping and containing expressions and parameters",
+ "description": "Grouping and containing expressions and parameters. Parentheses have multiple functions relating to functions and structures. They are used to contain a list of parameters passed to functions and control structures and they are used to group expressions to control the order of execution. Some functions have no parameters and in this case, the space between parentheses is blank.\n",
+ "related": ["comma"],
+ "syntax": ["function()", "function(p1, ..., pN)", "structure(expression)"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ { "name": "function", "description": "any function", "type": [] },
+ {
+ "name": "p1, ..., pN",
+ "description": "list of parameters specific to the function",
+ "type": []
+ },
+ {
+ "name": "structure",
+ "description": "Control structure such as if, for, while",
+ "type": []
+ },
+ {
+ "name": "expressions",
+ "description": "any valid expression or group of expression",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/parseJSONArray_.es.json b/content/references/translations/es/processing/parseJSONArray_.es.json
new file mode 100644
index 000000000..d4b41ab89
--- /dev/null
+++ b/content/references/translations/es/processing/parseJSONArray_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Takes a String, parses its contents, and returns a JSONArray",
+ "related": ["JSONObject", "loadJSONObject_", "saveJSONObject_"],
+ "name": "parseJSONArray()",
+ "description": "Takes a String, parses its contents, and returns a JSONArray.\n If the String does not contain JSONArray data or cannot be\n parsed, a null value is returned. \n \n parseJSONArray() is most useful when pulling data dynamically, such as\n from third-party APIs. Normally, API results would be saved to a\n String, and then can be converted to a structured JSONArray\n using parseJSONArray(). Be sure to check if null is returned\n before performing operations on the new JSONArray in case the\n String content could not be parsed. \n \n If your data already exists as a JSON file in the data folder, it is\n simpler to use loadJSONArray().",
+ "syntax": ["parseJSONArray(input)"],
+ "returns": "JSONArray",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "String to parse as a JSONArray",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/parseJSONObject_.es.json b/content/references/translations/es/processing/parseJSONObject_.es.json
new file mode 100644
index 000000000..29ff7f459
--- /dev/null
+++ b/content/references/translations/es/processing/parseJSONObject_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Takes a String, parses its contents, and returns a\n JSONObject",
+ "related": ["loadJSONObject_", "saveJSONObject_"],
+ "name": "parseJSONObject()",
+ "description": "Takes a String, parses its contents, and returns a\n JSONObject. If the String does not contain JSONObject\n data or cannot be parsed, a null value is returned. \n \n parseJSONObject() is most useful when pulling data dynamically, such\n as from third-party APIs. Normally, API results would be saved to a\n String, and then can be converted to a structured JSONObject\n using parseJSONObject(). Be sure to check if null is returned\n before performing operations on the new JSONObject in case the\n String content could not be parsed. \n \n If your data already exists as a JSON file in the data folder, it is\n simpler to use loadJSONObject().",
+ "syntax": ["parseJSONObject(input)"],
+ "returns": "JSONObject",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "String to parse as a JSONObject",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/parseXML_.es.json b/content/references/translations/es/processing/parseXML_.es.json
new file mode 100644
index 000000000..097beae6d
--- /dev/null
+++ b/content/references/translations/es/processing/parseXML_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Converts String content to an XML object",
+ "related": ["XML", "loadXML_", "saveXML_"],
+ "name": "parseXML()",
+ "description": "Takes a String, parses its contents, and returns an XML object. If the\n String does not contain XML data or cannot be parsed, a null value is\n returned. \n \n parseXML() is most useful when pulling data dynamically, such as\n from third-party APIs. Normally, API results would be saved to a String,\n and then can be converted to a structured XML object using\n parseXML(). Be sure to check if null is returned before performing\n operations on the new XML object, in case the String content could not be\n parsed. \n \n If your data already exists as an XML file in the data folder, it is\n simpler to use loadXML().",
+ "syntax": ["parseXML(xmlString)", "parseXML(xmlString, options)"],
+ "returns": "XML",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "xmlString",
+ "description": "the content to be parsed as XML",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/perspective_.es.json b/content/references/translations/es/processing/perspective_.es.json
new file mode 100644
index 000000000..3c6d5c1a5
--- /dev/null
+++ b/content/references/translations/es/processing/perspective_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Sets a perspective projection applying foreshortening, making distant\n objects appear smaller than closer ones",
+ "related": [],
+ "name": "perspective()",
+ "description": "Sets a perspective projection applying foreshortening, making distant\n objects appear smaller than closer ones. The parameters define a viewing\n volume with the shape of truncated pyramid. Objects near to the front of\n the volume appear their actual size, while farther objects appear\n smaller. This projection simulates the perspective of the world more\n accurately than orthographic projection. The version of perspective\n without parameters sets the default perspective and the version with\n four parameters allows the programmer to set the area precisely. The\n default values are: perspective(PI/3.0, width/height, cameraZ/10.0,\n cameraZ*10.0) where cameraZ is ((height/2.0) / tan(PI*60.0/360.0))",
+ "syntax": ["perspective()", "perspective(fovy, aspect, zNear, zFar)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": [
+ {
+ "name": "fovy",
+ "description": "field-of-view angle (in radians) for vertical direction",
+ "type": ["float"]
+ },
+ {
+ "name": "aspect",
+ "description": "ratio of width to height",
+ "type": ["float"]
+ },
+ {
+ "name": "zNear",
+ "description": "z-position of nearest clipping plane",
+ "type": ["float"]
+ },
+ {
+ "name": "zFar",
+ "description": "z-position of farthest clipping plane",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/pixelDensity_.es.json b/content/references/translations/es/processing/pixelDensity_.es.json
new file mode 100644
index 000000000..11d8f1a14
--- /dev/null
+++ b/content/references/translations/es/processing/pixelDensity_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "It makes it possible for Processing to render using all of the\n pixels on high resolutions screens",
+ "related": ["pixelWidth", "pixelHeight"],
+ "name": "pixelDensity()",
+ "description": "This function is new with Processing 3.0. It makes it\n possible for Processing to render using all of the\n pixels on high resolutions screens like Apple Retina\n displays and Windows High-DPI displays. This function\n can only be run once within a program and it must be\n used right after size() in a program without a setup()\n and used within setup() when a program has one. The\n pixelDensity() should only be used with hardcoded\n numbers (in almost all cases this number will be 2)\n or in combination with displayDensity() as in the\n third example above.\n\n When the pixel density is set to more than 1, it\n changes all of the pixel operations including the way\n get(), set(), blend(), copy(), and updatePixels()\n all work. See the reference for pixelWidth and\n pixelHeight for more information.\n\n To use variables as the arguments to pixelDensity()\n function, place the pixelDensity() function within\n the settings() function. There is more information\n about this on the settings() reference page.",
+ "syntax": ["pixelDensity(density)"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ { "name": "density", "description": "1 or 2", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/pixelHeight.es.json b/content/references/translations/es/processing/pixelHeight.es.json
new file mode 100644
index 000000000..3200b614f
--- /dev/null
+++ b/content/references/translations/es/processing/pixelHeight.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "The actual pixel height when using high resolution display",
+ "related": ["pixelWidth", "pixelDensity_", "displayDensity_"],
+ "name": "pixelHeight",
+ "description": "When pixelDensity(2) is used to make use of a high resolution\n display (called a Retina display on OS X or high-dpi on Windows and\n Linux), the width and height of the sketch do not change, but the\n number of pixels is doubled. As a result, all operations that use pixels\n (like loadPixels(), get(), set(), etc.) happen\n in this doubled space. As a convenience, the variables pixelWidth\n and pixelHeight hold the actual width and height of the sketch\n in pixels. This is useful for any sketch that uses the pixels[]\n array, for instance, because the number of elements in the array will\n be pixelWidth*pixelHeight, not width*height.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/pixelWidth.es.json b/content/references/translations/es/processing/pixelWidth.es.json
new file mode 100644
index 000000000..0bedc5a98
--- /dev/null
+++ b/content/references/translations/es/processing/pixelWidth.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "The actual pixel width when using high resolution display",
+ "related": ["pixelHeight", "pixelDensity_", "displayDensity_"],
+ "name": "pixelWidth",
+ "description": "When pixelDensity(2) is used to make use of a high resolution\n display (called a Retina display on OS X or high-dpi on Windows and\n Linux), the width and height of the sketch do not change, but the\n number of pixels is doubled. As a result, all operations that use pixels\n (like loadPixels(), get(), set(), etc.) happen\n in this doubled space. As a convenience, the variables pixelWidth\n and pixelHeight hold the actual width and height of the sketch\n in pixels. This is useful for any sketch that uses the pixels[]\n array, for instance, because the number of elements in the array will\n be pixelWidth*pixelHeight, not width*height.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/pixels.es.json b/content/references/translations/es/processing/pixels.es.json
new file mode 100644
index 000000000..3ee2ceca8
--- /dev/null
+++ b/content/references/translations/es/processing/pixels.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Array containing the values for all the pixels in the display window",
+ "related": [
+ "loadPixels_",
+ "updatePixels_",
+ "get_",
+ "set_",
+ "PImage",
+ "pixelDensity_",
+ "pixelWidth",
+ "pixelHeight"
+ ],
+ "name": "pixels[]",
+ "description": "The pixels[] array contains the values for all the pixels in the\n display window. These values are of the color datatype. This array is\n defined by the size of the display window. For example, if the window is\n 100 x 100 pixels, there will be 10,000 values and if the window is\n 200 x 300 pixels, there will be 60,000 values. When the pixel density is\n set to higher than 1 with the pixelDensity() function, these values\n will change. See the reference for pixelWidth or pixelHeight\n for more information.\n
\n Before accessing this array, the data must loaded with the loadPixels()\n function. Failure to do so may result in a NullPointerException. Subsequent\n changes to the display window will not be reflected in pixels until\n loadPixels() is called again. After pixels has been modified,\n the updatePixels() function must be run to update the content of the\n display window.",
+ "category": "image",
+ "subcategory": "pixels",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/pmouseX.es.json b/content/references/translations/es/processing/pmouseX.es.json
new file mode 100644
index 000000000..cf4bc39d3
--- /dev/null
+++ b/content/references/translations/es/processing/pmouseX.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "The system variable that always contains the horizontal\n position of the mouse in the frame previous to the current frame",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseY",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "pmouseX",
+ "description": "The system variable pmouseX always contains the horizontal\n position of the mouse in the frame previous to the current frame. \n \n You may find that pmouseX and pmouseY have different values\n when referenced inside of draw() and inside of mouse events like\n mousePressed() and mouseMoved(). Inside draw(),\n pmouseX and pmouseY update only once per frame (once per trip\n through the draw() loop). But inside mouse events, they update each\n time the event is called. If these values weren't updated immediately during\n events, then the mouse position would be read only once per frame, resulting\n in slight delays and choppy interaction. If the mouse variables were always\n updated multiple times per frame, then something like line(pmouseX, pmouseY,\n mouseX, mouseY) inside draw() would have lots of gaps, because\n pmouseX may have changed several times in between the calls to\n line().
\n If you want values relative to the previous frame, use pmouseX and\n pmouseY inside draw(). If you want continuous response, use\n pmouseX and pmouseY inside the mouse event functions.",
+ "category": "input",
+ "subcategory": "mouse",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/pmouseY.es.json b/content/references/translations/es/processing/pmouseY.es.json
new file mode 100644
index 000000000..182d3255c
--- /dev/null
+++ b/content/references/translations/es/processing/pmouseY.es.json
@@ -0,0 +1,21 @@
+{
+ "brief": "The system variable that always contains the vertical position\n of the mouse in the frame previous to the current frame",
+ "related": [
+ "mouseX",
+ "mouseY",
+ "pmouseX",
+ "mousePressed",
+ "mousePressed_",
+ "mouseReleased_",
+ "mouseClicked_",
+ "mouseMoved_",
+ "mouseDragged_",
+ "mouseButton",
+ "mouseWheel_"
+ ],
+ "name": "pmouseY",
+ "description": "The system variable pmouseY always contains the vertical position\n of the mouse in the frame previous to the current frame. More detailed\n information about how pmouseY is updated inside of draw()\n and mouse events is explained in the reference for pmouseX.",
+ "category": "input",
+ "subcategory": "mouse",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/pointLight_.es.json b/content/references/translations/es/processing/pointLight_.es.json
new file mode 100644
index 000000000..0ccab6b85
--- /dev/null
+++ b/content/references/translations/es/processing/pointLight_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "Adds a point light",
+ "related": ["lights_", "directionalLight_", "ambientLight_", "spotLight_"],
+ "name": "pointLight()",
+ "description": "Adds a point light. Lights need to be included in the draw() to remain\n persistent in a looping program. Placing them in the setup() of a\n looping program will cause them to only have an effect the first time through\n the loop. The v1, v2, and v3 parameters are interpreted\n as either RGB or HSB values, depending on the current color mode. The\n x, y, and z parameters set the position of the light.",
+ "syntax": ["pointLight(v1, v2, v3, x, y, z)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z-coordinate of the light",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/point_.es.json b/content/references/translations/es/processing/point_.es.json
new file mode 100644
index 000000000..10482c535
--- /dev/null
+++ b/content/references/translations/es/processing/point_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Draws a point, a coordinate in space at the dimension of one pixel",
+ "related": ["stroke_"],
+ "name": "point()",
+ "description": "Draws a point, a coordinate in space at the dimension of one pixel. The first\n parameter is the horizontal value for the point, the second value is the\n vertical value for the point, and the optional third value is the depth\n value. Drawing this shape in 3D with the z parameter requires the P3D\n parameter in combination with size() as shown in the above example.\n \n \n Use stroke() to set the color of a point(). \n \n Point appears round with the default strokeCap(ROUND) and square with\n strokeCap(PROJECT). Points are invisible with strokeCap(SQUARE)\n (no cap). \n \n Using point() with strokeWeight(1) or smaller may draw nothing to the screen,\n depending on the graphics settings of the computer. Workarounds include\n setting the pixel using set() or drawing the point using either\n circle() or square().",
+ "syntax": ["point(x, y)", "point(x, y, z)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "x-coordinate of the point",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the point",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z-coordinate of the point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/popMatrix_.es.json b/content/references/translations/es/processing/popMatrix_.es.json
new file mode 100644
index 000000000..e071d73ac
--- /dev/null
+++ b/content/references/translations/es/processing/popMatrix_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Pops the current transformation matrix off the matrix stack",
+ "related": ["pushMatrix_"],
+ "name": "popMatrix()",
+ "description": "Pops the current transformation matrix off the matrix stack.\n Understanding pushing and popping requires understanding the concept of\n a matrix stack. The pushMatrix() function saves the current\n coordinate system to the stack and popMatrix() restores the prior\n coordinate system. pushMatrix() and popMatrix() are used\n in conjunction with the other transformation functions and may be\n embedded to control the scope of the transformations.",
+ "syntax": ["popMatrix()"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/popStyle_.es.json b/content/references/translations/es/processing/popStyle_.es.json
new file mode 100644
index 000000000..fa901ba81
--- /dev/null
+++ b/content/references/translations/es/processing/popStyle_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Saves the current style settings and popStyle() restores the prior settings",
+ "related": ["pushStyle_"],
+ "name": "popStyle()",
+ "description": "The pushStyle() function saves the current style settings and\n popStyle() restores the prior settings; these functions are\n always used together. They allow you to change the style settings and\n later return to what you had. When a new style is started with\n pushStyle(), it builds on the current style information. The\n pushStyle() and popStyle() functions can be embedded to\n provide more control (see the second example above for a demonstration.)",
+ "syntax": ["popStyle()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/pop_.es.json b/content/references/translations/es/processing/pop_.es.json
new file mode 100644
index 000000000..ad56923d8
--- /dev/null
+++ b/content/references/translations/es/processing/pop_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The pop() function restores the previous drawing style\n settings and transformations after push() has changed them",
+ "related": ["push_"],
+ "name": "pop()",
+ "description": "The pop() function restores the previous drawing style\n settings and transformations after push() has changed them.\n Note that these functions are always used together. They allow\n you to change the style and transformation settings and later\n return to what you had. When a new state is started with push(),\n it builds on the current style and transform information.\n \n \n push() stores information related to the current\n transformation state and style settings controlled by the\n following functions: rotate(), translate(),\n scale(), fill(), stroke(), tint(),\n strokeWeight(), strokeCap(), strokeJoin(),\n imageMode(), rectMode(), ellipseMode(),\n colorMode(), textAlign(), textFont(),\n textMode(), textSize(), textLeading(). \n \n The push() and pop() functions were added with\n Processing 3.5. They can be used in place of pushMatrix(),\n popMatrix(), pushStyles(), and popStyles().\n The difference is that push() and pop() control both the\n transformations (rotate, scale, translate) and the drawing styles\n at the same time.",
+ "syntax": ["pop()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/pow_.es.json b/content/references/translations/es/processing/pow_.es.json
new file mode 100644
index 000000000..f37f07ed6
--- /dev/null
+++ b/content/references/translations/es/processing/pow_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Facilitates exponential expressions",
+ "related": ["sqrt_"],
+ "name": "pow()",
+ "description": "Facilitates exponential expressions. The pow() function is an\n efficient way of multiplying numbers by themselves (or their reciprocal)\n in large quantities. For example, pow(3, 5) is equivalent to the\n expression 3*3*3*3*3 and pow(3, -5) is equivalent to 1 / 3*3*3*3*3.",
+ "syntax": ["pow(n, e)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ {
+ "name": "n",
+ "description": "base of the exponential expression",
+ "type": ["float"]
+ },
+ {
+ "name": "e",
+ "description": "power by which to raise the base",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/printArray_.es.json b/content/references/translations/es/processing/printArray_.es.json
new file mode 100644
index 000000000..45916ea10
--- /dev/null
+++ b/content/references/translations/es/processing/printArray_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Writes array data to the text\n area of the Processing environment's console.",
+ "related": ["print_", "println_"],
+ "name": "printArray()",
+ "description": "The printArray() function writes array data to the text\n area of the Processing environment's console. A new line\n is put between each element of the array. This function\n can only print one dimensional arrays.\n Note that the console is relatively slow. It works well\n for occasional messages, but does not support high-speed,\n real-time output (such as at 60 frames per second).",
+ "syntax": ["printArray(what)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "text area",
+ "parameters": [
+ {
+ "name": "what",
+ "description": "one-dimensional array",
+ "type": ["Object"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/printCamera_.es.json b/content/references/translations/es/processing/printCamera_.es.json
new file mode 100644
index 000000000..1a1d7dbe6
--- /dev/null
+++ b/content/references/translations/es/processing/printCamera_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Prints the current camera matrix to the Console (the text window at the\n bottom of Processing)",
+ "related": ["camera_"],
+ "name": "printCamera()",
+ "description": "Prints the current camera matrix to the Console (the text window at the\n bottom of Processing).",
+ "syntax": ["printCamera()"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/printMatrix_.es.json b/content/references/translations/es/processing/printMatrix_.es.json
new file mode 100644
index 000000000..77d73819d
--- /dev/null
+++ b/content/references/translations/es/processing/printMatrix_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Prints the current matrix to the Console (the text window at the bottom\n of Processing)",
+ "related": ["pushMatrix_", "popMatrix_", "resetMatrix_", "applyMatrix_"],
+ "name": "printMatrix()",
+ "description": "Prints the current matrix to the Console (the text window at the bottom\n of Processing).",
+ "syntax": ["printMatrix()"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/printProjection_.es.json b/content/references/translations/es/processing/printProjection_.es.json
new file mode 100644
index 000000000..8e5fb985e
--- /dev/null
+++ b/content/references/translations/es/processing/printProjection_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Prints the current projection matrix to the Console",
+ "related": ["camera_"],
+ "name": "printProjection()",
+ "description": "Prints the current projection matrix to the Console (the text window at\n the bottom of Processing).",
+ "syntax": ["printProjection()"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "camera",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/print_.es.json b/content/references/translations/es/processing/print_.es.json
new file mode 100644
index 000000000..74ec285da
--- /dev/null
+++ b/content/references/translations/es/processing/print_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Writes to the console area of the Processing environment",
+ "related": ["println_", "printArray_", "join_"],
+ "name": "print()",
+ "description": "The print() function writes to the console area, the black rectangle\n at the bottom of the Processing environment. This function is often helpful\n for looking at the data a program is producing. The companion function\n println() works like print(), but creates a new line of text\n for each call to the function. More than one parameter can be passed into the\n function by separating them with commas. Alternatively, individual elements\n can be separated with quotes (\"\") and joined with the addition operator\n (+). \n \n Using print() on an object will output null, a memory location\n that may look like \"@10be08,\" or the result of the toString() method\n from the object that's being printed. Advanced users who want more useful\n output when calling print() on their own classes can add a\n toString() method to the class that returns a String. \n \n Note that the console is relatively slow. It works well for occasional\n messages, but does not support high-speed, real-time output (such as at 60\n frames per second). It should also be noted, that a print() within a for loop\n can sometimes lock up the program, and cause the sketch to freeze.",
+ "syntax": ["print(what)", "print(variables)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "text area",
+ "parameters": [
+ {
+ "name": "what",
+ "description": "data to print to console",
+ "type": ["byte", "boolean", "char", "int", "float", "String"]
+ },
+ {
+ "name": "variables",
+ "description": "list of data, separated by commas",
+ "type": ["Object[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/println_.es.json b/content/references/translations/es/processing/println_.es.json
new file mode 100644
index 000000000..8a8f5e501
--- /dev/null
+++ b/content/references/translations/es/processing/println_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Writes to the text area of the Processing environment's console",
+ "related": ["print_", "printArray_"],
+ "name": "println()",
+ "description": "The println() function writes to the console area, the black\n rectangle at the bottom of the Processing environment. This function is\n often helpful for looking at the data a program is producing. Each call to\n this function creates a new line of output. More than one parameter can be\n passed into the function by separating them with commas. Alternatively,\n individual elements can be separated with quotes (\"\") and joined with the\n addition operator (+). \n \n Before Processing 2.1, println() was used to write array data to the\n console. Now, use printArray() to write array data to the\n console. \n \n Note that the console is relatively slow. It works well for occasional\n messages, but does not support high-speed, real-time output (such as at 60\n frames per second). It should also be noted, that a println() within a for\n loop can sometimes lock up the program, and cause the sketch to freeze.",
+ "syntax": ["println()", "println(what)", "println(variables)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "text area",
+ "parameters": [
+ {
+ "name": "what",
+ "description": "data to print to console",
+ "type": ["byte", "boolean", "char", "int", "float", "String", "Object"]
+ },
+ {
+ "name": "variables",
+ "description": "list of data, separated by commas",
+ "type": ["Object[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/private.es.json b/content/references/translations/es/processing/private.es.json
new file mode 100644
index 000000000..1c86b2b11
--- /dev/null
+++ b/content/references/translations/es/processing/private.es.json
@@ -0,0 +1,11 @@
+{
+ "name": "private",
+ "brief": "This keyword is used to disallow other classes access to the fields and methods within a class",
+ "description": "This keyword is used to disallow other classes access to the fields and methods within a class. The private keyword is used before a field or method that you want to be available only within the class. In Processing, all fields and methods are public unless otherwise specified by the private keyword. \n \nThis keyword is an essential part of Java programming and is not usually used with Processing. Consult a Java language reference or tutorial for more information. \n",
+ "related": ["public"],
+ "syntax": [],
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/public.es.json b/content/references/translations/es/processing/public.es.json
new file mode 100644
index 000000000..4bce9f590
--- /dev/null
+++ b/content/references/translations/es/processing/public.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "public",
+ "brief": "Keyword used to provide other classes access the fields and methods within a class",
+ "description": "Keyword used to provide other classes access the fields and methods within a class. The public keyword is used before a field or method that you want to make available. In Processing, all fields and methods are public unless otherwise specified by the private keyword. \n \nThis keyword is an essential part of Java programming and is not usually used with Processing. Consult a Java language reference or tutorial for more information. \n",
+ "related": ["private"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/pushMatrix_.es.json b/content/references/translations/es/processing/pushMatrix_.es.json
new file mode 100644
index 000000000..d6f1032cd
--- /dev/null
+++ b/content/references/translations/es/processing/pushMatrix_.es.json
@@ -0,0 +1,20 @@
+{
+ "brief": "Pushes the current transformation matrix onto the matrix stack",
+ "related": [
+ "popMatrix_",
+ "translate_",
+ "scale_",
+ "rotate_",
+ "rotateX_",
+ "rotateY_",
+ "rotateZ_"
+ ],
+ "name": "pushMatrix()",
+ "description": "Pushes the current transformation matrix onto the matrix stack.\n Understanding pushMatrix() and popMatrix() requires\n understanding the concept of a matrix stack. The pushMatrix()\n function saves the current coordinate system to the stack and\n popMatrix() restores the prior coordinate system.\n pushMatrix() and popMatrix() are used in conjunction with\n the other transformation functions and may be embedded to control the\n scope of the transformations.",
+ "syntax": ["pushMatrix()"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/pushStyle_.es.json b/content/references/translations/es/processing/pushStyle_.es.json
new file mode 100644
index 000000000..8a3b16b09
--- /dev/null
+++ b/content/references/translations/es/processing/pushStyle_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Saves the current style settings and popStyle() restores the prior settings",
+ "related": ["popStyle_"],
+ "name": "pushStyle()",
+ "description": "The pushStyle() function saves the current style settings and\n popStyle() restores the prior settings. Note that these functions\n are always used together. They allow you to change the style settings\n and later return to what you had. When a new style is started with\n pushStyle(), it builds on the current style information. The\n pushStyle() and popStyle() functions can be embedded to\n provide more control (see the second example above for a demonstration.)\n
\n The style information controlled by the following functions are included\n in the style:\n fill(), stroke(), tint(), strokeWeight(), strokeCap(),strokeJoin(),\n imageMode(), rectMode(), ellipseMode(), shapeMode(), colorMode(),\n textAlign(), textFont(), textMode(), textSize(), textLeading(),\n emissive(), specular(), shininess(), ambient()",
+ "syntax": ["pushStyle()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/push_.es.json b/content/references/translations/es/processing/push_.es.json
new file mode 100644
index 000000000..8be60d89a
--- /dev/null
+++ b/content/references/translations/es/processing/push_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The push() function saves the current drawing style\n settings and transformations, while pop() restores these\n settings",
+ "related": ["pop_"],
+ "name": "push()",
+ "description": "The push() function saves the current drawing style\n settings and transformations, while pop() restores these\n settings. Note that these functions are always used together.\n They allow you to change the style and transformation settings\n and later return to what you had. When a new state is started\n with push(), it builds on the current style and transform\n information. \n \n push() stores information related to the current\n transformation state and style settings controlled by the\n following functions: rotate(), translate(),\n scale(), fill(), stroke(), tint(),\n strokeWeight(), strokeCap(), strokeJoin(),\n imageMode(), rectMode(), ellipseMode(),\n colorMode(), textAlign(), textFont(),\n textMode(), textSize(), textLeading(). \n \n The push() and pop() functions were added with\n Processing 3.5. They can be used in place of pushMatrix(),\n popMatrix(), pushStyles(), and popStyles().\n The difference is that push() and pop() control both the\n transformations (rotate, scale, translate) and the drawing styles\n at the same time.",
+ "syntax": ["push()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/quad_.es.json b/content/references/translations/es/processing/quad_.es.json
new file mode 100644
index 000000000..9f3e02234
--- /dev/null
+++ b/content/references/translations/es/processing/quad_.es.json
@@ -0,0 +1,53 @@
+{
+ "brief": "A quad is a quadrilateral, a four sided polygon",
+ "related": [],
+ "name": "quad()",
+ "description": "A quad is a quadrilateral, a four sided polygon. It is similar to a\n rectangle, but the angles between its edges are not constrained to\n ninety degrees. The first pair of parameters (x1,y1) sets the first\n vertex and the subsequent pairs should proceed clockwise or\n counter-clockwise around the defined shape.",
+ "syntax": ["quad(x1, y1, x2, y2, x3, y3, x4, y4)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "x1",
+ "description": "x-coordinate of the first corner",
+ "type": ["float"]
+ },
+ {
+ "name": "y1",
+ "description": "y-coordinate of the first corner",
+ "type": ["float"]
+ },
+ {
+ "name": "x2",
+ "description": "x-coordinate of the second corner",
+ "type": ["float"]
+ },
+ {
+ "name": "y2",
+ "description": "y-coordinate of the second corner",
+ "type": ["float"]
+ },
+ {
+ "name": "x3",
+ "description": "x-coordinate of the third corner",
+ "type": ["float"]
+ },
+ {
+ "name": "y3",
+ "description": "y-coordinate of the third corner",
+ "type": ["float"]
+ },
+ {
+ "name": "x4",
+ "description": "x-coordinate of the fourth corner",
+ "type": ["float"]
+ },
+ {
+ "name": "y4",
+ "description": "y-coordinate of the fourth corner",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/quadraticVertex_.es.json b/content/references/translations/es/processing/quadraticVertex_.es.json
new file mode 100644
index 000000000..376a17eea
--- /dev/null
+++ b/content/references/translations/es/processing/quadraticVertex_.es.json
@@ -0,0 +1,46 @@
+{
+ "brief": "Specifies vertex coordinates for quadratic Bezier curves",
+ "related": ["curveVertex_", "vertex_", "bezierVertex_", "bezier_"],
+ "name": "quadraticVertex()",
+ "description": "Specifies vertex coordinates for quadratic Bezier curves. Each call\n to quadraticVertex() defines the position of one control\n point and one anchor point of a Bezier curve, adding a new segment\n to a line or shape. The first time quadraticVertex() is used\n within a beginShape() call, it must be prefaced with a call\n to vertex() to set the first anchor point. This function must\n be used between beginShape() and endShape() and only\n when there is no MODE parameter specified to beginShape().\n Using the 3D version requires rendering with P3D (see the Environment\n reference for more information).",
+ "syntax": [
+ "quadraticVertex(cx, cy, x3, y3)",
+ "quadraticVertex(cx, cy, cz, x3, y3, z3)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": [
+ {
+ "name": "cx",
+ "description": "the x-coordinate of the control point",
+ "type": ["float"]
+ },
+ {
+ "name": "cy",
+ "description": "the y-coordinate of the control point",
+ "type": ["float"]
+ },
+ {
+ "name": "x3",
+ "description": "the x-coordinate of the anchor point",
+ "type": ["float"]
+ },
+ {
+ "name": "y3",
+ "description": "the y-coordinate of the anchor point",
+ "type": ["float"]
+ },
+ {
+ "name": "cz",
+ "description": "the z-coordinate of the control point",
+ "type": ["float"]
+ },
+ {
+ "name": "z3",
+ "description": "the z-coordinate of the anchor point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/radians_.es.json b/content/references/translations/es/processing/radians_.es.json
new file mode 100644
index 000000000..1ccde4dc1
--- /dev/null
+++ b/content/references/translations/es/processing/radians_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Converts a degree measurement to its corresponding value in radians",
+ "related": ["degrees_"],
+ "name": "radians()",
+ "description": "Converts a degree measurement to its corresponding value in radians.\n Radians and degrees are two ways of measuring the same thing. There are\n 360 degrees in a circle and 2*PI radians in a circle. For example,\n 90° = PI/2 = 1.5707964. All trigonometric functions in Processing\n require their parameters to be specified in radians.",
+ "syntax": ["radians(degrees)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ {
+ "name": "degrees",
+ "description": "degree value to convert to radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/randomGaussian_.es.json b/content/references/translations/es/processing/randomGaussian_.es.json
new file mode 100644
index 000000000..a4519c7e6
--- /dev/null
+++ b/content/references/translations/es/processing/randomGaussian_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns a float from a random series of numbers having a mean of 0\n and standard deviation of 1",
+ "related": ["random_", "noise_"],
+ "name": "randomGaussian()",
+ "description": "Returns a float from a random series of numbers having a mean of 0\n and standard deviation of 1. Each time the randomGaussian()\n function is called, it returns a number fitting a Gaussian, or\n normal, distribution. There is theoretically no minimum or maximum\n value that randomGaussian() might return. Rather, there is\n just a very low probability that values far from the mean will be\n returned; and a higher probability that numbers near the mean will\n be returned.",
+ "syntax": ["randomGaussian()"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "random",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/randomSeed_.es.json b/content/references/translations/es/processing/randomSeed_.es.json
new file mode 100644
index 000000000..3523d7f88
--- /dev/null
+++ b/content/references/translations/es/processing/randomSeed_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Sets the seed value for random()",
+ "related": ["random_", "noise_", "noiseSeed_"],
+ "name": "randomSeed()",
+ "description": "Sets the seed value for random(). By default, random()\n produces different results each time the program is run. Set the seed\n parameter to a constant to return the same pseudo-random numbers each time\n the software is run.",
+ "syntax": ["randomSeed(seed)"],
+ "returns": "void",
+ "type": "function",
+ "category": "math",
+ "subcategory": "random",
+ "parameters": [
+ { "name": "seed", "description": "seed value", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/random_.es.json b/content/references/translations/es/processing/random_.es.json
new file mode 100644
index 000000000..152af2cc5
--- /dev/null
+++ b/content/references/translations/es/processing/random_.es.json
@@ -0,0 +1,15 @@
+{
+ "brief": "Generates random numbers",
+ "related": ["randomSeed_", "noise_"],
+ "name": "random()",
+ "description": "Generates random numbers. Each time the random() function is called,\n it returns an unexpected value within the specified range. If only one\n parameter is passed to the function, it will return a float between zero\n and the value of the high parameter. For example, random(5)\n returns values between 0 and 5 (starting at zero, and up to, but not\n including, 5). \n \n If two parameters are specified, the function will return a float with a\n value between the two values. For example, random(-5, 10.2) returns\n values starting at -5 and up to (but not including) 10.2. To convert a\n floating-point random number to an integer, use the int() function.",
+ "syntax": ["random(high)", "random(low, high)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "random",
+ "parameters": [
+ { "name": "low", "description": "lower limit", "type": ["float"] },
+ { "name": "high", "description": "upper limit", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/rectMode_.es.json b/content/references/translations/es/processing/rectMode_.es.json
new file mode 100644
index 000000000..9ec3dab77
--- /dev/null
+++ b/content/references/translations/es/processing/rectMode_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Modifies the location from which rectangles draw",
+ "related": ["rect_"],
+ "name": "rectMode()",
+ "description": "Modifies the location from which rectangles are drawn by changing the way in\n which parameters given to rect() are interpreted. \n \n The default mode is rectMode(CORNER), which interprets the first two\n parameters of rect() as the upper-left corner of the shape, while the\n third and fourth parameters are its width and height. \n \n rectMode(CORNERS) interprets the first two parameters of rect()\n as the location of one corner, and the third and fourth parameters as the\n location of the opposite corner. \n \n rectMode(CENTER) interprets the first two parameters of rect()\n as the shape's center point, while the third and fourth parameters are its\n width and height. \n \n rectMode(RADIUS) also uses the first two parameters of rect()\n as the shape's center point, but uses the third and fourth parameters to\n specify half of the shape's width and height. \n \n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.",
+ "syntax": ["rectMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "either CORNER, CORNERS, CENTER, or RADIUS",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/rect_.es.json b/content/references/translations/es/processing/rect_.es.json
new file mode 100644
index 000000000..ac9a82752
--- /dev/null
+++ b/content/references/translations/es/processing/rect_.es.json
@@ -0,0 +1,62 @@
+{
+ "brief": "Draws a rectangle to the screen",
+ "related": ["rectMode_", "quad_"],
+ "name": "rect()",
+ "description": "Draws a rectangle to the screen. A rectangle is a four-sided shape with every\n angle at ninety degrees. By default, the first two parameters set the\n location of the upper-left corner, the third sets the width, and the fourth\n sets the height. The way these parameters are interpreted, however, may be\n changed with the rectMode() function. \n \n To draw a rounded rectangle, add a fifth parameter, which is used as the\n radius value for all four corners. \n \n To use a different radius value for each corner, include eight parameters.\n When using eight parameters, the latter four set the radius of the arc at\n each corner separately, starting with the top-left corner and moving\n clockwise around the rectangle.",
+ "syntax": [
+ "rect(a, b, c, d)",
+ "rect(a, b, c, d, r)",
+ "rect(a, b, c, d, tl, tr, br, bl)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "a",
+ "description": "x-coordinate of the rectangle by default",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "y-coordinate of the rectangle by default",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "width of the rectangle by default",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "height of the rectangle by default",
+ "type": ["float"]
+ },
+ {
+ "name": "r",
+ "description": "radii for all four corners",
+ "type": ["float"]
+ },
+ {
+ "name": "tl",
+ "description": "radius for top-left corner",
+ "type": ["float"]
+ },
+ {
+ "name": "tr",
+ "description": "radius for top-right corner",
+ "type": ["float"]
+ },
+ {
+ "name": "br",
+ "description": "radius for bottom-right corner",
+ "type": ["float"]
+ },
+ {
+ "name": "bl",
+ "description": "radius for bottom-left corner",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/red_.es.json b/content/references/translations/es/processing/red_.es.json
new file mode 100644
index 000000000..7392bd17d
--- /dev/null
+++ b/content/references/translations/es/processing/red_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Extracts the red value from a color, scaled to match current\n colorMode()",
+ "related": [
+ "green_",
+ "blue_",
+ "alpha_",
+ "hue_",
+ "saturation_",
+ "brightness_",
+ "rightshift_"
+ ],
+ "name": "red()",
+ "description": "Extracts the red value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value. \n \n The red() function is easy to use and understand, but it is slower\n than a technique called bit shifting. When working in colorMode(RGB,\n 255), you can achieve the same results as red() but with greater\n speed by using the right shift operator (>>) with a bit mask. For\n example, the following two lines of code are equivalent means of getting the\n red value of the color value c: \n \n\n
\n float r1 = red(c); // Simpler, but slower to calculate\n float r2 = c >> 16 & 0xFF; // Very fast to calculate\n
",
+ "syntax": ["red(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/redraw_.es.json b/content/references/translations/es/processing/redraw_.es.json
new file mode 100644
index 000000000..aa7d4cf6c
--- /dev/null
+++ b/content/references/translations/es/processing/redraw_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Executes the code within draw() one time",
+ "related": ["draw_", "loop_", "noLoop_", "frameRate_"],
+ "name": "redraw()",
+ "description": "Executes the code within draw() one time. This functions allows the\n program to update the display window only when necessary, for example when an\n event registered by mousePressed() or keyPressed() occurs.\n \n \n In structuring a program, it only makes sense to call redraw() within events\n such as mousePressed(). This is because redraw() does not run\n draw() immediately (it only sets a flag that indicates an update is\n needed). \n \n The redraw() function does not work properly when called inside\n draw(). To enable/disable animations, use loop() and\n noLoop().",
+ "syntax": ["redraw()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/requestImage_.es.json b/content/references/translations/es/processing/requestImage_.es.json
new file mode 100644
index 000000000..2dd905a40
--- /dev/null
+++ b/content/references/translations/es/processing/requestImage_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Loads images on a separate thread so that your sketch does not\n freeze while images load during setup()",
+ "related": ["PImage", "loadImage_"],
+ "name": "requestImage()",
+ "description": "This function loads images on a separate thread so that your sketch doesn't\n freeze while images load during setup(). While the image is loading,\n its width and height will be 0. If an error occurs while loading the image,\n its width and height will be set to -1. You'll know when the image has\n loaded properly because its width and height will be greater\n than 0. Asynchronous image loading (particularly when downloading from a\n server) can dramatically improve performance. \n \n The extension parameter is used to determine the image type in cases\n where the image filename does not end with a proper extension. Specify the\n extension as the second parameter to requestImage().",
+ "syntax": ["requestImage(filename)", "requestImage(filename, extension)"],
+ "returns": "PImage",
+ "type": "function",
+ "category": "image",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the file to load, can be .gif, .jpg, .tga, or a handful of\n other image types depending on your platform",
+ "type": ["String"]
+ },
+ {
+ "name": "extension",
+ "description": "the type of image to load, for example \"png\", \"gif\", \"jpg\"",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/resetMatrix_.es.json b/content/references/translations/es/processing/resetMatrix_.es.json
new file mode 100644
index 000000000..dca7f1661
--- /dev/null
+++ b/content/references/translations/es/processing/resetMatrix_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Replaces the current matrix with the identity matrix",
+ "related": ["pushMatrix_", "popMatrix_", "applyMatrix_", "printMatrix_"],
+ "name": "resetMatrix()",
+ "description": "Replaces the current matrix with the identity matrix. The equivalent function\n in OpenGL is glLoadIdentity().",
+ "syntax": ["resetMatrix()"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/resetShader_.es.json b/content/references/translations/es/processing/resetShader_.es.json
new file mode 100644
index 000000000..aacc47276
--- /dev/null
+++ b/content/references/translations/es/processing/resetShader_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Restores the default shaders",
+ "related": [],
+ "name": "resetShader()",
+ "description": "Restores the default shaders. Code that runs after resetShader()\n will not be affected by previously defined shaders.",
+ "syntax": ["resetShader()", "resetShader(kind)"],
+ "returns": "void",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "shaders",
+ "parameters": [
+ {
+ "name": "kind",
+ "description": "type of shader, either POINTS, LINES, or TRIANGLES",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/return.es.json b/content/references/translations/es/processing/return.es.json
new file mode 100644
index 000000000..c209997e8
--- /dev/null
+++ b/content/references/translations/es/processing/return.es.json
@@ -0,0 +1,29 @@
+{
+ "name": "return",
+ "brief": "Keyword used to indicate the value to return from a function",
+ "description": "Keyword used to indicate the value to return from a function. The value being returned must be the same datatype as defined in the function declaration. Functions declared with void can't return values and shouldn't include a return value. \n \nThe keyword return may also be used to break out of a function, thus not allowing the program to the remaining statements. (See the third example above.)\n",
+ "related": [],
+ "syntax": ["type function {", " statements", " return value", "}"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "type",
+ "description": "boolean, byte, char, int, float, String, boolean[], byte[], char[], int[], float[], or String[]",
+ "type": []
+ },
+ {
+ "name": "function",
+ "description": "the function that is being defined",
+ "type": []
+ },
+ { "name": "statements", "description": "any valid statements", "type": [] },
+ {
+ "name": "value",
+ "description": "must be the same datatype as the \"type\" parameter",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/reverse_.es.json b/content/references/translations/es/processing/reverse_.es.json
new file mode 100644
index 000000000..83e551927
--- /dev/null
+++ b/content/references/translations/es/processing/reverse_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Reverses the order of an array",
+ "related": ["sort_"],
+ "name": "reverse()",
+ "description": "Reverses the order of an array.",
+ "syntax": ["reverse(list)"],
+ "returns": "boolean[], byte[], char[], int[], float[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "list",
+ "description": "booleans[], bytes[], chars[], ints[], floats[], or Strings[]",
+ "type": [
+ "boolean[]",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "float[]",
+ "String[]",
+ "Object"
+ ]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/rightshift.es.json b/content/references/translations/es/processing/rightshift.es.json
new file mode 100644
index 000000000..1e500c7c1
--- /dev/null
+++ b/content/references/translations/es/processing/rightshift.es.json
@@ -0,0 +1,19 @@
+{
+ "name": ">> (right shift)",
+ "brief": "Shifts bits to the right",
+ "description": "Shifts bits to the right. The number to the left of the operator is shifted the number of places specified by the number to the right. Each shift to the right halves the number, therefore each right shift divides the original number by 2. Use the right shift for fast divisions or to extract an individual number from a packed number. Right shifting only works with integers or numbers which automatically convert to an integer such at byte and char.\n
\nBit shifting is helpful when using the color data type. A right shift can extract red, green, blue, and alpha values from a color. A left shift can be used to quickly reassemble a color value (more quickly than the color() function).\n",
+ "related": ["leftshift"],
+ "syntax": ["value >> n"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Bitwise Operators",
+ "parameters": [
+ { "name": "value", "description": "int: the value to shift", "type": [] },
+ {
+ "name": "n",
+ "description": "int: the number of places to shift right",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/rotateX_.es.json b/content/references/translations/es/processing/rotateX_.es.json
new file mode 100644
index 000000000..f4c6dc9e7
--- /dev/null
+++ b/content/references/translations/es/processing/rotateX_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Rotates a shape around the x-axis the amount specified by the\n angle parameter",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "rotate_",
+ "rotateY_",
+ "rotateZ_",
+ "scale_",
+ "translate_"
+ ],
+ "name": "rotateX()",
+ "description": "Rotates a shape around the x-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to PI*2) or converted to radians with the radians()\n function. Objects are always rotated around their relative position to\n the origin and positive numbers rotate objects in a counterclockwise\n direction. Transformations apply to everything that happens after and\n subsequent calls to the function accumulates the effect. For example,\n calling rotateX(PI/2) and then rotateX(PI/2) is the same\n as rotateX(PI). If rotateX() is called within the\n draw(), the transformation is reset when the loop begins again.\n This function requires using P3D as a third parameter to size()\n as shown in the example above.",
+ "syntax": ["rotateX(angle)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/rotateY_.es.json b/content/references/translations/es/processing/rotateY_.es.json
new file mode 100644
index 000000000..9a1e75c97
--- /dev/null
+++ b/content/references/translations/es/processing/rotateY_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Rotates a shape around the y-axis the amount specified by the\n angle parameter",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "rotate_",
+ "rotateX_",
+ "rotateZ_",
+ "scale_",
+ "translate_"
+ ],
+ "name": "rotateY()",
+ "description": "Rotates a shape around the y-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to PI*2) or converted to radians with the radians()\n function. Objects are always rotated around their relative position to\n the origin and positive numbers rotate objects in a counterclockwise\n direction. Transformations apply to everything that happens after and\n subsequent calls to the function accumulates the effect. For example,\n calling rotateY(PI/2) and then rotateY(PI/2) is the same\n as rotateY(PI). If rotateY() is called within the\n draw(), the transformation is reset when the loop begins again.\n This function requires using P3D as a third parameter to size()\n as shown in the examples above.",
+ "syntax": ["rotateY(angle)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/rotateZ_.es.json b/content/references/translations/es/processing/rotateZ_.es.json
new file mode 100644
index 000000000..95b9c067b
--- /dev/null
+++ b/content/references/translations/es/processing/rotateZ_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Rotates a shape around the z-axis the amount specified by the\n angle parameter",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "rotate_",
+ "rotateX_",
+ "rotateY_",
+ "scale_",
+ "translate_"
+ ],
+ "name": "rotateZ()",
+ "description": "Rotates a shape around the z-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to PI*2) or converted to radians with the radians()\n function. Objects are always rotated around their relative position to\n the origin and positive numbers rotate objects in a counterclockwise\n direction. Transformations apply to everything that happens after and\n subsequent calls to the function accumulates the effect. For example,\n calling rotateZ(PI/2) and then rotateZ(PI/2) is the same\n as rotateZ(PI). If rotateZ() is called within the\n draw(), the transformation is reset when the loop begins again.\n This function requires using P3D as a third parameter to size()\n as shown in the examples above.",
+ "syntax": ["rotateZ(angle)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/rotate_.es.json b/content/references/translations/es/processing/rotate_.es.json
new file mode 100644
index 000000000..e31774f46
--- /dev/null
+++ b/content/references/translations/es/processing/rotate_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Rotates a shape the amount specified by the angle parameter",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "rotateX_",
+ "rotateY_",
+ "rotateZ_",
+ "scale_",
+ "radians_"
+ ],
+ "name": "rotate()",
+ "description": "Rotates a shape the amount specified by the angle parameter.\n Angles should be specified in radians (values from 0 to TWO_PI) or\n converted to radians with the radians() function.\n
\n Objects are always rotated around their relative position to the origin\n and positive numbers rotate objects in a clockwise direction.\n Transformations apply to everything that happens after and subsequent\n calls to the function accumulates the effect. For example, calling\n rotate(HALF_PI) and then rotate(HALF_PI) is the same as\n rotate(PI). All transformations are reset when draw()\n begins again.\n
\n Technically, rotate() multiplies the current transformation\n matrix by a rotation matrix. This function can be further controlled by\n the pushMatrix() and popMatrix().",
+ "syntax": ["rotate(angle)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle of rotation specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/round_.es.json b/content/references/translations/es/processing/round_.es.json
new file mode 100644
index 000000000..94ed8bc5c
--- /dev/null
+++ b/content/references/translations/es/processing/round_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the integer closest to the value parameter",
+ "related": ["floor_", "ceil_"],
+ "name": "round()",
+ "description": "Calculates the integer closest to the n parameter. For example,\n round(133.8) returns the value 134.",
+ "syntax": ["round(n)"],
+ "returns": "int",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "number to round", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/saturation_.es.json b/content/references/translations/es/processing/saturation_.es.json
new file mode 100644
index 000000000..caf974620
--- /dev/null
+++ b/content/references/translations/es/processing/saturation_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Extracts the saturation value from a color",
+ "related": ["red_", "green_", "blue_", "alpha_", "hue_", "brightness_"],
+ "name": "saturation()",
+ "description": "Extracts the saturation value from a color.",
+ "syntax": ["saturation(rgb)"],
+ "returns": "float",
+ "type": "function",
+ "category": "color",
+ "subcategory": "creating & reading",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveBytes_.es.json b/content/references/translations/es/processing/saveBytes_.es.json
new file mode 100644
index 000000000..057b29710
--- /dev/null
+++ b/content/references/translations/es/processing/saveBytes_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Opposite of loadBytes(), will write an entire array of\n bytes to a file",
+ "related": ["loadStrings_", "loadBytes_", "saveStrings_"],
+ "name": "saveBytes()",
+ "description": "As the opposite of loadBytes(), this function will write an entire\n array of bytes to a file. The data is saved in binary format. This file is\n saved to the sketch's folder, which is opened by selecting \"Show Sketch\n Folder\" from the \"Sketch\" menu. Alternatively, the files can be saved to\n any location on the computer by using an absolute path (something that\n starts with / on Unix and Linux, or a drive letter on Windows).",
+ "syntax": ["saveBytes(filename, data)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "name of the file to write to",
+ "type": ["String"]
+ },
+ {
+ "name": "data",
+ "description": "array of bytes to be written",
+ "type": ["byte[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveFrame_.es.json b/content/references/translations/es/processing/saveFrame_.es.json
new file mode 100644
index 000000000..b4ea30c38
--- /dev/null
+++ b/content/references/translations/es/processing/saveFrame_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Saves a numbered sequence of images, one image each time the\n function is run",
+ "related": ["save_", "createGraphics_", "frameCount"],
+ "name": "saveFrame()",
+ "description": "Saves a numbered sequence of images, one image each time the function is\n run. To save an image that is identical to the display window, run the\n function at the end of draw() or within mouse and key events such as\n mousePressed() and keyPressed(). Use the Movie Maker program\n in the Tools menu to combine these images to a movie. \n \n If saveFrame() is used without parameters, it will save files as\n screen-0000.tif, screen-0001.tif, and so on. You can specify the name of\n the sequence with the filename parameter, including hash marks\n (####), which will be replaced by the current frameCount value. (The\n number of hash marks is used to determine how many digits to include in the\n file names.) Append a file extension, to indicate the file format to be\n used: either TIFF (.tif), TARGA (.tga), JPEG (.jpg), or PNG (.png). Image\n files are saved to the sketch's folder, which may be opened by selecting\n \"Show Sketch Folder\" from the \"Sketch\" menu. \n \n Alternatively, the files can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n All images saved from the main drawing window will be opaque. To save\n images without a background, use createGraphics().",
+ "syntax": ["saveFrame()", "saveFrame(filename)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "image",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "any sequence of letters or numbers that ends with either \".tif\",\n \".tga\", \".jpg\", or \".png\"",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveJSONArray_.es.json b/content/references/translations/es/processing/saveJSONArray_.es.json
new file mode 100644
index 000000000..6cf238229
--- /dev/null
+++ b/content/references/translations/es/processing/saveJSONArray_.es.json
@@ -0,0 +1,37 @@
+{
+ "brief": "Writes the contents of a JSONArray object to a file",
+ "related": [
+ "JSONObject",
+ "JSONArray",
+ "loadJSONObject_",
+ "loadJSONArray_",
+ "saveJSONObject_"
+ ],
+ "name": "saveJSONArray()",
+ "description": "Writes the contents of a JSONArray object to a file. By default,\n this file is saved to the sketch's folder. This folder is opened by\n selecting \"Show Sketch Folder\" from the \"Sketch\" menu. \n \n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": [
+ "saveJSONArray(json, filename)",
+ "saveJSONArray(json, filename, options)"
+ ],
+ "returns": "boolean",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "json",
+ "description": "the JSONArray to save",
+ "type": ["JSONArray"]
+ },
+ {
+ "name": "filename",
+ "description": "the name of the file to save to",
+ "type": ["String"]
+ },
+ {
+ "name": "options",
+ "description": "\"compact\" and \"indent=N\", replace N with the number of spaces",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveJSONObject_.es.json b/content/references/translations/es/processing/saveJSONObject_.es.json
new file mode 100644
index 000000000..17ffd5bf2
--- /dev/null
+++ b/content/references/translations/es/processing/saveJSONObject_.es.json
@@ -0,0 +1,37 @@
+{
+ "brief": "Writes the contents of a JSONObject object to a file",
+ "related": [
+ "JSONObject",
+ "JSONArray",
+ "loadJSONObject_",
+ "loadJSONArray_",
+ "saveJSONArray_"
+ ],
+ "name": "saveJSONObject()",
+ "description": "Writes the contents of a JSONObject object to a file. By default,\n this file is saved to the sketch's folder. This folder is opened by\n selecting \"Show Sketch Folder\" from the \"Sketch\" menu. \n \n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": [
+ "saveJSONObject(json, filename)",
+ "saveJSONObject(json, filename, options)"
+ ],
+ "returns": "boolean",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "json",
+ "description": "the JSONObject to save",
+ "type": ["JSONObject"]
+ },
+ {
+ "name": "filename",
+ "description": "the name of the file to save to",
+ "type": ["String"]
+ },
+ {
+ "name": "options",
+ "description": "\"compact\" and \"indent=N\", replace N with the number of spaces",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveStream_.es.json b/content/references/translations/es/processing/saveStream_.es.json
new file mode 100644
index 000000000..8aa0fcb79
--- /dev/null
+++ b/content/references/translations/es/processing/saveStream_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Save the contents of a stream to a file in the sketch folder",
+ "related": ["createOutput_"],
+ "name": "saveStream()",
+ "description": "Save the contents of a stream to a file in the sketch folder. This is\n basically saveBytes(blah, loadBytes()), but done more efficiently\n (and with less confusing syntax). \n \n The target parameter can be either a String specifying a file name,\n or, for greater control over the file location, a File object. (Note\n that, unlike some other functions, this will not automatically compress or\n uncompress gzip files.)",
+ "syntax": ["saveStream(target, source)"],
+ "returns": "boolean or void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "target",
+ "description": "name of the file to write to",
+ "type": ["String", "File"]
+ },
+ {
+ "name": "source",
+ "description": "location to read from (a filename, path, or URL)",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveStrings_.es.json b/content/references/translations/es/processing/saveStrings_.es.json
new file mode 100644
index 000000000..ab4c86f5e
--- /dev/null
+++ b/content/references/translations/es/processing/saveStrings_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Writes an array of strings to a file, one line per string",
+ "related": ["loadStrings_", "loadBytes_", "saveBytes_"],
+ "name": "saveStrings()",
+ "description": "Writes an array of Strings to a file, one line per String. By default, this\n file is saved to the sketch's folder. This folder is opened by selecting\n \"Show Sketch Folder\" from the \"Sketch\" menu. \n \n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n Starting with Processing 1.0, all files loaded and saved by the Processing\n API use UTF-8 encoding. In earlier releases, the default encoding for your\n platform was used, which causes problems when files are moved to other\n platforms.",
+ "syntax": ["saveStrings(filename, data)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "filename for output",
+ "type": ["String"]
+ },
+ {
+ "name": "data",
+ "description": "string array to be written",
+ "type": ["String[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveTable_.es.json b/content/references/translations/es/processing/saveTable_.es.json
new file mode 100644
index 000000000..c3c37c054
--- /dev/null
+++ b/content/references/translations/es/processing/saveTable_.es.json
@@ -0,0 +1,31 @@
+{
+ "brief": "Writes the contents of a Table object to a file",
+ "related": ["Table", "loadTable_"],
+ "name": "saveTable()",
+ "description": "Writes the contents of a Table object to a file. By default, this file is\n saved to the sketch's folder. This folder is opened by selecting \"Show\n Sketch Folder\" from the \"Sketch\" menu. \n \n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": [
+ "saveTable(table, filename)",
+ "saveTable(table, filename, options)"
+ ],
+ "returns": "boolean",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "table",
+ "description": "the Table object to save to a file",
+ "type": ["Table"]
+ },
+ {
+ "name": "filename",
+ "description": "the filename to which the Table should be saved",
+ "type": ["String"]
+ },
+ {
+ "name": "options",
+ "description": "can be one of \"tsv\", \"csv\", \"bin\", or \"html\"",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/saveXML_.es.json b/content/references/translations/es/processing/saveXML_.es.json
new file mode 100644
index 000000000..b3d7c7990
--- /dev/null
+++ b/content/references/translations/es/processing/saveXML_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Writes the contents of an XML object to a file",
+ "related": ["XML", "loadXML_", "parseXML_"],
+ "name": "saveXML()",
+ "description": "Writes the contents of an XML object to a file. By default, this file is\n saved to the sketch's folder. This folder is opened by selecting \"Show\n Sketch Folder\" from the \"Sketch\" menu. \n \n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n All files loaded and saved by the Processing API use UTF-8 encoding.",
+ "syntax": ["saveXML(xml, filename)"],
+ "returns": "boolean",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "xml",
+ "description": "the XML object to save to disk",
+ "type": ["XML"]
+ },
+ {
+ "name": "filename",
+ "description": "name of the file to write to",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/save_.es.json b/content/references/translations/es/processing/save_.es.json
new file mode 100644
index 000000000..1b70e7a98
--- /dev/null
+++ b/content/references/translations/es/processing/save_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Saves an image from the display window",
+ "related": ["saveFrame_", "createGraphics_"],
+ "name": "save()",
+ "description": "Saves an image from the display window. Append a file extension to the name\n of the file, to indicate the file format to be used: either TIFF (.tif),\n TARGA (.tga), JPEG (.jpg), or PNG (.png). If no extension is included in\n the filename, the image will save in TIFF format and .tif will be\n added to the name. These files are saved to the sketch's folder, which may\n be opened by selecting \"Show sketch folder\" from the \"Sketch\" menu.\n Alternatively, the files can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows). \n \n All images saved from the main drawing window will be opaque. To save\n images without a background, use createGraphics().",
+ "syntax": ["save(filename)"],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "image",
+ "parameters": [
+ {
+ "name": "filename",
+ "description": "any sequence of letters and numbers",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/scale_.es.json b/content/references/translations/es/processing/scale_.es.json
new file mode 100644
index 000000000..17c585ff9
--- /dev/null
+++ b/content/references/translations/es/processing/scale_.es.json
@@ -0,0 +1,41 @@
+{
+ "brief": "Increases or decreases the size of a shape by expanding and\n contracting vertices",
+ "related": [
+ "pushMatrix_",
+ "popMatrix_",
+ "translate_",
+ "rotate_",
+ "rotateX_",
+ "rotateY_",
+ "rotateZ_"
+ ],
+ "name": "scale()",
+ "description": "Increases or decreases the size of a shape by expanding and contracting\n vertices. Objects always scale from their relative origin to the coordinate\n system. Scale values are specified as decimal percentages. For example, the\n function call scale(2.0) increases the dimension of a shape by\n 200%. \n \n Transformations apply to everything that happens after and subsequent calls\n to the function multiply the effect. For example, calling scale(2.0)\n and then scale(1.5) is the same as scale(3.0). If\n scale() is called within draw(), the transformation is reset\n when the loop begins again. Using this function with the z parameter\n requires using P3D as a parameter for size(), as shown in the third\n example above. This function can be further controlled with\n pushMatrix() and popMatrix().",
+ "syntax": ["scale(s)", "scale(x, y)", "scale(x, y, z)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "s",
+ "description": "percentage to scale the object",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "percentage to scale the object in the x-axis",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "percentage to scale the object in the y-axis",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "percentage to scale the object in the z-axis",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/screenX_.es.json b/content/references/translations/es/processing/screenX_.es.json
new file mode 100644
index 000000000..c56759557
--- /dev/null
+++ b/content/references/translations/es/processing/screenX_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Takes a three-dimensional X, Y, Z position and returns the X value for\n where it will appear on a (two-dimensional) screen",
+ "related": ["screenY_", "screenZ_"],
+ "name": "screenX()",
+ "description": "Takes a three-dimensional X, Y, Z position and returns the X value for\n where it will appear on a (two-dimensional) screen.",
+ "syntax": ["screenX(x, y)", "screenX(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "coordinates",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "3D x-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "3D y-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "3D z-coordinate to be mapped",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/screenY_.es.json b/content/references/translations/es/processing/screenY_.es.json
new file mode 100644
index 000000000..dddbfc760
--- /dev/null
+++ b/content/references/translations/es/processing/screenY_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Takes a three-dimensional X, Y, Z position and returns the Y value for\n where it will appear on a (two-dimensional) screen",
+ "related": ["screenX_", "screenZ_"],
+ "name": "screenY()",
+ "description": "Takes a three-dimensional X, Y, Z position and returns the Y value for\n where it will appear on a (two-dimensional) screen.",
+ "syntax": ["screenY(x, y)", "screenY(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "coordinates",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "3D x-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "3D y-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "3D z-coordinate to be mapped",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/screenZ_.es.json b/content/references/translations/es/processing/screenZ_.es.json
new file mode 100644
index 000000000..cc0f99f5d
--- /dev/null
+++ b/content/references/translations/es/processing/screenZ_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Takes a three-dimensional X, Y, Z position and returns the Z value for\n where it will appear on a (two-dimensional) screen",
+ "related": ["screenX_", "screenY_"],
+ "name": "screenZ()",
+ "description": "Takes a three-dimensional X, Y, Z position and returns the Z value for\n where it will appear on a (two-dimensional) screen.",
+ "syntax": ["screenZ(x, y, z)"],
+ "returns": "float",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "coordinates",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "3D x-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "3D y-coordinate to be mapped",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "3D z-coordinate to be mapped",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/second_.es.json b/content/references/translations/es/processing/second_.es.json
new file mode 100644
index 000000000..2a3a1feff
--- /dev/null
+++ b/content/references/translations/es/processing/second_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the current second as a value from 0 - 59",
+ "related": ["millis_", "minute_", "hour_", "day_", "month_", "year_"],
+ "name": "second()",
+ "description": "Processing communicates with the clock on your computer. The\n second() function returns the current second as a value from 0 - 59.",
+ "syntax": ["second()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/selectFolder_.es.json b/content/references/translations/es/processing/selectFolder_.es.json
new file mode 100644
index 000000000..560969d12
--- /dev/null
+++ b/content/references/translations/es/processing/selectFolder_.es.json
@@ -0,0 +1,27 @@
+{
+ "brief": "Opens a platform-specific file chooser dialog to select a folder",
+ "related": [],
+ "name": "selectFolder()",
+ "description": "Opens a platform-specific file chooser dialog to select a folder.\n After the selection is made, the selection will be passed to the\n 'callback' function. If the dialog is closed or canceled, null\n will be sent to the function, so that the program is not waiting\n for additional input. The callback is necessary because of how\n threading works.",
+ "syntax": [
+ "selectFolder(prompt, callback)",
+ "selectFolder(prompt, callback, file)",
+ "selectFolder(prompt, callback, file, callbackObject)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "prompt",
+ "description": "message to the user",
+ "type": ["String"]
+ },
+ {
+ "name": "callback",
+ "description": "name of the method to be called when the selection is made",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/selectInput_.es.json b/content/references/translations/es/processing/selectInput_.es.json
new file mode 100644
index 000000000..f2670d72f
--- /dev/null
+++ b/content/references/translations/es/processing/selectInput_.es.json
@@ -0,0 +1,27 @@
+{
+ "brief": "Open a platform-specific file chooser dialog to select a file for\n input",
+ "related": [],
+ "name": "selectInput()",
+ "description": "Open a platform-specific file chooser dialog to select a file for input.\n After the selection is made, the selected File will be passed to the\n 'callback' function. If the dialog is closed or canceled, null will be sent\n to the function, so that the program is not waiting for additional input.\n The callback is necessary because of how threading works.\n\n ",
+ "syntax": [
+ "selectInput(prompt, callback)",
+ "selectInput(prompt, callback, file)",
+ "selectInput(prompt, callback, file, callbackObject)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "input",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "prompt",
+ "description": "message to the user",
+ "type": ["String"]
+ },
+ {
+ "name": "callback",
+ "description": "name of the method to be called when the selection is made",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/selectOutput_.es.json b/content/references/translations/es/processing/selectOutput_.es.json
new file mode 100644
index 000000000..4c00968a6
--- /dev/null
+++ b/content/references/translations/es/processing/selectOutput_.es.json
@@ -0,0 +1,27 @@
+{
+ "brief": "Opens a platform-specific file chooser dialog to select a file for output",
+ "related": [],
+ "name": "selectOutput()",
+ "description": "Opens a platform-specific file chooser dialog to select a file for output.\n After the selection is made, the selected File will be passed to the\n 'callback' function. If the dialog is closed or canceled, null will be sent\n to the function, so that the program is not waiting for additional input.\n The callback is necessary because of how threading works.",
+ "syntax": [
+ "selectOutput(prompt, callback)",
+ "selectOutput(prompt, callback, file)",
+ "selectOutput(prompt, callback, file, callbackObject)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "output",
+ "subcategory": "files",
+ "parameters": [
+ {
+ "name": "prompt",
+ "description": "message to the user",
+ "type": ["String"]
+ },
+ {
+ "name": "callback",
+ "description": "name of the method to be called when the selection is made",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/semicolon.es.json b/content/references/translations/es/processing/semicolon.es.json
new file mode 100644
index 000000000..dba941944
--- /dev/null
+++ b/content/references/translations/es/processing/semicolon.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "; (semicolon)",
+ "brief": "A statement terminator which separates elements of the program",
+ "description": "A statement terminator which separates elements of the program. A statement is a complete instruction to the computer and the semicolon is used to separate instructions (this is similar to the period \".\" in written English). Semicolons are also used to separate the different elements of a for structure. \n",
+ "related": ["for"],
+ "syntax": ["statement;"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "statement",
+ "description": "a single statement to execute",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/setLocation_.es.json b/content/references/translations/es/processing/setLocation_.es.json
new file mode 100644
index 000000000..3dac145af
--- /dev/null
+++ b/content/references/translations/es/processing/setLocation_.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "setLocation()",
+ "brief": "The setLocation() function defines the position of the Processing sketch in relation to the upper-left corner of the computer screen",
+ "description": "The setLocation() function defines the position of the Processing sketch in relation to the upper-left corner of the computer screen.\n
\nThere are more features of PSurface documented in the Processing JavaDoc. \n",
+ "related": [],
+ "syntax": ["surface.setLocation(x, y)"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "int: x-coordinate of the surface",
+ "type": []
+ },
+ {
+ "name": "y",
+ "description": "int: y-coordinate of the surface",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/setResizable_.es.json b/content/references/translations/es/processing/setResizable_.es.json
new file mode 100644
index 000000000..fbf6b73b7
--- /dev/null
+++ b/content/references/translations/es/processing/setResizable_.es.json
@@ -0,0 +1,18 @@
+{
+ "name": "setResizable()",
+ "brief": "By default, Processing sketches can't be resized",
+ "description": "By default, Processing sketches can't be resized. When surface.setResizable(true) is used within a sketch, the window can be resized while it's running.\n
\nThere are more features of PSurface documented in the Processing JavaDoc. \n",
+ "related": [],
+ "syntax": ["surface.setResizable(resizable)"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "resizable",
+ "description": "boolean: true to make the surface resizable",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/setTitle_.es.json b/content/references/translations/es/processing/setTitle_.es.json
new file mode 100644
index 000000000..145ebf3b3
--- /dev/null
+++ b/content/references/translations/es/processing/setTitle_.es.json
@@ -0,0 +1,14 @@
+{
+ "name": "setTitle()",
+ "brief": "The setTitle() function defines the title to appear at the top of the sketch window",
+ "description": "The setTitle() function defines the title to appear at the top of the sketch window.\n
\nThere are more features of PSurface documented in the Processing JavaDoc. \n",
+ "related": [],
+ "syntax": ["surface.setTitle(title)"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ { "name": "title", "description": "String: name of the window", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/set_.es.json b/content/references/translations/es/processing/set_.es.json
new file mode 100644
index 000000000..32a597618
--- /dev/null
+++ b/content/references/translations/es/processing/set_.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "Writes a color to any pixel or writes an image into another",
+ "related": ["get_", "pixels", "copy_"],
+ "name": "set()",
+ "description": "Changes the color of any pixel or writes an image directly into the\n display window. \n \n The x and y parameters specify the pixel to change and the\n color parameter specifies the color value. The color parameter is\n affected by the current color mode (the default is RGB values from 0 to\n 255). When setting an image, the x and y parameters define\n the coordinates for the upper-left corner of the image, regardless of\n the current imageMode().\n
\n Setting the color of a single pixel with set(x, y) is easy, but\n not as fast as putting the data directly into pixels[]. The\n equivalent statement to set(x, y, #000000) using pixels[]\n is pixels[y*width+x] = #000000. See the reference for\n pixels[] for more information.",
+ "syntax": ["set(x, y, c)", "set(x, y, img)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "x-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the pixel",
+ "type": ["int"]
+ },
+ {
+ "name": "c",
+ "description": "any value of the color datatype",
+ "type": ["int"]
+ },
+ {
+ "name": "img",
+ "description": "image to copy into the original image",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/settings_.es.json b/content/references/translations/es/processing/settings_.es.json
new file mode 100644
index 000000000..f46b0a07d
--- /dev/null
+++ b/content/references/translations/es/processing/settings_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Used when absolutely necessary to define the parameters to size()\n with a variable",
+ "related": ["fullScreen_", "setup_", "size_", "smooth_"],
+ "name": "settings()",
+ "description": "The settings() function is new with Processing 3.0.\n It's not needed in most sketches. It's only useful when it's\n absolutely necessary to define the parameters to size()\n with a variable. Alternately, the settings() function\n is necessary when using Processing code outside of the\n Processing Development Environment (PDE). For example, when\n using the Eclipse code editor, it's necessary to use\n settings() to define the size() and\n smooth() values for a sketch..\n
\n The settings() method runs before the sketch has been\n set up, so other Processing functions cannot be used at that\n point. For instance, do not use loadImage() inside settings().\n The settings() method runs \"passively\" to set a few variables,\n compared to the setup() command that call commands in\n the Processing API.",
+ "syntax": ["settings()"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/setup_.es.json b/content/references/translations/es/processing/setup_.es.json
new file mode 100644
index 000000000..16444b201
--- /dev/null
+++ b/content/references/translations/es/processing/setup_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "The setup() function is called once when the program starts",
+ "related": ["size_", "loop_", "noLoop_", "draw_"],
+ "name": "setup()",
+ "description": "The setup() function is run once, when the program starts. It's used\n to define initial environment properties such as screen size and to load media\n such as images and fonts as the program starts. There can only be one\n setup() function for each program and it shouldn't be called again\n after its initial execution. \n \n If the sketch is a different dimension than the default, the size()\n function or fullScreen() function must be the first line in\n setup(). \n \n Note: Variables declared within setup() are not accessible within\n other functions, including draw().",
+ "syntax": ["setup()"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/shader_.es.json b/content/references/translations/es/processing/shader_.es.json
new file mode 100644
index 000000000..37f8ab324
--- /dev/null
+++ b/content/references/translations/es/processing/shader_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Applies the shader specified by the parameters",
+ "related": [],
+ "name": "shader()",
+ "description": "Applies the shader specified by the parameters. It's compatible with\n the P2D and P3D renderers, but not with the default renderer.",
+ "syntax": ["shader(shader)", "shader(shader, kind)"],
+ "returns": "void",
+ "type": "function",
+ "category": "rendering",
+ "subcategory": "shaders",
+ "parameters": [
+ {
+ "name": "shader",
+ "description": "name of shader file",
+ "type": ["PShader"]
+ },
+ {
+ "name": "kind",
+ "description": "type of shader, either POINTS, LINES, or TRIANGLES",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/shapeMode_.es.json b/content/references/translations/es/processing/shapeMode_.es.json
new file mode 100644
index 000000000..c0054a0d9
--- /dev/null
+++ b/content/references/translations/es/processing/shapeMode_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Modifies the location from which shapes draw",
+ "related": ["PShape", "shape_", "rectMode_"],
+ "name": "shapeMode()",
+ "description": "Modifies the location from which shapes draw. The default mode is\n shapeMode(CORNER), which specifies the location to be the upper\n left corner of the shape and uses the third and fourth parameters of\n shape() to specify the width and height. The syntax\n shapeMode(CORNERS) uses the first and second parameters of\n shape() to set the location of one corner and uses the third and\n fourth parameters to set the opposite corner. The syntax\n shapeMode(CENTER) draws the shape from its center point and uses\n the third and forth parameters of shape() to specify the width\n and height. The parameter must be written in \"ALL CAPS\" because\n Processing is a case sensitive language.",
+ "syntax": ["shapeMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "mode",
+ "description": "either CORNER, CORNERS, CENTER",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/shape_.es.json b/content/references/translations/es/processing/shape_.es.json
new file mode 100644
index 000000000..b1cdc5fd1
--- /dev/null
+++ b/content/references/translations/es/processing/shape_.es.json
@@ -0,0 +1,48 @@
+{
+ "brief": "Displays shapes to the screen",
+ "related": ["PShape", "loadShape_", "shapeMode_"],
+ "name": "shape()",
+ "description": "Draws shapes to the display window. Shapes must be in the sketch's \"data\"\n directory to load correctly. Select \"Add file...\" from the \"Sketch\" menu to\n add the shape. Processing currently works with SVG, OBJ, and custom-created\n shapes. The shape parameter specifies the shape to display and the\n coordinate parameters define the location of the shape from its upper-left\n corner. The shape is displayed at its original size unless the c and\n d parameters specify a different size. The shapeMode() function\n can be used to change the way these parameters are interpreted.",
+ "syntax": ["shape(shape)", "shape(shape, x, y)", "shape(shape, a, b, c, d)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "shape",
+ "description": "the shape to display",
+ "type": ["PShape"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the shape",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the shape",
+ "type": ["float"]
+ },
+ {
+ "name": "a",
+ "description": "x-coordinate of the shape",
+ "type": ["float"]
+ },
+ {
+ "name": "b",
+ "description": "y-coordinate of the shape",
+ "type": ["float"]
+ },
+ {
+ "name": "c",
+ "description": "width to display the shape",
+ "type": ["float"]
+ },
+ {
+ "name": "d",
+ "description": "height to display the shape",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/shearX_.es.json b/content/references/translations/es/processing/shearX_.es.json
new file mode 100644
index 000000000..404ac6f7d
--- /dev/null
+++ b/content/references/translations/es/processing/shearX_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Shears a shape around the x-axis the amount specified by the\n angle parameter",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "shearY_",
+ "scale_",
+ "translate_",
+ "radians_"
+ ],
+ "name": "shearX()",
+ "description": "Shears a shape around the x-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to PI*2) or converted to radians with the radians()\n function. Objects are always sheared around their relative position to\n the origin and positive numbers shear objects in a clockwise direction.\n Transformations apply to everything that happens after and subsequent\n calls to the function accumulates the effect. For example, calling\n shearX(PI/2) and then shearX(PI/2) is the same as\n shearX(PI). If shearX() is called within the\n draw(), the transformation is reset when the loop begins again.\n
\n Technically, shearX() multiplies the current transformation\n matrix by a rotation matrix. This function can be further controlled by\n the pushMatrix() and popMatrix() functions.",
+ "syntax": ["shearX(angle)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle of shear specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/shearY_.es.json b/content/references/translations/es/processing/shearY_.es.json
new file mode 100644
index 000000000..3d624bb3a
--- /dev/null
+++ b/content/references/translations/es/processing/shearY_.es.json
@@ -0,0 +1,25 @@
+{
+ "brief": "Shears a shape around the y-axis the amount specified by the\n angle parameter",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "shearX_",
+ "scale_",
+ "translate_",
+ "radians_"
+ ],
+ "name": "shearY()",
+ "description": "Shears a shape around the y-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to PI*2) or converted to radians with the radians()\n function. Objects are always sheared around their relative position to\n the origin and positive numbers shear objects in a clockwise direction.\n Transformations apply to everything that happens after and subsequent\n calls to the function accumulates the effect. For example, calling\n shearY(PI/2) and then shearY(PI/2) is the same as\n shearY(PI). If shearY() is called within the\n draw(), the transformation is reset when the loop begins again.\n
\n Technically, shearY() multiplies the current transformation\n matrix by a rotation matrix. This function can be further controlled by\n the pushMatrix() and popMatrix() functions.",
+ "syntax": ["shearY(angle)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "angle",
+ "description": "angle of shear specified in radians",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/shininess_.es.json b/content/references/translations/es/processing/shininess_.es.json
new file mode 100644
index 000000000..a833d1a23
--- /dev/null
+++ b/content/references/translations/es/processing/shininess_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Sets the amount of gloss in the surface of shapes",
+ "related": ["emissive_", "ambient_", "specular_"],
+ "name": "shininess()",
+ "description": "Sets the amount of gloss in the surface of shapes. Used in combination\n with ambient(), specular(), and emissive() in\n setting the material properties of shapes.",
+ "syntax": ["shininess(shine)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "material properties",
+ "parameters": [
+ { "name": "shine", "description": "degree of shininess", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/shorten_.es.json b/content/references/translations/es/processing/shorten_.es.json
new file mode 100644
index 000000000..0ffd553e6
--- /dev/null
+++ b/content/references/translations/es/processing/shorten_.es.json
@@ -0,0 +1,26 @@
+{
+ "brief": "Decreases an array by one element and returns the shortened array",
+ "related": ["append_", "expand_"],
+ "name": "shorten()",
+ "description": "Decreases an array by one element and returns the shortened array.\n
\n When using an array of objects, the data returned from the function must\n be cast to the object array's data type. For example: SomeClass[]\n items = (SomeClass[]) shorten(originalArray).",
+ "syntax": ["shorten(list)"],
+ "returns": "boolean[], byte[], char[], int[], float[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "list",
+ "description": "array to shorten",
+ "type": [
+ "boolean[]",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "float[]",
+ "String[]",
+ "Object"
+ ]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/sin_.es.json b/content/references/translations/es/processing/sin_.es.json
new file mode 100644
index 000000000..201604673
--- /dev/null
+++ b/content/references/translations/es/processing/sin_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the sine of an angle",
+ "related": ["cos_", "tan_", "radians_"],
+ "name": "sin()",
+ "description": "Calculates the sine of an angle. This function expects the values of the\n angle parameter to be provided in radians (values from 0 to\n 6.28). Values are returned in the range -1 to 1.",
+ "syntax": ["sin(angle)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ { "name": "angle", "description": "an angle in radians", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/size_.es.json b/content/references/translations/es/processing/size_.es.json
new file mode 100644
index 000000000..caf72b001
--- /dev/null
+++ b/content/references/translations/es/processing/size_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Defines the dimension of the display window in units of pixels",
+ "related": ["width", "height", "setup_", "settings_", "fullScreen_"],
+ "name": "size()",
+ "description": "Defines the dimension of the display window width and height in units of\n pixels. In a program that has the setup() function, the\n size() function must be the first line of code inside\n setup(), and the setup() function must appear in the code tab\n with the same name as your sketch folder. \n \n The built-in variables width and height are set by the\n parameters passed to this function. For example, running size(640,\n 480) will assign 640 to the width variable and 480 to the height\n variable. If size() is not used, the window will be given a\n default size of 100 x 100 pixels. \n \n The size() function can only be used once inside a sketch, and it\n cannot be used for resizing. \n \n As of Processing 3, to run a sketch at the full dimensions of a screen, use\n the fullScreen() function, rather than the older way of using\n size(displayWidth, displayHeight). \n \n The maximum width and height is limited by your operating system, and is\n usually the width and height of your actual screen. On some machines it may\n simply be the number of pixels on your current screen, meaning that a\n screen of 800 x 600 could support size(1600, 300), since that is the\n same number of pixels. This varies widely, so you'll have to try different\n rendering modes and sizes until you get what you're looking for. If you\n need something larger, use createGraphics to create a non-visible\n drawing surface. \n \n The minimum width and height is around 100 pixels in each direction. This\n is the smallest that is supported across Windows, macOS, and Linux. We\n enforce the minimum size so that sketches will run identically on different\n machines. \n The renderer parameter selects which rendering engine to use. For\n example, if you will be drawing 3D shapes, use P3D. In addition to\n the default renderer, other renderers are: \n \n P2D (Processing 2D): 2D graphics renderer that makes use of\n OpenGL-compatible graphics hardware. \n \n P3D (Processing 3D): 3D graphics renderer that makes use of\n OpenGL-compatible graphics hardware. \n \n FX2D (JavaFX 2D): A 2D renderer that uses JavaFX, which may be\n faster for some applications, but has some compatibility quirks. \n PDF: The PDF renderer draws 2D graphics directly to an Acrobat PDF\n file. This produces excellent results when you need vector shapes for\n high-resolution output or printing. You must first use Import Library\n → PDF to make use of the library. More information can be found in the\n PDF library reference. \n \n SVG: The SVG renderer draws 2D graphics directly to an SVG file.\n This is great for importing into other vector programs or using for digital\n fabrication. You must first use Import Library → SVG Export to make\n use of the library. \n \n As of Processing 3.0, to use variables as the parameters to size()\n function, place the size() function within the settings()\n function (instead of setup()). There is more information about this\n on the settings() reference page. \n \n\n ",
+ "syntax": ["size(width, height)", "size(width, height, renderer)"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "width",
+ "description": "width of the display window in units of pixels",
+ "type": ["int"]
+ },
+ {
+ "name": "height",
+ "description": "height of the display window in units of pixels",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/smooth_.es.json b/content/references/translations/es/processing/smooth_.es.json
new file mode 100644
index 000000000..06ecb8718
--- /dev/null
+++ b/content/references/translations/es/processing/smooth_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Draws all geometry with smooth (anti-aliased) edges",
+ "related": [],
+ "name": "smooth()",
+ "description": "Draws all geometry with smooth (anti-aliased) edges.\n This behavior is the default, so smooth() only needs\n to be used when a program needs to set the smoothing\n in a different way. The level parameter increases\n the amount of smoothness. This is the level of over\n sampling applied to the graphics buffer.\n\n With the P2D and P3D renderers, smooth(2) is the\n default, this is called \"2x anti-aliasing.\" The code\n smooth(4) is used for 4x anti-aliasing and smooth(8)\n is specified for \"8x anti-aliasing.\" The maximum\n anti-aliasing level is determined by the hardware of\n the machine that is running the software, so smooth(4)\n and smooth(8) will not work with every computer.\n\n The default renderer uses smooth(3) by default. This\n is bicubic smoothing. The other option for the default\n renderer is smooth(2), which is bilinear smoothing.\n\n With Processing 3.0, smooth() is different than before.\n It was common to use smooth() and noSmooth() to turn on\n and off antialiasing within a sketch. Now, because of\n how the software has changed, smooth() can only be set\n once within a sketch. It can be used either at the top\n of a sketch without a setup(), or after the size()\n function when used in a sketch with setup(). The\n noSmooth() function also follows the same rules.\n\n When smooth() is used with a PGraphics object, it should\n be run right after the object is created with\n createGraphics(), as shown in the Reference in the third\n example.",
+ "syntax": ["smooth(level)"],
+ "returns": "void",
+ "type": "function",
+ "category": "environment",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "level",
+ "description": "either 2, 3, 4, or 8 depending on the renderer",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/sort_.es.json b/content/references/translations/es/processing/sort_.es.json
new file mode 100644
index 000000000..c531824f9
--- /dev/null
+++ b/content/references/translations/es/processing/sort_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Sorts an array of numbers from smallest to largest and puts an\n array of words in alphabetical order",
+ "related": ["reverse_"],
+ "name": "sort()",
+ "description": "Sorts an array of numbers from smallest to largest, or puts an array of\n words in alphabetical order. The original array is not modified; a\n re-ordered array is returned. The count parameter states the number\n of elements to sort. For example, if there are 12 elements in an array and\n count is set to 5, only the first 5 elements in the array will be\n sorted. ",
+ "syntax": ["sort(list)", "sort(list, count)"],
+ "returns": "byte[], char[], int[], float[], or String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "list",
+ "description": "array to sort",
+ "type": ["byte[]", "char[]", "int[]", "float[]", "String[]"]
+ },
+ {
+ "name": "count",
+ "description": "number of elements to sort, starting from 0",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/specular_.es.json b/content/references/translations/es/processing/specular_.es.json
new file mode 100644
index 000000000..21c478b50
--- /dev/null
+++ b/content/references/translations/es/processing/specular_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Sets the specular color of the materials used for shapes drawn to the\n screen, which sets the color of highlights",
+ "related": ["lightSpecular_", "ambient_", "emissive_", "shininess_"],
+ "name": "specular()",
+ "description": "Sets the specular color of the materials used for shapes drawn to the\n screen, which sets the color of highlights. Specular refers to light\n which bounces off a surface in a preferred direction (rather than\n bouncing in all directions like a diffuse light). Used in combination\n with emissive(), ambient(), and shininess() in\n setting the material properties of shapes.",
+ "syntax": ["specular(rgb)", "specular(gray)", "specular(v1, v2, v3)"],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "material properties",
+ "parameters": [
+ { "name": "rgb", "description": "color to set", "type": ["int"] },
+ {
+ "name": "gray",
+ "description": "value between black and white, by default 0 to 255",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/sphereDetail_.es.json b/content/references/translations/es/processing/sphereDetail_.es.json
new file mode 100644
index 000000000..09538e2fd
--- /dev/null
+++ b/content/references/translations/es/processing/sphereDetail_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Controls the detail used to render a sphere by adjusting the number of\n vertices of the sphere mesh",
+ "related": ["sphere_"],
+ "name": "sphereDetail()",
+ "description": "Controls the detail used to render a sphere by adjusting the number of\n vertices of the sphere mesh. The default resolution is 30, which creates\n a fairly detailed sphere definition with vertices every 360/30 = 12\n degrees. If you're going to render a great number of spheres per frame,\n it is advised to reduce the level of detail using this function. The\n setting stays active until sphereDetail() is called again with a\n new parameter and so should not be called prior to every\n sphere() statement, unless you wish to render spheres with\n different settings, e.g. using less detail for smaller spheres or ones\n further away from the camera. To control the detail of the horizontal\n and vertical resolution independently, use the version of the functions\n with two parameters.\n\n\n ",
+ "syntax": ["sphereDetail(res)", "sphereDetail(ures, vres)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "3d primitives",
+ "parameters": [
+ {
+ "name": "res",
+ "description": "number of segments (minimum 3) used per full circle revolution",
+ "type": ["int"]
+ },
+ {
+ "name": "ures",
+ "description": "number of segments used longitudinally per full circle revolution",
+ "type": ["int"]
+ },
+ {
+ "name": "vres",
+ "description": "number of segments used latitudinally from top to bottom",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/sphere_.es.json b/content/references/translations/es/processing/sphere_.es.json
new file mode 100644
index 000000000..ad113e84e
--- /dev/null
+++ b/content/references/translations/es/processing/sphere_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "A sphere is a hollow ball made from tessellated triangles",
+ "related": ["sphereDetail_"],
+ "name": "sphere()",
+ "description": "A sphere is a hollow ball made from tessellated triangles.\n\n\n ",
+ "syntax": ["sphere(r)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "3d primitives",
+ "parameters": [
+ {
+ "name": "r",
+ "description": "the radius of the sphere",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/splice_.es.json b/content/references/translations/es/processing/splice_.es.json
new file mode 100644
index 000000000..d0b2a0f20
--- /dev/null
+++ b/content/references/translations/es/processing/splice_.es.json
@@ -0,0 +1,50 @@
+{
+ "brief": "Inserts a value or array of values into an existing array",
+ "related": ["concat_", "subset_"],
+ "name": "splice()",
+ "description": "Inserts a value or an array of values into an existing array. The first two\n parameters must be arrays of the same datatype. The first parameter\n specifies the initial array to be modified, and the second parameter\n defines the data to be inserted. The third parameter is an index value\n which specifies the array position from which to insert data. (Remember\n that array index numbering starts at zero, so the first position is 0, the\n second position is 1, and so on.) \n \n When splicing an array of objects, the data returned from the function must\n be cast to the object array's data type. For example: SomeClass[] items\n = (SomeClass[]) splice(array1, array2, index)",
+ "syntax": ["splice(list, value, index)"],
+ "returns": "boolean[], byte[], char[], int[], float[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "list",
+ "description": "array to splice into",
+ "type": [
+ "boolean[]",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "float[]",
+ "String[]",
+ "Object"
+ ]
+ },
+ {
+ "name": "value",
+ "description": "value to be spliced in",
+ "type": [
+ "boolean",
+ "boolean[]",
+ "byte",
+ "byte[]",
+ "char",
+ "char[]",
+ "int",
+ "int[]",
+ "float",
+ "float[]",
+ "String",
+ "String[]",
+ "Object"
+ ]
+ },
+ {
+ "name": "index",
+ "description": "position in the array from which to insert data",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/splitTokens_.es.json b/content/references/translations/es/processing/splitTokens_.es.json
new file mode 100644
index 000000000..ef3ff60b6
--- /dev/null
+++ b/content/references/translations/es/processing/splitTokens_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "The splitTokens() function splits a String at one or many\n character \"tokens\"",
+ "related": ["split_", "join_", "trim_"],
+ "name": "splitTokens()",
+ "description": "The splitTokens() function splits a String at one or many character\n delimiters or \"tokens\". The delim parameter specifies the character\n or characters to be used as a boundary. \n \n If no delim characters are specified, any whitespace character is\n used to split. Whitespace characters include tab (\t), line feed\n (\n), carriage return (\r), form feed (\f), and space. \n \n After using this function to parse incoming data, it is common to convert\n the data from Strings to integers or floats by using the datatype\n conversion functions int() and float().",
+ "syntax": ["splitTokens(value)", "splitTokens(value, delim)"],
+ "returns": "String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the String to be split",
+ "type": ["String"]
+ },
+ {
+ "name": "delim",
+ "description": "list of individual characters that will be used as separators",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/split_.es.json b/content/references/translations/es/processing/split_.es.json
new file mode 100644
index 000000000..8ac58ffde
--- /dev/null
+++ b/content/references/translations/es/processing/split_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "The split() function breaks a string into pieces using a\n character or string as the divider",
+ "related": [],
+ "name": "split()",
+ "description": "The split() function breaks a String into pieces using a character\n or string as the delimiter. The delim parameter specifies the\n character or characters that mark the boundaries between each piece. A\n String[] array is returned that contains each of the pieces. \n \n If the result is a set of numbers, you can convert the String[] array to a\n float[] or int[] array using the datatype conversion functions int()\n and float(). (See the second example above.) \n \n The splitTokens() function works in a similar fashion, except that\n it splits using a range of characters instead of a specific character or\n sequence. ",
+ "syntax": ["split(value, delim)"],
+ "returns": "String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "the String to be split",
+ "type": ["String"]
+ },
+ {
+ "name": "delim",
+ "description": "the character or String used to separate the data",
+ "type": ["char", "String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/spotLight_.es.json b/content/references/translations/es/processing/spotLight_.es.json
new file mode 100644
index 000000000..b791aa907
--- /dev/null
+++ b/content/references/translations/es/processing/spotLight_.es.json
@@ -0,0 +1,70 @@
+{
+ "brief": "Adds a spot light",
+ "related": ["lights_", "directionalLight_", "pointLight_", "ambientLight_"],
+ "name": "spotLight()",
+ "description": "Adds a spot light. Lights need to be included in the draw() to remain\n persistent in a looping program. Placing them in the setup() of a\n looping program will cause them to only have an effect the first time through\n the loop. The v1, v2, and v3 parameters are interpreted\n as either RGB or HSB values, depending on the current color mode. The\n x, y, and z parameters specify the position of the light\n and nx, ny, nz specify the direction of light. The\n angle parameter affects angle of the spotlight cone, while\n concentration sets the bias of light focusing toward the center of\n that cone.",
+ "syntax": [
+ "spotLight(v1, v2, v3, x, y, z, nx, ny, nz, angle, concentration)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "lights_camera",
+ "subcategory": "lights",
+ "parameters": [
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color\n mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color\n mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z-coordinate of the light",
+ "type": ["float"]
+ },
+ {
+ "name": "nx",
+ "description": "direction along the x axis",
+ "type": ["float"]
+ },
+ {
+ "name": "ny",
+ "description": "direction along the y axis",
+ "type": ["float"]
+ },
+ {
+ "name": "nz",
+ "description": "direction along the z axis",
+ "type": ["float"]
+ },
+ {
+ "name": "angle",
+ "description": "angle of the spotlight cone",
+ "type": ["float"]
+ },
+ {
+ "name": "concentration",
+ "description": "exponent determining the center bias of the cone",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/sq_.es.json b/content/references/translations/es/processing/sq_.es.json
new file mode 100644
index 000000000..d18fd9a85
--- /dev/null
+++ b/content/references/translations/es/processing/sq_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Squares a number (multiplies a number by itself)",
+ "related": ["sqrt_"],
+ "name": "sq()",
+ "description": "Squares a number (multiplies a number by itself). The result is always a\n positive number, as multiplying two negative numbers always yields a\n positive result. For example, -1 * -1 = 1.",
+ "syntax": ["sq(n)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "number to square", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/sqrt_.es.json b/content/references/translations/es/processing/sqrt_.es.json
new file mode 100644
index 000000000..3b6250dec
--- /dev/null
+++ b/content/references/translations/es/processing/sqrt_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the square root of a number",
+ "related": ["pow_", "sq_"],
+ "name": "sqrt()",
+ "description": "Calculates the square root of a number. The square root of a number is\n always positive, even though there may be a valid negative root. The\n square root s of number a is such that s*s = a. It\n is the opposite of squaring.",
+ "syntax": ["sqrt(n)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "calculation",
+ "parameters": [
+ { "name": "n", "description": "non-negative number", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/square_.es.json b/content/references/translations/es/processing/square_.es.json
new file mode 100644
index 000000000..7cda01f7e
--- /dev/null
+++ b/content/references/translations/es/processing/square_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Draws a square to the screen",
+ "related": ["rect_", "rectMode_"],
+ "name": "square()",
+ "description": "Draws a square to the screen. A square is a four-sided shape with\n every angle at ninety degrees and each side is the same length.\n By default, the first two parameters set the location of the\n upper-left corner, the third sets the width and height. The way\n these parameters are interpreted, however, may be changed with the\n rectMode() function.",
+ "syntax": ["square(x, y, extent)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "x",
+ "description": "x-coordinate of the rectangle by default",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the rectangle by default",
+ "type": ["float"]
+ },
+ {
+ "name": "extent",
+ "description": "width and height of the rectangle by default",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/static.es.json b/content/references/translations/es/processing/static.es.json
new file mode 100644
index 000000000..84b82c7ab
--- /dev/null
+++ b/content/references/translations/es/processing/static.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "static",
+ "brief": "Keyword used to define a variable as a \"class variable\" and a method as a \"class method",
+ "description": "Keyword used to define a variable as a \"class variable\" and a method as a \"class method.\" When a variable is declared with the static keyword, all instances of that class share the same variable. When a class is defined with the static keyword, it's methods can be used without making an instance of the class. The above examples demonstrate each of these uses. \n \nThis keyword is an essential part of Java programming and is not usually used with Processing. Consult a Java language reference or tutorial for more information. \n",
+ "related": [],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/strconvert_.es.json b/content/references/translations/es/processing/strconvert_.es.json
new file mode 100644
index 000000000..40a17f558
--- /dev/null
+++ b/content/references/translations/es/processing/strconvert_.es.json
@@ -0,0 +1,11 @@
+{
+ "name": "str()",
+ "brief": "Converts a value of a primitive data type (boolean, byte, char, int, or float) to its String representation",
+ "description": "Converts a value of a primitive data type (boolean, byte, char, int, or float) to its String representation. For example, converting an integer with str(3) will return the String value of \"3\", converting a float with str(-12.6) will return \"-12.6\", and converting a boolean with str(true) will return \"true\". \n \nWhen an array of values is passed in, then a String array of the same length is returned.\n",
+ "related": [],
+ "syntax": [],
+ "type": "function",
+ "category": "Data",
+ "subcategory": "Conversion",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/strokeCap_.es.json b/content/references/translations/es/processing/strokeCap_.es.json
new file mode 100644
index 000000000..8b58cdd63
--- /dev/null
+++ b/content/references/translations/es/processing/strokeCap_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the style for rendering line endings",
+ "related": ["stroke_", "strokeWeight_", "strokeJoin_", "size_"],
+ "name": "strokeCap()",
+ "description": "Sets the style for rendering line endings. These ends are either squared,\n extended, or rounded, each of which specified with the corresponding\n parameters: SQUARE, PROJECT, and ROUND. The default cap is ROUND. \n \n To make point() appear square, use strokeCap(PROJECT). Using\n strokeCap(SQUARE) (no cap) causes points to become invisible.",
+ "syntax": ["strokeCap(cap)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "cap",
+ "description": "either SQUARE, PROJECT, or ROUND",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/strokeJoin_.es.json b/content/references/translations/es/processing/strokeJoin_.es.json
new file mode 100644
index 000000000..7d9f76065
--- /dev/null
+++ b/content/references/translations/es/processing/strokeJoin_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the style of the joints which connect line segments",
+ "related": ["stroke_", "strokeWeight_", "strokeCap_"],
+ "name": "strokeJoin()",
+ "description": "Sets the style of the joints which connect line segments. These joints are\n either mitered, beveled, or rounded and specified with the corresponding\n parameters MITER, BEVEL, and ROUND. The default joint is MITER.",
+ "syntax": ["strokeJoin(join)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "join",
+ "description": "either MITER, BEVEL, ROUND",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/strokeWeight_.es.json b/content/references/translations/es/processing/strokeWeight_.es.json
new file mode 100644
index 000000000..347788c62
--- /dev/null
+++ b/content/references/translations/es/processing/strokeWeight_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the width of the stroke used for lines, points, and the border\n around shapes",
+ "related": ["stroke_", "strokeJoin_", "strokeCap_"],
+ "name": "strokeWeight()",
+ "description": "Sets the width of the stroke used for lines, points, and the border around\n shapes. All widths are set in units of pixels. \n \n Using point() with strokeWeight(1) or smaller may draw nothing to the screen,\n depending on the graphics settings of the computer. Workarounds include\n setting the pixel using set() or drawing the point using either\n circle() or square().",
+ "syntax": ["strokeWeight(weight)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "weight",
+ "description": "the weight (in pixels) of the stroke",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/stroke_.es.json b/content/references/translations/es/processing/stroke_.es.json
new file mode 100644
index 000000000..06dae59d4
--- /dev/null
+++ b/content/references/translations/es/processing/stroke_.es.json
@@ -0,0 +1,60 @@
+{
+ "brief": "Sets the color used to draw lines and borders around shapes",
+ "related": [
+ "noStroke_",
+ "strokeWeight_",
+ "strokeJoin_",
+ "strokeCap_",
+ "fill_",
+ "noFill_",
+ "tint_",
+ "background_",
+ "colorMode_"
+ ],
+ "name": "stroke()",
+ "description": "Sets the color used to draw lines and borders around shapes. This color is\n either specified in terms of the RGB or HSB color depending on the current\n colorMode(). The default color space is RGB, with each value in the\n range from 0 to 255. \n \n When using hexadecimal notation to specify a color, use \"#\" or\n \"0x\" before the values (e.g., #CCFFAA or 0xFFCCFFAA).\n The # syntax uses six digits to specify a color (just as colors are\n typically specified in HTML and CSS). When using the hexadecimal notation\n starting with \"0x\", the hexadecimal value must be specified with eight\n characters; the first two characters define the alpha component, and the\n remainder define the red, green, and blue components. \n \n The value for the gray parameter must be less than or equal to the current\n maximum value as specified by colorMode(). The default maximum value\n is 255. \n \n When drawing in 2D with the default renderer, you may need\n hint(ENABLE_STROKE_PURE) to improve drawing quality (at the expense of\n performance). See the hint() documentation for more details.",
+ "syntax": [
+ "stroke(rgb)",
+ "stroke(rgb, alpha)",
+ "stroke(gray)",
+ "stroke(gray, alpha)",
+ "stroke(v1, v2, v3)",
+ "stroke(v1, v2, v3, alpha)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "color",
+ "subcategory": "setting",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "color value in hexadecimal notation",
+ "type": ["int"]
+ },
+ {
+ "name": "alpha",
+ "description": "opacity of the stroke",
+ "type": ["float"]
+ },
+ {
+ "name": "gray",
+ "description": "specifies a value between white and black",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/subset_.es.json b/content/references/translations/es/processing/subset_.es.json
new file mode 100644
index 000000000..4ba67107c
--- /dev/null
+++ b/content/references/translations/es/processing/subset_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Extracts an array of elements from an existing array",
+ "related": ["splice_"],
+ "name": "subset()",
+ "description": "Extracts an array of elements from an existing array. The list\n parameter defines the array from which the elements will be copied, and the\n start and count parameters specify which elements to extract.\n If no count is given, elements will be extracted from the\n start to the end of the array. When specifying the start,\n remember that the first array element is 0. This function does not change\n the source array. \n \n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) subset(originalArray, 0, 4)",
+ "syntax": ["subset(list, start)", "subset(list, start, count)"],
+ "returns": "boolean[], byte[], char[], int[], long[], float[], double[], String[], or Object",
+ "type": "function",
+ "category": "data",
+ "subcategory": "array functions",
+ "parameters": [
+ {
+ "name": "list",
+ "description": "array to extract from",
+ "type": [
+ "boolean[]",
+ "Object",
+ "byte[]",
+ "char[]",
+ "int[]",
+ "long[]",
+ "float[]",
+ "double[]",
+ "String[]"
+ ]
+ },
+ { "name": "start", "description": "position to begin", "type": ["int"] },
+ {
+ "name": "count",
+ "description": "number of values to extract",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/subtractassign.es.json b/content/references/translations/es/processing/subtractassign.es.json
new file mode 100644
index 000000000..bd4654e44
--- /dev/null
+++ b/content/references/translations/es/processing/subtractassign.es.json
@@ -0,0 +1,15 @@
+{
+ "name": "-= (subtract assign)",
+ "brief": "Combines subtraction with assignment",
+ "description": "Combines subtraction with assignment. The expression a -= b is equivalent to a = a - b. \n",
+ "related": ["addassign", "minus"],
+ "syntax": ["value1 -= value2"],
+ "returns": "",
+ "type": "function",
+ "category": "math",
+ "subcategory": "Operators",
+ "parameters": [
+ { "name": "value1", "description": "int or float", "type": [] },
+ { "name": "value2", "description": "int or float", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/super.es.json b/content/references/translations/es/processing/super.es.json
new file mode 100644
index 000000000..1e534ec58
--- /dev/null
+++ b/content/references/translations/es/processing/super.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "super",
+ "brief": "Keyword used to reference the superclass of a subclass",
+ "description": "Keyword used to reference the superclass of a subclass.\n",
+ "related": ["class", "extends"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/switch.es.json b/content/references/translations/es/processing/switch.es.json
new file mode 100644
index 000000000..bc98b5a37
--- /dev/null
+++ b/content/references/translations/es/processing/switch.es.json
@@ -0,0 +1,30 @@
+{
+ "name": "switch",
+ "brief": "Works like an if else structure, but switch is more convenient when you need to select between three or more alternatives",
+ "description": "Works like an if else structure, but switch is more convenient when you need to select between three or more alternatives. Program controls jumps to the case with the same value as the expression. All remaining statements in the switch are executed unless redirected by a break. Only primitive datatypes which can convert to an integer (byte, char, and int) may be used as the expression parameter. The default is optional.\n",
+ "related": ["case", "default", "break", "if", "else"],
+ "syntax": [
+ "switch(expression)",
+ "{",
+ " case name: ",
+ " statements ",
+ " case name: // Optional",
+ " statements // \"",
+ " default: // \"",
+ " statements // \"",
+ "}"
+ ],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Conditionals",
+ "parameters": [
+ { "name": "expression", "description": "byte, char, or int", "type": [] },
+ { "name": "name", "description": "byte, char, or int", "type": [] },
+ {
+ "name": "statements",
+ "description": "one or more statements to be executed",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/tan_.es.json b/content/references/translations/es/processing/tan_.es.json
new file mode 100644
index 000000000..280ba103a
--- /dev/null
+++ b/content/references/translations/es/processing/tan_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Calculates the ratio of the sine and cosine of an angle",
+ "related": ["cos_", "sin_", "radians_"],
+ "name": "tan()",
+ "description": "Calculates the ratio of the sine and cosine of an angle. This function\n expects the values of the angle parameter to be provided in\n radians (values from 0 to PI*2). Values are returned in the range\n infinity to -infinity.",
+ "syntax": ["tan(angle)"],
+ "returns": "float",
+ "type": "function",
+ "category": "math",
+ "subcategory": "trigonometry",
+ "parameters": [
+ { "name": "angle", "description": "an angle in radians", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/textAlign_.es.json b/content/references/translations/es/processing/textAlign_.es.json
new file mode 100644
index 000000000..a4e713b4d
--- /dev/null
+++ b/content/references/translations/es/processing/textAlign_.es.json
@@ -0,0 +1,30 @@
+{
+ "brief": "Sets the current alignment for drawing text",
+ "related": [
+ "loadFont_",
+ "PFont",
+ "text_",
+ "textSize_",
+ "textAscent_",
+ "textDescent_"
+ ],
+ "name": "textAlign()",
+ "description": "Sets the current alignment for drawing text. The parameters LEFT, CENTER, and\n RIGHT set the display characteristics of the letters in relation to the\n values for the x and y parameters of the text()\n function. \n \n An optional second parameter can be used to vertically align the text.\n BASELINE is the default, and the vertical alignment will be reset to BASELINE\n if the second parameter is not used. The TOP and CENTER parameters are\n straightforward. The BOTTOM parameter offsets the line based on the current\n textDescent(). For multiple lines, the final line will be aligned to\n the bottom, with the previous lines appearing above it. \n \n When using text() with width and height parameters, BASELINE is\n ignored, and treated as TOP. (Otherwise, text would by default draw outside\n the box, since BASELINE is the default setting. BASELINE is not a useful\n drawing mode for text drawn in a rectangle.) \n \n The vertical alignment is based on the value of textAscent(), which\n many fonts do not specify correctly. It may be necessary to use a hack and\n offset by a few pixels by hand so that the offset looks correct. To do this\n as less of a hack, use some percentage of textAscent() or\n textDescent() so that the hack works even if you change the size of\n the font.",
+ "syntax": ["textAlign(alignX)", "textAlign(alignX, alignY)"],
+ "returns": "void",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "alignX",
+ "description": "horizontal alignment, either LEFT, CENTER, or RIGHT",
+ "type": ["int"]
+ },
+ {
+ "name": "alignY",
+ "description": "vertical alignment, either TOP, BOTTOM, CENTER, or BASELINE",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/textAscent_.es.json b/content/references/translations/es/processing/textAscent_.es.json
new file mode 100644
index 000000000..2325e4d63
--- /dev/null
+++ b/content/references/translations/es/processing/textAscent_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns ascent of the current font at its current size",
+ "related": ["textDescent_"],
+ "name": "textAscent()",
+ "description": "Returns ascent of the current font at its current size. This information is\n useful for determining the height of the font above the baseline.",
+ "syntax": ["textAscent()"],
+ "returns": "float",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "metrics",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/textDescent_.es.json b/content/references/translations/es/processing/textDescent_.es.json
new file mode 100644
index 000000000..4a1037c1b
--- /dev/null
+++ b/content/references/translations/es/processing/textDescent_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns descent of the current font at its current size",
+ "related": ["textAscent_"],
+ "name": "textDescent()",
+ "description": "Returns descent of the current font at its current size. This information is\n useful for determining the height of the font below the baseline.",
+ "syntax": ["textDescent()"],
+ "returns": "float",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "metrics",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/textFont_.es.json b/content/references/translations/es/processing/textFont_.es.json
new file mode 100644
index 000000000..e74912ddf
--- /dev/null
+++ b/content/references/translations/es/processing/textFont_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Sets the current font that will be drawn with the text()\n function",
+ "related": ["createFont_", "loadFont_", "PFont", "text_", "textSize_"],
+ "name": "textFont()",
+ "description": "Sets the current font that will be drawn with the text() function.\n Fonts must be created for Processing with createFont() or loaded with\n loadFont() before they can be used. The font set through\n textFont() will be used in all subsequent calls to the text()\n function. If no size parameter is specified, the font size defaults to\n the original size (the size in which it was created with the \"Create Font...\"\n tool) overriding any previous calls to textFont() or\n textSize(). \n \n When fonts are rendered as an image texture (as is the case with the P2D and\n P3D renderers as well as with loadFont() and vlw files), you should\n create fonts at the sizes that will be used most commonly. Using\n textFont() without the size parameter will result in the cleanest\n type. \n ",
+ "syntax": ["textFont(which)", "textFont(which, size)"],
+ "returns": "void",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "which",
+ "description": "any variable of the type PFont",
+ "type": ["PFont"]
+ },
+ {
+ "name": "size",
+ "description": "the size of the letters in units of pixels",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/textLeading_.es.json b/content/references/translations/es/processing/textLeading_.es.json
new file mode 100644
index 000000000..3ea3039c1
--- /dev/null
+++ b/content/references/translations/es/processing/textLeading_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the spacing between lines of text in units of pixels",
+ "related": ["loadFont_", "text_", "textFont_", "textSize_"],
+ "name": "textLeading()",
+ "description": "Sets the spacing between lines of text in units of pixels. This setting will\n be used in all subsequent calls to the text() function. Note, however,\n that the leading is reset by textSize(). For example, if the leading\n is set to 20 with textLeading(20), then if textSize(48) is run\n at a later point, the leading will be reset to the default for the text size\n of 48.",
+ "syntax": ["textLeading(leading)"],
+ "returns": "void",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "leading",
+ "description": "the size in pixels for spacing between lines",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/textMode_.es.json b/content/references/translations/es/processing/textMode_.es.json
new file mode 100644
index 000000000..9a523f284
--- /dev/null
+++ b/content/references/translations/es/processing/textMode_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Sets the way text draws to the screen",
+ "related": ["loadFont_", "text_", "textFont_", "beginRaw_", "createFont_"],
+ "name": "textMode()",
+ "description": "Sets the way text draws to the screen, either as texture maps or as vector\n geometry. The default textMode(MODEL), uses textures to render the\n fonts. The textMode(SHAPE) mode draws text using the glyph outlines of\n individual characters rather than as textures. This mode is only supported\n with the PDF and P3D renderer settings. With the PDF\n renderer, you must call textMode(SHAPE) before any other drawing\n occurs. If the outlines are not available, then textMode(SHAPE) will\n be ignored and textMode(MODEL) will be used instead. \n \n The textMode(SHAPE) option in P3D can be combined with\n beginRaw() to write vector-accurate text to 2D and 3D output files,\n for instance DXF or PDF. The SHAPE mode is not currently\n optimized for P3D, so if recording shape data, use\n textMode(MODEL) until you're ready to capture the geometry with\n beginRaw().",
+ "syntax": ["textMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "attributes",
+ "parameters": [
+ { "name": "mode", "description": "either MODEL or SHAPE", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/textSize_.es.json b/content/references/translations/es/processing/textSize_.es.json
new file mode 100644
index 000000000..a4382c1d6
--- /dev/null
+++ b/content/references/translations/es/processing/textSize_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Sets the current font size",
+ "related": ["loadFont_", "text_", "textFont_"],
+ "name": "textSize()",
+ "description": "Sets the current font size. This size will be used in all subsequent\n calls to the text() function. Font size is measured in units of pixels.",
+ "syntax": ["textSize(size)"],
+ "returns": "void",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "size",
+ "description": "the size of the letters in units of pixels",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/textWidth_.es.json b/content/references/translations/es/processing/textWidth_.es.json
new file mode 100644
index 000000000..c0991a721
--- /dev/null
+++ b/content/references/translations/es/processing/textWidth_.es.json
@@ -0,0 +1,23 @@
+{
+ "brief": "Calculates and returns the width of any character or text string",
+ "related": ["loadFont_", "text_", "textFont_", "textSize_"],
+ "name": "textWidth()",
+ "description": "Calculates and returns the width of any character or text string.",
+ "syntax": ["textWidth(c)", "textWidth(str)"],
+ "returns": "float",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "attributes",
+ "parameters": [
+ {
+ "name": "c",
+ "description": "the character to measure",
+ "type": ["char"]
+ },
+ {
+ "name": "str",
+ "description": "the String of characters to measure",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/text_.es.json b/content/references/translations/es/processing/text_.es.json
new file mode 100644
index 000000000..e37a99e9e
--- /dev/null
+++ b/content/references/translations/es/processing/text_.es.json
@@ -0,0 +1,83 @@
+{
+ "brief": "Draws text to the screen",
+ "related": [
+ "textAlign_",
+ "textFont_",
+ "textMode_",
+ "textSize_",
+ "textLeading_",
+ "textWidth_",
+ "textAscent_",
+ "textDescent_",
+ "rectMode_",
+ "fill_",
+ "String_"
+ ],
+ "name": "text()",
+ "description": "Draws text to the screen. Displays the information specified in the first\n parameter on the screen in the position specified by the additional\n parameters. A default font will be used unless a font is set with the\n textFont() function and a default size will be used unless a font is\n set with textSize(). Change the color of the text with the\n fill() function. The text displays in relation to the\n textAlign() function, which gives the option to draw to the left,\n right, and center of the coordinates. \n \n The x2 and y2 parameters define a rectangular area to display\n within and may only be used with string data. When these parameters are\n specified, they are interpreted based on the current rectMode()\n setting. Text that does not fit completely within the rectangle specified\n will not be drawn to the screen. \n \n Note that Processing now lets you call text() without first specifying\n a PFont with textFont(). In that case, a generic sans-serif font will\n be used instead. (See the third example above.)",
+ "syntax": [
+ "text(c, x, y)",
+ "text(c, x, y, z)",
+ "text(str, x, y)",
+ "text(chars, start, stop, x, y)",
+ "text(str, x, y, z)",
+ "text(chars, start, stop, x, y, z)",
+ "text(str, x1, y1, x2, y2)",
+ "text(num, x, y)",
+ "text(num, x, y, z)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "typography",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "c",
+ "description": "the alphanumeric character to be displayed",
+ "type": ["char"]
+ },
+ { "name": "x", "description": "x-coordinate of text", "type": ["float"] },
+ { "name": "y", "description": "y-coordinate of text", "type": ["float"] },
+ { "name": "z", "description": "z-coordinate of text", "type": ["float"] },
+ {
+ "name": "chars",
+ "description": "the alphanumeric symbols to be displayed",
+ "type": ["char[]"]
+ },
+ {
+ "name": "start",
+ "description": "array index at which to start writing characters",
+ "type": ["int"]
+ },
+ {
+ "name": "stop",
+ "description": "array index at which to stop writing characters",
+ "type": ["int"]
+ },
+ {
+ "name": "x1",
+ "description": "by default, the x-coordinate of text, see rectMode() for more info",
+ "type": ["float"]
+ },
+ {
+ "name": "y1",
+ "description": "by default, the y-coordinate of text, see rectMode() for more info",
+ "type": ["float"]
+ },
+ {
+ "name": "x2",
+ "description": "by default, the width of the text box, see rectMode() for more info",
+ "type": ["float"]
+ },
+ {
+ "name": "y2",
+ "description": "by default, the height of the text box, see rectMode() for more info",
+ "type": ["float"]
+ },
+ {
+ "name": "num",
+ "description": "the numeric value to be displayed",
+ "type": ["float", "int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/textureMode_.es.json b/content/references/translations/es/processing/textureMode_.es.json
new file mode 100644
index 000000000..14c19a385
--- /dev/null
+++ b/content/references/translations/es/processing/textureMode_.es.json
@@ -0,0 +1,14 @@
+{
+ "brief": "Sets the coordinate space for texture mapping",
+ "related": ["texture_", "textureWrap_"],
+ "name": "textureMode()",
+ "description": "Sets the coordinate space for texture mapping. The default mode is\n IMAGE, which refers to the actual coordinates of the image.\n NORMAL refers to a normalized space of values ranging from 0 to 1.\n This function only works with the P2D and P3D renderers. \n \n With IMAGE, if an image is 100 x 200 pixels, mapping the image onto\n the entire size of a quad would require the points (0,0) (100, 0) (100,200)\n (0,200). The same mapping in NORMAL is (0,0) (1,0) (1,1) (0,1).",
+ "syntax": ["textureMode(mode)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "textures",
+ "parameters": [
+ { "name": "mode", "description": "either IMAGE or NORMAL", "type": ["int"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/textureWrap_.es.json b/content/references/translations/es/processing/textureWrap_.es.json
new file mode 100644
index 000000000..d2af385d6
--- /dev/null
+++ b/content/references/translations/es/processing/textureWrap_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Defines if textures repeat or draw once within a texture map",
+ "related": ["texture_", "textureMode_"],
+ "name": "textureWrap()",
+ "description": "Defines if textures repeat or draw once within a texture map.\n The two parameters are CLAMP (the default behavior) and REPEAT.\n This function only works with the P2D and P3D renderers.",
+ "syntax": ["textureWrap(wrap)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "textures",
+ "parameters": [
+ {
+ "name": "wrap",
+ "description": "Either CLAMP (default) or REPEAT",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/texture_.es.json b/content/references/translations/es/processing/texture_.es.json
new file mode 100644
index 000000000..e3c916273
--- /dev/null
+++ b/content/references/translations/es/processing/texture_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Sets a texture to be applied to vertex points",
+ "related": [
+ "textureMode_",
+ "textureWrap_",
+ "beginShape_",
+ "endShape_",
+ "vertex_"
+ ],
+ "name": "texture()",
+ "description": "Sets a texture to be applied to vertex points. The texture() function\n must be called between beginShape() and endShape() and before\n any calls to vertex(). This function only works with the P2D and P3D\n renderers. \n \n When textures are in use, the fill color is ignored. Instead, use\n tint() to specify the color of the texture as it is applied to the\n shape.",
+ "syntax": ["texture(image)"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "textures",
+ "parameters": [
+ {
+ "name": "image",
+ "description": "reference to a PImage object",
+ "type": ["PImage"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/this.es.json b/content/references/translations/es/processing/this.es.json
new file mode 100644
index 000000000..eb9a43e7a
--- /dev/null
+++ b/content/references/translations/es/processing/this.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "this",
+ "brief": "Refers to the current object (i",
+ "description": "Refers to the current object (i.e., \"this object\"), which will change depending on the context in which this is referenced. In Processing, it's most common to use this to pass a reference from the current object into one of the libraries. \n \nThe keyword this can also be used to reference an object's own method from within itself, but such usage is typically not necessary. For example, if you are calling the filter() method of a PImage object named tree from another object, you would write tree.filter(). To call this method inside the PImage object itself, one could simply write filter() or, more explicitly, this.filter(). The additional level of specificity in this.filter() is not necessary, as it is always implied.\n",
+ "related": [],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/thread_.es.json b/content/references/translations/es/processing/thread_.es.json
new file mode 100644
index 000000000..057b76b22
--- /dev/null
+++ b/content/references/translations/es/processing/thread_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Launch a new thread and call the specified function from that new\n thread",
+ "related": ["setup_", "draw_", "loop_", "noLoop_"],
+ "name": "thread()",
+ "description": "Processing sketches follow a specific sequence of steps: setup()\n first, followed by draw() over and over and over again in a loop. A\n thread is also a series of steps with a beginning, a middle, and an end. A\n Processing sketch is a single thread, often referred to as the \"Animation\"\n thread. Other threads' sequences, however, can run independently of the\n main animation loop. In fact, you can launch any number of threads at one\n time, and they will all run concurrently. \n \n You cannot draw to the screen from a function called by thread().\n Because it runs independently, the code will not be synchronized to the\n animation thread, causing strange or at least inconsistent results. Use\n thread() to load files or do other tasks that take time. When the\n task is finished, set a variable that indicates the task is complete, and\n check that from inside your draw() method. \n \n Processing uses threads quite often, such as with library functions like\n captureEvent() and movieEvent(). These functions are\n triggered by a different thread running behind the scenes, and they alert\n Processing whenever they have something to report. This is useful when you\n need to perform a task that takes too long and would slow down the main\n animation's frame rate, such as grabbing data from the network. If a\n separate thread gets stuck or has an error, the entire program won't grind\n to a halt, since the error only stops that individual thread. \n \n Writing your own thread can be a complex endeavor that involves extending\n the Java Thread\n class. However, the thread() method is a quick and dirty way to\n implement a simple thread in Processing. By passing in a String that\n matches the name of a function declared elsewhere in the sketch, Processing\n will execute that function in a separate thread.",
+ "syntax": ["thread(name)"],
+ "returns": "void",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "name",
+ "description": "name of the function to be executed in a separate thread",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/tint_.es.json b/content/references/translations/es/processing/tint_.es.json
new file mode 100644
index 000000000..d6e9a38cf
--- /dev/null
+++ b/content/references/translations/es/processing/tint_.es.json
@@ -0,0 +1,50 @@
+{
+ "brief": "Sets the fill value for displaying images",
+ "related": ["noTint_", "image_"],
+ "name": "tint()",
+ "description": "Sets the fill value for displaying images. Images can be tinted to specified\n colors or made transparent by including an alpha value. \n \n To apply transparency to an image without affecting its color, use white as\n the tint color and specify an alpha value. For instance, tint(255,\n 128) will make an image 50% transparent (assuming the default alpha range\n of 0-255, which can be changed with colorMode()). \n \n When using hexadecimal notation to specify a color, use \"#\" or\n \"0x\" before the values (e.g., #CCFFAA or 0xFFCCFFAA).\n The # syntax uses six digits to specify a color (just as colors are\n typically specified in HTML and CSS). When using the hexadecimal notation\n starting with \"0x\", the hexadecimal value must be specified with eight\n characters; the first two characters define the alpha component, and the\n remainder define the red, green, and blue components. \n \n The value for the gray parameter must be less than or equal to the current\n maximum value as specified by colorMode(). The default maximum value\n is 255. \n \n The tint() function is also used to control the coloring of textures\n in 3D.",
+ "syntax": [
+ "tint(rgb)",
+ "tint(rgb, alpha)",
+ "tint(gray)",
+ "tint(gray, alpha)",
+ "tint(v1, v2, v3)",
+ "tint(v1, v2, v3, alpha)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "loading & displaying",
+ "parameters": [
+ {
+ "name": "rgb",
+ "description": "color value in hexadecimal notation",
+ "type": ["int"]
+ },
+ {
+ "name": "alpha",
+ "description": "opacity of the image",
+ "type": ["float"]
+ },
+ {
+ "name": "gray",
+ "description": "specifies a value between white and black",
+ "type": ["float"]
+ },
+ {
+ "name": "v1",
+ "description": "red or hue value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v2",
+ "description": "green or saturation value (depending on current color mode)",
+ "type": ["float"]
+ },
+ {
+ "name": "v3",
+ "description": "blue or brightness value (depending on current color mode)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/translate_.es.json b/content/references/translations/es/processing/translate_.es.json
new file mode 100644
index 000000000..32fcae0f2
--- /dev/null
+++ b/content/references/translations/es/processing/translate_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Specifies an amount to displace objects within the display window",
+ "related": [
+ "popMatrix_",
+ "pushMatrix_",
+ "rotate_",
+ "rotateX_",
+ "rotateY_",
+ "rotateZ_",
+ "scale_"
+ ],
+ "name": "translate()",
+ "description": "Specifies an amount to displace objects within the display window. The\n x parameter specifies left/right translation, the y parameter\n specifies up/down translation, and the z parameter specifies\n translations toward/away from the screen. Using this function with the\n z parameter requires using P3D as a parameter in combination with size\n as shown in the above example. \n \n Transformations are cumulative and apply to everything that happens after and\n subsequent calls to the function accumulates the effect. For example, calling\n translate(50, 0) and then translate(20, 0) is the same as\n translate(70, 0). If translate() is called within\n draw(), the transformation is reset when the loop begins again. This\n function can be further controlled by using pushMatrix() and\n popMatrix().",
+ "syntax": ["translate(x, y)", "translate(x, y, z)"],
+ "returns": "void",
+ "type": "function",
+ "category": "transform",
+ "subcategory": "",
+ "parameters": [
+ { "name": "x", "description": "left/right translation", "type": ["float"] },
+ { "name": "y", "description": "up/down translation", "type": ["float"] },
+ {
+ "name": "z",
+ "description": "forward/backward translation",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/triangle_.es.json b/content/references/translations/es/processing/triangle_.es.json
new file mode 100644
index 000000000..5f75e7d96
--- /dev/null
+++ b/content/references/translations/es/processing/triangle_.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "A triangle is a plane created by connecting three points",
+ "related": ["beginShape_"],
+ "name": "triangle()",
+ "description": "A triangle is a plane created by connecting three points. The first two\n arguments specify the first point, the middle two arguments specify the\n second point, and the last two arguments specify the third point.",
+ "syntax": ["triangle(x1, y1, x2, y2, x3, y3)"],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "2d primitives",
+ "parameters": [
+ {
+ "name": "x1",
+ "description": "x-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "y1",
+ "description": "y-coordinate of the first point",
+ "type": ["float"]
+ },
+ {
+ "name": "x2",
+ "description": "x-coordinate of the second point",
+ "type": ["float"]
+ },
+ {
+ "name": "y2",
+ "description": "y-coordinate of the second point",
+ "type": ["float"]
+ },
+ {
+ "name": "x3",
+ "description": "x-coordinate of the third point",
+ "type": ["float"]
+ },
+ {
+ "name": "y3",
+ "description": "y-coordinate of the third point",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/trim_.es.json b/content/references/translations/es/processing/trim_.es.json
new file mode 100644
index 000000000..90d461c76
--- /dev/null
+++ b/content/references/translations/es/processing/trim_.es.json
@@ -0,0 +1,15 @@
+{
+ "brief": "Removes whitespace characters from the beginning and end of a String",
+ "related": ["split_", "join_"],
+ "name": "trim()",
+ "description": "Removes whitespace characters from the beginning and end of a String. In\n addition to standard whitespace characters such as space, carriage\n return, and tab, this function also removes the Unicode \"nbsp\" (U+00A0)\n character and the zero width no-break space (U+FEFF) character.",
+ "syntax": ["trim(str)", "trim(array)"],
+ "returns": "String or String[]",
+ "type": "function",
+ "category": "data",
+ "subcategory": "string_functions",
+ "parameters": [
+ { "name": "str", "description": "any string", "type": ["String"] },
+ { "name": "array", "description": "a String array", "type": ["String[]"] }
+ ]
+}
diff --git a/content/references/translations/es/processing/true.es.json b/content/references/translations/es/processing/true.es.json
new file mode 100644
index 000000000..12095054e
--- /dev/null
+++ b/content/references/translations/es/processing/true.es.json
@@ -0,0 +1,12 @@
+{
+ "name": "true",
+ "brief": "Reserved word representing the logical value \"true\"",
+ "description": "Reserved word representing the logical value \"true\". Only variables of type boolean may be assigned the value true.\n",
+ "related": ["false", "boolean"],
+ "syntax": [],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/try.es.json b/content/references/translations/es/processing/try.es.json
new file mode 100644
index 000000000..5853d99c4
--- /dev/null
+++ b/content/references/translations/es/processing/try.es.json
@@ -0,0 +1,34 @@
+{
+ "name": "try",
+ "brief": "The try keyword is used with catch to handle exceptions",
+ "description": "The try keyword is used with catch to handle exceptions. Sun's Java documentation defines an exception as \"an event, which occurs during the execution of a program, that disrupts the normal flow of the program's instructions.\" This could be, for example, an error while a file is read.\n",
+ "related": [],
+ "syntax": [
+ "try {",
+ " tryStatements",
+ "} catch (exception) {",
+ " catchStatements",
+ "} "
+ ],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "tryStatements",
+ "description": "if this code throws an exception, then the code in \"catch\" is run",
+ "type": []
+ },
+ {
+ "name": "exception",
+ "description": "the Java exception that was thrown",
+ "type": []
+ },
+ {
+ "name": "catchStatements",
+ "description": "code that handles the exception",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/unbinary_.es.json b/content/references/translations/es/processing/unbinary_.es.json
new file mode 100644
index 000000000..f2f268138
--- /dev/null
+++ b/content/references/translations/es/processing/unbinary_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Converts a String representation of a binary number to its\n equivalent integer value",
+ "related": ["binary_", "hex_", "unhex_"],
+ "name": "unbinary()",
+ "description": "Converts a String representation of a binary number to its equivalent\n integer value. For example, unbinary(\"00001000\") will return\n 8.",
+ "syntax": ["unbinary(value)"],
+ "returns": "int",
+ "type": "function",
+ "category": "data",
+ "subcategory": "conversion",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "String to convert to an integer",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/unhex_.es.json b/content/references/translations/es/processing/unhex_.es.json
new file mode 100644
index 000000000..3e8ee3074
--- /dev/null
+++ b/content/references/translations/es/processing/unhex_.es.json
@@ -0,0 +1,18 @@
+{
+ "brief": "Converts a String representation of a hexadecimal number to its\n equivalent integer value",
+ "related": ["hex_", "binary_", "unbinary_"],
+ "name": "unhex()",
+ "description": "Converts a String representation of a hexadecimal number to its\n equivalent integer value.",
+ "syntax": ["unhex(value)"],
+ "returns": "int",
+ "type": "function",
+ "category": "data",
+ "subcategory": "conversion",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "String to convert to an integer",
+ "type": ["String"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/updatePixels_.es.json b/content/references/translations/es/processing/updatePixels_.es.json
new file mode 100644
index 000000000..c6d3e294f
--- /dev/null
+++ b/content/references/translations/es/processing/updatePixels_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Updates the display window with the data in the pixels[]\n array",
+ "related": ["loadPixels_", "pixels"],
+ "name": "updatePixels()",
+ "description": "Updates the display window with the data in the pixels[] array. Use\n in conjunction with loadPixels(). If you're only reading pixels from\n the array, there's no need to call updatePixels() — updating is\n only necessary to apply changes.",
+ "syntax": ["updatePixels()"],
+ "returns": "void",
+ "type": "function",
+ "category": "image",
+ "subcategory": "pixels",
+ "parameters": []
+}
diff --git a/content/references/translations/es/processing/vertex_.es.json b/content/references/translations/es/processing/vertex_.es.json
new file mode 100644
index 000000000..bc375d5ba
--- /dev/null
+++ b/content/references/translations/es/processing/vertex_.es.json
@@ -0,0 +1,56 @@
+{
+ "brief": "All shapes are constructed by connecting a series of vertices",
+ "related": [
+ "beginShape_",
+ "endShape_",
+ "bezierVertex_",
+ "quadraticVertex_",
+ "curveVertex_",
+ "texture_"
+ ],
+ "name": "vertex()",
+ "description": "All shapes are constructed by connecting a series of vertices.\n vertex() is used to specify the vertex coordinates for points, lines,\n triangles, quads, and polygons. It is used exclusively within the\n beginShape() and endShape() functions. \n \n Drawing a vertex in 3D using the z parameter requires the P3D\n parameter in combination with size, as shown in the above example. \n \n This function is also used to map a texture onto geometry. The\n texture() function declares the texture to apply to the geometry and\n the u and v coordinates set define the mapping of this texture\n to the form. By default, the coordinates used for u and v are\n specified in relation to the image's size in pixels, but this relation can be\n changed with textureMode().",
+ "syntax": [
+ "vertex(x, y)",
+ "vertex(x, y, z)",
+ "vertex(v)",
+ "vertex(x, y, u, v)",
+ "vertex(x, y, z, u, v)"
+ ],
+ "returns": "void",
+ "type": "function",
+ "category": "shape",
+ "subcategory": "vertex",
+ "parameters": [
+ {
+ "name": "v",
+ "description": "vertex parameters, as a float array of length VERTEX_FIELD_COUNT",
+ "type": ["float[]", "float"]
+ },
+ {
+ "name": "x",
+ "description": "x-coordinate of the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "y",
+ "description": "y-coordinate of the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "z",
+ "description": "z-coordinate of the vertex",
+ "type": ["float"]
+ },
+ {
+ "name": "u",
+ "description": "horizontal coordinate for the texture mapping",
+ "type": ["float"]
+ },
+ {
+ "name": "v",
+ "description": "vertical coordinate for the texture mapping",
+ "type": ["float", "float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/void.es.json b/content/references/translations/es/processing/void.es.json
new file mode 100644
index 000000000..66a57d3f0
--- /dev/null
+++ b/content/references/translations/es/processing/void.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "void",
+ "brief": "Keyword used indicate that a function returns no value",
+ "description": "Keyword used indicate that a function returns no value. Each function must either return a value of a specific datatype or use the keyword void to specify it returns nothing.\n",
+ "related": [],
+ "syntax": ["void function {", " statements", "}"],
+ "returns": "",
+ "type": "function",
+ "category": "structure",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "function",
+ "description": "any function that is being defined or implemented",
+ "type": []
+ },
+ { "name": "statements", "description": "any valid statements", "type": [] }
+ ]
+}
diff --git a/content/references/translations/es/processing/while.es.json b/content/references/translations/es/processing/while.es.json
new file mode 100644
index 000000000..12ac03bb6
--- /dev/null
+++ b/content/references/translations/es/processing/while.es.json
@@ -0,0 +1,19 @@
+{
+ "name": "while",
+ "brief": "Controls a sequence of repetitions",
+ "description": "Controls a sequence of repetitions. The while structure executes a series of statements continuously while the expression is true. The expression must be updated during the repetitions or the program will never \"break out\" of while.\n
\nThis function can be dangerous because the code inside the while loop will not finish until the expression inside while becomes false. It will lock out all other code from running (e.g., mouse and keyboard events will not be updated). Be careful — if used incorrectly, this can lock up your code (and sometimes even the Processing environment itself).\n",
+ "related": ["for"],
+ "syntax": ["while (expression) {", " statements", "}"],
+ "returns": "",
+ "type": "function",
+ "category": "Control",
+ "subcategory": "Iteration",
+ "parameters": [
+ { "name": "expression", "description": "a valid expression", "type": [] },
+ {
+ "name": "statements",
+ "description": "one or more statements",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/processing/width.es.json b/content/references/translations/es/processing/width.es.json
new file mode 100644
index 000000000..9cdcfea55
--- /dev/null
+++ b/content/references/translations/es/processing/width.es.json
@@ -0,0 +1,9 @@
+{
+ "brief": "System variable which stores the width of the display window",
+ "related": ["height", "size_"],
+ "name": "width",
+ "description": "System variable which stores the width of the display window. This value\n is set by the first parameter of the size() function. For\n example, the function call size(320, 240) sets the width\n variable to the value 320. The value of width defaults to 100 if\n size() is not used in a program.",
+ "category": "environment",
+ "subcategory": "",
+ "type": "other"
+}
diff --git a/content/references/translations/es/processing/year_.es.json b/content/references/translations/es/processing/year_.es.json
new file mode 100644
index 000000000..141fe4ef8
--- /dev/null
+++ b/content/references/translations/es/processing/year_.es.json
@@ -0,0 +1,12 @@
+{
+ "brief": "Returns the current year as an integer (2003,\n 2004, 2005, etc)",
+ "related": ["millis_", "second_", "minute_", "hour_", "day_", "month_"],
+ "name": "year()",
+ "description": "Processing communicates with the clock on your computer. The\n year() function returns the current year as an integer (2003,\n 2004, 2005, etc).",
+ "syntax": ["year()"],
+ "returns": "int",
+ "type": "function",
+ "category": "input",
+ "subcategory": "time date",
+ "parameters": []
+}
diff --git a/content/references/translations/es/serial/Serial.es.json b/content/references/translations/es/serial/Serial.es.json
new file mode 100644
index 000000000..cda9fffe4
--- /dev/null
+++ b/content/references/translations/es/serial/Serial.es.json
@@ -0,0 +1,130 @@
+{
+ "brief": "Class for sending and receiving data using the serial communication protocol",
+ "methods": [
+ {
+ "anchor": "Serial_available_",
+ "name": "available()",
+ "desc": "Returns the number of bytes available"
+ },
+ {
+ "anchor": "Serial_buffer_",
+ "name": "buffer()",
+ "desc": "Sets the number of bytes to buffer before calling serialEvent()"
+ },
+ {
+ "anchor": "Serial_bufferUntil_",
+ "name": "bufferUntil()",
+ "desc": "Sets a specific byte to buffer until before calling serialEvent()"
+ },
+ {
+ "anchor": "Serial_clear_",
+ "name": "clear()",
+ "desc": "Empty the buffer, removes all the data stored there"
+ },
+ {
+ "anchor": "Serial_last_",
+ "name": "last()",
+ "desc": "Returns last byte received or -1 if there is none available"
+ },
+ {
+ "anchor": "Serial_lastChar_",
+ "name": "lastChar()",
+ "desc": "Returns the last byte received as a char or -1 if there is none available"
+ },
+ {
+ "anchor": "Serial_list_",
+ "name": "list()",
+ "desc": "Gets a list of all available serial ports"
+ },
+ {
+ "anchor": "Serial_read_",
+ "name": "read()",
+ "desc": "Returns a number between 0 and 255 for the next byte that's waiting in the buffer"
+ },
+ {
+ "anchor": "Serial_readBytes_",
+ "name": "readBytes()",
+ "desc": "Reads a group of bytes from the buffer or null if there are none available"
+ },
+ {
+ "anchor": "Serial_readBytesUntil_",
+ "name": "readBytesUntil()",
+ "desc": "Reads from the port into a buffer of bytes up to and including a particular character"
+ },
+ {
+ "anchor": "Serial_readChar_",
+ "name": "readChar()",
+ "desc": "Returns the next byte in the buffer as a char"
+ },
+ {
+ "anchor": "Serial_readString_",
+ "name": "readString()",
+ "desc": "Returns all the data from the buffer as a String or null if there is nothing available"
+ },
+ {
+ "anchor": "Serial_readStringUntil_",
+ "name": "readStringUntil()",
+ "desc": "Combination of readBytesUntil() and readString()"
+ },
+ {
+ "anchor": "Serial_serialEvent_",
+ "name": "serialEvent()",
+ "desc": "Called when data is available"
+ },
+ {
+ "anchor": "Serial_stop_",
+ "name": "stop()",
+ "desc": "Stops data communication on this port"
+ },
+ {
+ "anchor": "Serial_write_",
+ "name": "write()",
+ "desc": "Writes bytes, chars, ints, bytes[], Strings to the serial port"
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Class for sending and receiving data using the serial communication protocol.",
+ "type": "class",
+ "constructors": [
+ "Serial(parent)",
+ "Serial(parent, baudRate)",
+ "Serial(parent, portName)",
+ "Serial(parent, portName, baudRate)",
+ "Serial(parent, portName, baudRate, parity, dataBits, stopBits)"
+ ],
+ "related": ["LIB_serial/serialEvent_"],
+ "name": "Serial",
+ "classanchor": "serial/Serial",
+ "category": "serial",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "baudRate",
+ "description": "9600 is the default",
+ "type": ["int"]
+ },
+ {
+ "name": "portName",
+ "description": "name of the port (COM1 is the default)",
+ "type": ["String"]
+ },
+ {
+ "name": "parity",
+ "description": "'N' for none, 'E' for even, 'O' for odd, 'M' for mark, 'S' for space ('N' is the default)",
+ "type": ["char"]
+ },
+ { "name": "dataBits", "description": "8 is the default", "type": ["int"] },
+ {
+ "name": "stopBits",
+ "description": "1.0, 1.5, or 2.0 (1.0 is the default)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_available_.es.json b/content/references/translations/es/serial/Serial_available_.es.json
new file mode 100644
index 000000000..85b77e1c7
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_available_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the number of bytes available",
+ "related": [],
+ "name": "available()",
+ "description": "Returns the number of bytes available.",
+ "syntax": ["serial.available()"],
+ "returns": "int",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_bufferUntil_.es.json b/content/references/translations/es/serial/Serial_bufferUntil_.es.json
new file mode 100644
index 000000000..54b618dd7
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_bufferUntil_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Sets a specific byte to buffer until before calling serialEvent()",
+ "related": [],
+ "name": "bufferUntil()",
+ "description": "Sets a specific byte to buffer until before calling serialEvent().",
+ "syntax": ["serial.bufferUntil(inByte)"],
+ "returns": "void",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "inByte",
+ "description": "the value to buffer until",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_buffer_.es.json b/content/references/translations/es/serial/Serial_buffer_.es.json
new file mode 100644
index 000000000..91eac541b
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_buffer_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Sets the number of bytes to buffer before calling serialEvent()",
+ "related": [],
+ "name": "buffer()",
+ "description": "Sets the number of bytes to buffer before calling serialEvent()",
+ "syntax": ["serial.buffer(size)"],
+ "returns": "void",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "size",
+ "description": "number of bytes to buffer",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_clear_.es.json b/content/references/translations/es/serial/Serial_clear_.es.json
new file mode 100644
index 000000000..484c9c1ae
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_clear_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Empty the buffer, removes all the data stored there",
+ "related": [],
+ "name": "clear()",
+ "description": "Empty the buffer, removes all the data stored there.",
+ "syntax": ["serial.clear()"],
+ "returns": "void",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_lastChar_.es.json b/content/references/translations/es/serial/Serial_lastChar_.es.json
new file mode 100644
index 000000000..20d6c8315
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_lastChar_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the last byte received as a char or -1 if there is none available",
+ "related": [],
+ "name": "lastChar()",
+ "description": "Returns the last byte received as a char or -1 if there is none available.",
+ "syntax": ["serial.lastChar()"],
+ "returns": "char",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_last_.es.json b/content/references/translations/es/serial/Serial_last_.es.json
new file mode 100644
index 000000000..55b2289e6
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_last_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns last byte received or -1 if there is none available",
+ "related": [],
+ "name": "last()",
+ "description": "Returns last byte received or -1 if there is none available.",
+ "syntax": ["serial.last()"],
+ "returns": "int",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_list_.es.json b/content/references/translations/es/serial/Serial_list_.es.json
new file mode 100644
index 000000000..01dae3194
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_list_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Gets a list of all available serial ports",
+ "related": [],
+ "name": "list()",
+ "description": "Gets a list of all available serial ports. Use println() to write the \n information to the text window.",
+ "syntax": ["serial.list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_readBytesUntil_.es.json b/content/references/translations/es/serial/Serial_readBytesUntil_.es.json
new file mode 100644
index 000000000..c21f95a98
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_readBytesUntil_.es.json
@@ -0,0 +1,32 @@
+{
+ "brief": "Reads from the port into a buffer of bytes up to and including a particular character",
+ "related": [],
+ "name": "readBytesUntil()",
+ "description": "Reads from the port into a buffer of bytes up to and including a particular character. If the \n character isn't in the buffer, null is returned. The version with without the \n byteBuffer parameter returns a byte array of all data up to and including the \n interesting byte. This is not efficient, but is easy to use. The version with the \n byteBuffer parameter is more memory and time efficient. It grabs the data in the buffer \n and puts it into the byte array passed in and returns an int value for the number of bytes read. \n If the byte buffer is not large enough, -1 is returned and an error is printed to the message \n area. If nothing is in the buffer, 0 is returned.",
+ "syntax": [
+ "serial.readBytesUntil(inByte)",
+ "serial.readBytesUntil(inByte, dest)"
+ ],
+ "returns": "byte[] or int",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "inByte",
+ "description": "character designated to mark the end of the data",
+ "type": ["int"]
+ },
+ {
+ "name": "dest",
+ "description": "passed in byte array to be altered",
+ "type": ["byte[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_readBytes_.es.json b/content/references/translations/es/serial/Serial_readBytes_.es.json
new file mode 100644
index 000000000..de69e4627
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_readBytes_.es.json
@@ -0,0 +1,28 @@
+{
+ "brief": "Reads a group of bytes from the buffer or null if there are none available",
+ "related": [],
+ "name": "readBytes()",
+ "description": "Reads a group of bytes from the buffer or null if there are none available. The version \n with no parameters returns a byte array of all data in the buffer. This is not efficient, but \n is easy to use. The version with the byteBuffer parameter is more memory and time \n efficient. It grabs the data in the buffer and puts it into the byte array passed in and returns \n an int value for the number of bytes read. If more bytes are available than can fit into the \n byteBuffer, only those that fit are read.",
+ "syntax": [
+ "serial.readBytes()",
+ "serial.readBytes(max)",
+ "serial.readBytes(dest)"
+ ],
+ "returns": "byte[] or int",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "max",
+ "description": "the maximum number of bytes to read",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_readChar_.es.json b/content/references/translations/es/serial/Serial_readChar_.es.json
new file mode 100644
index 000000000..3df83674a
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_readChar_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns the next byte in the buffer as a char",
+ "related": [],
+ "name": "readChar()",
+ "description": "Returns the next byte in the buffer as a char. Returns -1 or 0xffff \n if nothing is there.",
+ "syntax": ["serial.readChar()"],
+ "returns": "char",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_readStringUntil_.es.json b/content/references/translations/es/serial/Serial_readStringUntil_.es.json
new file mode 100644
index 000000000..350d82a86
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_readStringUntil_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Combination of readBytesUntil() and readString()",
+ "related": [],
+ "name": "readStringUntil()",
+ "description": "Combination of readBytesUntil() and readString(). Returns null \n if it doesn't find what you're looking for.",
+ "syntax": ["serial.readStringUntil(inByte)"],
+ "returns": "String",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "inByte",
+ "description": "character designated to mark the end of the data",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_readString_.es.json b/content/references/translations/es/serial/Serial_readString_.es.json
new file mode 100644
index 000000000..fe711ec00
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_readString_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns all the data from the buffer as a String or null if there is nothing available",
+ "related": [],
+ "name": "readString()",
+ "description": "Returns all the data from the buffer as a String or null if there is nothing available. \n This method assumes the incoming characters are ASCII. If you want to transfer Unicode data, \n first convert the String to a byte stream in the representation of your choice (i.e. UTF8 or \n two-byte Unicode data), and send it as a byte array.",
+ "syntax": ["serial.readString()"],
+ "returns": "String",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_read_.es.json b/content/references/translations/es/serial/Serial_read_.es.json
new file mode 100644
index 000000000..f260069ff
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_read_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Returns a number between 0 and 255 for the next byte that's waiting in the buffer",
+ "related": [],
+ "name": "read()",
+ "description": "Returns a number between 0 and 255 for the next byte that's waiting in the buffer. \n Returns -1 if there is no byte, although this should be avoided by first cheacking \n available() to see if data is available.",
+ "syntax": ["serial.read()"],
+ "returns": "int",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_serialEvent_.es.json b/content/references/translations/es/serial/Serial_serialEvent_.es.json
new file mode 100644
index 000000000..ddbce658f
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_serialEvent_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Called when data is available",
+ "related": [],
+ "name": "serialEvent()",
+ "description": "Called when data is available. Use one of the read() methods to capture this data. \n The serialEvent() can be set with buffer() to only trigger after a certain \n number of data elements are read and can be set with bufferUntil() to only trigger \n after a specific character is read. The which parameter contains the name of the \n port where new data is available, but is only useful when there is more than one serial \n connection open and it's necessary to distinguish between the two.",
+ "syntax": ["serial.serialEvent(event)"],
+ "returns": "void",
+ "type": "method",
+ "category": "serial_event",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "event",
+ "description": "the port where new data is available",
+ "type": ["SerialPortEvent"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_stop_.es.json b/content/references/translations/es/serial/Serial_stop_.es.json
new file mode 100644
index 000000000..2f223d3b0
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_stop_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Stops data communication on this port",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops data communication on this port. Use to shut the connection when you're finished with the Serial.",
+ "syntax": ["serial.stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/serial/Serial_write_.es.json b/content/references/translations/es/serial/Serial_write_.es.json
new file mode 100644
index 000000000..04126aeae
--- /dev/null
+++ b/content/references/translations/es/serial/Serial_write_.es.json
@@ -0,0 +1,30 @@
+{
+ "brief": "Writes bytes, chars, ints, bytes[], Strings to the serial port",
+ "related": [],
+ "name": "write()",
+ "description": "Writes bytes, chars, ints, bytes[], Strings to the serial port\n \n ",
+ "syntax": ["serial.write(src)"],
+ "returns": "void",
+ "type": "method",
+ "category": "serial",
+ "subcategory": "",
+ "classanchor": "Serial",
+ "parameters": [
+ {
+ "name": "serial",
+ "description": " any variable of type Serial",
+ "type": ["Serial"]
+ },
+ {
+ "name": "src",
+ "description": "data to write",
+ "type": ["byte[]", "int", "String"]
+ },
+ {
+ "name": "src",
+ "description": "data to write",
+ "type": ["int", "String"]
+ },
+ { "name": "src", "description": "data to write", "type": ["String", "int"] }
+ ]
+}
diff --git a/content/references/translations/es/sound/Amplitude.es.json b/content/references/translations/es/sound/Amplitude.es.json
new file mode 100644
index 000000000..dbbaf27cb
--- /dev/null
+++ b/content/references/translations/es/sound/Amplitude.es.json
@@ -0,0 +1,33 @@
+{
+ "brief": "This is a volume analyzer.",
+ "methods": [
+ {
+ "anchor": "Amplitude_analyze_",
+ "name": "analyze()",
+ "desc": "Queries a value from the analyzer and returns a float between 0. and 1."
+ },
+ {
+ "anchor": "Amplitude_input_",
+ "name": "input()",
+ "desc": "Define the audio input for the analyzer."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a volume analyzer. It calculates the root mean square of the\n amplitude of each audio block and returns that value.",
+ "type": "class",
+ "constructors": ["Amplitude(parent)"],
+ "related": [],
+ "name": "Amplitude",
+ "classanchor": "sound/Amplitude",
+ "category": "analysis",
+ "subcategory": "amplitude",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Amplitude_analyze_.es.json b/content/references/translations/es/sound/Amplitude_analyze_.es.json
new file mode 100644
index 000000000..120787704
--- /dev/null
+++ b/content/references/translations/es/sound/Amplitude_analyze_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Queries a value from the analyzer and returns a float between 0. and 1.",
+ "related": [],
+ "name": "analyze()",
+ "description": "Queries a value from the analyzer and returns a float between 0. and 1.",
+ "syntax": [".analyze()"],
+ "returns": "float",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "amplitude",
+ "classanchor": "Amplitude",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Amplitude_input_.es.json b/content/references/translations/es/sound/Amplitude_input_.es.json
new file mode 100644
index 000000000..e2ef71828
--- /dev/null
+++ b/content/references/translations/es/sound/Amplitude_input_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Define the audio input for the analyzer.",
+ "related": [],
+ "name": "input()",
+ "description": "Define the audio input for the analyzer.",
+ "syntax": [".input(input)"],
+ "returns": "void",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "amplitude",
+ "classanchor": "Amplitude",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "the input sound source. Can be an oscillator, noise generator,\n SoundFile or AudioIn.",
+ "type": ["SoundObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Amplitude_stop_.es.json b/content/references/translations/es/sound/Amplitude_stop_.es.json
new file mode 100644
index 000000000..2265b13b8
--- /dev/null
+++ b/content/references/translations/es/sound/Amplitude_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "",
+ "related": [],
+ "name": "stop()",
+ "description": "",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "Amplitude",
+ "classanchor": "Amplitude",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioIn.es.json b/content/references/translations/es/sound/AudioIn.es.json
new file mode 100644
index 000000000..3ce2a629b
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn.es.json
@@ -0,0 +1,43 @@
+{
+ "brief": "AudioIn lets you grab the audio input from your sound card.",
+ "methods": [
+ {
+ "anchor": "AudioIn_play_",
+ "name": "play()",
+ "desc": "Start capturing the input stream and route it to the audio output"
+ },
+ {
+ "anchor": "AudioIn_start_",
+ "name": "start()",
+ "desc": "Start the input stream without routing it to the audio output."
+ },
+ {
+ "anchor": "AudioIn_set_",
+ "name": "set()",
+ "desc": "Sets amplitude, add and pan position with one method."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "AudioIn lets you grab the audio input from your sound card.",
+ "type": "class",
+ "constructors": ["AudioIn(parent)", "AudioIn(parent, in)"],
+ "related": [],
+ "name": "AudioIn",
+ "classanchor": "sound/AudioIn",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "in",
+ "description": "input channel number (optional, default 0)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_add_.es.json b/content/references/translations/es/sound/AudioIn_add_.es.json
new file mode 100644
index 000000000..dd1829edb
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "The .add() method is useful for modulating other audio signals.",
+ "related": [],
+ "name": "add()",
+ "description": "The .add() method is useful for modulating other audio signals.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "offset the output of the audio input by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_amp_.es.json b/content/references/translations/es/sound/AudioIn_amp_.es.json
new file mode 100644
index 000000000..4317bf1a9
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the input stream.",
+ "related": [],
+ "name": "amp()",
+ "description": "Changes the amplitude/volume of the input stream. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the input stream as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_pan_.es.json b/content/references/translations/es/sound/AudioIn_pan_.es.json
new file mode 100644
index 000000000..bfe3f7065
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Pan the input stream in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Pan the input stream in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_play_.es.json b/content/references/translations/es/sound/AudioIn_play_.es.json
new file mode 100644
index 000000000..3ac59792f
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_play_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Start capturing the input stream and route it to the audio output",
+ "related": [],
+ "name": "play()",
+ "description": "Start capturing the input stream and route it to the audio output",
+ "syntax": [
+ ".play()",
+ ".play(amp)",
+ ".play(amp, add)",
+ ".play(amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the volume to grab the input at as a value from 0.0 (complete\n silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the audio input by the given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the audio input in a stereo panorama. Allowed values are\n between -1.0 (left) and 1.0 (right)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_set_.es.json b/content/references/translations/es/sound/AudioIn_set_.es.json
new file mode 100644
index 000000000..26e8c9a17
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_set_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Sets amplitude, add and pan position with one method.",
+ "related": [],
+ "name": "set()",
+ "description": "Sets amplitude, add and pan position with one method.",
+ "syntax": [".set(amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the volume to grab the input at as a value from 0.0 (complete\n silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the audio input by the given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the audio input in a stereo panorama. Allowed values are\n between -1.0 (left) and 1.0 (right)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_start_.es.json b/content/references/translations/es/sound/AudioIn_start_.es.json
new file mode 100644
index 000000000..118ac5f5e
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_start_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Start the input stream without routing it to the audio output.",
+ "related": [],
+ "name": "start()",
+ "description": "Start the input stream without routing it to the audio output. This is useful\n if you only want to perform audio analysis based on the microphone input.",
+ "syntax": [
+ ".start()",
+ ".start(amp)",
+ ".start(amp, add)",
+ ".start(amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the volume to grab the input at as a value from 0.0 (complete\n silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the audio input by the given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the audio input in a stereo panorama. Allowed values are\n between -1.0 (left) and 1.0 (right)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioIn_stop_.es.json b/content/references/translations/es/sound/AudioIn_stop_.es.json
new file mode 100644
index 000000000..161c893ff
--- /dev/null
+++ b/content/references/translations/es/sound/AudioIn_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the Input Stream.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the Input Stream.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "I/O",
+ "subcategory": "AudioIn",
+ "classanchor": "AudioIn",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample.es.json b/content/references/translations/es/sound/AudioSample.es.json
new file mode 100644
index 000000000..0d34aff4e
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample.es.json
@@ -0,0 +1,167 @@
+{
+ "brief": "This class allows you low-level access to an audio buffer to create, access,\n manipulate and play back sound samples.",
+ "methods": [
+ {
+ "anchor": "AudioSample_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the player."
+ },
+ {
+ "anchor": "AudioSample_channels_",
+ "name": "channels()",
+ "desc": "Returns the number of channels in the audiosample as an int (1 for mono, 2 for stereo)."
+ },
+ {
+ "anchor": "AudioSample_cue_",
+ "name": "cue()",
+ "desc": "Cues the playhead to a fixed position in the audiosample."
+ },
+ {
+ "anchor": "AudioSample_cueFrame_",
+ "name": "cueFrame()",
+ "desc": "Cues the playhead to a fixed position in the audiosample."
+ },
+ {
+ "anchor": "AudioSample_duration_",
+ "name": "duration()",
+ "desc": "Returns the duration of the audiosample in seconds."
+ },
+ {
+ "anchor": "AudioSample_frames_",
+ "name": "frames()",
+ "desc": "Returns the number of frames of the audiosample as an int."
+ },
+ {
+ "anchor": "AudioSample_jump_",
+ "name": "jump()",
+ "desc": "Jump to a specific position in the audiosample while continuing to play (or starting to play if it wasn't playing already)."
+ },
+ {
+ "anchor": "AudioSample_jumpFrame_",
+ "name": "jumpFrame()",
+ "desc": "Jump to a specific position in the audiosample without interrupting playback."
+ },
+ {
+ "anchor": "AudioSample_loop_",
+ "name": "loop()",
+ "desc": "Starts the playback of the audiosample."
+ },
+ {
+ "anchor": "AudioSample_play_",
+ "name": "play()",
+ "desc": "Starts the playback of the audiosample."
+ },
+ {
+ "anchor": "AudioSample_playFor_",
+ "name": "playFor()",
+ "desc": "Starts the playback of the audiosample for the specified duration or to the\n end of the audiosample, whichever comes first."
+ },
+ {
+ "anchor": "AudioSample_rate_",
+ "name": "rate()",
+ "desc": "Set the relative playback rate of the audiosample."
+ },
+ {
+ "anchor": "AudioSample_resize_",
+ "name": "resize()",
+ "desc": "Resizes the underlying buffer of the audiosample to the given number of frames."
+ },
+ {
+ "anchor": "AudioSample_sampleRate_",
+ "name": "sampleRate()",
+ "desc": "Returns the underlying sample rate of the audiosample."
+ },
+ {
+ "anchor": "AudioSample_pan_",
+ "name": "pan()",
+ "desc": "Pan the soundfile in a stereo panorama."
+ },
+ {
+ "anchor": "AudioSample_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once."
+ },
+ {
+ "anchor": "AudioSample_stop_",
+ "name": "stop()",
+ "desc": "Stops the playback."
+ },
+ {
+ "anchor": "AudioSample_position_",
+ "name": "position()",
+ "desc": "Get current sound file playback position in seconds."
+ },
+ {
+ "anchor": "AudioSample_positionFrame_",
+ "name": "positionFrame()",
+ "desc": "Get frame index of current sound file playback position."
+ },
+ {
+ "anchor": "AudioSample_percent_",
+ "name": "percent()",
+ "desc": "Get current sound file playback position in percent."
+ },
+ {
+ "anchor": "AudioSample_pause_",
+ "name": "pause()",
+ "desc": "Stop the playback of the sample, but cue it to the current position."
+ },
+ {
+ "anchor": "AudioSample_read_",
+ "name": "read()",
+ "desc": "The underlying data of the audiosample can be read and written in several different."
+ },
+ {
+ "anchor": "AudioSample_write_",
+ "name": "write()",
+ "desc": "The underlying data of the audiosample can be read and (over)written in several different ways."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This class allows you low-level access to an audio buffer to create, access,\n manipulate and play back sound samples.\n \n If you want to pre-load your audio sample with an audio file from disk you\n can do so using the SoundFile subclass.",
+ "type": "class",
+ "constructors": [
+ "AudioSample(parent, frames)",
+ "AudioSample(parent, frames, stereo)",
+ "AudioSample(parent, frames, stereo, frameRate)",
+ "AudioSample(parent, frames, frameRate)",
+ "AudioSample(parent, data)",
+ "AudioSample(parent, data, stereo)",
+ "AudioSample(parent, data, frameRate)",
+ "AudioSample(parent, data, stereo, frameRate)"
+ ],
+ "related": [],
+ "name": "AudioSample",
+ "classanchor": "sound/AudioSample",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "frames",
+ "description": "the desired number of frames for this audiosample",
+ "type": ["int"]
+ },
+ {
+ "name": "stereo",
+ "description": "whether to treat the audiosample as 2-channel (stereo) or not\n (default: false)",
+ "type": ["boolean"]
+ },
+ {
+ "name": "frameRate",
+ "description": "the underlying frame rate of the sample (default: 44100)",
+ "type": ["int"]
+ },
+ {
+ "name": "data",
+ "description": "an array of float values to be used as this audiosample's sound\n data. The audiosample will consequently have as many frames as the\n length of the given array.",
+ "type": ["float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_amp_.es.json b/content/references/translations/es/sound/AudioSample_amp_.es.json
new file mode 100644
index 000000000..defe174c4
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the player.",
+ "related": [],
+ "name": "amp()",
+ "description": "Change the amplitude/volume of the player. Values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_channels_.es.json b/content/references/translations/es/sound/AudioSample_channels_.es.json
new file mode 100644
index 000000000..03f75e02b
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_channels_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of channels in the audiosample as an int (1 for mono, 2 for stereo).",
+ "related": [],
+ "name": "channels()",
+ "description": "Returns the number of channels in the audiosample as an int (1 for mono, 2 for stereo).",
+ "syntax": [".channels()"],
+ "returns": "int",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_cueFrame_.es.json b/content/references/translations/es/sound/AudioSample_cueFrame_.es.json
new file mode 100644
index 000000000..304c0965b
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_cueFrame_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Cues the playhead to a fixed position in the audiosample.",
+ "related": [],
+ "name": "cueFrame()",
+ "description": "Cues the playhead to a fixed position in the audiosample.",
+ "syntax": [".cueFrame(frameNumber)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "frameNumber",
+ "description": "frame number to start playback from.",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_cue_.es.json b/content/references/translations/es/sound/AudioSample_cue_.es.json
new file mode 100644
index 000000000..6ca2515e0
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_cue_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Cues the playhead to a fixed position in the audiosample.",
+ "related": [],
+ "name": "cue()",
+ "description": "Cues the playhead to a fixed position in the audiosample. Note that cue() only affects the playhead for future calls to play(), but not to loop().",
+ "syntax": [".cue(time)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "time",
+ "description": "position in the audiosample that the next playback should start\n from, in seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_duration_.es.json b/content/references/translations/es/sound/AudioSample_duration_.es.json
new file mode 100644
index 000000000..fecb605c2
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_duration_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the duration of the audiosample in seconds.",
+ "related": [],
+ "name": "duration()",
+ "description": "Returns the duration of the audiosample in seconds.",
+ "syntax": [".duration()"],
+ "returns": "float",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_frames_.es.json b/content/references/translations/es/sound/AudioSample_frames_.es.json
new file mode 100644
index 000000000..13ea9bbea
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_frames_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of frames of the audiosample as an int.",
+ "related": [],
+ "name": "frames()",
+ "description": "Returns the number of frames of the audiosample as an int.",
+ "syntax": [".frames()"],
+ "returns": "int",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_jumpFrame_.es.json b/content/references/translations/es/sound/AudioSample_jumpFrame_.es.json
new file mode 100644
index 000000000..f6d125517
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_jumpFrame_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Jump to a specific position in the audiosample without interrupting playback.",
+ "related": [],
+ "name": "jumpFrame()",
+ "description": "Jump to a specific position in the audiosample without interrupting playback.",
+ "syntax": [".jumpFrame(frameNumber)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_jump_.es.json b/content/references/translations/es/sound/AudioSample_jump_.es.json
new file mode 100644
index 000000000..fa4cc9975
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_jump_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Jump to a specific position in the audiosample while continuing to play (or starting to play if it wasn't playing already).",
+ "related": [],
+ "name": "jump()",
+ "description": "Jump to a specific position in the audiosample while continuing to play (or starting to play if it wasn't playing already).",
+ "syntax": [".jump(time)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "time",
+ "description": "position to jump to, in seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_loop_.es.json b/content/references/translations/es/sound/AudioSample_loop_.es.json
new file mode 100644
index 000000000..dabc77adb
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_loop_.es.json
@@ -0,0 +1,40 @@
+{
+ "brief": "Starts the playback of the audiosample.",
+ "related": [],
+ "name": "loop()",
+ "description": "Starts the playback of the audiosample. Only plays to the end of the audiosample \n once. If cue() or pause() were called previously, playback will resume from the cued position.",
+ "syntax": [
+ ".loop()",
+ ".loop(rate)",
+ ".loop(rate, amp)",
+ ".loop(rate, pos, amp)",
+ ".loop(rate, pos, amp, add)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right). Only works for mono audiosamples!",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_pan_.es.json b/content/references/translations/es/sound/AudioSample_pan_.es.json
new file mode 100644
index 000000000..e89a2b6b2
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Pan the soundfile in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Pan the soundfile in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel. \n Note that panning is only supported for mono (1 channel) audiosamples.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_pause_.es.json b/content/references/translations/es/sound/AudioSample_pause_.es.json
new file mode 100644
index 000000000..67c5bd44e
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_pause_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stop the playback of the sample, but cue it to the current position.",
+ "related": [],
+ "name": "pause()",
+ "description": "Stop the playback of the sample, but cue it to the current position. \n The next call to play() will continue playing where it left off.",
+ "syntax": [".pause()"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_percent_.es.json b/content/references/translations/es/sound/AudioSample_percent_.es.json
new file mode 100644
index 000000000..c78f8da96
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_percent_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get current sound file playback position in percent.",
+ "related": [],
+ "name": "percent()",
+ "description": "Get current sound file playback position in percent.\n \n Note that, if this audio sample was at some point played back in parallel\n (triggered by another call to play() before the original playback had finished),\n the position returned by this function can be of any of the concurrent playbacks,\n not necessarily the last one that was triggered.",
+ "syntax": [".percent()"],
+ "returns": "float",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_playFor_.es.json b/content/references/translations/es/sound/AudioSample_playFor_.es.json
new file mode 100644
index 000000000..a24b22f1c
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_playFor_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Starts the playback of the audiosample for the specified duration or to the\n end of the audiosample, whichever comes first.",
+ "related": [],
+ "name": "playFor()",
+ "description": "Starts the playback of the audiosample for the specified duration or to the\n end of the audiosample, whichever comes first.",
+ "syntax": [".playFor(duration)", ".playFor(duration, cue)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "duration",
+ "description": "duration that this audiosample should be played back for, in seconds.\n If the start position plus duration exceeds the total duration of the\n sample, playback will stop at the end of the sample.",
+ "type": ["float"]
+ },
+ {
+ "name": "cue",
+ "description": "position in the audiosample that playback should start from, in\n seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_play_.es.json b/content/references/translations/es/sound/AudioSample_play_.es.json
new file mode 100644
index 000000000..385d6ca21
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_play_.es.json
@@ -0,0 +1,46 @@
+{
+ "brief": "Starts the playback of the audiosample.",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the playback of the audiosample. Only plays to the end of the audiosample \n once. If cue() or pause() were called previously, playback will resume from the cued position.",
+ "syntax": [
+ ".play()",
+ ".play(rate)",
+ ".play(rate, amp)",
+ ".play(rate, pos, amp)",
+ ".play(rate, pos, amp, add)",
+ ".play(rate, pos, amp, add, cue)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right). Only works for mono audiosamples!",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ },
+ {
+ "name": "cue",
+ "description": "position in the audiosample that playback should start from, in\n seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_positionFrame_.es.json b/content/references/translations/es/sound/AudioSample_positionFrame_.es.json
new file mode 100644
index 000000000..5b481f2f1
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_positionFrame_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get frame index of current sound file playback position.",
+ "related": [],
+ "name": "positionFrame()",
+ "description": "Get frame index of current sound file playback position.\n \n Note that, if this audio sample was at some point played back in parallel\n (triggered by another call to play() before the original playback had finished),\n the position returned by this function can be of any of the concurrent playbacks,\n not necessarily the last one that was triggered.",
+ "syntax": [".positionFrame()"],
+ "returns": "int",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_position_.es.json b/content/references/translations/es/sound/AudioSample_position_.es.json
new file mode 100644
index 000000000..4e95572ef
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_position_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Get current sound file playback position in seconds.",
+ "related": [],
+ "name": "position()",
+ "description": "Get current sound file playback position in seconds.\n \n Note that, if this audio sample was at some point played back in parallel\n (triggered by another call to play() before the original playback had finished),\n the position returned by this function can be of any of the concurrent playbacks,\n not necessarily the last one that was triggered.",
+ "syntax": [".position()"],
+ "returns": "float",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_rate_.es.json b/content/references/translations/es/sound/AudioSample_rate_.es.json
new file mode 100644
index 000000000..ecea2e3a0
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_rate_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the relative playback rate of the audiosample.",
+ "related": [],
+ "name": "rate()",
+ "description": "Set the relative playback rate of the audiosample. 1 is the original speed. \n 0.5 is half speed and one octave down. 2 is double the speed and one octave up.",
+ "syntax": [".rate(rate)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "Relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_read_.es.json b/content/references/translations/es/sound/AudioSample_read_.es.json
new file mode 100644
index 000000000..98f31d4a9
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_read_.es.json
@@ -0,0 +1,49 @@
+{
+ "brief": "The underlying data of the audiosample can be read and written in several different.",
+ "related": [],
+ "name": "read()",
+ "description": "The underlying data of the audiosample can be read and written in several different ways:\n the method taking a single float array `data` gets the current sample data and write it \n into the given array. The array has to be able to store as many floats as there are frames \n in this sample.\n It is also possible to only read parts of the sample data using the method with four arguments, \n which allows you to specify the index of the first frame to read, the position in the array to \n write it to, as well as how many frames to copy over into the array in total.\n Finally, the method taking a single integer argument `index` returns the value of the single \n audio frame of the sample at this index as a float.",
+ "syntax": [
+ ".read(data)",
+ ".read(startFrame, data, startIndex, numFrames)",
+ ".read(frameIndex)",
+ ".read(frameIndex, channelIndex)"
+ ],
+ "returns": "void or float",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "data",
+ "description": "the target array that the read data is written to",
+ "type": ["float[]"]
+ },
+ {
+ "name": "startFrame",
+ "description": "the index of the first frame of the audiosample that should be\n read",
+ "type": ["int"]
+ },
+ {
+ "name": "startIndex",
+ "description": "the position in the array where the first read frame should be\n written to (typically 0)",
+ "type": ["int"]
+ },
+ {
+ "name": "numFrames",
+ "description": "the number of frames that should be read (can't be greater than\n audiosample.channels() * data.length - startIndex)",
+ "type": ["int"]
+ },
+ {
+ "name": "frameIndex",
+ "description": "the index of the single frame of the audiosample that should be\n read and returned. `frameIndex` has to be between 0 and\n `sample.frames() * sample.channels() - 1` (inclusive)`.\n For mono files, `read(frameIndex)` is identical to `read(frameIndex, 0)`.\n For stereo files, unless you also specify a `channelIndex`,\n `read(frameIndex)` will return the samples from both the left and\n right channel in interleaved order. (See the Soundfile > StereoSample\n example for a demonstration.)",
+ "type": ["int"]
+ },
+ {
+ "name": "channelIndex",
+ "description": "the channel from which to extract the frame value (0 for left,\n 1 for right). `read(frameIndex, channelIndex)` is the same as\n calling `read(frameIndex * this.channels() + channelIndex)`.",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_resize_.es.json b/content/references/translations/es/sound/AudioSample_resize_.es.json
new file mode 100644
index 000000000..c7341c516
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_resize_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Resizes the underlying buffer of the audiosample to the given number of frames.",
+ "related": [],
+ "name": "resize()",
+ "description": "Resizes the underlying buffer of the audiosample to the given number of frames. \n Calling this method allocates a completely new buffer, so any ongoing playback \n will be stopped and all data currently stored in the sample will be lost.",
+ "syntax": [".resize(frames)", ".resize(frames, stereo)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "frames",
+ "description": "the desired number of frames for this audiosample",
+ "type": ["int"]
+ },
+ {
+ "name": "stereo",
+ "description": "whether to treat the audiosample as 2-channel (stereo) or not\n (default: false)",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_sampleRate_.es.json b/content/references/translations/es/sound/AudioSample_sampleRate_.es.json
new file mode 100644
index 000000000..bf7d4641e
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_sampleRate_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the underlying sample rate of the audiosample.",
+ "related": [],
+ "name": "sampleRate()",
+ "description": "Returns the underlying sample rate of the audiosample.",
+ "syntax": [".sampleRate()"],
+ "returns": "int",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_set_.es.json b/content/references/translations/es/sound/AudioSample_set_.es.json
new file mode 100644
index 000000000..474959ccd
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_set_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Set multiple parameters at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once.",
+ "syntax": [".set(rate, pos, amp, add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "Relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/AudioSample_stop_.es.json b/content/references/translations/es/sound/AudioSample_stop_.es.json
new file mode 100644
index 000000000..bbc6a606f
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the playback.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the playback.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/AudioSample_write_.es.json b/content/references/translations/es/sound/AudioSample_write_.es.json
new file mode 100644
index 000000000..605e9e37a
--- /dev/null
+++ b/content/references/translations/es/sound/AudioSample_write_.es.json
@@ -0,0 +1,48 @@
+{
+ "brief": "The underlying data of the audiosample can be read and (over)written in several different ways.",
+ "related": [],
+ "name": "write()",
+ "description": "The underlying data of the audiosample can be read and (over)written in several different ways:\n the method taking a single float array `data` replaces the sample data with the content of the \n given array. The array has to contain as many floats as there are frames in this sample.\n It is also possible to only write parts of the sample data using the method with four arguments, \n which allows you to specify the index of the first frame to write, the position in the array to \n take the data from, as well as how many frames should be copied over.\n Finally, the method taking two arguments simply sets the value of the single audio frame \n specified by the first argument to the given float value.",
+ "syntax": [
+ ".write(data)",
+ ".write(startFrame, data, startIndex, numFrames)",
+ ".write(index, value)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "AudioSample",
+ "classanchor": "AudioSample",
+ "parameters": [
+ {
+ "name": "data",
+ "description": "the array from which the sample data, up to\n sample.frames() * sample.channels() floats, should be copied",
+ "type": ["float[]"]
+ },
+ {
+ "name": "startFrame",
+ "description": "the index of the first frame of the audiosample that should be\n written to",
+ "type": ["int"]
+ },
+ {
+ "name": "startIndex",
+ "description": "the position in the array that the first value to write should be\n taken from (typically 0)",
+ "type": ["int"]
+ },
+ {
+ "name": "numFrames",
+ "description": "the number of frames that should be written (can't be greater than\n audiosample.channels() * data.length - startIndex)",
+ "type": ["int"]
+ },
+ {
+ "name": "index",
+ "description": "the index of the single frame of the audiosample that should be\n set to the given value",
+ "type": ["int"]
+ },
+ {
+ "name": "value",
+ "description": "the float value that the given audio frame should be set to",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BandPass.es.json b/content/references/translations/es/sound/BandPass.es.json
new file mode 100644
index 000000000..8cdfce8f9
--- /dev/null
+++ b/content/references/translations/es/sound/BandPass.es.json
@@ -0,0 +1,32 @@
+{
+ "brief": "This is a band pass filter.",
+ "methods": [
+ {
+ "anchor": "BandPass_bw_",
+ "name": "bw()",
+ "desc": "Set the bandwidth for the filter."
+ },
+ {
+ "anchor": "BandPass_freq_",
+ "name": "freq()",
+ "desc": "Set the cutoff frequency for the filter."
+ },
+ {
+ "anchor": "BandPass_set_",
+ "name": "set()",
+ "desc": "Sets frequency and bandwidth of the filter with one method."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a band pass filter.",
+ "type": "class",
+ "constructors": ["BandPass(parent)"],
+ "related": [],
+ "name": "BandPass",
+ "classanchor": "sound/BandPass",
+ "category": "effects",
+ "subcategory": "BandPass",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/BandPass_bw_.es.json b/content/references/translations/es/sound/BandPass_bw_.es.json
new file mode 100644
index 000000000..908dcd90f
--- /dev/null
+++ b/content/references/translations/es/sound/BandPass_bw_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Set the bandwidth for the filter.",
+ "related": [],
+ "name": "bw()",
+ "description": "Set the bandwidth for the filter.",
+ "syntax": [".bw(bw)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "BandPass",
+ "classanchor": "BandPass",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/BandPass_freq_.es.json b/content/references/translations/es/sound/BandPass_freq_.es.json
new file mode 100644
index 000000000..90f601046
--- /dev/null
+++ b/content/references/translations/es/sound/BandPass_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the cutoff frequency for the filter.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the cutoff frequency for the filter.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "BandPass",
+ "classanchor": "BandPass",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "Cutoff frequency between 0 and 20000",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BandPass_process_.es.json b/content/references/translations/es/sound/BandPass_process_.es.json
new file mode 100644
index 000000000..4afffa9b9
--- /dev/null
+++ b/content/references/translations/es/sound/BandPass_process_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Start the filter.",
+ "related": [],
+ "name": "process()",
+ "description": "Start the filter.",
+ "syntax": [".process(input)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "BandPass",
+ "classanchor": "BandPass",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "Input audio source",
+ "type": ["SoundObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BandPass_set_.es.json b/content/references/translations/es/sound/BandPass_set_.es.json
new file mode 100644
index 000000000..ea097790f
--- /dev/null
+++ b/content/references/translations/es/sound/BandPass_set_.es.json
@@ -0,0 +1,16 @@
+{
+ "brief": "Sets frequency and bandwidth of the filter with one method.",
+ "related": [],
+ "name": "set()",
+ "description": "Sets frequency and bandwidth of the filter with one method.",
+ "syntax": [".set(freq, bw)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "BandPass",
+ "classanchor": "BandPass",
+ "parameters": [
+ { "name": "freq", "description": "Set the frequency", "type": ["float"] },
+ { "name": "bw", "description": "Set the bandwidth", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/sound/BandPass_stop_.es.json b/content/references/translations/es/sound/BandPass_stop_.es.json
new file mode 100644
index 000000000..b1046cd5a
--- /dev/null
+++ b/content/references/translations/es/sound/BandPass_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the filter.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the filter.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "BandPass",
+ "classanchor": "BandPass",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/BeatDetector.es.json b/content/references/translations/es/sound/BeatDetector.es.json
new file mode 100644
index 000000000..795ac1c94
--- /dev/null
+++ b/content/references/translations/es/sound/BeatDetector.es.json
@@ -0,0 +1,38 @@
+{
+ "brief": "Looks for spikes in the energy of an audio signal\n which are often associated with rhythmic musical beats and can be used to trigger a\n response whenever the incoming audio signal pulses.",
+ "methods": [
+ {
+ "anchor": "BeatDetector_isBeat_",
+ "name": "isBeat()",
+ "desc": "Returns whether or not the current moment of audio contains a beat or not."
+ },
+ {
+ "anchor": "BeatDetector_sensitivity_",
+ "name": "sensitivity()",
+ "desc": "Sets the sensitivity, in milliseconds, of the beat detection algorithm."
+ },
+ {
+ "anchor": "BeatDetector_sensitivity_",
+ "name": "sensitivity()",
+ "desc": "Sets the sensitivity of the beat detector."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "The BeatDetector analyzer looks for spikes in the energy of an audio signal\n which are often associated with rhythmic musical beats and can be used to trigger a\n response whenever the incoming audio signal pulses. Note that this\n implementation does not return a tempo or BPM (beats per minute) value \u2014 it\n can only tell you whether the current moment of audio contains a beat or not.",
+ "type": "class",
+ "constructors": ["BeatDetector(parent)"],
+ "related": [],
+ "name": "BeatDetector",
+ "classanchor": "sound/BeatDetector",
+ "category": "analysis",
+ "subcategory": "BeatDetector",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "Typically \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BeatDetector_isBeat_.es.json b/content/references/translations/es/sound/BeatDetector_isBeat_.es.json
new file mode 100644
index 000000000..8c3cbc2bf
--- /dev/null
+++ b/content/references/translations/es/sound/BeatDetector_isBeat_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns whether or not the current moment of audio contains a beat or not.",
+ "related": [],
+ "name": "isBeat()",
+ "description": "Returns whether or not the current moment of audio contains a beat or not.\n A \"beat\" is defined as a spike in the energy of the audio signal \u2014 it may\n or may not coincide exactly with a musical beat.",
+ "syntax": [".isBeat()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "BeatDetector",
+ "classanchor": "BeatDetector",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/BeatDetector_sensitivity_.es.json b/content/references/translations/es/sound/BeatDetector_sensitivity_.es.json
new file mode 100644
index 000000000..55ca1cb8e
--- /dev/null
+++ b/content/references/translations/es/sound/BeatDetector_sensitivity_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Sets the sensitivity of the beat detector.",
+ "related": [],
+ "name": "sensitivity()",
+ "description": "Sets the sensitivity of the beat detector.",
+ "syntax": [".sensitivity(sensitivity)", ".sensitivity()"],
+ "returns": "int or void",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "BeatDetector",
+ "classanchor": "BeatDetector",
+ "parameters": [
+ {
+ "name": "sensitivity",
+ "description": "Sensitivity in milliseconds. Must be a positive number.",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise.es.json b/content/references/translations/es/sound/BrownNoise.es.json
new file mode 100644
index 000000000..f11772432
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise.es.json
@@ -0,0 +1,53 @@
+{
+ "brief": "This is a brown noise generator.",
+ "methods": [
+ {
+ "anchor": "BrownNoise_play_",
+ "name": "play()",
+ "desc": "Start the generator."
+ },
+ {
+ "anchor": "BrownNoise_set_",
+ "name": "set()",
+ "desc": "Sets amplitude, add and pan position with one method."
+ },
+ {
+ "anchor": "BrownNoise_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the noise generator."
+ },
+ {
+ "anchor": "BrownNoise_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by a fixed value."
+ },
+ {
+ "anchor": "BrownNoise_pan_",
+ "name": "pan()",
+ "desc": "Pan the generator in a stereo panorama."
+ },
+ {
+ "anchor": "BrownNoise_stop_",
+ "name": "stop()",
+ "desc": "Stops the Brown Noise generator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a brown noise generator. Brown noise has a decrease of 6db per octave.",
+ "type": "class",
+ "constructors": ["BrownNoise(parent)"],
+ "related": [],
+ "name": "BrownNoise",
+ "classanchor": "sound/BrownNoise",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise_add_.es.json b/content/references/translations/es/sound/BrownNoise_add_.es.json
new file mode 100644
index 000000000..c33602d9a
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by a fixed value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by a fixed value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "classanchor": "BrownNoise",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise_amp_.es.json b/content/references/translations/es/sound/BrownNoise_amp_.es.json
new file mode 100644
index 000000000..20f857e99
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the noise generator.",
+ "related": [],
+ "name": "amp()",
+ "description": "Changes the amplitude/volume of the noise generator. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "classanchor": "BrownNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise_pan_.es.json b/content/references/translations/es/sound/BrownNoise_pan_.es.json
new file mode 100644
index 000000000..3e1263c6c
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Pan the generator in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Pan the generator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "classanchor": "BrownNoise",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise_play_.es.json b/content/references/translations/es/sound/BrownNoise_play_.es.json
new file mode 100644
index 000000000..5bf0fc691
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise_play_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Start the generator.",
+ "related": [],
+ "name": "play()",
+ "description": "Start the generator.",
+ "syntax": [
+ ".play()",
+ ".play(amp)",
+ ".play(amp, pos)",
+ ".play(amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "classanchor": "BrownNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the noise by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise_set_.es.json b/content/references/translations/es/sound/BrownNoise_set_.es.json
new file mode 100644
index 000000000..12aafe980
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise_set_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Sets amplitude, add and pan position with one method.",
+ "related": [],
+ "name": "set()",
+ "description": "Sets amplitude, add and pan position with one method.",
+ "syntax": [".set(amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "classanchor": "BrownNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the noise by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/BrownNoise_stop_.es.json b/content/references/translations/es/sound/BrownNoise_stop_.es.json
new file mode 100644
index 000000000..d9e63aa52
--- /dev/null
+++ b/content/references/translations/es/sound/BrownNoise_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the Brown Noise generator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stop the generator",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "BrownNoise",
+ "classanchor": "BrownNoise",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Delay.es.json b/content/references/translations/es/sound/Delay.es.json
new file mode 100644
index 000000000..eca30543e
--- /dev/null
+++ b/content/references/translations/es/sound/Delay.es.json
@@ -0,0 +1,37 @@
+{
+ "brief": "This is a simple delay effect.",
+ "methods": [
+ {
+ "anchor": "Delay_process_",
+ "name": "process()",
+ "desc": "Start the delay effect."
+ },
+ {
+ "anchor": "Delay_set_",
+ "name": "set()",
+ "desc": "Set delay time and feedback values at once."
+ },
+ {
+ "anchor": "Delay_time_",
+ "name": "time()",
+ "desc": "Changes the delay time of the effect."
+ },
+ {
+ "anchor": "Delay_feedback_",
+ "name": "feedback()",
+ "desc": "Change the feedback of the delay effect."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple delay effect.",
+ "type": "class",
+ "constructors": ["Delay(parent)"],
+ "related": [],
+ "name": "Delay",
+ "classanchor": "sound/Delay",
+ "category": "effects",
+ "subcategory": "Delay",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Delay_feedback_.es.json b/content/references/translations/es/sound/Delay_feedback_.es.json
new file mode 100644
index 000000000..860bca74d
--- /dev/null
+++ b/content/references/translations/es/sound/Delay_feedback_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Change the feedback of the delay effect.",
+ "related": [],
+ "name": "feedback()",
+ "description": "Change the feedback of the delay effect.",
+ "syntax": [".feedback(feedback)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Delay",
+ "classanchor": "Delay",
+ "parameters": [
+ {
+ "name": "feedback",
+ "description": "Feedback amount as a float.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Delay_process_.es.json b/content/references/translations/es/sound/Delay_process_.es.json
new file mode 100644
index 000000000..3e4cda228
--- /dev/null
+++ b/content/references/translations/es/sound/Delay_process_.es.json
@@ -0,0 +1,32 @@
+{
+ "brief": "Start the delay effect.",
+ "related": [],
+ "name": "process()",
+ "description": "Start the delay effect.",
+ "syntax": [
+ ".process(input, maxDelayTime, delayTime)",
+ ".process(input, maxDelayTime)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Delay",
+ "classanchor": "Delay",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "Input audio source",
+ "type": ["SoundObject"]
+ },
+ {
+ "name": "maxDelayTime",
+ "description": "Maximum delay time in seconds.",
+ "type": ["float"]
+ },
+ {
+ "name": "delayTime",
+ "description": "Delay time to use when starting to process, in seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Delay_set_.es.json b/content/references/translations/es/sound/Delay_set_.es.json
new file mode 100644
index 000000000..e61a6e374
--- /dev/null
+++ b/content/references/translations/es/sound/Delay_set_.es.json
@@ -0,0 +1,24 @@
+{
+ "brief": "Set delay time and feedback values at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set delay time and feedback values at once.",
+ "syntax": [".set(delayTime, feedback)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Delay",
+ "classanchor": "Delay",
+ "parameters": [
+ {
+ "name": "delayTime",
+ "description": "Maximum delay time in seconds.",
+ "type": ["float"]
+ },
+ {
+ "name": "feedback",
+ "description": "Feedback amount as a float",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Delay_stop_.es.json b/content/references/translations/es/sound/Delay_stop_.es.json
new file mode 100644
index 000000000..47346e7f0
--- /dev/null
+++ b/content/references/translations/es/sound/Delay_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the effect.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the effect.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Delay",
+ "classanchor": "Delay",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Delay_time_.es.json b/content/references/translations/es/sound/Delay_time_.es.json
new file mode 100644
index 000000000..e2bfa9031
--- /dev/null
+++ b/content/references/translations/es/sound/Delay_time_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the delay time of the effect.",
+ "related": [],
+ "name": "time()",
+ "description": "Changes the delay time of the effect.",
+ "syntax": [".time(delayTime)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Delay",
+ "classanchor": "Delay",
+ "parameters": [
+ {
+ "name": "delayTime",
+ "description": "Delay time in seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Env.es.json b/content/references/translations/es/sound/Env.es.json
new file mode 100644
index 000000000..a70222b96
--- /dev/null
+++ b/content/references/translations/es/sound/Env.es.json
@@ -0,0 +1,22 @@
+{
+ "brief": "This is an ASR (Attack Sustain Release) Envelope Generator.",
+ "methods": [
+ {
+ "anchor": "Env_play_",
+ "name": "play()",
+ "desc": "Triggers the envelope."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is an ASR (Attack Sustain Release) Envelope Generator.",
+ "type": "class",
+ "constructors": ["Env(parent)"],
+ "related": [],
+ "name": "Env",
+ "classanchor": "sound/Env",
+ "category": "envelopes",
+ "subcategory": "Env",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Env_play_.es.json b/content/references/translations/es/sound/Env_play_.es.json
new file mode 100644
index 000000000..bfdeba1db
--- /dev/null
+++ b/content/references/translations/es/sound/Env_play_.es.json
@@ -0,0 +1,36 @@
+{
+ "brief": "Triggers the envelope.",
+ "related": [],
+ "name": "play()",
+ "description": "Triggers the envelope.",
+ "syntax": [
+ ".play(input, attackTime, sustainTime, sustainLevel, releaseTime)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "envelopes",
+ "subcategory": "Env",
+ "classanchor": "Env",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "Input sound source",
+ "type": ["SoundObject"]
+ },
+ {
+ "name": "attackTime",
+ "description": "Attack time value as a float.",
+ "type": ["float"]
+ },
+ {
+ "name": "sustainTime",
+ "description": "Sustain time value as a float.",
+ "type": ["float"]
+ },
+ {
+ "name": "releaseTime",
+ "description": "Release time value as a float.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/FFT.es.json b/content/references/translations/es/sound/FFT.es.json
new file mode 100644
index 000000000..0b33ef43c
--- /dev/null
+++ b/content/references/translations/es/sound/FFT.es.json
@@ -0,0 +1,38 @@
+{
+ "brief": "This is a Fast Fourier Transform (FFT) analyzer.",
+ "methods": [
+ {
+ "anchor": "FFT_analyze_",
+ "name": "analyze()",
+ "desc": "Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands."
+ },
+ {
+ "anchor": "FFT_input_",
+ "name": "input()",
+ "desc": "Define the audio input for the analyzer."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a Fast Fourier Transform (FFT) analyzer. It calculates the normalized\n power spectrum of an audio stream the moment it is queried with the analyze()\n method.",
+ "type": "class",
+ "constructors": ["FFT(parent)", "FFT(parent, bands)"],
+ "related": [],
+ "name": "FFT",
+ "classanchor": "sound/FFT",
+ "category": "analysis",
+ "subcategory": "FFT",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "bands",
+ "description": "number of frequency bands for the FFT as an integer (default 512).\n This parameter needs to be a power of 2 (e.g. 16, 32, 64, 128,\n ...).",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/FFT_analyze_.es.json b/content/references/translations/es/sound/FFT_analyze_.es.json
new file mode 100644
index 000000000..0475b0784
--- /dev/null
+++ b/content/references/translations/es/sound/FFT_analyze_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands.",
+ "related": [],
+ "name": "analyze()",
+ "description": "Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands.",
+ "syntax": [".analyze()", ".analyze(value)"],
+ "returns": "float[]",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "FFT",
+ "classanchor": "FFT",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "an array with as many elements as this FFT analyzer's number of\n frequency bands",
+ "type": ["float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/FFT_input_.es.json b/content/references/translations/es/sound/FFT_input_.es.json
new file mode 100644
index 000000000..9f27f741f
--- /dev/null
+++ b/content/references/translations/es/sound/FFT_input_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Define the audio input for the analyzer.",
+ "related": [],
+ "name": "input()",
+ "description": "Define the audio input for the analyzer.",
+ "syntax": [".input(input)"],
+ "returns": "void",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "FFT",
+ "classanchor": "FFT",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "the input sound source. Can be an oscillator, noise generator,\n SoundFile or AudioIn.",
+ "type": ["SoundObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/FFT_stop_.es.json b/content/references/translations/es/sound/FFT_stop_.es.json
new file mode 100644
index 000000000..353f9db13
--- /dev/null
+++ b/content/references/translations/es/sound/FFT_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the FFT.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the FFT.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "FFT",
+ "classanchor": "FFT",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/HighPass.es.json b/content/references/translations/es/sound/HighPass.es.json
new file mode 100644
index 000000000..84e182bb9
--- /dev/null
+++ b/content/references/translations/es/sound/HighPass.es.json
@@ -0,0 +1,22 @@
+{
+ "brief": "This is a high pass filter.",
+ "methods": [
+ {
+ "anchor": "HighPass_freq_",
+ "name": "freq()",
+ "desc": "Set the cut off frequency for the filter."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a high pass filter.",
+ "type": "class",
+ "constructors": ["HighPass(parent)"],
+ "related": [],
+ "name": "HighPass",
+ "classanchor": "sound/HighPass",
+ "category": "effects",
+ "subcategory": "HighPass",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/HighPass_freq_.es.json b/content/references/translations/es/sound/HighPass_freq_.es.json
new file mode 100644
index 000000000..7969602a0
--- /dev/null
+++ b/content/references/translations/es/sound/HighPass_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the cut off frequency for the filter.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the cut off frequency for the filter.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "HighPass",
+ "classanchor": "HighPass",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "the cutoff frequency in Hertz",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/HighPass_process_.es.json b/content/references/translations/es/sound/HighPass_process_.es.json
new file mode 100644
index 000000000..02ca85568
--- /dev/null
+++ b/content/references/translations/es/sound/HighPass_process_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Start the filter.",
+ "related": [],
+ "name": "process()",
+ "description": "Start the filter.",
+ "syntax": [".process(input)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "HighPass",
+ "classanchor": "HighPass",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "Input audio source",
+ "type": ["SoundObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/HighPass_stop_.es.json b/content/references/translations/es/sound/HighPass_stop_.es.json
new file mode 100644
index 000000000..ee2bf7a81
--- /dev/null
+++ b/content/references/translations/es/sound/HighPass_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the Filter.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the Filter.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "HighPass",
+ "classanchor": "HighPass",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/LowPass.es.json b/content/references/translations/es/sound/LowPass.es.json
new file mode 100644
index 000000000..12cadd715
--- /dev/null
+++ b/content/references/translations/es/sound/LowPass.es.json
@@ -0,0 +1,22 @@
+{
+ "brief": "This is a low pass filter.",
+ "methods": [
+ {
+ "anchor": "LowPass_freq_",
+ "name": "freq()",
+ "desc": "Set the cut off frequency for the filter."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a low pass filter.",
+ "type": "class",
+ "constructors": ["LowPass(parent)"],
+ "related": [],
+ "name": "LowPass",
+ "classanchor": "sound/LowPass",
+ "category": "effects",
+ "subcategory": "LowPass",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/LowPass_freq_.es.json b/content/references/translations/es/sound/LowPass_freq_.es.json
new file mode 100644
index 000000000..c8e1a3013
--- /dev/null
+++ b/content/references/translations/es/sound/LowPass_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the cut off frequency for the filter.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the cut off frequency for the filter.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "LowPass",
+ "classanchor": "LowPass",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "the cutoff frequency in Hertz",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise.es.json b/content/references/translations/es/sound/PinkNoise.es.json
new file mode 100644
index 000000000..8b9a0e87a
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise.es.json
@@ -0,0 +1,53 @@
+{
+ "brief": "This is a pink noise generator.",
+ "methods": [
+ {
+ "anchor": "PinkNoise_play_",
+ "name": "play()",
+ "desc": "Start the generator."
+ },
+ {
+ "anchor": "PinkNoise_set_",
+ "name": "set()",
+ "desc": "Sets amplitude, add and pan position with one method."
+ },
+ {
+ "anchor": "PinkNoise_amp_",
+ "name": "amp()",
+ "desc": "Change the amplitude/volume of this sound."
+ },
+ {
+ "anchor": "PinkNoise_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by a fixed value."
+ },
+ {
+ "anchor": "PinkNoise_pan_",
+ "name": "pan()",
+ "desc": "Pan the generator in a stereo panorama."
+ },
+ {
+ "anchor": "PinkNoise_stop_",
+ "name": "stop()",
+ "desc": "Stops the Pink Noise generator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a pink noise generator. Pink Noise has a decrease of 3dB per octave.",
+ "type": "class",
+ "constructors": ["PinkNoise(parent)"],
+ "related": [],
+ "name": "PinkNoise",
+ "classanchor": "sound/PinkNoise",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise_add_.es.json b/content/references/translations/es/sound/PinkNoise_add_.es.json
new file mode 100644
index 000000000..ab0a73aad
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by a fixed value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by a fixed value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "classanchor": "PinkNoise",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise_amp_.es.json b/content/references/translations/es/sound/PinkNoise_amp_.es.json
new file mode 100644
index 000000000..ee5d29dd7
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Change the amplitude/volume of this sound.",
+ "related": [],
+ "name": "amp()",
+ "description": "Change the amplitude/volume of this sound.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "classanchor": "PinkNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise_pan_.es.json b/content/references/translations/es/sound/PinkNoise_pan_.es.json
new file mode 100644
index 000000000..44d53de81
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Pan the generator in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Pan the generator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "classanchor": "PinkNoise",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise_play_.es.json b/content/references/translations/es/sound/PinkNoise_play_.es.json
new file mode 100644
index 000000000..ab4823211
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise_play_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Start the generator.",
+ "related": [],
+ "name": "play()",
+ "description": "Start the generator.",
+ "syntax": [
+ ".play()",
+ ".play(amp)",
+ ".play(amp, pos)",
+ ".play(amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "classanchor": "PinkNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the noise by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise_set_.es.json b/content/references/translations/es/sound/PinkNoise_set_.es.json
new file mode 100644
index 000000000..5ab4306ef
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise_set_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Sets amplitude, add and pan position with one method.",
+ "related": [],
+ "name": "set()",
+ "description": "Sets amplitude, add and pan position with one method.",
+ "syntax": [".set(amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "classanchor": "PinkNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the noise by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/PinkNoise_stop_.es.json b/content/references/translations/es/sound/PinkNoise_stop_.es.json
new file mode 100644
index 000000000..b41adede3
--- /dev/null
+++ b/content/references/translations/es/sound/PinkNoise_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the Pink Noise generator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the Pink Noise generator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "PinkNoise",
+ "classanchor": "PinkNoise",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Pulse.es.json b/content/references/translations/es/sound/Pulse.es.json
new file mode 100644
index 000000000..eb41a6ea1
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse.es.json
@@ -0,0 +1,63 @@
+{
+ "brief": "This is a simple Pulse oscillator.",
+ "methods": [
+ {
+ "anchor": "Pulse_width_",
+ "name": "width()",
+ "desc": "Changes the pulse width of the pulse oscillator."
+ },
+ {
+ "anchor": "Pulse_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once"
+ },
+ {
+ "anchor": "Pulse_play_",
+ "name": "play()",
+ "desc": "Starts the oscillator"
+ },
+ {
+ "anchor": "Pulse_freq_",
+ "name": "freq()",
+ "desc": "Changes the frequency of the pulse oscillator in Hz."
+ },
+ {
+ "anchor": "Pulse_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the pulse oscillator."
+ },
+ {
+ "anchor": "Pulse_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by given value."
+ },
+ {
+ "anchor": "Pulse_pan_",
+ "name": "pan()",
+ "desc": "Pan the oscillator in a stereo panorama."
+ },
+ {
+ "anchor": "Pulse_stop_",
+ "name": "stop()",
+ "desc": "Stops the Sine Oscillator generator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple Pulse oscillator.",
+ "type": "class",
+ "constructors": ["Pulse(parent)"],
+ "related": [],
+ "name": "Pulse",
+ "classanchor": "sound/Pulse",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_add_.es.json b/content/references/translations/es/sound/Pulse_add_.es.json
new file mode 100644
index 000000000..fd21595a7
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by given value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by given value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_amp_.es.json b/content/references/translations/es/sound/Pulse_amp_.es.json
new file mode 100644
index 000000000..840fbe9cc
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the pulse oscillator.",
+ "related": [],
+ "name": "amp()",
+ "description": "Changes the amplitude/volume of the pulse oscillator. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_freq_.es.json b/content/references/translations/es/sound/Pulse_freq_.es.json
new file mode 100644
index 000000000..bf4ac795d
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the frequency of the pulse oscillator in Hz.",
+ "related": [],
+ "name": "freq()",
+ "description": "Changes the frequency of the pulse oscillator in Hz.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "A floating point value of the oscillator in Hz.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_pan_.es.json b/content/references/translations/es/sound/Pulse_pan_.es.json
new file mode 100644
index 000000000..22b0811e8
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Pan the oscillator in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Pan the oscillator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_play_.es.json b/content/references/translations/es/sound/Pulse_play_.es.json
new file mode 100644
index 000000000..b119eee13
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_play_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Starts the oscillator",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the oscillator.",
+ "syntax": [
+ ".play()",
+ ".play(freq, amp)",
+ ".play(freq, amp, add)",
+ ".play(freq, amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_set_.es.json b/content/references/translations/es/sound/Pulse_set_.es.json
new file mode 100644
index 000000000..e5da1ee71
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_set_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Set multiple parameters at once",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once",
+ "syntax": [".set(freq, width, amp, add, pos)", ".set(freq, amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "width",
+ "description": "The pulse width of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to\n 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Pulse_stop_.es.json b/content/references/translations/es/sound/Pulse_stop_.es.json
new file mode 100644
index 000000000..dd218e0ae
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the Sine Oscillator generator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the Sine Oscillator generator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Pulse_width_.es.json b/content/references/translations/es/sound/Pulse_width_.es.json
new file mode 100644
index 000000000..2f8db2c33
--- /dev/null
+++ b/content/references/translations/es/sound/Pulse_width_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the pulse width of the pulse oscillator.",
+ "related": [],
+ "name": "width()",
+ "description": "Changes the pulse width of the pulse oscillator. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".width(width)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "Pulse",
+ "classanchor": "Pulse",
+ "parameters": [
+ {
+ "name": "width",
+ "description": "The relative pulse width of the oscillator as a float value\n between 0.0 and 1.0 (exclusive)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Reverb.es.json b/content/references/translations/es/sound/Reverb.es.json
new file mode 100644
index 000000000..47f2c0bb7
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb.es.json
@@ -0,0 +1,37 @@
+{
+ "brief": "This is a simple reverb effect.",
+ "methods": [
+ {
+ "anchor": "Reverb_damp_",
+ "name": "damp()",
+ "desc": "Changes the damping factor of the reverb effect."
+ },
+ {
+ "anchor": "Reverb_room_",
+ "name": "room()",
+ "desc": "Change the room size of the reverb effect."
+ },
+ {
+ "anchor": "Reverb_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters of the reverb."
+ },
+ {
+ "anchor": "Reverb_wet_",
+ "name": "wet()",
+ "desc": "Change the wet/dry ratio of the reverb."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple reverb effect.",
+ "type": "class",
+ "constructors": ["Reverb(parent)"],
+ "related": [],
+ "name": "Reverb",
+ "classanchor": "sound/Reverb",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Reverb_damp_.es.json b/content/references/translations/es/sound/Reverb_damp_.es.json
new file mode 100644
index 000000000..cce95eae3
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb_damp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the damping factor of the reverb effect.",
+ "related": [],
+ "name": "damp()",
+ "description": "Changes the damping factor of the reverb effect.",
+ "syntax": [".damp(damp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "classanchor": "Reverb",
+ "parameters": [
+ {
+ "name": "damp",
+ "description": "A float value controlling the damping factor of the reverb",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Reverb_process_.es.json b/content/references/translations/es/sound/Reverb_process_.es.json
new file mode 100644
index 000000000..c781a1395
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb_process_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Start the filter.",
+ "related": [],
+ "name": "process()",
+ "description": "Start the filter.",
+ "syntax": [".process(input)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "classanchor": "Reverb",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "Input audio source",
+ "type": ["SoundObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Reverb_room_.es.json b/content/references/translations/es/sound/Reverb_room_.es.json
new file mode 100644
index 000000000..3764775d3
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb_room_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Change the room size of the reverb effect.",
+ "related": [],
+ "name": "room()",
+ "description": "Change the room size of the reverb effect.",
+ "syntax": [".room(room)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "classanchor": "Reverb",
+ "parameters": [
+ {
+ "name": "room",
+ "description": "A float value controlling the room size of the effect.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Reverb_set_.es.json b/content/references/translations/es/sound/Reverb_set_.es.json
new file mode 100644
index 000000000..c7de9f189
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb_set_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Set multiple parameters of the reverb.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters of the reverb. Parameters have to be in the right order.",
+ "syntax": [".set(room, damp, wet)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "classanchor": "Reverb",
+ "parameters": [
+ {
+ "name": "room",
+ "description": "A value controlling the room size of the effect",
+ "type": ["float"]
+ },
+ {
+ "name": "damp",
+ "description": "A value controlling the damping factor of the reverb",
+ "type": ["float"]
+ },
+ {
+ "name": "wet",
+ "description": "A value controlling the wet/dry ratio of the reverb.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Reverb_stop_.es.json b/content/references/translations/es/sound/Reverb_stop_.es.json
new file mode 100644
index 000000000..a04071baa
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the reverb.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the reverb.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "classanchor": "Reverb",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Reverb_wet_.es.json b/content/references/translations/es/sound/Reverb_wet_.es.json
new file mode 100644
index 000000000..9bb2ca8cd
--- /dev/null
+++ b/content/references/translations/es/sound/Reverb_wet_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Change the wet/dry ratio of the reverb.",
+ "related": [],
+ "name": "wet()",
+ "description": "Change the wet/dry ratio of the reverb.",
+ "syntax": [".wet(wet)"],
+ "returns": "void",
+ "type": "method",
+ "category": "effects",
+ "subcategory": "Reverb",
+ "classanchor": "Reverb",
+ "parameters": [
+ {
+ "name": "wet",
+ "description": "A float value controlling the wet/dry ratio of the reverb. TODO\n document",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc.es.json b/content/references/translations/es/sound/SawOsc.es.json
new file mode 100644
index 000000000..a6e846458
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc.es.json
@@ -0,0 +1,58 @@
+{
+ "brief": "This is a simple Saw Wave Oscillator.",
+ "methods": [
+ {
+ "anchor": "SawOsc_play_",
+ "name": "play()",
+ "desc": "Starts the oscillator."
+ },
+ {
+ "anchor": "SawOsc_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once."
+ },
+ {
+ "anchor": "SawOsc_freq_",
+ "name": "freq()",
+ "desc": "Set the frequency of the oscillator in Hz."
+ },
+ {
+ "anchor": "SawOsc_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the saw oscillator."
+ },
+ {
+ "anchor": "SawOsc_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by given value."
+ },
+ {
+ "anchor": "SawOsc_pan_",
+ "name": "pan()",
+ "desc": "Move the sound in a stereo panorama."
+ },
+ {
+ "anchor": "SawOsc_stop_",
+ "name": "stop()",
+ "desc": "Move the sound in a stereo panorama."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple Saw Wave Oscillator.",
+ "type": "class",
+ "constructors": ["SawOsc(parent)"],
+ "related": [],
+ "name": "SawOsc",
+ "classanchor": "sound/SawOsc",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_add_.es.json b/content/references/translations/es/sound/SawOsc_add_.es.json
new file mode 100644
index 000000000..5a9a2b74b
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by given value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by given value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_amp_.es.json b/content/references/translations/es/sound/SawOsc_amp_.es.json
new file mode 100644
index 000000000..1aa23bea6
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the saw oscillator.",
+ "related": [],
+ "name": "amp()",
+ "description": "Changes the amplitude/volume of the saw oscillator. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_freq_.es.json b/content/references/translations/es/sound/SawOsc_freq_.es.json
new file mode 100644
index 000000000..fce297dd6
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the frequency of the oscillator in Hz.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the frequency of the oscillator in Hz.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "A floating point value of the oscillator in Hz.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_pan_.es.json b/content/references/translations/es/sound/SawOsc_pan_.es.json
new file mode 100644
index 000000000..380aac50f
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Move the sound in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Move the sound in a stereo panorama.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "Move the sound in a stereo panorama.\n The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_play_.es.json b/content/references/translations/es/sound/SawOsc_play_.es.json
new file mode 100644
index 000000000..e379d071e
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_play_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Starts the oscillator.",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the oscillator.",
+ "syntax": [
+ ".play()",
+ ".play(freq, amp)",
+ ".play(freq, amp, add)",
+ ".play(freq, amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_set_.es.json b/content/references/translations/es/sound/SawOsc_set_.es.json
new file mode 100644
index 000000000..f5c178525
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_set_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Set multiple parameters at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once.",
+ "syntax": [".set(freq, amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SawOsc_stop_.es.json b/content/references/translations/es/sound/SawOsc_stop_.es.json
new file mode 100644
index 000000000..d5c2341a1
--- /dev/null
+++ b/content/references/translations/es/sound/SawOsc_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Move the sound in a stereo panorama.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stop the oscillator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SawOsc",
+ "classanchor": "SawOsc",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SinOsc.es.json b/content/references/translations/es/sound/SinOsc.es.json
new file mode 100644
index 000000000..ad3ba31e5
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc.es.json
@@ -0,0 +1,58 @@
+{
+ "brief": "This is a simple Sine Wave Oscillator.",
+ "methods": [
+ {
+ "anchor": "SinOsc_play_",
+ "name": "play()",
+ "desc": "Starts the oscillator."
+ },
+ {
+ "anchor": "SinOsc_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once."
+ },
+ {
+ "anchor": "SinOsc_freq_",
+ "name": "freq()",
+ "desc": "Set the frequency of the oscillator in Hz."
+ },
+ {
+ "anchor": "SinOsc_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the sine oscillator."
+ },
+ {
+ "anchor": "SinOsc_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by given value."
+ },
+ {
+ "anchor": "SinOsc_pan_",
+ "name": "pan()",
+ "desc": "Pan the oscillator in a stereo panorama."
+ },
+ {
+ "anchor": "SinOsc_stop_",
+ "name": "stop()",
+ "desc": "Stops the oscillator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple Sine Wave Oscillator.",
+ "type": "class",
+ "constructors": ["SinOsc(parent)"],
+ "related": [],
+ "name": "SinOsc",
+ "classanchor": "sound/SinOsc",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_add_.es.json b/content/references/translations/es/sound/SinOsc_add_.es.json
new file mode 100644
index 000000000..9356e09a7
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by given value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by given value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_amp_.es.json b/content/references/translations/es/sound/SinOsc_amp_.es.json
new file mode 100644
index 000000000..26835ea6a
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the sine oscillator.",
+ "related": [],
+ "name": "amp()",
+ "description": "Changes the amplitude/volume of the sine oscillator. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_freq_.es.json b/content/references/translations/es/sound/SinOsc_freq_.es.json
new file mode 100644
index 000000000..94626c431
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the frequency of the oscillator in Hz.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the frequency of the oscillator in Hz.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "A floating point value of the oscillator in Hz.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_pan_.es.json b/content/references/translations/es/sound/SinOsc_pan_.es.json
new file mode 100644
index 000000000..24f1c46df
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Pan the oscillator in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Pan the oscillator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_play_.es.json b/content/references/translations/es/sound/SinOsc_play_.es.json
new file mode 100644
index 000000000..9aa754522
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_play_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Starts the oscillator.",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the oscillator.",
+ "syntax": [
+ ".play()",
+ ".play(freq, amp)",
+ ".play(freq, amp, add)",
+ ".play(freq, amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to\n 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_set_.es.json b/content/references/translations/es/sound/SinOsc_set_.es.json
new file mode 100644
index 000000000..5841c378d
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_set_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Set multiple parameters at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once.",
+ "syntax": [".set(freq, amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to\n 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SinOsc_stop_.es.json b/content/references/translations/es/sound/SinOsc_stop_.es.json
new file mode 100644
index 000000000..70db78ba2
--- /dev/null
+++ b/content/references/translations/es/sound/SinOsc_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the oscillator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stop the oscillator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SinOsc",
+ "classanchor": "SinOsc",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Sound.es.json b/content/references/translations/es/sound/Sound.es.json
new file mode 100644
index 000000000..b1efe9e69
--- /dev/null
+++ b/content/references/translations/es/sound/Sound.es.json
@@ -0,0 +1,71 @@
+{
+ "brief": "This class can be used for configuring the Processing Sound library.",
+ "methods": [
+ {
+ "anchor": "Sound_list_",
+ "name": "list()",
+ "desc": "Print and return information on available audio devices and their number of input/output channels."
+ },
+ {
+ "anchor": "Sound_sampleRate_",
+ "name": "sampleRate()",
+ "desc": "Get or set the internal sample rate of the synthesis engine."
+ },
+ {
+ "anchor": "Sound_inputDevice_",
+ "name": "inputDevice()",
+ "desc": "Choose the device (sound card) which should be used for grabbing audio input using AudioIn."
+ },
+ {
+ "anchor": "Sound_outputDevice_",
+ "name": "outputDevice()",
+ "desc": "Choose the device (sound card) which the Sound library's audio output should be sent to."
+ },
+ {
+ "anchor": "Sound_volume_",
+ "name": "volume()",
+ "desc": "Set the overall output volume of the Processing sound library."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This class can be used for configuring the Processing Sound library.\n\n The Sound class allows for configuring global properties of the sound\n library's audio synthesis and playback, such as the output device, sample\n rate or global output volume.\n\n Information on available input and output devices can be obtained by calling\n Sound.list()",
+ "type": "class",
+ "constructors": [
+ "Sound(parent)",
+ "Sound(parent, sampleRate, outputDevice, inputDevice, volume)"
+ ],
+ "related": [],
+ "name": "Sound",
+ "classanchor": "sound/Sound",
+ "category": "configuration",
+ "subcategory": "Sound",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "sampleRate",
+ "description": "the sample rate to be used by the synthesis engine (default 44100)",
+ "type": ["int"]
+ },
+ {
+ "name": "outputDevice",
+ "description": "the device id of the sound card that sound should be played on",
+ "type": ["int"]
+ },
+ {
+ "name": "inputDevice",
+ "description": "the device id of the sound card from which sound should be\n captured",
+ "type": ["int"]
+ },
+ {
+ "name": "volume",
+ "description": "the overall output volume of the library (default 1.0)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile.es.json b/content/references/translations/es/sound/SoundFile.es.json
new file mode 100644
index 000000000..46f68eb27
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile.es.json
@@ -0,0 +1,103 @@
+{
+ "brief": "This is a Soundfile Player which allows to play back and manipulate soundfiles.",
+ "methods": [
+ {
+ "anchor": "SoundFile_removeFromCache_",
+ "name": "removeFromCache()",
+ "desc": "Remove this SoundFile's decoded audio sample from the cache, allowing\n it to be garbage collected once there are no more references to this\n SoundFile."
+ },
+ {
+ "anchor": "SoundFile_channels_",
+ "name": "channels()",
+ "desc": "Returns the number of channels of the soundfile as an int (1 for mono, 2 for stereo)."
+ },
+ {
+ "anchor": "SoundFile_cue_",
+ "name": "cue()",
+ "desc": "Cues the playhead to a fixed position in the soundfile."
+ },
+ {
+ "anchor": "SoundFile_duration_",
+ "name": "duration()",
+ "desc": "Returns the duration of the soundfile in seconds."
+ },
+ {
+ "anchor": "SoundFile_frames_",
+ "name": "frames()",
+ "desc": "Returns the number of frames of this soundfile."
+ },
+ {
+ "anchor": "SoundFile_play_",
+ "name": "play()",
+ "desc": "Starts the playback of the soundfile."
+ },
+ {
+ "anchor": "SoundFile_jump_",
+ "name": "jump()",
+ "desc": "Jump to a specific position in the soundfile while continuing to play (or starting to play if it wasn't playing already)."
+ },
+ {
+ "anchor": "SoundFile_pause_",
+ "name": "pause()",
+ "desc": "Stop the playback of the file, but cue it to the current position."
+ },
+ {
+ "anchor": "SoundFile_isPlaying_",
+ "name": "isPlaying()",
+ "desc": "Check whether this soundfile is currently playing."
+ },
+ {
+ "anchor": "SoundFile_loop_",
+ "name": "loop()",
+ "desc": "Starts playback which will loop at the end of the soundfile."
+ },
+ {
+ "anchor": "SoundFile_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the player."
+ },
+ {
+ "anchor": "SoundFile_pan_",
+ "name": "pan()",
+ "desc": "Move the sound in a stereo panorama."
+ },
+ {
+ "anchor": "SoundFile_rate_",
+ "name": "rate()",
+ "desc": "Set the playback rate of the soundfile."
+ },
+ {
+ "anchor": "SoundFile_stop_",
+ "name": "stop()",
+ "desc": "Stops the playback."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a Soundfile player which allows to play back and manipulate sound\n files. Supported formats are: WAV, AIF/AIFF, and MP3.\n \n MP3 decoding can be very slow on ARM processors (Android/Raspberry Pi), we generally recommend you use lossless WAV or AIF files.",
+ "type": "class",
+ "constructors": ["SoundFile(parent, path)", "SoundFile(parent, path, cache)"],
+ "related": [],
+ "name": "SoundFile",
+ "classanchor": "sound/SoundFile",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "path",
+ "description": "filename of the sound file to be loaded",
+ "type": ["String"]
+ },
+ {
+ "name": "cache",
+ "description": "keep the sound data in RAM once it has been decoded (default: true).\n Note that caching essentially disables garbage collection for the\n SoundFile data, so if you are planning to load a large number of audio\n files, you should set this to false.",
+ "type": ["boolean"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_add_.es.json b/content/references/translations/es/sound/SoundFile_add_.es.json
new file mode 100644
index 000000000..00915f93e
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of the player by the given value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of the player by the given value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "offset the output of the player by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_amp_.es.json b/content/references/translations/es/sound/SoundFile_amp_.es.json
new file mode 100644
index 000000000..858c24376
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the player.",
+ "related": [],
+ "name": "amp()",
+ "description": "Change the amplitude/volume of this audiosample.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_channels_.es.json b/content/references/translations/es/sound/SoundFile_channels_.es.json
new file mode 100644
index 000000000..a1ef4e73e
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_channels_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of channels of the soundfile as an int (1 for mono, 2 for stereo).",
+ "related": [],
+ "name": "channels()",
+ "description": "Returns the number of channels of the soundfile as an int (1 for mono, 2 for stereo).",
+ "syntax": [".channels()"],
+ "returns": "int",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SoundFile_cue_.es.json b/content/references/translations/es/sound/SoundFile_cue_.es.json
new file mode 100644
index 000000000..d4ff16908
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_cue_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Cues the playhead to a fixed position in the soundfile.",
+ "related": [],
+ "name": "cue()",
+ "description": "Cues the playhead to a fixed position in the soundfile. Note that cue() only \n affects the playhead for future calls to play(), but not to loop().",
+ "syntax": [".cue(time)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "time",
+ "description": "position in the soundfile that the next playback should start\n from, in seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_duration_.es.json b/content/references/translations/es/sound/SoundFile_duration_.es.json
new file mode 100644
index 000000000..bea661618
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_duration_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the duration of the soundfile in seconds.",
+ "related": [],
+ "name": "duration()",
+ "description": "Returns the duration of the soundfile in seconds.",
+ "syntax": [".duration()"],
+ "returns": "float",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SoundFile_frames_.es.json b/content/references/translations/es/sound/SoundFile_frames_.es.json
new file mode 100644
index 000000000..835ee60f0
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_frames_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the number of frames of this soundfile.",
+ "related": [],
+ "name": "frames()",
+ "description": "Returns the number of frames of this soundfile.",
+ "syntax": [".frames()"],
+ "returns": "int",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SoundFile_isPlaying_.es.json b/content/references/translations/es/sound/SoundFile_isPlaying_.es.json
new file mode 100644
index 000000000..11c97aad4
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_isPlaying_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Check whether this soundfile is currently playing.",
+ "related": [],
+ "name": "isPlaying()",
+ "description": "Check whether this soundfile is currently playing.",
+ "syntax": [".isPlaying()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SoundFile_jump_.es.json b/content/references/translations/es/sound/SoundFile_jump_.es.json
new file mode 100644
index 000000000..e23c320ab
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_jump_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Jump to a specific position in the soundfile while continuing to play (or starting to play if it wasn't playing already).",
+ "related": [],
+ "name": "jump()",
+ "description": "Jump to a specific position in the soundfile while continuing to play \n (or starting to play if it wasn't playing already).",
+ "syntax": [".jump(time)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "time",
+ "description": "position to jump to, in seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_loop_.es.json b/content/references/translations/es/sound/SoundFile_loop_.es.json
new file mode 100644
index 000000000..5264076f1
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_loop_.es.json
@@ -0,0 +1,40 @@
+{
+ "brief": "Starts playback which will loop at the end of the soundfile.",
+ "related": [],
+ "name": "loop()",
+ "description": "Starts playback which will loop at the end of the soundfile.",
+ "syntax": [
+ ".loop()",
+ ".loop(rate)",
+ ".loop(rate, amp)",
+ ".loop(rate, pos, amp)",
+ ".loop(rate, pos, amp, add)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right). Only works for mono soundfiles!",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_pan_.es.json b/content/references/translations/es/sound/SoundFile_pan_.es.json
new file mode 100644
index 000000000..e2bdc6527
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Move the sound in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Move the sound in a stereo panorama.-1.0 pans to the left channel and 1.0 to the \n right channel. Note that panning is only supported for mono (1 channel) soundfiles.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_pause_.es.json b/content/references/translations/es/sound/SoundFile_pause_.es.json
new file mode 100644
index 000000000..91f60ca08
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_pause_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stop the playback of the file, but cue it to the current position.",
+ "related": [],
+ "name": "pause()",
+ "description": "Stop the playback of the file, but cue it to the current position. The\n next call to play() will continue playing where it left off.",
+ "syntax": [".pause()"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SoundFile_play_.es.json b/content/references/translations/es/sound/SoundFile_play_.es.json
new file mode 100644
index 000000000..08fde3bbe
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_play_.es.json
@@ -0,0 +1,46 @@
+{
+ "brief": "Starts the playback of the soundfile.",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the playback of the soundfile. Only plays to the end of the\n audiosample once. If cue() or pause() were called previously, playback \n will resume from the cued position.",
+ "syntax": [
+ ".play()",
+ ".play(rate)",
+ ".play(rate, amp)",
+ ".play(rate, pos, amp)",
+ ".play(rate, pos, amp, add)",
+ ".play(rate, pos, amp, add, cue)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right). Only works for mono soundfiles!",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ },
+ {
+ "name": "cue",
+ "description": "position in the audiosample that playback should start from, in\n seconds.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_rate_.es.json b/content/references/translations/es/sound/SoundFile_rate_.es.json
new file mode 100644
index 000000000..301c91c12
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_rate_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the playback rate of the soundfile.",
+ "related": [],
+ "name": "rate()",
+ "description": "Set the playback rate of the soundfile. 1 is the original speed. 0.5 is half speed \n and one octave down. 2 is double the speed and one octave up.",
+ "syntax": [".rate(rate)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "Relative playback rate to use. 1 is the original speed. 0.5 is\n half speed and one octave down. 2 is double the speed and one\n octave up.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_removeFromCache_.es.json b/content/references/translations/es/sound/SoundFile_removeFromCache_.es.json
new file mode 100644
index 000000000..22ff5effd
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_removeFromCache_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Remove this SoundFile's decoded audio sample from the cache, allowing\n it to be garbage collected once there are no more references to this\n SoundFile.",
+ "related": [],
+ "name": "removeFromCache()",
+ "description": "Remove this SoundFile's decoded audio sample from the cache, allowing\n it to be garbage collected once there are no more references to this\n SoundFile.",
+ "syntax": [".removeFromCache()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/SoundFile_set_.es.json b/content/references/translations/es/sound/SoundFile_set_.es.json
new file mode 100644
index 000000000..0ad035fea
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_set_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Set multiple playback parameters of the soundfile at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple playback parameters of the soundfile at once.",
+ "syntax": [".set(rate, pos, amp, add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": [
+ {
+ "name": "rate",
+ "description": "relative playback rate to use. 1 is the original speed. 0.5 is half speed and one octave down. 2 is double the speed and one octave up.",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0 (right).",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "the desired playback amplitude of the audiosample as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SoundFile_stop_.es.json b/content/references/translations/es/sound/SoundFile_stop_.es.json
new file mode 100644
index 000000000..72eeff845
--- /dev/null
+++ b/content/references/translations/es/sound/SoundFile_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops the playback.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops the playback.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "sampling",
+ "subcategory": "SoundFile",
+ "classanchor": "SoundFile",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Sound_inputDevice_.es.json b/content/references/translations/es/sound/Sound_inputDevice_.es.json
new file mode 100644
index 000000000..6b4f46ce6
--- /dev/null
+++ b/content/references/translations/es/sound/Sound_inputDevice_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Choose the device (sound card) which should be used for grabbing audio input using AudioIn.",
+ "related": [],
+ "name": "inputDevice()",
+ "description": "Choose the device (sound card) which should be used for grabbing audio input\n using AudioIn. Note that this setting affects the choice of sound card, which \n is not necessarily the same as the number of the input channel. If your sound \n card has more than one input channel, you can specify which channel to use in\n the constructor of the AudioIn class.",
+ "syntax": [".inputDevice(deviceId)"],
+ "returns": "void",
+ "type": "method",
+ "category": "configuration",
+ "subcategory": "Sound",
+ "classanchor": "Sound",
+ "parameters": [
+ {
+ "name": "deviceId",
+ "description": "the device id obtained from Sound.list()",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Sound_list_.es.json b/content/references/translations/es/sound/Sound_list_.es.json
new file mode 100644
index 000000000..7eb5790ab
--- /dev/null
+++ b/content/references/translations/es/sound/Sound_list_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Print and return information on available audio devices and their number of input/output channels.",
+ "related": [],
+ "name": "list()",
+ "description": "Print and return information on available audio devices and their number of\n input/output channels.\n Under normal circumstances you will not want to call Sound.list() in \n your actual sketch code, but only for testing to figure out which sound cards \n are available on a new system and how to select them. However, if the order \n of devices on your system is prone to fluctuate from reboot to reboot, you \n can also use the device name array returned by the function to automate device \n selection by name in your own code.",
+ "syntax": [".list()"],
+ "returns": "String[]",
+ "type": "method",
+ "category": "configuration",
+ "subcategory": "Sound",
+ "classanchor": "Sound",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Sound_outputDevice_.es.json b/content/references/translations/es/sound/Sound_outputDevice_.es.json
new file mode 100644
index 000000000..1b8d888ea
--- /dev/null
+++ b/content/references/translations/es/sound/Sound_outputDevice_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Choose the device (sound card) which the Sound library's audio output should be sent to.",
+ "related": [],
+ "name": "outputDevice()",
+ "description": "Choose the device (sound card) which the Sound library's audio output should\n be sent to. The output device should support stereo output (2 channels).",
+ "syntax": [".outputDevice(deviceId)"],
+ "returns": "void",
+ "type": "method",
+ "category": "configuration",
+ "subcategory": "Sound",
+ "classanchor": "Sound",
+ "parameters": [
+ {
+ "name": "deviceId",
+ "description": "the device id obtained from list()",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Sound_sampleRate_.es.json b/content/references/translations/es/sound/Sound_sampleRate_.es.json
new file mode 100644
index 000000000..85a9eb74b
--- /dev/null
+++ b/content/references/translations/es/sound/Sound_sampleRate_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Get or set the internal sample rate of the synthesis engine.",
+ "related": [],
+ "name": "sampleRate()",
+ "description": "Get or set the internal sample rate of the synthesis engine.",
+ "syntax": [".sampleRate()", ".sampleRate(sampleRate)"],
+ "returns": "int",
+ "type": "method",
+ "category": "configuration",
+ "subcategory": "Sound",
+ "classanchor": "Sound",
+ "parameters": [
+ {
+ "name": "sampleRate",
+ "description": "the sample rate to be used by the synthesis engine (default 44100)",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Sound_volume_.es.json b/content/references/translations/es/sound/Sound_volume_.es.json
new file mode 100644
index 000000000..fc0c3ba9f
--- /dev/null
+++ b/content/references/translations/es/sound/Sound_volume_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the overall output volume of the Processing sound library.",
+ "related": [],
+ "name": "volume()",
+ "description": "Set the overall output volume of the Processing sound library.",
+ "syntax": [".volume(volume)"],
+ "returns": "void",
+ "type": "method",
+ "category": "configuration",
+ "subcategory": "Sound",
+ "classanchor": "Sound",
+ "parameters": [
+ {
+ "name": "volume",
+ "description": "the desired output volume, normally between 0.0 and 1.0 (default\n is 1.0)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc.es.json b/content/references/translations/es/sound/SqrOsc.es.json
new file mode 100644
index 000000000..bd6300a18
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc.es.json
@@ -0,0 +1,58 @@
+{
+ "brief": "This is a simple Square Wave Oscillator.",
+ "methods": [
+ {
+ "anchor": "SqrOsc_play_",
+ "name": "play()",
+ "desc": "Starts the oscillator."
+ },
+ {
+ "anchor": "SqrOsc_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once."
+ },
+ {
+ "anchor": "SqrOsc_freq_",
+ "name": "freq()",
+ "desc": "Set the frequency of the oscillator in Hz."
+ },
+ {
+ "anchor": "SqrOsc_amp_",
+ "name": "amp()",
+ "desc": "Change the amplitude/volume of of the square oscillator."
+ },
+ {
+ "anchor": "SqrOsc_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by given value."
+ },
+ {
+ "anchor": "SqrOsc_pan_",
+ "name": "pan()",
+ "desc": "Move the sound in a stereo panorama."
+ },
+ {
+ "anchor": "SqrOsc_stop_",
+ "name": "stop()",
+ "desc": "Stop the oscillator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple Square Wave Oscillator.",
+ "type": "class",
+ "constructors": ["SqrOsc(parent)"],
+ "related": [],
+ "name": "SqrOsc",
+ "classanchor": "sound/SqrOsc",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_add_.es.json b/content/references/translations/es/sound/SqrOsc_add_.es.json
new file mode 100644
index 000000000..336804c08
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by given value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by given value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_amp_.es.json b/content/references/translations/es/sound/SqrOsc_amp_.es.json
new file mode 100644
index 000000000..906e8080a
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Change the amplitude/volume of of the square oscillator.",
+ "related": [],
+ "name": "amp()",
+ "description": "Change the amplitude/volume of of the square oscillator. \n Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_freq_.es.json b/content/references/translations/es/sound/SqrOsc_freq_.es.json
new file mode 100644
index 000000000..d6f2ebaa2
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the frequency of the oscillator in Hz.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the frequency of the oscillator in Hz.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "A floating point value of the oscillator in Hz.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_pan_.es.json b/content/references/translations/es/sound/SqrOsc_pan_.es.json
new file mode 100644
index 000000000..243edbd61
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Move the sound in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Move the sound in a stereo panorama.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_play_.es.json b/content/references/translations/es/sound/SqrOsc_play_.es.json
new file mode 100644
index 000000000..51951a9e4
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_play_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Starts the oscillator.",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the oscillator.",
+ "syntax": [
+ ".play()",
+ ".play(freq, amp)",
+ ".play(freq, amp, add)",
+ ".play(freq, amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_set_.es.json b/content/references/translations/es/sound/SqrOsc_set_.es.json
new file mode 100644
index 000000000..06cef4f99
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_set_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Set multiple parameters at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once.",
+ "syntax": [".set(freq, amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/SqrOsc_stop_.es.json b/content/references/translations/es/sound/SqrOsc_stop_.es.json
new file mode 100644
index 000000000..b57647b68
--- /dev/null
+++ b/content/references/translations/es/sound/SqrOsc_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stop the oscillator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stop the oscillator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "SqrOsc",
+ "classanchor": "SqrOsc",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/TriOsc.es.json b/content/references/translations/es/sound/TriOsc.es.json
new file mode 100644
index 000000000..57905cc19
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc.es.json
@@ -0,0 +1,58 @@
+{
+ "brief": "This is a simple triangle (or \"saw\") wave oscillator.",
+ "methods": [
+ {
+ "anchor": "TriOsc_play_",
+ "name": "play()",
+ "desc": "Starts the oscillator."
+ },
+ {
+ "anchor": "TriOsc_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once."
+ },
+ {
+ "anchor": "TriOsc_freq_",
+ "name": "freq()",
+ "desc": "Set the frequency of the oscillator in Hz."
+ },
+ {
+ "anchor": "TriOsc_amp_",
+ "name": "amp()",
+ "desc": "Changes the amplitude/volume of the triangle oscillator."
+ },
+ {
+ "anchor": "TriOsc_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by given value."
+ },
+ {
+ "anchor": "TriOsc_pan_",
+ "name": "pan()",
+ "desc": "Move the sound in a stereo panorama."
+ },
+ {
+ "anchor": "TriOsc_stop_",
+ "name": "stop()",
+ "desc": "Stop the oscillator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a simple triangle (or \"saw\") wave oscillator.",
+ "type": "class",
+ "constructors": ["TriOsc(parent)"],
+ "related": [],
+ "name": "TriOsc",
+ "classanchor": "sound/TriOsc",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_add_.es.json b/content/references/translations/es/sound/TriOsc_add_.es.json
new file mode 100644
index 000000000..9e6455f47
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by given value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by given value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_amp_.es.json b/content/references/translations/es/sound/TriOsc_amp_.es.json
new file mode 100644
index 000000000..b371fff2e
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Changes the amplitude/volume of the triangle oscillator.",
+ "related": [],
+ "name": "amp()",
+ "description": "Changes the amplitude/volume of the triangle oscillator. \n Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_freq_.es.json b/content/references/translations/es/sound/TriOsc_freq_.es.json
new file mode 100644
index 000000000..dd69a1544
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_freq_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Set the frequency of the oscillator in Hz.",
+ "related": [],
+ "name": "freq()",
+ "description": "Set the frequency of the oscillator in Hz.",
+ "syntax": [".freq(freq)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "A floating point value of the oscillator in Hz.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_pan_.es.json b/content/references/translations/es/sound/TriOsc_pan_.es.json
new file mode 100644
index 000000000..481577205
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Move the sound in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Move the sound in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_play_.es.json b/content/references/translations/es/sound/TriOsc_play_.es.json
new file mode 100644
index 000000000..98c7bac20
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_play_.es.json
@@ -0,0 +1,39 @@
+{
+ "brief": "Starts the oscillator.",
+ "related": [],
+ "name": "play()",
+ "description": "Starts the oscillator.",
+ "syntax": [
+ ".play()",
+ ".play(freq, amp)",
+ ".play(freq, amp, add)",
+ ".play(freq, amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_set_.es.json b/content/references/translations/es/sound/TriOsc_set_.es.json
new file mode 100644
index 000000000..849657ee4
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_set_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Set multiple parameters at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once.",
+ "syntax": [".set(freq, amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": [
+ {
+ "name": "freq",
+ "description": "The frequency value of the oscillator in Hz.",
+ "type": ["float"]
+ },
+ {
+ "name": "amp",
+ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "Offset the output of the oscillator by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/TriOsc_stop_.es.json b/content/references/translations/es/sound/TriOsc_stop_.es.json
new file mode 100644
index 000000000..327500e49
--- /dev/null
+++ b/content/references/translations/es/sound/TriOsc_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stop the oscillator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stop the oscillator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "oscillators",
+ "subcategory": "TriOsc",
+ "classanchor": "TriOsc",
+ "parameters": []
+}
diff --git a/content/references/translations/es/sound/Waveform.es.json b/content/references/translations/es/sound/Waveform.es.json
new file mode 100644
index 000000000..b6d5c7407
--- /dev/null
+++ b/content/references/translations/es/sound/Waveform.es.json
@@ -0,0 +1,38 @@
+{
+ "brief": "This is a Waveform analyzer.",
+ "methods": [
+ {
+ "anchor": "Waveform_analyze_",
+ "name": "analyze()",
+ "desc": "Gets the content of the current audiobuffer from the input source."
+ },
+ {
+ "anchor": "Waveform_input_",
+ "name": "input()",
+ "desc": "Define the audio input for the analyzer."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a Waveform analyzer. It returns the waveform of the \n of an audio stream the moment it is queried with the analyze()\n method.",
+ "type": "class",
+ "constructors": ["Waveform(parent, nsamples)"],
+ "related": [],
+ "name": "Waveform",
+ "classanchor": "sound/Waveform",
+ "category": "analysis",
+ "subcategory": "Waveform",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ },
+ {
+ "name": "nsamples",
+ "description": "number of waveform samples that you want to be able to read at once (a positive integer).",
+ "type": ["int"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Waveform_analyze_.es.json b/content/references/translations/es/sound/Waveform_analyze_.es.json
new file mode 100644
index 000000000..8746c2df9
--- /dev/null
+++ b/content/references/translations/es/sound/Waveform_analyze_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Gets the content of the current audiobuffer from the input source.",
+ "related": [],
+ "name": "analyze()",
+ "description": "Gets the content of the current audiobuffer from the input source.",
+ "syntax": [".analyze()", ".analyze(value)"],
+ "returns": "float[]",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "Waveform",
+ "classanchor": "Waveform",
+ "parameters": [
+ {
+ "name": "value",
+ "description": "an array with as many elements as this Waveform analyzer's number of\n samples",
+ "type": ["float[]"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/Waveform_input_.es.json b/content/references/translations/es/sound/Waveform_input_.es.json
new file mode 100644
index 000000000..024f50a2c
--- /dev/null
+++ b/content/references/translations/es/sound/Waveform_input_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Define the audio input for the analyzer.",
+ "related": [],
+ "name": "input()",
+ "description": "Define the audio input for the analyzer.",
+ "syntax": [".input(input)"],
+ "returns": "void",
+ "type": "method",
+ "category": "analysis",
+ "subcategory": "Waveform",
+ "classanchor": "Waveform",
+ "parameters": [
+ {
+ "name": "input",
+ "description": "the input sound source. Can be an oscillator, noise generator,\n SoundFile or AudioIn.",
+ "type": ["SoundObject"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise.es.json b/content/references/translations/es/sound/WhiteNoise.es.json
new file mode 100644
index 000000000..b7b42d80a
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise.es.json
@@ -0,0 +1,53 @@
+{
+ "brief": "This is a White Noise Generator.",
+ "methods": [
+ {
+ "anchor": "WhiteNoise_play_",
+ "name": "play()",
+ "desc": "Start the generator."
+ },
+ {
+ "anchor": "WhiteNoise_set_",
+ "name": "set()",
+ "desc": "Set multiple parameters at once."
+ },
+ {
+ "anchor": "WhiteNoise_amp_",
+ "name": "amp()",
+ "desc": "Change the amplitude/volume of this sound."
+ },
+ {
+ "anchor": "WhiteNoise_add_",
+ "name": "add()",
+ "desc": "Offset the output of this generator by a fixed value."
+ },
+ {
+ "anchor": "WhiteNoise_pan_",
+ "name": "pan()",
+ "desc": "Move the sound in a stereo panorama."
+ },
+ {
+ "anchor": "WhiteNoise_stop_",
+ "name": "stop()",
+ "desc": "Stop the generator."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "This is a White Noise Generator. White Noise has a flat spectrum.",
+ "type": "class",
+ "constructors": ["WhiteNoise(parent)"],
+ "related": [],
+ "name": "WhiteNoise",
+ "classanchor": "sound/WhiteNoise",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "typically use \"this\"",
+ "type": ["PApplet"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise_add_.es.json b/content/references/translations/es/sound/WhiteNoise_add_.es.json
new file mode 100644
index 000000000..2ae2ac928
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise_add_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Offset the output of this generator by a fixed value.",
+ "related": [],
+ "name": "add()",
+ "description": "Offset the output of this generator by a fixed value.",
+ "syntax": [".add(add)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "classanchor": "WhiteNoise",
+ "parameters": [
+ {
+ "name": "add",
+ "description": "offset the output of the generator by the given value",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise_amp_.es.json b/content/references/translations/es/sound/WhiteNoise_amp_.es.json
new file mode 100644
index 000000000..81d69ac08
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise_amp_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Change the amplitude/volume of this sound.",
+ "related": [],
+ "name": "amp()",
+ "description": "Change the amplitude/volume of this sound. Allowed values are between 0.0 and 1.0.",
+ "syntax": [".amp(amp)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "classanchor": "WhiteNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise_pan_.es.json b/content/references/translations/es/sound/WhiteNoise_pan_.es.json
new file mode 100644
index 000000000..3e8c2dfd1
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise_pan_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Move the sound in a stereo panorama.",
+ "related": [],
+ "name": "pan()",
+ "description": "Move the sound in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.",
+ "syntax": [".pan(pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "classanchor": "WhiteNoise",
+ "parameters": [
+ {
+ "name": "pos",
+ "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise_play_.es.json b/content/references/translations/es/sound/WhiteNoise_play_.es.json
new file mode 100644
index 000000000..7849c4e1d
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise_play_.es.json
@@ -0,0 +1,34 @@
+{
+ "brief": "Start the generator.",
+ "related": [],
+ "name": "play()",
+ "description": "Start the generator.",
+ "syntax": [
+ ".play()",
+ ".play(amp)",
+ ".play(amp, pos)",
+ ".play(amp, add, pos)"
+ ],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "classanchor": "WhiteNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the noise by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise_set_.es.json b/content/references/translations/es/sound/WhiteNoise_set_.es.json
new file mode 100644
index 000000000..4b8c417ca
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise_set_.es.json
@@ -0,0 +1,29 @@
+{
+ "brief": "Set multiple parameters at once.",
+ "related": [],
+ "name": "set()",
+ "description": "Set multiple parameters at once.",
+ "syntax": [".set(amp, add, pos)"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "classanchor": "WhiteNoise",
+ "parameters": [
+ {
+ "name": "amp",
+ "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)",
+ "type": ["float"]
+ },
+ {
+ "name": "add",
+ "description": "offset the output of the noise by given value",
+ "type": ["float"]
+ },
+ {
+ "name": "pos",
+ "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/sound/WhiteNoise_stop_.es.json b/content/references/translations/es/sound/WhiteNoise_stop_.es.json
new file mode 100644
index 000000000..9933fdcca
--- /dev/null
+++ b/content/references/translations/es/sound/WhiteNoise_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stop the generator.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stop the generator.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "noise",
+ "subcategory": "WhiteNoise",
+ "classanchor": "WhiteNoise",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Capture.es.json b/content/references/translations/es/video/Capture.es.json
new file mode 100644
index 000000000..4d89d5962
--- /dev/null
+++ b/content/references/translations/es/video/Capture.es.json
@@ -0,0 +1,59 @@
+{
+ "brief": "Datatype for storing and manipulating video frames from an \n attached capture device such as a camera.",
+ "methods": [
+ {
+ "anchor": "Capture_frameRate_",
+ "name": "frameRate()",
+ "desc": "Sets how often frames are read from the capture device."
+ },
+ {
+ "anchor": "Capture_available_",
+ "name": "available()",
+ "desc": "Returns \"true\" when a new frame from the device is available to read."
+ },
+ {
+ "anchor": "Capture_start_",
+ "name": "start()",
+ "desc": "Starts capturing frames from an attached device."
+ },
+ {
+ "anchor": "Capture_stop_",
+ "name": "stop()",
+ "desc": "Stops capturing frames from an attached device."
+ },
+ {
+ "anchor": "Capture_read_",
+ "name": "read()",
+ "desc": "Reads the current frame of the device."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Datatype for storing and manipulating video frames from an attached \n capture device such as a camera. Use Capture.list() to show \n the names of any attached devices. Using the version of the constructor \n without name will attempt to use the last device used by a \n QuickTime program.",
+ "type": "class",
+ "constructors": [
+ "Capture(parent)",
+ "Capture(parent, device)",
+ "Capture(parent, width, height)",
+ "Capture(parent, width, height, fps)",
+ "Capture(parent, width, height, device)",
+ "Capture(parent, width, height, device, fps)"
+ ],
+ "related": [],
+ "name": "Capture",
+ "classanchor": "video/Capture",
+ "category": "capture",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "parent",
+ "description": "PApplet, typically \"this\"",
+ "type": ["PApplet"]
+ },
+ { "name": "device", "description": "device name", "type": ["String"] },
+ { "name": "width", "description": "width in pixels", "type": ["int"] },
+ { "name": "height", "description": "height in pixels", "type": ["int"] },
+ { "name": "fps", "description": "frames per second", "type": ["float"] }
+ ]
+}
diff --git a/content/references/translations/es/video/Capture_available_.es.json b/content/references/translations/es/video/Capture_available_.es.json
new file mode 100644
index 000000000..c425b34a2
--- /dev/null
+++ b/content/references/translations/es/video/Capture_available_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns \"true\" when a new frame from the device is available to read.",
+ "related": [],
+ "name": "available()",
+ "description": "Returns \"true\" when a new frame from the device is available to read.",
+ "syntax": [".available()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "capture",
+ "subcategory": "",
+ "classanchor": "Capture",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Capture_frameRate_.es.json b/content/references/translations/es/video/Capture_frameRate_.es.json
new file mode 100644
index 000000000..6fdfeade1
--- /dev/null
+++ b/content/references/translations/es/video/Capture_frameRate_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Sets how often frames are read from the capture device.",
+ "related": [],
+ "name": "frameRate()",
+ "description": "Sets how often frames are read from the capture device. Setting the fps\n parameter to 4, for example, will cause 4 frames to be read per second.",
+ "syntax": [".frameRate(ifps)"],
+ "returns": "void",
+ "type": "method",
+ "category": "capture",
+ "subcategory": "",
+ "classanchor": "Capture",
+ "parameters": [
+ {
+ "name": "ifps",
+ "description": "speed of the capture device in frames per second",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/video/Capture_read_.es.json b/content/references/translations/es/video/Capture_read_.es.json
new file mode 100644
index 000000000..6b4239e5b
--- /dev/null
+++ b/content/references/translations/es/video/Capture_read_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Reads the current frame of the device.",
+ "related": [],
+ "name": "read()",
+ "description": "Reads the current frame of the device.",
+ "syntax": [".read()"],
+ "returns": "void",
+ "type": "method",
+ "category": "capture",
+ "subcategory": "",
+ "classanchor": "Capture",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Capture_start_.es.json b/content/references/translations/es/video/Capture_start_.es.json
new file mode 100644
index 000000000..a71997b3b
--- /dev/null
+++ b/content/references/translations/es/video/Capture_start_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Starts capturing frames from an attached device.",
+ "related": [],
+ "name": "start()",
+ "description": "Starts capturing frames from the selected device.",
+ "syntax": [".start()"],
+ "returns": "void",
+ "type": "method",
+ "category": "capture",
+ "subcategory": "",
+ "classanchor": "Capture",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Capture_stop_.es.json b/content/references/translations/es/video/Capture_stop_.es.json
new file mode 100644
index 000000000..b25673a5d
--- /dev/null
+++ b/content/references/translations/es/video/Capture_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops capturing frames from an attached device.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops capturing frames from an attached device.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "capture",
+ "subcategory": "",
+ "classanchor": "Capture",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie.es.json b/content/references/translations/es/video/Movie.es.json
new file mode 100644
index 000000000..c98c74a90
--- /dev/null
+++ b/content/references/translations/es/video/Movie.es.json
@@ -0,0 +1,80 @@
+{
+ "brief": "Datatype for storing and playing movies.",
+ "methods": [
+ {
+ "anchor": "Movie_frameRate_",
+ "name": "frameRate()",
+ "desc": "Sets how often frames are read from the movie."
+ },
+ {
+ "anchor": "Movie_speed_",
+ "name": "speed()",
+ "desc": "Sets the relative playback speed of the movie."
+ },
+ {
+ "anchor": "Movie_duration_",
+ "name": "duration()",
+ "desc": "Returns the length of the movie in seconds."
+ },
+ {
+ "anchor": "Movie_time_",
+ "name": "time()",
+ "desc": "Returns the location of the playback head in seconds."
+ },
+ {
+ "anchor": "Movie_jump_",
+ "name": "jump()",
+ "desc": "Jumps to a specific location within a movie."
+ },
+ {
+ "anchor": "Movie_available_",
+ "name": "available()",
+ "desc": "Returns \"true\" when a new movie frame is available to read."
+ },
+ {
+ "anchor": "Movie_play_",
+ "name": "play()",
+ "desc": "Plays a movie one time and stops at the last frame."
+ },
+ {
+ "anchor": "Movie_loop_",
+ "name": "loop()",
+ "desc": "Plays a movie continuously, restarting it when it's over."
+ },
+ {
+ "anchor": "Movie_noLoop_",
+ "name": "noLoop()",
+ "desc": "If a movie is looping, this will cause it to play until the\n end and then stop on the last frame."
+ },
+ {
+ "anchor": "Movie_pause_",
+ "name": "pause()",
+ "desc": "Pauses a movie during playback."
+ },
+ {
+ "anchor": "Movie_stop_",
+ "name": "stop()",
+ "desc": "Stops a movie from continuing."
+ },
+ {
+ "anchor": "Movie_read_",
+ "name": "read()",
+ "desc": "Reads the current frame of the movie."
+ }
+ ],
+ "csspath": "../../",
+ "isLibrary": "true",
+ "classFields": [],
+ "description": "Datatype for storing and playing movies. Movies must be located in the sketch's data folder \n or an accessible place on the network to load without an error.",
+ "type": "class",
+ "constructors": ["Movie(parent, filename)"],
+ "related": [],
+ "name": "Movie",
+ "classanchor": "video/Movie",
+ "category": "movie",
+ "subcategory": "",
+ "parameters": [
+ { "name": "parent", "description": "PApplet", "type": ["PApplet"] },
+ { "name": "filename", "description": "String", "type": ["String"] }
+ ]
+}
diff --git a/content/references/translations/es/video/Movie_available_.es.json b/content/references/translations/es/video/Movie_available_.es.json
new file mode 100644
index 000000000..22983e088
--- /dev/null
+++ b/content/references/translations/es/video/Movie_available_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns \"true\" when a new movie frame is available to read.",
+ "related": [],
+ "name": "available()",
+ "description": "Returns \"true\" when a new movie frame is available to read.",
+ "syntax": [".available()"],
+ "returns": "boolean",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_duration_.es.json b/content/references/translations/es/video/Movie_duration_.es.json
new file mode 100644
index 000000000..f3fd85acf
--- /dev/null
+++ b/content/references/translations/es/video/Movie_duration_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the length of the movie in seconds.",
+ "related": [],
+ "name": "duration()",
+ "description": "Returns the length of the movie in seconds. If the movie is 1 minute and\n 20 seconds long the value returned will be 80.0.",
+ "syntax": [".duration()"],
+ "returns": "float",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_frameRate_.es.json b/content/references/translations/es/video/Movie_frameRate_.es.json
new file mode 100644
index 000000000..69f0ef661
--- /dev/null
+++ b/content/references/translations/es/video/Movie_frameRate_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Sets how often frames are read from the movie.",
+ "related": [],
+ "name": "frameRate()",
+ "description": "Sets how often frames are read from the movie. Setting the fps\n parameter to 4, for example, will cause 4 frames to be read per second.",
+ "syntax": [".frameRate(ifps)"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": [
+ {
+ "name": "ifps",
+ "description": "speed of the movie in frames per second",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/video/Movie_jump_.es.json b/content/references/translations/es/video/Movie_jump_.es.json
new file mode 100644
index 000000000..777f47303
--- /dev/null
+++ b/content/references/translations/es/video/Movie_jump_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Jumps to a specific location within a movie.",
+ "related": [],
+ "name": "jump()",
+ "description": "Jumps to a specific location within a movie. The parameter where\n is in terms of seconds. For example, if the movie is 12.2 seconds long,\n calling jump(6.1) would go to the middle of the movie.",
+ "syntax": [".jump(where)"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": [
+ {
+ "name": "where",
+ "description": "position to jump to specified in seconds",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/video/Movie_loop_.es.json b/content/references/translations/es/video/Movie_loop_.es.json
new file mode 100644
index 000000000..16d1a84a3
--- /dev/null
+++ b/content/references/translations/es/video/Movie_loop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Plays a movie continuously, restarting it when it's over.",
+ "related": [],
+ "name": "loop()",
+ "description": "Plays a movie continuously, restarting it when it's over.",
+ "syntax": [".loop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_noLoop_.es.json b/content/references/translations/es/video/Movie_noLoop_.es.json
new file mode 100644
index 000000000..35bee0ad0
--- /dev/null
+++ b/content/references/translations/es/video/Movie_noLoop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "If a movie is looping, this will cause it to play until the\n end and then stop on the last frame.",
+ "related": [],
+ "name": "noLoop()",
+ "description": "If a movie is looping, calling noLoop() will cause it to play until the\n end and then stop on the last frame.",
+ "syntax": [".noLoop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_pause_.es.json b/content/references/translations/es/video/Movie_pause_.es.json
new file mode 100644
index 000000000..e1814a94d
--- /dev/null
+++ b/content/references/translations/es/video/Movie_pause_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Pauses a movie during playback.",
+ "related": [],
+ "name": "pause()",
+ "description": "Pauses a movie during playback. If a movie is started again with play(),\n it will continue from where it was paused.",
+ "syntax": [".pause()"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_play_.es.json b/content/references/translations/es/video/Movie_play_.es.json
new file mode 100644
index 000000000..76e0ebce8
--- /dev/null
+++ b/content/references/translations/es/video/Movie_play_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Plays a movie one time and stops at the last frame.",
+ "related": [],
+ "name": "play()",
+ "description": "Plays a movie one time and stops at the last frame.",
+ "syntax": [".play()"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_read_.es.json b/content/references/translations/es/video/Movie_read_.es.json
new file mode 100644
index 000000000..575571adc
--- /dev/null
+++ b/content/references/translations/es/video/Movie_read_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Reads the current frame of the movie.",
+ "related": [],
+ "name": "read()",
+ "description": "Reads the current frame of the movie.",
+ "syntax": [".read()"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_speed_.es.json b/content/references/translations/es/video/Movie_speed_.es.json
new file mode 100644
index 000000000..a579fcb92
--- /dev/null
+++ b/content/references/translations/es/video/Movie_speed_.es.json
@@ -0,0 +1,19 @@
+{
+ "brief": "Sets the relative playback speed of the movie.",
+ "related": [],
+ "name": "speed()",
+ "description": "Sets the relative playback speed of the movie. The rate\n parameters sets the speed where 2.0 will play the movie twice as fast,\n 0.5 will play at half the speed, and -1 will play the movie in normal\n speed in reverse.",
+ "syntax": [".speed(irate)"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": [
+ {
+ "name": "irate",
+ "description": "speed multiplier for movie playback",
+ "type": ["float"]
+ }
+ ]
+}
diff --git a/content/references/translations/es/video/Movie_stop_.es.json b/content/references/translations/es/video/Movie_stop_.es.json
new file mode 100644
index 000000000..ef762abd5
--- /dev/null
+++ b/content/references/translations/es/video/Movie_stop_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Stops a movie from continuing.",
+ "related": [],
+ "name": "stop()",
+ "description": "Stops a movie from continuing. The playback returns to the beginning so\n when a movie is played, it will begin from the beginning.",
+ "syntax": [".stop()"],
+ "returns": "void",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/Movie_time_.es.json b/content/references/translations/es/video/Movie_time_.es.json
new file mode 100644
index 000000000..8ccc96bf4
--- /dev/null
+++ b/content/references/translations/es/video/Movie_time_.es.json
@@ -0,0 +1,13 @@
+{
+ "brief": "Returns the location of the playback head in seconds.",
+ "related": [],
+ "name": "time()",
+ "description": "Returns the location of the playback head in seconds. For example, if\n the movie has been playing for 4 seconds, the number 4.0 will be returned.",
+ "syntax": [".time()"],
+ "returns": "float",
+ "type": "method",
+ "category": "movie",
+ "subcategory": "",
+ "classanchor": "Movie",
+ "parameters": []
+}
diff --git a/content/references/translations/es/video/captureEvent_.es.json b/content/references/translations/es/video/captureEvent_.es.json
new file mode 100644
index 000000000..1c27ff1ae
--- /dev/null
+++ b/content/references/translations/es/video/captureEvent_.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "captureEvent()",
+ "brief": "This event function is run when a new camera frame is available",
+ "description": "This event function is run when a new camera frame is available. Use the read() method to capture this frame. If there is more than one capture device in the program, captureEvent() is called each time any of the devices has a new frame available. Use an if within the function to determine which device is triggering the event.\n
\nThis function is for people who want to process the image data separately from drawing (and as quickly as possible.) You cannot draw to the screen inside the captureEvent() function. If you want to draw immediately based on the new image, then use the Capture.available() method.\n",
+ "related": ["Capture"],
+ "syntax": ["void captureEvent(Capture which) {\nstatements\n}"],
+ "returns": "",
+ "type": "function",
+ "category": "video events",
+ "subcategory": "",
+ "parameters": [
+ {
+ "name": "statements",
+ "description": "any valid statements",
+ "type": []
+ },
+ {
+ "name": "which",
+ "description": "the camera with the event",
+ "type": []
+ }
+ ]
+}
diff --git a/content/references/translations/es/video/movieEvent_.es.json b/content/references/translations/es/video/movieEvent_.es.json
new file mode 100644
index 000000000..bdd840fc2
--- /dev/null
+++ b/content/references/translations/es/video/movieEvent_.es.json
@@ -0,0 +1,23 @@
+{
+ "name": "movieEvent()",
+ "brief": "This event function is run when a new movie frame is available",
+ "description": "This event function is run when a new movie frame is available. Use the read() method to capture this frame. If there is more than one movie in the program, movieEvent() is called each time any of the movies has a new frame available. Use an if to determine which movie is triggering the event. See the above example for implementation details.\n