vispy 0.9.5__cp38-cp38-win_amd64.whl → 0.14.0__cp38-cp38-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of vispy might be problematic. Click here for more details.

Files changed (103) hide show
  1. vispy/app/backends/_glfw.py +2 -2
  2. vispy/app/backends/_pyglet.py +8 -2
  3. vispy/app/backends/_qt.py +88 -63
  4. vispy/app/backends/_wx.py +6 -1
  5. vispy/app/canvas.py +4 -2
  6. vispy/app/tests/test_canvas.py +52 -1
  7. vispy/app/tests/test_context.py +5 -3
  8. vispy/color/color_array.py +8 -1
  9. vispy/color/colormap.py +5 -25
  10. vispy/geometry/meshdata.py +76 -38
  11. vispy/geometry/rect.py +6 -0
  12. vispy/geometry/tests/test_meshdata.py +72 -0
  13. vispy/gloo/buffer.py +12 -0
  14. vispy/gloo/gl/_constants.py +9 -5
  15. vispy/gloo/gl/_es2.py +8 -4
  16. vispy/gloo/gl/_gl2.py +2 -3
  17. vispy/gloo/gl/_proxy.py +1 -1
  18. vispy/gloo/gl/_pyopengl2.py +12 -7
  19. vispy/gloo/gl/tests/test_names.py +3 -0
  20. vispy/gloo/glir.py +26 -13
  21. vispy/gloo/program.py +39 -22
  22. vispy/gloo/tests/test_program.py +9 -2
  23. vispy/gloo/tests/test_texture.py +19 -2
  24. vispy/gloo/texture.py +46 -16
  25. vispy/gloo/wrappers.py +4 -2
  26. vispy/glsl/build_spatial_filters.py +241 -293
  27. vispy/glsl/misc/spatial-filters.frag +1299 -254
  28. vispy/io/_data/spatial-filters.npy +0 -0
  29. vispy/io/datasets.py +2 -2
  30. vispy/io/image.py +1 -1
  31. vispy/io/stl.py +3 -3
  32. vispy/scene/cameras/base_camera.py +6 -2
  33. vispy/scene/cameras/panzoom.py +10 -14
  34. vispy/scene/cameras/perspective.py +6 -0
  35. vispy/scene/cameras/tests/test_cameras.py +27 -0
  36. vispy/scene/cameras/tests/test_perspective.py +37 -0
  37. vispy/scene/cameras/turntable.py +39 -23
  38. vispy/scene/canvas.py +9 -5
  39. vispy/scene/events.py +9 -0
  40. vispy/scene/node.py +19 -2
  41. vispy/scene/tests/test_canvas.py +30 -1
  42. vispy/scene/tests/test_visuals.py +113 -0
  43. vispy/scene/visuals.py +6 -1
  44. vispy/scene/widgets/viewbox.py +3 -2
  45. vispy/testing/_runners.py +6 -12
  46. vispy/testing/_testing.py +3 -4
  47. vispy/util/check_environment.py +4 -4
  48. vispy/util/gallery_scraper.py +50 -32
  49. vispy/util/tests/test_gallery_scraper.py +2 -0
  50. vispy/util/transforms.py +1 -1
  51. vispy/util/wrappers.py +1 -1
  52. vispy/version.py +2 -3
  53. vispy/visuals/__init__.py +2 -0
  54. vispy/visuals/_scalable_textures.py +20 -17
  55. vispy/visuals/collections/array_list.py +3 -3
  56. vispy/visuals/collections/base_collection.py +1 -1
  57. vispy/visuals/ellipse.py +1 -1
  58. vispy/visuals/filters/__init__.py +3 -2
  59. vispy/visuals/filters/base_filter.py +120 -0
  60. vispy/visuals/filters/clipping_planes.py +24 -12
  61. vispy/visuals/filters/markers.py +28 -0
  62. vispy/visuals/filters/mesh.py +61 -6
  63. vispy/visuals/filters/tests/test_primitive_picking_filters.py +70 -0
  64. vispy/visuals/graphs/graph.py +1 -1
  65. vispy/visuals/image.py +114 -26
  66. vispy/visuals/image_complex.py +130 -0
  67. vispy/visuals/instanced_mesh.py +152 -0
  68. vispy/visuals/isocurve.py +1 -1
  69. vispy/visuals/line/dash_atlas.py +46 -41
  70. vispy/visuals/line/line.py +2 -5
  71. vispy/visuals/markers.py +310 -384
  72. vispy/visuals/mesh.py +2 -2
  73. vispy/visuals/shaders/function.py +3 -0
  74. vispy/visuals/shaders/tests/test_function.py +6 -0
  75. vispy/visuals/tests/test_axis.py +2 -2
  76. vispy/visuals/tests/test_image.py +92 -2
  77. vispy/visuals/tests/test_image_complex.py +36 -0
  78. vispy/visuals/tests/test_instanced_mesh.py +50 -0
  79. vispy/visuals/tests/test_markers.py +6 -0
  80. vispy/visuals/tests/test_mesh.py +17 -0
  81. vispy/visuals/tests/test_text.py +11 -0
  82. vispy/visuals/tests/test_volume.py +218 -12
  83. vispy/visuals/text/_sdf_cpu.cp38-win_amd64.pyd +0 -0
  84. vispy/visuals/text/_sdf_cpu.pyx +21 -23
  85. vispy/visuals/text/text.py +9 -3
  86. vispy/visuals/tube.py +2 -2
  87. vispy/visuals/visual.py +144 -3
  88. vispy/visuals/volume.py +300 -131
  89. {vispy-0.9.5.dist-info → vispy-0.14.0.dist-info}/LICENSE.txt +1 -1
  90. {vispy-0.9.5.dist-info → vispy-0.14.0.dist-info}/METADATA +218 -198
  91. {vispy-0.9.5.dist-info → vispy-0.14.0.dist-info}/RECORD +93 -96
  92. {vispy-0.9.5.dist-info → vispy-0.14.0.dist-info}/WHEEL +1 -1
  93. vispy/glsl/antialias/__init__.py +0 -0
  94. vispy/glsl/arrowheads/__init__.py +0 -0
  95. vispy/glsl/arrows/__init__.py +0 -0
  96. vispy/glsl/collections/__init__.py +0 -0
  97. vispy/glsl/colormaps/__init__.py +0 -0
  98. vispy/glsl/lines/__init__.py +0 -0
  99. vispy/glsl/markers/__init__.py +0 -0
  100. vispy/glsl/math/__init__.py +0 -0
  101. vispy/glsl/misc/__init__.py +0 -0
  102. vispy/glsl/transforms/__init__.py +0 -0
  103. {vispy-0.9.5.dist-info → vispy-0.14.0.dist-info}/top_level.txt +0 -0
@@ -3,7 +3,7 @@ Vispy licensing terms
3
3
 
4
4
  Vispy is licensed under the terms of the (new) BSD license:
5
5
 
6
- Copyright (c) 2013-2022, Vispy Development Team. All rights reserved.
6
+ Copyright (c) 2013-2023, Vispy Development Team. All rights reserved.
7
7
 
8
8
  Redistribution and use in source and binary forms, with or without
9
9
  modification, are permitted provided that the following conditions are met:
@@ -1,198 +1,218 @@
1
- Metadata-Version: 2.1
2
- Name: vispy
3
- Version: 0.9.5
4
- Summary: Interactive visualization in Python
5
- Home-page: http://vispy.org
6
- Download-URL: https://pypi.python.org/pypi/vispy
7
- Author: Vispy contributors
8
- Author-email: vispy@googlegroups.com
9
- License: (new) BSD
10
- Keywords: visualization,OpenGl,ES,medical,imaging,3D,plotting,numpy,bigdata,ipython,jupyter,widgets
11
- Platform: any
12
- Classifier: Development Status :: 3 - Alpha
13
- Classifier: Intended Audience :: Science/Research
14
- Classifier: Intended Audience :: Education
15
- Classifier: Intended Audience :: Developers
16
- Classifier: Topic :: Scientific/Engineering :: Visualization
17
- Classifier: License :: OSI Approved :: BSD License
18
- Classifier: Operating System :: MacOS :: MacOS X
19
- Classifier: Operating System :: Microsoft :: Windows
20
- Classifier: Operating System :: POSIX
21
- Classifier: Programming Language :: Python
22
- Classifier: Programming Language :: Python :: 3.6
23
- Classifier: Programming Language :: Python :: 3.7
24
- Classifier: Programming Language :: Python :: 3.8
25
- Classifier: Framework :: IPython
26
- Provides: vispy
27
- Requires-Python: >=3.6
28
- Description-Content-Type: text/x-rst
29
- License-File: LICENSE.txt
30
- Requires-Dist: numpy
31
- Requires-Dist: freetype-py
32
- Requires-Dist: hsluv
33
- Requires-Dist: kiwisolver
34
- Provides-Extra: doc
35
- Requires-Dist: pydata-sphinx-theme ; extra == 'doc'
36
- Requires-Dist: numpydoc ; extra == 'doc'
37
- Requires-Dist: sphinxcontrib-apidoc ; extra == 'doc'
38
- Requires-Dist: sphinx-gallery ; extra == 'doc'
39
- Provides-Extra: io
40
- Requires-Dist: meshio ; extra == 'io'
41
- Requires-Dist: Pillow ; extra == 'io'
42
- Provides-Extra: ipython-static
43
- Requires-Dist: ipython ; extra == 'ipython-static'
44
- Provides-Extra: pyglet
45
- Requires-Dist: pyglet (>=1.2) ; extra == 'pyglet'
46
- Provides-Extra: pyqt5
47
- Requires-Dist: pyqt5 ; extra == 'pyqt5'
48
- Provides-Extra: pyqt6
49
- Requires-Dist: pyqt6 ; extra == 'pyqt6'
50
- Provides-Extra: pyside
51
- Requires-Dist: PySide ; extra == 'pyside'
52
- Provides-Extra: pyside2
53
- Requires-Dist: PySide2 ; extra == 'pyside2'
54
- Provides-Extra: pyside6
55
- Requires-Dist: PySide6 ; extra == 'pyside6'
56
- Provides-Extra: sdl2
57
- Requires-Dist: PySDL2 ; extra == 'sdl2'
58
- Provides-Extra: tk
59
- Requires-Dist: pyopengltk ; extra == 'tk'
60
- Provides-Extra: wx
61
- Requires-Dist: wxPython ; extra == 'wx'
62
-
63
- VisPy: interactive scientific visualization in Python
64
- -----------------------------------------------------
65
-
66
- Main website: http://vispy.org
67
-
68
- |Build Status| |Coverage Status| |Zenodo Link| |Contributor Covenant|
69
-
70
- ----
71
-
72
- VisPy is a **high-performance interactive 2D/3D data visualization
73
- library**. VisPy leverages the computational power of modern **Graphics
74
- Processing Units (GPUs)** through the **OpenGL** library to display very
75
- large datasets. Applications of VisPy include:
76
-
77
- - High-quality interactive scientific plots with millions of points.
78
- - Direct visualization of real-time data.
79
- - Fast interactive visualization of 3D models (meshes, volume
80
- rendering).
81
- - OpenGL visualization demos.
82
- - Scientific GUIs with fast, scalable visualization widgets (`Qt <http://www.qt.io>`__ or
83
- `IPython notebook <http://ipython.org/notebook.html>`__ with WebGL).
84
-
85
- Releases
86
- --------
87
-
88
- See [CHANGELOG.md](./CHANGELOG.md).
89
-
90
- Announcements
91
- -------------
92
-
93
- See the `VisPy Website <https://vispy.org/news.html>`_.
94
-
95
- Using VisPy
96
- -----------
97
-
98
- VisPy is a young library under heavy development at this time. It
99
- targets two categories of users:
100
-
101
- 1. **Users knowing OpenGL**, or willing to learn OpenGL, who want to
102
- create beautiful and fast interactive 2D/3D visualizations in Python
103
- as easily as possible.
104
- 2. **Scientists without any knowledge of OpenGL**, who are seeking a
105
- high-level, high-performance plotting toolkit.
106
-
107
- If you're in the first category, you can already start using VisPy.
108
- VisPy offers a Pythonic, NumPy-aware, user-friendly interface for OpenGL
109
- ES 2.0 called **gloo**. You can focus on writing your GLSL code instead
110
- of dealing with the complicated OpenGL API - VisPy takes care of that
111
- automatically for you.
112
-
113
- If you're in the second category, we're starting to build experimental
114
- high-level plotting interfaces. Notably, VisPy now ships a very basic
115
- and experimental OpenGL backend for matplotlib.
116
-
117
-
118
- Installation
119
- ------------
120
-
121
- Please follow the detailed
122
- `installation instructions <http://vispy.org/installation.html>`_
123
- on the VisPy website.
124
-
125
- Structure of VisPy
126
- ------------------
127
-
128
- Currently, the main subpackages are:
129
-
130
- - **app**: integrates an event system and offers a unified interface on
131
- top of many window backends (Qt4, wx, glfw, jupyter notebook,
132
- and others). Relatively stable API.
133
- - **gloo**: a Pythonic, object-oriented interface to OpenGL. Relatively
134
- stable API.
135
- - **scene**: this is the system underlying our upcoming high level
136
- visualization interfaces. Under heavy development and still
137
- experimental, it contains several modules.
138
-
139
- - **Visuals** are graphical abstractions representing 2D shapes, 3D
140
- meshes, text, etc.
141
- - **Transforms** implement 2D/3D transformations implemented on both
142
- CPU and GPU.
143
- - **Shaders** implements a shader composition system for plumbing
144
- together snippets of GLSL code.
145
- - The **scene graph** tracks all objects within a transformation
146
- graph.
147
- - **plot**: high-level plotting interfaces.
148
-
149
- The API of all public interfaces are subject to change in the future,
150
- although **app** and **gloo** are *relatively* stable at this point.
151
-
152
- Code of Conduct
153
- ---------------
154
-
155
- The VisPy community requires its members to abide by the
156
- `Code of Conduct <./CODE_OF_CONDUCT.md>`_. In this CoC you will find the
157
- expectations of members, the penalties for violating these expectations, and
158
- how violations can be reported to the members of the community in charge of
159
- enforcing this Code of Conduct.
160
-
161
- Genesis
162
- -------
163
-
164
- VisPy began when four developers with their own visualization libraries
165
- decided to team up:
166
- `Luke Campagnola <http://luke.campagnola.me/>`__ with `PyQtGraph <http://www.pyqtgraph.org/>`__,
167
- `Almar Klein <http://www.almarklein.org/>`__ with `Visvis <https://github.com/almarklein/visvis>`__,
168
- `Cyrille Rossant <http://cyrille.rossant.net>`__ with `Galry <https://github.com/rossant/galry>`__,
169
- `Nicolas Rougier <http://www.loria.fr/~rougier/index.html>`__ with `Glumpy <https://github.com/rougier/Glumpy>`__.
170
-
171
- Now VisPy looks to build on the expertise of these developers and the
172
- broader open-source community to build a high-performance OpenGL library.
173
-
174
- ----
175
-
176
- External links
177
- --------------
178
-
179
- - `User mailing
180
- list <https://groups.google.com/forum/#!forum/vispy>`__
181
- - `Dev mailing
182
- list <https://groups.google.com/forum/#!forum/vispy-dev>`__
183
- - `Chat room <https://gitter.im/vispy/vispy>`__
184
- - `Developer chat room <https://gitter.im/vispy/vispy-dev>`__
185
- - `Wiki <http://github.com/vispy/vispy/wiki>`__
186
- - `Gallery <http://vispy.org/gallery.html>`__
187
- - `Documentation <http://vispy.readthedocs.org>`__
188
-
189
- .. |Build Status| image:: https://github.com/vispy/vispy/workflows/CI/badge.svg
190
- :target: https://github.com/vispy/vispy/actions
191
- .. |Coverage Status| image:: https://img.shields.io/coveralls/vispy/vispy/main.svg
192
- :target: https://coveralls.io/r/vispy/vispy?branch=main
193
- .. |Zenodo Link| image:: https://zenodo.org/badge/5822/vispy/vispy.svg
194
- :target: http://dx.doi.org/10.5281/zenodo.17869
195
- .. |Contributor Covenant| image:: https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg
196
- :target: CODE_OF_CONDUCT.md
197
-
198
-
1
+ Metadata-Version: 2.1
2
+ Name: vispy
3
+ Version: 0.14.0
4
+ Summary: Interactive visualization in Python
5
+ Home-page: http://vispy.org
6
+ Download-URL: https://pypi.python.org/pypi/vispy
7
+ Author: Vispy contributors
8
+ Author-email: vispy@googlegroups.com
9
+ License: BSD-3-Clause
10
+ Keywords: visualization,OpenGl,ES,medical,imaging,3D,plotting,numpy,bigdata,ipython,jupyter,widgets
11
+ Platform: any
12
+ Classifier: Development Status :: 3 - Alpha
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: Intended Audience :: Education
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: Topic :: Scientific/Engineering :: Visualization
17
+ Classifier: License :: OSI Approved :: BSD License
18
+ Classifier: Operating System :: MacOS :: MacOS X
19
+ Classifier: Operating System :: Microsoft :: Windows
20
+ Classifier: Operating System :: POSIX
21
+ Classifier: Programming Language :: Python
22
+ Classifier: Programming Language :: Python :: 3.8
23
+ Classifier: Programming Language :: Python :: 3.9
24
+ Classifier: Programming Language :: Python :: 3.10
25
+ Classifier: Programming Language :: Python :: 3.11
26
+ Classifier: Framework :: IPython
27
+ Provides: vispy
28
+ Requires-Python: >=3.8
29
+ Description-Content-Type: text/x-rst
30
+ License-File: LICENSE.txt
31
+ Requires-Dist: numpy
32
+ Requires-Dist: freetype-py
33
+ Requires-Dist: hsluv
34
+ Requires-Dist: kiwisolver
35
+ Requires-Dist: packaging
36
+ Provides-Extra: doc
37
+ Requires-Dist: pydata-sphinx-theme ; extra == 'doc'
38
+ Requires-Dist: numpydoc ; extra == 'doc'
39
+ Requires-Dist: sphinxcontrib-apidoc ; extra == 'doc'
40
+ Requires-Dist: sphinx-gallery ; extra == 'doc'
41
+ Requires-Dist: myst-parser ; extra == 'doc'
42
+ Requires-Dist: pillow ; extra == 'doc'
43
+ Requires-Dist: pytest ; extra == 'doc'
44
+ Requires-Dist: pyopengl ; extra == 'doc'
45
+ Provides-Extra: io
46
+ Requires-Dist: meshio ; extra == 'io'
47
+ Requires-Dist: Pillow ; extra == 'io'
48
+ Provides-Extra: ipython-static
49
+ Requires-Dist: ipython ; extra == 'ipython-static'
50
+ Provides-Extra: pyglet
51
+ Requires-Dist: pyglet >=1.2 ; extra == 'pyglet'
52
+ Provides-Extra: pyqt5
53
+ Requires-Dist: pyqt5 ; extra == 'pyqt5'
54
+ Provides-Extra: pyqt6
55
+ Requires-Dist: pyqt6 ; extra == 'pyqt6'
56
+ Provides-Extra: pyside
57
+ Requires-Dist: PySide ; extra == 'pyside'
58
+ Provides-Extra: pyside2
59
+ Requires-Dist: PySide2 ; extra == 'pyside2'
60
+ Provides-Extra: pyside6
61
+ Requires-Dist: PySide6 ; extra == 'pyside6'
62
+ Provides-Extra: sdl2
63
+ Requires-Dist: PySDL2 ; extra == 'sdl2'
64
+ Provides-Extra: tk
65
+ Requires-Dist: pyopengltk ; extra == 'tk'
66
+ Provides-Extra: wx
67
+ Requires-Dist: wxPython ; extra == 'wx'
68
+
69
+ VisPy: interactive scientific visualization in Python
70
+ -----------------------------------------------------
71
+
72
+ Main website: http://vispy.org
73
+
74
+ |Build Status| |Coverage Status| |Zenodo Link| |Contributor Covenant|
75
+
76
+ ----
77
+
78
+ VisPy is a **high-performance interactive 2D/3D data visualization
79
+ library**. VisPy leverages the computational power of modern **Graphics
80
+ Processing Units (GPUs)** through the **OpenGL** library to display very
81
+ large datasets. Applications of VisPy include:
82
+
83
+ - High-quality interactive scientific plots with millions of points.
84
+ - Direct visualization of real-time data.
85
+ - Fast interactive visualization of 3D models (meshes, volume
86
+ rendering).
87
+ - OpenGL visualization demos.
88
+ - Scientific GUIs with fast, scalable visualization widgets (`Qt <http://www.qt.io>`__ or
89
+ `IPython notebook <http://ipython.org/notebook.html>`__ with WebGL).
90
+
91
+ Releases
92
+ --------
93
+
94
+ See `CHANGELOG.md <./CHANGELOG.md>`_.
95
+
96
+ Announcements
97
+ -------------
98
+
99
+ See the `VisPy Website <https://vispy.org/news.html>`_.
100
+
101
+ Using VisPy
102
+ -----------
103
+
104
+ VisPy is a young library under heavy development at this time. It
105
+ targets two categories of users:
106
+
107
+ 1. **Users knowing OpenGL**, or willing to learn OpenGL, who want to
108
+ create beautiful and fast interactive 2D/3D visualizations in Python
109
+ as easily as possible.
110
+ 2. **Scientists without any knowledge of OpenGL**, who are seeking a
111
+ high-level, high-performance plotting toolkit.
112
+
113
+ If you're in the first category, you can already start using VisPy.
114
+ VisPy offers a Pythonic, NumPy-aware, user-friendly interface for OpenGL
115
+ ES 2.0 called **gloo**. You can focus on writing your GLSL code instead
116
+ of dealing with the complicated OpenGL API - VisPy takes care of that
117
+ automatically for you.
118
+
119
+ If you're in the second category, we're starting to build experimental
120
+ high-level plotting interfaces. Notably, VisPy now ships a very basic
121
+ and experimental OpenGL backend for matplotlib.
122
+
123
+
124
+ Installation
125
+ ------------
126
+
127
+ Please follow the detailed
128
+ `installation instructions <http://vispy.org/installation.html>`_
129
+ on the VisPy website.
130
+
131
+ Structure of VisPy
132
+ ------------------
133
+
134
+ Currently, the main subpackages are:
135
+
136
+ - **app**: integrates an event system and offers a unified interface on
137
+ top of many window backends (Qt4, wx, glfw, jupyter notebook,
138
+ and others). Relatively stable API.
139
+ - **gloo**: a Pythonic, object-oriented interface to OpenGL. Relatively
140
+ stable API.
141
+ - **scene**: this is the system underlying our upcoming high level
142
+ visualization interfaces. Under heavy development and still
143
+ experimental, it contains several modules.
144
+
145
+ - **Visuals** are graphical abstractions representing 2D shapes, 3D
146
+ meshes, text, etc.
147
+ - **Transforms** implement 2D/3D transformations implemented on both
148
+ CPU and GPU.
149
+ - **Shaders** implements a shader composition system for plumbing
150
+ together snippets of GLSL code.
151
+ - The **scene graph** tracks all objects within a transformation
152
+ graph.
153
+ - **plot**: high-level plotting interfaces.
154
+
155
+ The API of all public interfaces are subject to change in the future,
156
+ although **app** and **gloo** are *relatively* stable at this point.
157
+
158
+ Code of Conduct
159
+ ---------------
160
+
161
+ The VisPy community requires its members to abide by the
162
+ `Code of Conduct <./CODE_OF_CONDUCT.md>`_. In this CoC you will find the
163
+ expectations of members, the penalties for violating these expectations, and
164
+ how violations can be reported to the members of the community in charge of
165
+ enforcing this Code of Conduct.
166
+
167
+ Governance
168
+ ----------
169
+
170
+ The VisPy project maintainers make decisions about the project based on a
171
+ simple consensus model. This is described in more detail on the
172
+ `governance page <https://vispy.org/governance/GOVERNANCE.html>`_ of the vispy
173
+ website as well as the
174
+ `list of maintainers <https://vispy.org/governance/MAINTAINERS.html>`_.
175
+
176
+ In addition to decisions about the VisPy project, there is also a steering
177
+ committee for the overall VisPy organization. More information about this
178
+ committee can also be found on the `steering committee page <https://vispy.org/org/STEERING-COMMITTEE.html>`_
179
+ of the vispy website,
180
+ along with the organization's `charter <https://vispy.org/org/CHARTER.html>`_ and
181
+ other related documents (linked in the charter).
182
+
183
+ Genesis
184
+ -------
185
+
186
+ VisPy began when four developers with their own visualization libraries
187
+ decided to team up:
188
+ `Luke Campagnola <http://luke.campagnola.me/>`__ with `PyQtGraph <http://www.pyqtgraph.org/>`__,
189
+ `Almar Klein <http://www.almarklein.org/>`__ with `Visvis <https://github.com/almarklein/visvis>`__,
190
+ `Cyrille Rossant <http://cyrille.rossant.net>`__ with `Galry <https://github.com/rossant/galry>`__,
191
+ `Nicolas Rougier <http://www.loria.fr/~rougier/index.html>`__ with `Glumpy <https://github.com/rougier/Glumpy>`__.
192
+
193
+ Now VisPy looks to build on the expertise of these developers and the
194
+ broader open-source community to build a high-performance OpenGL library.
195
+
196
+ ----
197
+
198
+ External links
199
+ --------------
200
+
201
+ - `User mailing
202
+ list <https://groups.google.com/forum/#!forum/vispy>`__
203
+ - `Dev mailing
204
+ list <https://groups.google.com/forum/#!forum/vispy-dev>`__
205
+ - `Chat room <https://gitter.im/vispy/vispy>`__
206
+ - `Developer chat room <https://gitter.im/vispy/vispy-dev>`__
207
+ - `Wiki <http://github.com/vispy/vispy/wiki>`__
208
+ - `Gallery <http://vispy.org/gallery.html>`__
209
+ - `Documentation <http://vispy.readthedocs.org>`__
210
+
211
+ .. |Build Status| image:: https://github.com/vispy/vispy/workflows/CI/badge.svg
212
+ :target: https://github.com/vispy/vispy/actions
213
+ .. |Coverage Status| image:: https://img.shields.io/coveralls/vispy/vispy/main.svg
214
+ :target: https://coveralls.io/r/vispy/vispy?branch=main
215
+ .. |Zenodo Link| image:: https://zenodo.org/badge/5822/vispy/vispy.svg
216
+ :target: http://dx.doi.org/10.5281/zenodo.17869
217
+ .. |Contributor Covenant| image:: https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg
218
+ :target: CODE_OF_CONDUCT.md