Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draw on Cesium map feature #2204

Merged
merged 25 commits into from
Nov 2, 2023
Merged

Draw on Cesium map feature #2204

merged 25 commits into from
Nov 2, 2023

Commits on Aug 23, 2023

  1. Create structure for tool for drawing on map [WIP]

    - Create the initial DrawTool view and layout methods
    
    Issue #2180
    robyngit committed Aug 23, 2023
    Configuration menu
    Copy the full SHA
    76f40f0 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2023

  1. Update Cesium on add/remove layers collection

    - Add listeners for when layers are added or removed from the MapAsset
      collection and update the layers rendered on the Cesium map and the layers
      displayed in the layer list.
    
    Issue #2180, #1923, #1775
    robyngit committed Aug 24, 2023
    Configuration menu
    Copy the full SHA
    ddb9543 View commit details
    Browse the repository at this point in the history
  2. Expand on DrawTool methods, add to ToolbarView

    - Still a WIP
    - Make draw tool work directly with Map model, independent of widget
    - Rename DrawTool to DrawToolView
    
    Issue #2180
    robyngit committed Aug 24, 2023
    Configuration menu
    Copy the full SHA
    ef5afac View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2023

  1. Improve Cesium Map models, views, & collections

    - Add MapInteraction, GeoPoint and GeoBoundingBox models
    - Make the CesiumWidgetView methods smaller and more modular
    - Move Map model attributes to the MapInteraction model (selectedFeatures, currentPosition, currentScale, and currentViewExtent)
    - In MapAsset models, listen for changes to cesiumOptions and update Cesium model
    - In map connectors, don't use new models as defaults to avoid instantiating new models unnecessarily
    - Pass GeoPoint and GeoScale models directly to the ScaleBarView
    
    Issues #2189, #2180, #2187
    robyngit committed Aug 31, 2023
    Configuration menu
    Copy the full SHA
    24c8050 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2023

  1. Add unit tests for new map models

    Issue #2189
    robyngit committed Sep 6, 2023
    Configuration menu
    Copy the full SHA
    0668c24 View commit details
    Browse the repository at this point in the history

Commits on Sep 20, 2023

  1. Fix issues with selected features in Cesium Map

    Issues #2189, 2180
    robyngit committed Sep 20, 2023
    Configuration menu
    Copy the full SHA
    e2d5bde View commit details
    Browse the repository at this point in the history
  2. Ensure layer is visible after load error is fixed

    Issues #2189, 2180
    robyngit committed Sep 20, 2023
    Configuration menu
    Copy the full SHA
    90fdc5c View commit details
    Browse the repository at this point in the history
  3. Enable basic drawing on Cesium map

    - Still needs methods to clear the polygon and stop drawing; proper UI; testing
    
    Issue #2180
    robyngit committed Sep 20, 2023
    Configuration menu
    Copy the full SHA
    ef72df5 View commit details
    Browse the repository at this point in the history

Commits on Sep 21, 2023

  1. Add connector & collection for drawing on map

    - Add the GeoPoints collection, with methods for serializing to GeoJson
    - Add a model that listens to a GeoPoints collection and updates a CesiumVectorData model with new geometry
    - Use these in the DrawToolView
    - Enable clearing a polygon
    - Show on first click, line on second click, polygon on subsequent clicks
    
    Issue #2180
    robyngit committed Sep 21, 2023
    Configuration menu
    Copy the full SHA
    0fc87fb View commit details
    Browse the repository at this point in the history

Commits on Sep 28, 2023

  1. Add buttons & actions to DrawToolView; use CZML

    - Switch from GeoJson to CZML (improves ability to draw around poles)
    - Set up the DrawTool for actions like deleting & moving points, running a callback with user-created points as argument
    
    Issue #2180
    robyngit committed Sep 28, 2023
    Configuration menu
    Copy the full SHA
    92e29eb View commit details
    Browse the repository at this point in the history

Commits on Oct 6, 2023

  1. Speed up vector layer rendering, fix drawing

    - Fix issues with drawing polygons, including drawing polygons over poles
    - Allow drawn polygons to have properties set like other layers (color, opacity, etc)
    - When drawing, draw both points and polygons
    - Add CustomDataSource support
    - Greatly reduce the number of re-renders Cesium must do (improve map performance)
    - Add connectors between GeoPoints collection and polygons & points Entities
    
    Issues #2180 and #2189
    robyngit committed Oct 6, 2023
    Configuration menu
    Copy the full SHA
    c89ff99 View commit details
    Browse the repository at this point in the history

Commits on Oct 13, 2023

  1. Rerun visualizers until async processes complete

    - In CesiumVectorData, in the new runVisualizers method, re-run in cases where visualizers are waiting for an async process to complete.
    - Fixes issue with Cesium Geohashes not showing up
    - Add some missing JSDocs to CesiumVectorData
    
    Issue #2180
    robyngit committed Oct 13, 2023
    Configuration menu
    Copy the full SHA
    6ff2d85 View commit details
    Browse the repository at this point in the history
  2. Minor changes to draw tool UI

    - Style draw tool buttons
    - Hide edit & delete point buttons for now (not implemented)
    - Enable configuring hiding a layer in the layer list
    - Fix issue with removing entities in CesiumVectorData
    
    Issue #2180
    robyngit committed Oct 13, 2023
    Configuration menu
    Copy the full SHA
    2926dec View commit details
    Browse the repository at this point in the history
  3. Fix opacity of draw tool polygon

    Issue #2180
    robyngit committed Oct 13, 2023
    Configuration menu
    Copy the full SHA
    516cd60 View commit details
    Browse the repository at this point in the history

Commits on Oct 16, 2023

  1. Update polygon on draw rather than add new one

    Add an ID to the polygon created when drawing on map so that it is updated when new points are added rather than creating a new one
    
    Issue #2180
    robyngit committed Oct 16, 2023
    Configuration menu
    Copy the full SHA
    7f4103b View commit details
    Browse the repository at this point in the history

Commits on Oct 17, 2023

  1. Fix geo tests & minor bugs found while testing

    - Set up new geo tests
    
    Issues #2180 and #2189
    robyngit committed Oct 17, 2023
    Configuration menu
    Copy the full SHA
    b245cca View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2023

  1. Fix Cesium datasource issues & minor draw tool bug

    - Properly switch the maps "click action" back to original setting after draw tool turned off
    - Fixed delayed rendering of datasources after update (esp. Geohashes)
    - Fix zooming to features on click (issue with getting bounding sphere of a feature)
    
    Issues #2180 and #2189
    robyngit committed Oct 18, 2023
    Configuration menu
    Copy the full SHA
    f7d6ddf View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e24b8c6 View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2023

  1. Add moveStartAndCameraChanged event to map

    - Wait to trigger catalog search until camera is moving has moved enough to be considered 'changed'
    - Remove listeners in Map-Search-Filters connector
    - Update some documentation
    - Clean up some of the CesiumVectorData code
    
    Issues #2180 and #2189
    robyngit committed Nov 1, 2023
    Configuration menu
    Copy the full SHA
    b8e7ba9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    67be6be View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    dc471e4 View commit details
    Browse the repository at this point in the history
  4. Prevent weird TOC placement in portals

    - Add min height to markdown sections with portals
    - Also rename methods from postRender to what they do, because backbone calls these methods automatically even though this isn't documented!
    
    fixes #2195
    robyngit committed Nov 1, 2023
    Configuration menu
    Copy the full SHA
    703883e View commit details
    Browse the repository at this point in the history
  5. Adjust height of feature info panel in Cesium map

    again after content has been loaded.
    
    Fixes #2192
    robyngit committed Nov 1, 2023
    Configuration menu
    Copy the full SHA
    713f528 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    187351c View commit details
    Browse the repository at this point in the history
  7. Fix check for visualizers in CesiumVectorData

    In case there is no cesiumModel created yet.
    
    Issues #2180 and #2189
    robyngit committed Nov 1, 2023
    Configuration menu
    Copy the full SHA
    f810d7c View commit details
    Browse the repository at this point in the history