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

#9396 Review annotations UI and system #9397

Merged
merged 25 commits into from
Sep 13, 2023

Conversation

allyoucanmap
Copy link
Contributor

@allyoucanmap allyoucanmap commented Sep 6, 2023

Description

Main changes

The Annotations plugin has been refactored to include the support in 3D Maps, below the major updates introduced:

  • The feature collections included inside a single annotations layer per map has been converted to single MapStore layers. This change allow to manage annotations layers among the other layer inside the TOC. This change allowed to remove the additional panel with list of annotations because the annotations will be listed with other layers.
  • The UX of annotation edit panel has been changed with the aim to reduce as much as possible confirm modals or disabled state that could block the editing workflow. An history local reducer has been introduced in the annotation feature editor component to undo modification to annotations (see video below)
  • Aligned styles of editing feature between 2D/3D view. Unfortunately some modify interaction behave differently in 2D and 3D like dragging vs clicking to modify coordinates nodes
  • Centralized as much as possible the annotations code inside a plugin module. There is still some code to remove but it will be manage in a different issue
  • Measurement features editing has been improved inside the annotation editor panel. It is possible to recognize measurement annotations because of a different glyph. Every change on the measure annotation will update the measurement values (see video below)
  • the geosedic and fields properties has been marked as deprecated because they need to be reviewed separately

Add workflow

add-workflow.mp4

Add measure to annotations workflow

add-measure-workflow.mp4

Please check if the PR fulfills these requirements

What kind of change does this PR introduce? (check one with "x", remove the others)

  • Feature and Redactor

Issue

What is the current behavior?

#9396

What is the new behavior?

Editing of annotations is available also in 3D maps

This PR refactors the annotations to add support in 3D maps

Breaking change

Does this PR introduce a breaking change? (check one with "x", remove the other)

  • Yes

Other useful information

Further enhancements will be provided with #9410

@allyoucanmap allyoucanmap self-assigned this Sep 6, 2023
@allyoucanmap allyoucanmap added 3D All issues related to the 3D rendering in CesiumJs annotations related to the annotation tool New Feature used for new functionalities C027-COMUNE_FI-2023-SUPPORT labels Sep 6, 2023
@allyoucanmap allyoucanmap linked an issue Sep 6, 2023 that may be closed by this pull request
6 tasks
@allyoucanmap allyoucanmap added this to the 2024.01.00 milestone Sep 6, 2023
Copy link
Member

@offtherailz offtherailz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First of all, I like the final result a lot. 👍 👍 👍 🚀

Please organize with @tdipisa to check my notes and make some of them or open issues for things that can be postponed.

  • Inline fixes for documentation etc...
  • Fix confict with Annotations.jsx changes
  • Identify on hover for annotations do not look to work anymore See this map: http://localhost:8081/#/viewer/36414

current branch: http://localhost:8081/#/viewer/36414

identify.webm

dev: https://dev-mapstore.geosolutionsgroup.com/mapstore/#/viewer/36414

identify_dev.webm

Anyway I noticed, that after activating the identify on over, when switching to another map, the identify stops working at all, so we may need to create a separate issue for investigating issues with this tool.

Map exported
identify_map.zip

  • grab icon in TOC is not fully visible

image

  • I was able to reproduce an invalid annotation here but I can not see the error details or how to fix it. (removing last coordinate fixed it).
annotation_creation_error.webm

image

  • The default style for circle is a little unnatural ( 0px outline, gray fill) . It should be 1 px outline, to be consistent with the other styles.

  • Height reference relative to the pointer hieight do not seems to work for Geometry transformation, if we do not set "bring to the front". I don't know, maybe it is a cesium issue.

geometry_transformation.webm

build/docma-config.json Outdated Show resolved Hide resolved
web/client/plugins/Annotations/index.js Outdated Show resolved Hide resolved
web/client/translations/data.it-IT.json Outdated Show resolved Hide resolved
web/client/translations/data.it-IT.json Outdated Show resolved Hide resolved
@tdipisa
Copy link
Member

tdipisa commented Sep 12, 2023

@offtherailz I've discussed points above with @allyoucanmap and he will check all of them today to see how to proceed with some of them (eg. the identify one). For sure we will create a separate issue for normalizing the grab icon. Thank you for your review.

@allyoucanmap
Copy link
Contributor Author

allyoucanmap commented Sep 12, 2023

  • grab icon in TOC is not fully visible

@tdipisa @offtherailz opened a separated issue for the icon #9430

@allyoucanmap
Copy link
Contributor Author

  • Height reference relative to the pointer hieight do not seems to work for Geometry transformation, if we do not set "bring to the front". I don't know, maybe it is a cesium issue.

@offtherailz @tdipisa based on the video it seems that the marker is inside the building so it's not visible when bring to front is false. Bring to front property makes the marker visible even if behind another feature

@allyoucanmap
Copy link
Contributor Author

allyoucanmap commented Sep 12, 2023

@offtherailz @tdipisa based on the video it seems that the marker is inside the building so it's not visible when bring to front is false. Bring to front property makes the marker visible even if behind another feature

After checking again it seems a problem related to the use of eyeOffset applied as workaround to manage the z-index of billboard, I'll open a new issue to investigate this

Issue here #9431

Copy link
Member

@offtherailz offtherailz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested, all looks good (and cool)

@allyoucanmap allyoucanmap merged commit 37f6c60 into geosolutions-it:master Sep 13, 2023
4 checks passed
@allyoucanmap
Copy link
Contributor Author

@ElenaGallo, please test this PR on dev, thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment