Glvis

Latest version: v1.1.0

Safety actively analyzes 662819 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

4.3.1

===========================

- Fix the Mac binary build in GitHub CI.

- Miscellaneous CI improvements including: generating image diffs for tests,
set `fail-fast: false` so that tests always run, rename artifacts to help
avoid confusion, code-cleanup/light refactoring.

4.3

===================================

- Added visualization of quadrature data (QuadratureFunction in MFEM). Both
loading from file, with the new command line argument '-q', or from a socket
stream, with the keyword 'quadrature', are supported. Three visualization
options are provided: piece-wise constants on a refined mesh (LOR), L2 field
with DOFs collocated (interpolation), or projection to discontinuous elements
(L2 projection). Use 'Q' to switch between them. High-order quadrature data is
supported only for tensor finite elements with the first two options. With the
first option, only the mesh lines of the original mesh are visualized. This
feature is also supported for the element-wise cutting plane in 3D (cplane=2).

- The GLVis auto refinement algorithm now takes into account the order of the
data (mesh and grid function). The new refinement is chosen to be sufficient
for resolving the curvature of the data, but only if we can do that with less
than 2M vertices and 16 refinements. Otherwise, we print a warning and the
user may still need to press 'o' to fully resolve the data. For more details,
see the section Auto-refinement in README.md.

- Added option to specify the floating point number formatting in GLVis axes and
colorbar. Use 'Alt+a' for the axes and 'Alt+c' for the colorbar. Formatting
can also be specified in socket stream or glvis script with axis_numberformat
or colorbar_numberformat, followed by a C-like formatting string, for example
"colorbar_numberformat '%+06.1f'".

- Added a building option for setting the default font size.

- Added support for scalar integral finite elements, where calculation of the
surface normals was not implemented and was crashing GLVis. The normals are
approximately calculated from the point-wise projected value-based elements.

- Added two new modes for visualization of vector fields in 2D, placing the
arrows above the plotted surface and using a single color.

- Added support to visualize solutions on 1D elements embedded in 2D and 3D.

- Significantly improved memory usage.

- Various other bugfixes and improvements.

4.2

====================================

- Added 3D scene export to glTF format (https://www.khronos.org/gltf) which is
bound to the key 'G'. This can be used to import GLVis scenes for rendering in
Blender, as well as for augmented reality, see https://modelviewer.dev/editor.

- Added the option to cut a portion of the interiors of 3D faces to expose more
of the mesh. Useful as an alternative to transparency. See keys Ctrl+F3/F4.

- Added a third mode to keys 'b'/'B' in 2D to display the mesh boundary colored
by boundary element attribute.

- Support for visualization of pyramid-shaped elements.

- An edge numbering option is now available in 2D.

- In 2D, save and restore solution's value range when using keys 'e' and 'b'.

- Mac and Windows binaries are now automatically built with GitHub actions CI.

- The command-line option -mac was renamed to -save.

- Various other bugfixes and improvements.

4.1

=====================================

- Use threads in server mode for window creation and session management instead
of fork(). This resolves issues with the GLVis server mode on macOS. It also
allows for closing all open GLVis server windows by Ctrl-C in the terminal.

- Preliminary support for interactive inline GLVis plots in Python Jupyter
Notebooks with https://github.com/glvis/pyglvis and C++ Jupyter Notebooks with
https://github.com/glvis/xeus-glvis.

- Added support for native builds on Windows with CMake.

- Added support for native Mac application bundle with "make app". The resulting
app can be double-clicked, added to the Dock, etc.

- Added screenshots support to the JavaScript/web version (key 'S').

- Enabled support for WebGL 2, when available. This enables, among other
features, support for controllable multisampling via framebuffers.

- Refactored rendering components, including palette and shader handling.

- Replaced pthreads and POSIX-specific code with C++11 standard thread library.

- Added a new regression test suite based on generated screenshots of stream
files. See the README in the tests/ directory for more details. Note that this
requires a git submodule for the baseline images, which are located in the
separate https://github.com/glvis/data repository.

- Various bugfixes and improvements related to the JavaScript version, vertex
numbering, script handling, screenshots, HiDPI support, and more.

4.0

=====================================

Starting with this version, the GLVis open source license is changed to BSD-3.

Unlike previous GLVis releases, this version requires a C++11 compiler.

- Major overhaul and modernization of the GLVis rendering and window management,
replacing X Windows with SDL for platform-native window and event handling.
This enables OpenGL 3+ support and HiDPI support on Mac OS X.

- Two rendering backends are included: one for legacy OpenGL contexts without
support for shaders, and one with full support for modern OpenGL 3 features.
The modern OpenGL context is preferred by default; a new command-line argument
"-oldgl" can be used to request the legacy backend.

- Preliminary support for building GLVis to JavaScript/WebAssembly using
Emscripten, see https://github.com/GLVis/glvis-js.

- Documented project workflow and provided contribution guidelines in the new
top-level file, CONTRIBUTING.md.

- Added several perceptually uniform colormaps "turbo", "viridis", "plasma",
"fusion", "iceburn", "viola", "pride" and "ocean" from
* Google AI: https://ai.googleblog.com/2019/08/turbo-improved-rainbow-colormap-for.html
* Matplotlib: https://bids.github.io/colormap/
* CMasher: https://github.com/1313e/CMasher

- Added support for visualization of the element ordering curve with 'Ctrl+o'.

- Keystroke changes: cutting plane in 2D is now toggled with 'i' instead of 'w',
and 2D element subdivision is controlled with 'o/O' instead of 'i/I'. These
are the same as the corresponding keystrokes in 3D.

- Improved the 3D cutting plane algorithm for curved elements. The key 'I' can
be used to switch to the previous (faster) algorithm which is suitable for
meshes with planar faces.

- Updated to support the display and slicing of meshes with wedge elements.

- Improved the opening of parallel meshes/solutions.

- Transparency and printing in textured coloring modes is now supported, and
no-texture coloring has been removed as a result.

- FreeType is now a required dependency and text on screen is rendered using a
texture atlas.

- Replaced the "deep sea" palette with "ocean". Added new palette: gray.

- Added the ability to discretize a palette, i.e. to use just a prescribed
number of its colors, see the new "number of colors" input of the F6 key.

- Added new script and socket command: "palette_repeat" which can be used to
repeat and reverse/flip the palette - controls the same parameter as the first
prompt after pressing the F6 key in the GLVis window.

- Added a key for setting the bounding box from the terminal (Shift+F7).

3.4

=====================================

- When enabled, secure sockets (based on GnuTLS) now use authentication based on
X.509 certificates. A new set of X.509 client/server keys can be generated
with the updated version of the script 'glvis-keygen.sh'.

- Added capability to show element and vertex numbering in 2D (key 'n').

- Added support for reading mesh and solution from the same file.

- Added a CMake build system.

- Added 10 new color palettes which can now be switched both forwards and
backwards with the 'p' and 'P' keys respectively.

- Allow multi-screen window managers to redraw on current screen.

- Printing to PDF is now done with 'Ctrl+p' (replacing 'P').

- Default multisampling linewidth for Macs is now 0.01 (seems to work better).
On other platforms the default remains 1.4.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.