Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В информатике и визуализации холст - это контейнер , содержащий различные элементы рисования (линии, фигуры, текст, рамки, содержащие другие элементы, и т. Д.). Он получил свое название от холста, используемого в изобразительном искусстве. Иногда его называют графом сцены, потому что он упорядочивает логическое представление пользовательского интерфейса или графической сцены. Некоторые реализации также определяют пространственное представление и позволяют пользователю взаимодействовать с элементами через графический интерфейс пользователя . [1]

Поддержка библиотеки [ править ]

Различные бесплатные библиотеки холста или графа сцены с открытым исходным кодом позволяют разработчикам создавать пользовательский интерфейс и / или элементы пользовательского интерфейса для своих компьютерных программ. [2]

Примеры бесплатных и открытых вариантов холста графа сцены включают в себя:

  • на C , Evas (на EFL) из проекта Просвещения
  • в C , Clutter , связанный с проектом GNOME
  • в C , GTK Scene Graph Kit (GSK)
  • в C ++ или необязательно в Qt собственного языка разметки «S QML : Qt Quick , обеспечивает дерева сцены , связанные с проектом Qt
  • в C ++ - OpenSceneGraph , API трехмерной графики с использованием OpenGL
  • в C ++ , то OGRE двигатель, основанный на графе сцены, поддерживает несколько менеджеров сцен
  • в C ++ - OpenSG , система графов сцен для графики в реальном времени, с поддержкой кластеризации и многопоточной безопасностью
  • в C ++ , то FlightGear Flight Simulator использует пользовательскую систему Canvas ( LGPL - е изд « с помощью SimGear [3] ) , что аппаратное ускорение с помощью OpenSceneGraph / OpenGL , OpenVG / ShivaVG: [4] Система FlightGear Холст
  • в Java - граф сцены Java FX с функциями 2D и 3D.
  • в Tcl и других языках, таких как Perl , Python ( Tkinter [5] ) и Ruby , инструментарий Tk предоставляет canvasвиджет для 2D-графики [6] [7]
  • в Tcl [8] и других языках, таких как Perl [9] и Python , [10] TkZinc является расширенной заменой холста Tk, который добавляет поддержку иерархической группировки, отсечения, аффинных преобразований, сглаживания и специальных элементов для управления воздушным движением.

Некоторые модули холста в различных библиотеках не обеспечивают возможности полного графа сцены - они работают на более низком уровне, что требует от программистов предоставления кода, такого как сопоставление щелчков мыши с объектами на холсте. Примеры библиотек, которые включают такой модуль холста, включают:

  • в C ++ , KDE Plasma Workspaces Corona Canvas
  • элемент холста в HTML5
  • для Java - библиотека AWT Canvas
  • для Java - библиотека Java FX Canvas [ постоянная мертвая ссылка ]
  • для Java - библиотека Swing Canvas
  • для Java - библиотека SWT Canvas , связанная с Eclipse.
  • для Java -like JavaScript , в GWT библиотеки Canvas
  • в C ++ , то папируса Холст библиотека , которая оказывает с помощью Cairo (графика) Библиотека
  • в C - crcanvas , виджет холста GTK, который отрисовывается с использованием библиотеки Cairo (графика).
  • в C - GooCanvas , виджет холста GTK, который отрисовывается с использованием библиотеки Cairo (графика).

Проприетарные библиотеки холста включают, например:

  • Microsoft Windows Win32 Canvas

Ссылки [ править ]

  1. ^ "tk-zinc-3.303 - TkZinc - еще один Canvas, который предлагает множество новых функций, некоторые из которых основаны на openGL - metacpan.org" . metacpan.org .
  2. ^ "Хостинг Snelle WordPress bij mijn.host" . mijn.host . 3 июня 2017 . Проверено 28 июня 2019 . CS1 maint: обескураженный параметр ( ссылка )
  3. ^ "Архивная копия" . Архивировано из оригинала на 2017-12-07 . Проверено 4 марта 2016 .CS1 maint: archived copy as title (link)
  4. ^ "Canvas Development - FlightGear wiki" . wiki.flightgear.org .
  5. ^ «Программирование графического интерфейса пользователя с Python: виджет Canvas» . python-course.eu .
  6. ^ "TkDocs - Tk Tutorial - Canvas" . tkdocs.com .
  7. ^ "Справочная страница холста - Встроенные команды Tk" . tcl.tk .
  8. ^ "цинк" . wiki.tcl-lang.org .
  9. ^ "tk-zinc-3.303 - TkZinc - еще один Canvas, который предлагает множество новых функций, некоторые из которых основаны на openGL - metacpan.org" . metacpan.org .
  10. ^ "TkZinc - Python Wiki" . wiki.python.org .