2024-09-10: release - Minimum length for a transect has been reduced from 50km to 2~2.5km - "Nearest in day" timeline mode has been removed - "Nearest" timeline mode modified to be more intuitive - State of the timeline is saved when SEAScope shuts down and restored on next execution - Instantaneous granules (same start and end datetimes) are now supported by the search engine - Clicking on a year, a month or a day button in the timeline sets the time at 12:00:00 (before applying nearest mode, if active) - Support for external file browsers added (OS-specific) - Support for using system dialog boxes to display messages (OS-specific) - Clicking on the globe to select a granule rendered as streamlines, barbs or arrows is not possible anymore, only annotations and granules rendered as raster can be selected this way - Panel for annotation properties of type image has been modified to show more consistent information - While moving a vertex when editing an existing polyline or polygon, only the vertex being moved is shown to avoid confusion - Invalid geometries are detected when editing a polygon (color of contour switches to red to notify the user) - Improved parallel data loading - Validation of collection configuration files has been improved to be more consistent with SEAScope expectations - Various improvements in data import by drag’n'drop on the macOS SEAScope application icon - Workaround for z-index problems created by mechanisms that change z-index values to avoid conflicts within a collection but ended up creating new conflicts between variables from different collections - Fix for crashes caused by NetCDF errors while reading input data - Fix multiple bugs related to how operating systems handle time - Fix bug wherein it was impossible to set the initial datetime to its default value in the Settings tab - Fix bug wherein the year and month buttons in the Granule info panel were doing nothing - Fix bug wherein the marker selection option was shown for incompatible rendering methods - Fix bug wherein the timeline was not updated after an exclusive selection (Shift + click) in the "Display data" menu - Fix bug wherein the timeline was not updated after changing the temporal coverage of an annotation - Fix bug wherein the timeline was not updated after adding or removing an annotation - Fix bug wherein loading an image file in an annotation property was impossible - Fix bug wherein floating menus that follow the mouse cursor were incorrectly positioned when the framebuffer and the window have different dimensions - Fix bug wherein deleting a shape while it was being edited lead to a crash - Fix bug wherein concurrent queries for loading the same field for different variables resulted in only one of variable being considered ready for render - Fix bug wherein the argument of the setAltitude Python binding was not interpreted with the correct unit - Fix bug on macOS wherein it was necessary to wait one minute before the connection between SEAScope and Python can be established again after a crash 2023-09-12: release - Move variable owning newly created or modified annotation to the top of the display stack and make them visible - Reorganize the timestep control to avoid confusion with the timespan control - Define a default timestep that moves by increments of one third of the timespan - Shift time by one third timespan (instead of one quarter previously) when scrolling over the timeline - Save camera position when SEAScope shuts down and restore it next time the application starts - Improve performance in operations related to the manipulation of granule metadata - Add keyboard shortcut to delete selected annotation with the Delete or the Backspace keys - Add exclusive selection with Shift + Click in the "Display data" menu (same as in the catalogue) - Detect identifier conflicts when creating a new collection from Python bindings - Initialize temporal coverage for new annotations with the current timespan instead of -12h/+12h - Increase amount of significant digits displayed in number boxes from 7 to 10 - Change keyboard shortcuts for the previous (left arrow instead of Shift + left arrow) and next (right arrow instead of Shift + right arrow) buttons in the timeline - Make it possible to load data with dimensions larger than the maximum texture size supported by the GPU (only for variables using the RASTER or RAWRGB rendering methods) - Fix bug wherein an unused copy of the data was kept in memory - Fix bug wherein it was not possible to extract data using a 1D granule as an extraction mask if this granule was created through the Python API - Fix bug wherein SEAScope would throw an error when reading a lot of information from the index or the annotations databases - Fix bug wherein SEAScope would crash or fail to import annotations from Syntool if their temporal coverage is not finite - Fix bug wherein SEAScope would crash if a collection configuration contained a misspelled field name or if the input file did not contain the expected field - Fix bug wherein only a single user could access SEAScope on macOS machines hosting multiple accounts - Fix bug wherein SEAScope would crash on Windows with dates before 1970-01-01 - Fix multiple bugs wherein zooming-in would result in "jumps" to unexpected locations on the globe - Fix bug wherein the zoom speed modifier (by using the left Ctrl key) was ignored - Fix minor memory leaks related to SQLite prepared statements - Fix bug wherein SEAScope could crash due to a race condition while checking if a granule is already indexed 2023-02-24: release - Add support for JPG, BMP, GIF, TGA, PPM, PGM for the background image, as well as for the images attached to annotations - Add support for older libc on Linux (notably Centos 7) - Fix bug wherein the timeline and side menu could overlap after a window resize on high DPI displays - Fix bug wherein the nearestInDayMode setting was not read during the initialization of the application - Fix bug wherein SEAScope crashed when the list of granules to display on the globe changed too fast - Fix bug wherein SEAScope crashed if a granule containing a single value was displayed as a trajectory with a marker - Fix bug wherein SEAScope crashed if trajectories were displayed first without a marker and then with one - Fix bug wherein the user interface could disappear after resizing the window - Fix bug wherein SEAScope crashed on Windows when the window is reduced or iconified 2023-02-03: release - Detection and notification of protocol incompatibilities between SEAScope and the Python bindings - Performance improvements in the data update and loading mechanisms - Optimization of the display queue filtering algorithm - Add support for granules with dimension sizes up to 2^32 - 1 (instead of 2^16 - 1) - Add support for deleting vertices using the backspace key - Add support for validating shape edition with the numpad Enter key - Add support for validating input fields with the numpad Enter key - Improve tooltips layout and style for better legibility - Add menu for editing SEAScope configuration file from within the application - Improve layout of the side menu by adding tabs dedicated to the catalogue, selection information, extraction results, application settings and the about panel - GCPs now contain a time value - Add support for displaying a marker representing the current datetime on trajectories - Add support for adding custom trajectory markers to SEAScope - Increase threads pool size on Windows - Add support for re-indexing data collection by collection - Configuration files for collections are now located directly under the data directory, at the same level as the collection directory that contains the granules. The new configuration files are named after the collections they apply to, with the .ini extension - Remove 2GB size limit for the data index by using a different technology, also consuming less memory at runtime (slower access time as a trade-off) - Fix bug wherein SEAScope rendered streamlines as long lines reaching for the poles when the max value was set to 0 - Fix bug wherein it was possible to remove a vertex from a polygon even if it has only 3 left - Fix bug wherein draggable panels were stuck in the "dragging" state when the mouse cursor left and re-entered the SEAScope window - Fix bug wherein the drawing anchor for adding a vertex was not displayed on the closing segment of edited polygons - Fix bug wherein it was possible to add successive points at the same location while drawing polylines/polygons - Fix bug wherein it was possible to request the creation of a variable and the modification of its rendering parameters using Python bindings and it resulted in a crash because the second request was executed before the completion of the first one (i.e. trying to modify rendering parameters of a variable which does not exist yet) - Fix scrolling precision issues on macOS - Fix bug wherein mouse events position was incorrect after moving the SEAScope window to a screen with a different scaling factor - Fix bug wherein SEAScope crashed trying to render granules containing a single value as trajectories - Fix bug wherein drawing anchors would be displayed below other data and would therefore be impossible to interact with - Fix bug wherein streamline settings would not be updated if the previous particles count was 0 - Fix bug wherein the drawing anchors were not updated correctly after a vertex removal - Fix multiple issues related to the path selection widget - Fix bug wherein it was impossible to go back in time by scrolling on the timeline - Fix bug wherein multiple drawing anchors were displayed on the first vertex of edited polygons - Fix bug wherein the mouse position would not be updated when the SEAScope window does not have focus on macOS - Fix bug wherein SEAScope would ignore some granules when looking for the closest (temporally) data if their central datetime and the reference datetime had the same value - Deprecation of the "lowres", "hires" and "black" keywords for the [misc] worldMap setting in SEAScope configuration file - Deprecation of the [paths]plugins setting in SEAScope configuration file - Deprecation of the [paths]operators setting in SEAScope configuration file - Deprecation of the [misc]defaultColormap setting in SEAScope configuration file - Deprecation of the [misc]baseLayer setting in SEAScope configuration file - Deprecation of the [general]NEWSAligned setting in configuration files for collections 2022-09-05: release - Improved rendering of arrows and barbs - On Linux and macOS, allow socket connections to be reused without having to wait for the kernel to clean them up - SEAScope tries to complete/fix configuration files that are missing some fields - Shift + left (resp. right) key now simulates a click on the "Prev" (resp. "Next") button of the timeline - Removal of launcher scripts, everything is now handled by the SEAScope executable - On macOS, protected directories such as "Documents" and "Downloads" can now be accessed from SEAScope after the user grants permission for the application to do so - On macOS, new entries added in SEAScope menu bar to access the configuration file, the data directory, etc... - On Linux, commands for selecting a discrete GPU (e.g. primusrun, optirun) are not invoked automatically anymore - Simplification and Improvements on the macOS droplet allowing users to import their data. The droplet is now embedded in the SEAScope application - Add support for NetCDF files using a regular grid in latitude/longitude - Minor layout improvement for the dialog displayed for annotations (buttons are now displayed on the side instead of at the bottom of the dialog box) - Add an option to export annotations in WKT (in addition to the JSON format) - Add an option to include a list of intersected granules in the output file when exporting an annotation to JSON - Add controls to configure the thickness of lines for polyline annotations and data represented as trajectories - Make it possible to customize the size and density of barbs and arrows - Bugfix for data that could not be picked after they switched from invisible to visible - Value of numeric fields can be modified by scrolling with the mouse or using the up and down keys - Hide the Reset button in the Display settings for data that do not possess a permanent configuration (e.g. Python uploads) - Draw a line between the first and the last vertices of a polygon while the shape is being edited (it was displayed as an open polyline before) - Fix copy/paste shortcuts on editable fields - Add an option to specify how much the mouse can move between the button pressed and the button released events for SEAScope to interpret it as a click while drawing shapes - Add an option to tell SEAScope whether it should leave drawing mode immediately after drawing a shape or wait until the user presses the Esc key - Add support for drag'n'drop on path selector controls - Bugfixes for various issues on the path selector control (better Windows paths support, parent directory button issues fixed, etc...) - Delay for double-clicks on path items has been increased to make selection easier - Improve performance on streamlines rendering - Bugfixes related to streamlines rendering (wrapping, early stop) - Add support for variables defined with float values instead of requiring unsigned bytes with offset and scale factor - Switch from C++11 to C++14 2022-05-06: release - Removal of dependency on easylogging - Switch from GLEW to GLAD to handle OpenGL extensions - Current year is used when the maxYear value is left empty in the configuration file - New "initialDatetime" setting added in the timeline configuration to set the date and/or the time selected when SEAScope starts - OpenGL ES2 shaders are not used anymore and have been removed - The "NEWSAligned" setting in configuration files for collection has been deprecated (it has no effect anymore) - Bugfix and improvement of the streamlines rendering algorithm to display particles at the correct location, even for swath data or granules centered on a pole. - Polylines rendering now uses the same algorithm as trajectories rendering, polyline width is not limited to 1px anymore - Easier selection of polylines and trajectories (wider picking mask) - Added support for extracting data using a granule footprint as mask - Added support for browsing the timeline using the mouse wheel - Measurements (perimeter, area) displayed when drawing a shape and when a granule is selected - Various UI improvements - Increased density of ground control points for extracted data to avoid precision issues when reconstructing the geolocation - Bugfix for data ordering issue when multiple variables have the same zIndex - Added support for loading data folders using the droplet on macOS 11.x and above - Major refactoring of the events system - Added support for drawing point shapes - Improved drawing controls - Added support for importing and exporting annotations in a Syntool- compatible format - Added support for properties (text, boolean, numeric or images) attached to annotations. An editor is embedded in the annotation dialog. - Added support for multiple collections rendered with the same shape type - Added controls to modify rendering settings for streamlines - Added button to save rendering settings, making changes permanent - Added support for logarithmic scale when rendering barbs, arrows and streamlines using a colormap (was already working for raster) - Minor bugfixes - Added software description, version, etc... and other ways to get support in the About dialog 2019-06-28: release - Fixed polyline and polygon edition - Fixed some issues with streamlines for granules with GCP coordinates and data matrix indices varying in opposite directions - Added bindings for the following command: * setTimestep * getTimestep * listTimesteps * setTimespan * getTimespan * listTimespans * getCurrentDatetime * setNearestMode * getNearestMode * setDataAlwaysVisibleMode * getDataAlwaysVisibleMode - Default max year set to 2019 in macOS version - Windows launcher modified to include processor default configuration 2019-04-05: release candidate 1 - Improved performance of the rendering algorithm for streamlines by limiting computations to the particles which are located in the viewport. - Major refactoring of the rendering engine (scene graph). - Added support for Windows. - Added support for macOS. - Added Ctrl + right click as an alternative to the middle click for the creation of a new vertex in a user polyline/polygon. - Added some flexibility regarding the path of the resources (background images notably). - Address and port for the seascope-processor command can now be customized in the configuration file. - Improved layout of the side menu. - Added support for the NEWSAligned parameter in the configuration file. - Added experimental streamlines rendering for collections with NEWSAligned=false. - Added a data change detection mechanism to warn the user when rebuilding the index could be necessary. - Fixed a segfault happening during the reduce/expand phase of the rendering menu. - Fixed interface issues caused by pixel scaling (Retina, some 4K screens). - Fixed issue with side menu dimensions after resizing the window. - Fixed a crash when users click on the polyline edition button - Fixed bug wherein streamlines were flipped vertically due to the order of the GCPs. - Fixed a bug wherein streamlines were not rendered properly on granules that cross the International Date Line. - Fixed a bug wherein the timeline was not initialized properly if the current datetime was not within the years range defined in the configuration file. - Various build script improvements and code sanitizing. 2017-09-08: version 0.1.2 - Polygon and polyline edition - New camera options: reset Z-axis rotation (align with poles) and togglable mode that prevents Z-axis rotation - Add support for per-field scale and offset - Add support for float physical data in trajectories (time) - Fields list and time range added to extraction results - Fix bug wherein connections from Python clients caused socket buffers starvation - Fix bug wherein extra vertices were created when drawing trajectories - Fix bug wherein the zindex parameter of a rendering configuration sent by a remote client was ignored - Fix bug wherein the timeline was not updated after a granule upload - Fix bug wherein the orientation of arrows and barbs was incorrect 2017-07-21: version 0.1.0.1 - Menu style improvements - The "nearest day with data" and "closest to 12:00" modes no longer apply if more than one collection is selected - New colormaps added: chla_jet, ibsco-bath and pesket - Fix bug wherein the polygons orientation was not detected properly - Fix bug wherein the application crashed due to a missing background image - Fix bug wherein the use of the "ARROWS" rendering method caused the application to crash - Fix bug wherein the map was not updated after a selection change in the rendering control if at least one other variable of the same collection was still selected - Fix bug wherein textures were not mapped correctly on polygons 2017-06-22: version 0.1 - First public release