WebGL
В информатике и визуализации холст — это контейнер , который содержит различные элементы чертежа (линии, фигуры, текст, кадры, содержащие другие элементы и т. д.). Он получил свое название от холста , используемого в изобразительном искусстве. Иногда его называют графом сцены, потому что он организует логическое представление пользовательского интерфейса или графической сцены. Некоторые реализации также определяют пространственное представление и позволяют пользователю взаимодействовать с элементами через графический пользовательский интерфейс . [1]
Поддержка библиотеки
Различные бесплатные и открытые библиотеки холстов или сцен-графов позволяют разработчикам создавать пользовательский интерфейс и/или элементы пользовательского интерфейса для своих компьютерных программ.
Примеры бесплатных и открытых вариантов холстов графа сцены включают в себя:
- в C , Evas (в EFL) из проекта Enlightenment
- в C , Clutter, связанный с проектом GNOME
- в C , GTK Scene Graph Kit (GSK)
- на языке C++ или, опционально, на собственном языке разметки Qt QML : Qt Quick , предоставляет граф сцены. Архивировано 29 октября 2013 г. на Wayback Machine, связанном с проектом Qt.
- в C++ , OpenSceneGraph , API 3D-графики, использующий OpenGL
- в C++ движок OGRE , основанный на графе сцены, поддерживает несколько менеджеров сцен
- в C++ , OpenSG , система графа сцены для графики в реальном времени, с поддержкой кластеризации и многопоточной безопасностью
- FlightGear Flight Simulator на языке C++ использует пользовательскую систему Canvas ( LGPL через SimGear [2] ), которая аппаратно ускоряется с помощью OpenSceneGraph / OpenGL , OpenVG/ShivaVG: [3] Система FlightGear Canvas
- в Java — граф сцены Java FX с 2D и 3D функциональностью
- в Tcl и других языках, таких как Perl , Python ( Tkinter [4] ) и Ruby , набор инструментов Tk предоставляет
canvas
виджет для 2D-графики [5] [6] - в Tcl [7] и других языках, таких как Perl [8] и Python , [9] TkZinc Архивировано 07.12.2017 на Wayback Machine — это расширенная замена холста Tk, которая добавляет поддержку иерархической группировки, отсечения, аффинных преобразований, сглаживания и специальных элементов для управления воздушным движением.
Некоторые модули холста в различных библиотеках не обеспечивают мощности полного графа сцены - они работают на более низком уровне, который требует от программистов предоставления кода, например, сопоставления щелчков мыши с объектами на холсте. Примеры библиотек, которые включают такой модуль холста, включают:
- в C++ , KDE Plasma Рабочие пространства Corona Canvas
- элемент Canvas в HTML5
- для Java , библиотека AWT Canvas
- для Java , библиотека Java FX Canvas [ постоянная мертвая ссылка ]
- для Java , библиотека Swing Canvas
- для Java , библиотека SWT Canvas, связанная с Eclipse
- для Java -подобного JavaScript , библиотека GWT Canvas
- в C++ , библиотека Papyrus Canvas, которая визуализирует с помощью библиотеки Cairo (графика)
- в C , crcanvas, виджет GTK Canvas , который визуализирует с помощью библиотеки Cairo (графика)
- на языке C , GooCanvas, виджет GTK Canvas , который визуализирует с помощью библиотеки Cairo (графика)
К фирменным библиотекам холстов относятся, например:
Ссылки
- ^ "tk-zinc-3.303 - TkZinc - это еще один Canvas, который предлагает много новых функций, некоторые из которых основаны на openGL - metacpan.org". metacpan.org .
- ^ "Gitorious.org Git - fg:simgear.git/Summary". Архивировано из оригинала 2017-12-07 . Получено 2016-03-04 .
- ^ "Разработка Canvas - FlightGear wiki". wiki.flightgear.org .
- ^ «Программирование графического интерфейса на Python: виджет Canvas». python-course.eu .
- ^ "TkDocs - Учебник Tk - Холст". tkdocs.com .
- ^ "страница руководства по холсту - Встроенные команды Tk". tcl.tk .
- ^ "цинк". wiki.tcl-lang.org .
- ^ "tk-zinc-3.303 - TkZinc - это еще один Canvas, который предлагает много новых функций, некоторые из которых основаны на openGL - metacpan.org". metacpan.org .
- ^ "TkZinc - Python Wiki". wiki.python.org .