Jump to content

Canvas (GUI)

From Wikipedia, the free encyclopedia
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

In computer science and visualization, a canvas is a container that holds various drawing elements (lines, shapes, text, frames containing others elements, etc.). It takes its name from the canvas used in visual arts. It is sometimes called a scene graph because it arranges the logical representation of a user interface or graphical scene. Some implementations also define the spatial representation and allow the user to interact with the elements via a graphical user interface.[1]

Library support

Various free and open-source canvas or scene-graph libraries allow developers to construct a user interface and/or user-interface elements for their computer programs.

Examples of free and open-source scene-graph canvas options include:

Some canvas modules within various libraries do not provide the power of a full scene-graph - they operate at a lower level which requires programmers to provide code such as mapping mouse-clicks to objects in the canvas. Examples of libraries which include such a canvas module include:

Proprietary canvas libraries include, for example:

References

  1. ^ "tk-zinc-3.303 - TkZinc is another Canvas which proposes many new functions, some based on openGL - metacpan.org". metacpan.org.
  2. ^ "Gitorious.org Git - fg:simgear.git/Summary". Archived from the original on 2017-12-07. Retrieved 2016-03-04.
  3. ^ "Canvas Development - FlightGear wiki". wiki.flightgear.org.
  4. ^ "GUI Programming with Python: Canvas Widget". python-course.eu.
  5. ^ "TkDocs - Tk Tutorial - Canvas". tkdocs.com.
  6. ^ "canvas manual page - Tk Built-In Commands". tcl.tk.
  7. ^ "zinc". wiki.tcl-lang.org.
  8. ^ "tk-zinc-3.303 - TkZinc is another Canvas which proposes many new functions, some based on openGL - metacpan.org". metacpan.org.
  9. ^ "TkZinc - Python Wiki". wiki.python.org.