En informática y visualización, un lienzo es un contenedor que alberga diversos elementos de dibujo (líneas, formas, texto, marcos que contienen otros elementos, etc.). Recibe su nombre del lienzo utilizado en las artes visuales. A veces se le denomina grafo de escena porque organiza la representación lógica de una interfaz de usuario o escena gráfica. Algunas implementaciones también definen la representación espacial y permiten al usuario interactuar con los elementos mediante una interfaz gráfica de usuario . [ 1 ]
Apoyo a la biblioteca
Varias bibliotecas gratuitas y de código abierto para lienzos o grafos de escena permiten a los desarrolladores construir una interfaz de usuario y/o elementos de interfaz de usuario para sus programas informáticos.
Algunos ejemplos de opciones de lienzos de grafos de escena gratuitos y de código abierto incluyen:
- en C , Evas (en EFL) del proyecto Ilustración →←
- en C , Clutter, asociado con el proyecto GNOME
- en C , GTK Scene Graph Kit (GSK)
- En C++ o, de forma opcional, en el lenguaje de marcado propio de Qt , QML : Qt Quick proporciona un grafo de escena . Archivado el 29/10/2013 en la Wayback Machine asociada al proyecto Qt.
- En C++ , OpenSceneGraph es una API de gráficos 3D que utiliza OpenGL.
- En C++ , el motor OGRE , basado en un grafo de escena, admite múltiples gestores de escena.
- En C++ , OpenSG , un sistema de grafos de escena para gráficos en tiempo real, con soporte para agrupamiento y seguridad multihilo.
- En C++ , el simulador de vuelo FlightGear utiliza un sistema Canvas personalizado ( con licencia LGPL a través de SimGear [ 2 ] ) que se acelera por hardware mediante OpenSceneGraph / OpenGL , OpenVG/ShivaVG: [ 3 ] El sistema FlightGear Canvas
- En Java , el gráfico de escena Java FX con funcionalidad 2D y 3D.
- En Tcl y otros lenguajes como Perl , Python ( Tkinter [ 4 ] ) y Ruby , el conjunto de herramientas Tk proporciona un
canvaswidget para gráficos 2D [ 5 ] [ 6 ]. - en Tcl [ 7 ] y otros lenguajes como Perl [ 8 ] y Python , [ 9 ] TkZinc Archivado el 7 de diciembre de 2017 en Wayback Machine es un reemplazo extendido para el lienzo Tk, que agrega soporte para agrupamiento jerárquico, recorte, transformaciones afines, suavizado de bordes y elementos específicos para el control del tráfico aéreo.
Algunos módulos de lienzo dentro de diversas bibliotecas no proporcionan la potencia de un grafo de escena completo; operan a un nivel inferior que requiere que los programadores proporcionen código, como por ejemplo, para asignar clics del ratón a objetos en el lienzo. Ejemplos de bibliotecas que incluyen un módulo de lienzo de este tipo son:
- en C++ , KDE Plasma Workspaces Corona canvas
- El elemento Canvas en HTML5
- Para Java , la biblioteca AWT Canvas
- Para Java , la biblioteca Java FX Canvas
- Para Java , la biblioteca Swing Canvas
- Para Java , la biblioteca SWT Canvas , asociada con Eclipse
- Para JavaScript similar a Java , la biblioteca GWT Canvas
- En C++ , la biblioteca Papyrus Canvas renderiza usando la biblioteca Cairo (gráficos).
- En C , crcanvas , un widget de lienzo GTK que se renderiza utilizando la biblioteca Cairo (gráficos).
- En C , GooCanvas , un widget de lienzo GTK que se renderiza utilizando la biblioteca Cairo (gráficos).
Las bibliotecas de lienzo propietarias incluyen, por ejemplo:
- El lienzo Win32 de Microsoft Windows
Referencias
- ↑ "tk-zinc-3.303 - TkZinc es otro Canvas que propone muchas funciones nuevas, algunas basadas en openGL - metacpan.org" . metacpan.org .
- ↑ "Gitorius.org Git - fg:simgear.git/Summary" . Archivado del original el 7 de diciembre de 2017. Consultado el 4 de marzo de 2016 .
- ↑ "Desarrollo de Canvas - Wiki de FlightGear" . wiki.flightgear.org .
- ↑ "Programación de GUI con Python: Widget Canvas" . python-course.eu .
- ↑ "TkDocs - Tutorial de Tk - Canvas" . tkdocs.com .
- ↑ "Página del manual de canvas - Comandos integrados de Tk " . tcl.tk.
- ↑ "zinc" . wiki.tcl-lang.org .
- ↑ "tk-zinc-3.303 - TkZinc es otro Canvas que propone muchas funciones nuevas, algunas basadas en openGL - metacpan.org" . metacpan.org .
- ↑ "TkZinc - Wiki de Python" . wiki.python.org .
- Elementos de la interfaz gráfica de usuario