Diseñadores, desarrolladores e investigadores de todo el mundo utilizan los lenguajes y las herramientas (marcos de desarrollo) propios del diseño computacional, con las que crear imágenes y animaciones en 2D y 3D, para hacer proyectos cada día. Processing.js y Toxiclibs.js son dos ejemplos de librerías JavaScript para diseñar en el elemento canvas de HTML5. En ambos casos son bibliotecas de código abierto, uso gratuito y acceso libre.
Una de las primeras preguntas que surgen cuando alguien no ha tenido ya un contacto con estas dos librerías es ¿qué es el elemento canvas de HTML5? Canvas es uno de los últimos componentes del nuevo estándar HTML5 para el desarrollo de imágenes dinámicas en proyectos digitales. El elemento canvas de HTML5 lo que nos permite es delimitar en una web un espacio que se puede usar como un lienzo para dibujar y renderizar imágenes con scripts. Se sustituye lo que antes se hacía en Flash con librerías de JavaScript.
– Processing.js
Processing. js es una biblioteca de JavaScript que facilita a diseñadores y desarrolladores la creación de visualizaciones de datos, arte digital, animaciones interactivas o videojuegos de alta calidad en el elemento Canvas de HTML5. El problema es que esos pequeños lienzos donde pintar con JS ofrecen algunas limitaciones importantes: es necesario recurrir a librerías como Processing.js para poder darle mayor complejidad al grafismo. Las limitaciones más importantes son el movimiento y la interactividad.
Processing nació como un lenguaje de programación de código abierto y basado en Java para mejorar las posibilidades del diseño digital, desarrollado por Ben Fry y Casey Reas. Se puede considerar incluso una sintaxis Java simplificada con su propia API en Java. Lo que permite Processing.js es adaptar sus funcionalidades a su ejecución dentro de un navegador compatible con HTML5 (Explorer, Firefox, Google Chrome, Safari y Opera).
Pasos a seguir por un desarrollador de JavaScript para usar Processing.js:
– Creación de un archivo Processing. Extensión .pde.
– Creación de una página web que incluya la librería Processing.js. En este paso es necesario configurar un elemento canvas para pintar las imágenes dinámicas. Ejemplo del código HTML para instalar Processing y diseñar el canvas:
<!DOCTYPE html>
<html>
<head>
<title>Hello Web – Processing.js Test</title>
<script src=”processing-1.3.6.min.js”></script>
</head>
<body>
<h1>Processing.js Test</h1>
<p>This is my first Processing.js web-based sketch:</p>
Las siguientes líneas de código, que deben ir incluidas dentro del <body>, son las que definen la función que permite al desarrollador crear el pequeño lienzo en canvas donde pintar en JavaScript las visualizaciones que se ejecutan en el navegador y contener un objeto donde visualizar los comandos de la librería. Dentro de esta función podemos ir definiendo variables como setup (sirve para iniciar el lienzo y las distintas variables) y draw (es la que ejecuta en el navegador todas las funcionalidades de movimiento e interactividad).
function sketchProc(processing) {
// Override draw function, by default it will be called 60 times per second
var minutesPosition = (now.getMinutes() + now.getSeconds() / 60) / 60;
drawArm(minutesPosition, 0.80, 3);
// Moving hour arm by second increments
var secondsPosition = now.getSeconds() / 60;
drawArm(secondsPosition, 0.90, 1);
Otra característica interesante de Processing.js es que transforma el código de Processing en JavaScript. Esto permite que un desarrollador que sabe la primera de las sintaxis pero no la segunda, pueda ejecutar imágenes dinámicas directamente en el navegador sin saber JavaScript y utilizando únicamente el Entorno de Desarrollo Integrado de Processing. Por tanto, se pueden diseñar animaciones por el lado del cliente solo con este lenguaje.
– No tiene directorio de datos: mientras que Processing sí dispone de un directorio de datos donde se encuentran las imágenes y los recursos para el diseño front-end, hay que decir que Processing.js no tiene ese directorio. Esto obliga al desarrollador a proporcionar páginas de archivos, por ejemplo las imágenes, que pertenecen a una web.
– Processing.js implementa Processing, pero no todo el Java: Processing.js es totalmente compatible con la sintaxis Processing, pero no sucede lo mismo con Java. Si una animación trabaja con funciones o clases ajenas a Processing, es complicado que sean compatibles con esta librería JavaScript. Además, las bibliotecas escritas en Java para Processing, lo más probable es que no funcionen con Processing.js.
– Processing.js solo tiene dos modos de renderizado: el uso del elemento canvas de HTML5 por parte de Processing.js proporciona un contexto basado en WebGL, una versión de OpenGL para páginas web.
– Processing.js, al igual que JavaScript, no usa datos char.
– Processing.js exige tener cuidado con el nombre de las variables. Los nombres de variables pueden provocar problemas en las funciones que tiene una designación similar. Es recomendable evitar este extremo.
– El uso del color en Processing.js es complejo: lo recomendable es utilizar colores hexadecimales (#RRGGBB), RGB (r, g, b) o RGBA (r,g,b,a).
– Toxiclibs.js
Toxiclibs.js es una biblioteca de código abierto para el diseño en JavaScript. Originalmente es una librería escrita para Java y Processing por Karsten Schmidt y adaptada posteriormente a JavaScript por Kyle Phillips. La librería está formada, después de varios años de desarrollo, por más de 270 clases, 18 paquetes agrupadas en siete bibliotecas y más de 25.000 líneas de código.
Las clases en Toxiclibs.js son genéricas. Eso permite la reutilización de código para facilitar la creación de imágenes para disciplinas como la visualización de datos, la animación, el diseño de interfaz de usuario… Esa flexibilidad para los desarrolladores se potencia gracias a que esta librería no tiene dependencias de otras bibliotecas o herramientas, ni siquiera Processing.
Toxiclibs.js se puede utilizar de tres maneras distintas:
– Instalando la propia biblioteca en la página web.
<script type=”text/javascript” src=”js/toxiclibs.min.js”></script>
<script type=”text/javascript”>
var myVector = new toxi.geom.Vec2D( 2, 3 ).scaleSelf(0.5);
var myColor = toxi.color.TColor.newRGB(128/255,64/255,32/255);
</script>
– A través de RequireJS.
require([
‘toxi/geom/Vec2D’,
‘toxi/color/TColor’
],function( Vec2D, TColor ){
var myVector = new Vec2D( 2, 3 ).scaleSelf(0.5);
var myColor = TColor.newRGB(128/255,64/255,32/255);
});
– Mediante el uso de Node.js.
npm install toxiclibsjs
var toxi = require(‘toxiclibsjs’),
myVector = new toxi.geom.Vec2D(0.5,0.5),
myColor = toxi.color.TColor.newRGB(128/255,64/255,32/255);
– toxi.audio. Audio espacial 3D basado en la librería de sonido JOAL (Java OpenAL), que permite renderizar de forma eficiente audio posicional y multicanal en tres dimensiones. Es muy utilizada en videojuegos.
– toxi.color. Este paquete incluye modelos de color RGB, HSV y CMYK.
– toxi.geom. Permite exportar objetos en formato OBJ y STL, por ejemplo.
– toxi.math. Métodos de interpolación para el tratamiento de imágenes.
– toxi.image.util. filtros de imágenes en escala de grises.
Llevar a un cliente por todo el proceso de compra hasta que este se formaliza es un viaje arduo y que se enfrenta a la posibilidad constante de abandono. Sin embargo, hay formas de lograr que la decisión de compra se haga realidad si se le dan facilidades como una financiación ágil, segura y adaptada a lo que necesita.
En un mundo conectado, las APIs son el pegamento que une todas las piezas que forman nuestra vida diaria. Y de la misma forma que un pegamento solo es potente si sabemos en qué material utilizarlo y conocemos sus propiedades, las APIs son tan útiles como su documentación permita.
Existen diferentes soluciones para monitorizar el rendimiento de una API, tanto en términos de tráfico como de calidad y rapidez de las respuestas que proporciona. Detectar fallos en el código o cuantificar los ingresos que genera también son algunas de las opciones que ofrecen estas útiles herramientas.
Por favor, si no lo encuentras, recuerda revisar la sección de correo no deseado
×
El correo electrónico con tu ebook está en camino
Te hemos enviado dos mensajes. Uno con el ebook solicitado y otro para confirmar tu correo electrónico y empezar a recibir la newsletter de BBVA API_Market
×
TRATAMIENTO DE DATOS PERSONALES
¿Quién es el Responsable del tratamiento de tus datos personales?
Banco Bilbao Vizcaya Argentaria, S.A. (“BBVA”), con domicilio social en Plaza de San Nicolás 4, 48005, Bilbao, España, C.I.F. A-48265169 Dirección de correo electrónico: contact.bbvaapimarket@bbva.com
¿Para qué y por qué utilizamos tus datos personales?
Para aquellas de las siguientes actividades para la que nos prestes tu consentimiento marcando la casilla correspondiente:
para la ejecución y gestión de tu solicitud, en concreto, recibir la newsletter de BBVA API_Market por medios electrónicos;
para enviarte comunicaciones comerciales, eventos y encuestas relativas a BBVA API_Market a la dirección de correo electrónico que nos hayas facilitado.
¿Durante cuánto tiempo conservaremos tus datos?
Conservaremos tus datos hasta que te des de baja para dejar de recibir nuestra newsletter o, en su caso, las comunicaciones comerciales, eventos y encuestas a las que te hayas suscrito. Tanto si te das de baja como si BBVA decide finalizar el servicio, tus datos serán eliminados.
¿Cómo puedo darme de baja para dejar de recibir la newsletter y/o comunicaciones de BBVA API_Market?
Puedes darte de baja en cualquier momento y sin necesidad de indicarnos ninguna justificación, remitiendo un correo electrónico a la siguiente dirección: contact.bbvaapimarket@bbva.com
¿A quién comunicaremos tus datos?
No cederemos tus datos personales a terceros, salvo que estemos obligados por una ley o que tú lo consientas previamente.
¿Cuáles son tus derechos cuando nos facilitas tus datos?
Consultar los datos personales que se incluyan en los ficheros de BBVA (derecho de acceso)
Solicitar la modificación de tus datos personales (derecho de rectificación)
Solicitar que no se traten tus datos personales (derecho de oposición)
Solicitar la supresión de tus datos personales (derecho de supresión)
Limitar el tratamiento de tus datos personales en los supuestos permitidos (limitación del tratamiento)
Recibir así como a transmitir a otra entidad, en formato electrónico, los datos personales que nos hayas facilitado y aquellos que se han obtenido de tu relación con BBVA (derecho de portabilidad)
Te responsabilizas de la veracidad de los datos personales que facilitas a BBVA y de mantenerlos debidamente actualizados.
Si consideras que no hemos tratado tus datos personales de acuerdo con la normativa, puedes contactar con el Delegado de Protección de Datos en la dirección dpogrupobbva@bbva.com
Puedes encontrar más información en el documento “Política de Protección de Datos Personales” de esta página web.
×
TRATAMIENTO DE DATOS PERSONALES
¿Quién es el Responsable del tratamiento de tus datos personales?
Banco Bilbao Vizcaya Argentaria, S.A. (“BBVA”), con domicilio social en Plaza de San Nicolás 4, 48005, Bilbao, España, C.I.F. A-48265169 Dirección de correo electrónico:contact.bbvaapimarket@bbva.com
¿Para qué y por qué utilizamos tus datos personales?
Para la ejecución y gestión de tu solicitud, en concreto, descargar el e-book/s solicitado.
BBVA informa te informa de que, salvo que indiques tu oposición enviando un correo a la siguiente dirección:contact.bbvaapimarket@bbva.com, BBVA podrá enviarte comunicaciones comerciales, encuestas y eventos relativas a productos y/o servicios de BBVA API Market a través de medios electrónicos.
¿Durante cuánto tiempo conservaremos tus datos?
Conservaremos tus datos mientras sea necesario para la gestión de la solicitud, así como para el envío de comunicaciones comerciales, eventos y/o, encuestas. BBVAconservará tus datos hasta que te des de baja para dejar de recibir dichas comunicaciones o, en su caso, hasta que finalice el servicio.Después, destruiremos tus datos.
¿Cómo puedo darme de baja para dejar de recibir newsletters y/o comunicaciones de BBVA API Market?
Puedes darte de baja en cualquier momento y sin necesidad de indicarnos ninguna justificación, remitiendo un correo electrónico a la siguiente dirección:contact.bbvaapimarket@bbva.com
¿A quién comunicaremos tus datos?
No cederemos tus datos personales a terceros, salvo que estemos obligados por una ley o que tú lo consientas previamente.
¿Cuáles son tus derechos cuando nos facilitas tus datos?
Consultar los datos personales que se incluyan en los ficheros de BBVA (derecho de acceso)
Solicitar la modificación de tus datos personales (derecho de rectificación)
Solicitar que no se traten tus datos personales (derecho de oposición)
Solicitar la supresión de tus datos personales (derecho de supresión)
Limitar el tratamiento de tus datos personales en los supuestos permitidos (limitación del tratamiento)
Recibir así como a transmitir a otra entidad, en formato electrónico, los datos personales que nos hayas facilitado y aquellos que se han obtenido de tu relación con BBVA (derecho de portabilidad)
Puedes ejercitar ante BBVA los citados derechos a través de la siguiente dirección:contact.bbvaapimarket@bbva.com
Te responsabilizas de la veracidad de los datos personales que facilitas a BBVA y de mantenerlos debidamente actualizados.
Si consideras que no hemos tratado tus datos personales de acuerdo con la normativa, puedes contactar con el Delegado de Protección de Datos de BBVA en la dirección dpogrupobbva@bbva.com
Puedes encontrar más información en el documento “Política de Protección de Datos Personales ” de esta página web.
Banco Bilbao Vizcaya Argentaria, S.A. titular de este portal utiliza cookies y/o tecnologías similares propias y de terceros para fines técnicos, de personalización, analíticos, de publicidad comportamental o publicidad relacionada con tus preferencias sobre la base de un perfil elaborado a partir de tus hábitos de navegación (por ejemplo, páginas visitadas). Si deseas obtener información más detallada, consulta nuestra Política de Cookies.
Panel de configuración de cookies
Este es el configurador avanzado de cookies propias y de terceros. Aquí puedes modificar parámetros que afectarán directamente a tu experiencia de navegación en esta web.
Cookies técnicas (necesarias)
Estas cookies son importantes para darte acceso seguro a zonas con información personal o para reconocerte cuando inicias sesión.
Denominación
Titular
Duración
Finalidad
gobp.lang
BBVA
1 mes
Preferencia de idioma
aceptarCookies
BBVA
1 año
Configuración Cookies aceptadas
_abck
BBVA
1 año
Ayuda a protegerse contra los ataques de sitios web maliciosos
bm_sz
BBVA
4 horas
Ayuda a protegerse contra los ataques de sitios web maliciosos
ADRUM_BTs
Salesforce Marketing Cloud
Sesión
Requerido para la supervisión del servicio, inherente al SFMC
ADRUM_BT1
Salesforce Marketing Cloud
Sesión
Requerido para la supervisión del servicio, inherente al SFMC
ADRUM_BTa
Salesforce Marketing Cloud
Sesión
Requerido para la supervisión del servicio, inherente al SFMC
ADRUM_BT
Salesforce Marketing Cloud
Sesión
Requerido para la supervisión del servicio, inherente al SFMC
xt_0d95e
Salesforce Marketing Cloud
Sesión
Recordar las preferencias del usuario (si las hay)
__s9744cdb192d044faa1bf201d29fafd1e
Salesforce Marketing Cloud
Sesión
Recordar las preferencias del usuario (si las hay)
wpml_browser_redirect_test
WPML
Sesión
Traducción de textos del portal
wp-wpml_current_language
WPML
24 horas
Traducción de textos del portal
Permiten medir, de forma anónima, el número de visitas o la actividad. Gracias a ellas podemos mejorar constantemente tu experiencia de navegación.
Dispones de una mejora continua en la experiencia de navegación.
Con tu selección no podemos ofrecerte una mejora continua en la experiencia de navegación.
Denominación
Titular
Duración
Finalidad
AMCV_***
Adobe Analytics
Sesión
ID de visitante único que se usan en las soluciones de Marketing Cloud
AMCVS_***
Adobe Analytics
2 años
ID de visitante único que se usan en las soluciones de Marketing Cloud
demdex (safari)
Adobe Analytics
180 días
Crear y almacenar identificadores únicos y persistentes
sessionID
Adobe Analytics
Sesión
Cookie interna de Launch usada para identificar al usuario
gpv_URL
Adobe Analytics
Sesión
plugin Adobe Analytics: getPreviousValue Capturar el valor de una determinada variable en la siguiente vista de página, en este caso la prop1
gpv_level1
Adobe Analytics
Sesión
Cookie utilizada para almacenar el levl1 del DataLayer de la página anterior.
gpv_pageIntent
Adobe Analytics
Sesión
Cookie utilizada para almacenar el pageIntent de la página anterior.
gpv_pageName
Adobe Analytics
Sesión
Cookie utilizada para almacenar el pagename de la página anterior.
aocs
Adobe Analytics
Sesión
Cookie que almacena los primeros valores recogidos al inicio de un proceso.
TTC
Adobe Analytics
Sesión
Cookie usada para almacenar el tiempo transcurrido entre el evento App Page Visit y App Completed.
TTCL
Adobe Analytics
Sesión
Cookie usada para almacenar el tiempo transcurrido entre el evento LogIn y App Completed.
s_cc
Adobe Analytics
Sesión
Determinar si las cookies están activas
s_hc
Adobe Analytics
Sesión
Cookie usada por Adobe con propositos de analítica.
s_ht
Adobe Analytics
Sesión
Cookie usada por Adobe con propositos de analítica.
s_nr
Adobe Analytics
2 años
Determinar el número de visitas de usuario
s_ppv
Adobe Analytics
Persistente
plugin Adobe Analytics: getPercentPageViewed Determinar el procentaje de página que visualiza un usuario
s_sq
Adobe Analytics
Sesión
Funcionalidades ClickMap/ActivityMap
s_tp
Adobe Analytics
Sesión
Cookie usada por Adobe con propositos de analítica.
s_visit
Adobe Analytics
2 años
Cookie usada por Adobe para saber cunado una sesión se ha iniciado.
Permiten que la publicidad que te mostramos sea personalizada y relevante para ti. Gracias a estas cookies no verás anuncios que no te interesen.
Dispones de una publicidad adaptada a ti y a tus preferencias.
Con tu selección pierdes la personalización de la publicidad, solo verás anuncios genéricos.
Denominación
Titular
Duración
Finalidad
OT2
VersaTag
90 días
Cookie de VersaTag usada para almacenar un id de usuario y el numero de visitas del usuario.
u2
VersaTag
90 días
Cookie de VersaTag en la que se almacena el ID del usuario
TargetingInfo 2
MediaMind
1 año
Cookie que sirve para asignar un número unico random que genera MediaMind.
Estas cookies están relacionadas con características generales como, por ejemplo, el navegador que utilizas.
Dispones de una experiencia y contenidos personalizados.
Con tu selección no podemos ofrecerte una navegación y contenidos personalizados.
Denominación
Titular
Duración
Finalidad
mbox
Adobe Target
9 días
Cookie usada por Adobe Target para hacer test de personalizacion de experencia del usuario.
×
Parece que estás navegando desde México, así que vamos a mostrarte el contenido personalizado para tu localización. Cambiar
Parece que estás navegando desde España, así que vamos a mostrarte el contenido personalizado para tu localización. Cambiar
Selecciona el país
Para poder acceder al área privada y sandbox correspondiente, selecciona el país de las APIs que quieres utilizar.
×
×
×
Preferencias de Navegación
Elige el país del que quieres que te mostremos su contenido por defecto.