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

implement street-geo component in Editor #526

Closed
kfarr opened this issue May 21, 2024 · 10 comments
Closed

implement street-geo component in Editor #526

kfarr opened this issue May 21, 2024 · 10 comments
Assignees

Comments

@kfarr
Copy link
Collaborator

kfarr commented May 21, 2024

To add street-geo support to the Editor, first

  • Add Entity panel - there should be 2 new "cards" in the add entity panel -- one for Mapbox 2D Map and one for Google 3D Map
  • As a user I can click on one of these and the scene will be updated to either add a new street-geo component if none exists, or modify it to match my expectation to enable or disable a chosen map
  • There should only be 1 instance of the street-geo component in any scene

How to display these in the scene / disable editing:

  • Properties panel should be disabled for entities with "autocreated" class.
  • Those objects should not be selectable in most cases -- do we use "data-ignore-raycaster"

The street-geo component should be at the root. Use "Reference Layers" entity but instead rename this display name to "Geospatial Layers."

Other questions:

How does a user remove a map?

Select the map layer and delete it? if so, do we need to update the parent to reflect that the child was deleted? we can listen on the street-geo component if the child is removed, and then update the maps array to reflect the maptype that was just removed.

How does a user change the location of the maps?

This is a custom UI modal to allow for the selection of a location.
https://www.figma.com/design/W9jid3A0jgssnIKBFEvG38/3DStreet-2022?node-id=6547-169536&t=bbv3JutJgAqMAqjd-4

This modal has already been started here:
https://github.com/3DStreet/3dstreet-editor/pull/422/files#diff-105d9950bd2cd9c78fdb5f036fdfe8972f9e5e8ec1e21c8f7f89af92302ae93c

Note that we want to remove billing (pay wall) from this flow for the first version, we can add that later.

@kfarr kfarr moved this from Backlog (Not Ready) to To Do - High Prio in 3DStreet Dev Tracking May 21, 2024
@github-project-automation github-project-automation bot moved this to Backlog (Not Ready) in 3DStreet Dev Tracking May 21, 2024
@Algorush
Copy link
Collaborator

Algorush commented May 27, 2024

I discovered that the aframe-loader-3dtitle-component is not the latest version. And it looks like the version used is not from the 3DStreet repository: https://github.com/3DStreet/aframe-loader-3dtiles-component
by looking at the list of attributes in the code of the component in the minified version. Also 3dtiles are not updated when switching to Editor. No copyrightEl attribute and other things

@kfarr
Copy link
Collaborator Author

kfarr commented May 27, 2024

Yes you're right, it will all need to be updated and the working changes that we used for the glitch demo (like this one) brought to this repo

@Algorush
Copy link
Collaborator

So addtitional tasks here:

@Algorush
Copy link
Collaborator

How to display these in the scene / disable editing:

  • Properties panel should be disabled for entities with "autocreated" class.

That is, add a new feature in the Editor to hide the properties panel for entities with "autocreated" class.

@kfarr
Copy link
Collaborator Author

kfarr commented May 28, 2024

Properties panel should be disabled for entities with "autocreated" class.

That is, add a new feature in the Editor to hide the properties panel for entities with "autocreated" class.

No we do not want to hide it. We definitely want to show it but to make it disabled (user cannot edit it). Eventually user will have the ability to determine if an item should switch to be a manual object instead of autocreated

@Algorush
Copy link
Collaborator

Properties panel should be disabled for entities with "autocreated" class.

That is, add a new feature in the Editor to hide the properties panel for entities with "autocreated" class.

No we do not want to hide it. We definitely want to show it but to make it disabled (user cannot edit it). Eventually user will have the ability to determine if an item should switch to be a manual object instead of autocreated

Does aframe-inspector have an option to disable the ability to edit parameters?
If not or if it has, what option is better to implement:

  1. Hide the button to open the right panel
  2. Leave the button and the ability to open the panel. Leave the position, rotation, scale fields for editing. And make the rest uneditable
  3. Or maybe another option?

@kfarr
Copy link
Collaborator Author

kfarr commented May 29, 2024

@Algorush let's ignore this issue for now, made a separate ticket for it: #539

@Algorush
Copy link
Collaborator

Algorush commented May 29, 2024

I'll store lat, long, height in a global STREET.coord ?
That is, receive them from GeoModal window and save them in STREET.coord. When user click on the Layer cards mapbox/google3d, get coordinates from there and open map with these coordinates. And also when click on the button "Update with 3D Map" existing maps and STREET.coord value will be updated with new coords. This will also be useful later for saving coordinates in JSON.

@kfarr
Copy link
Collaborator Author

kfarr commented May 29, 2024

@Algorush I like the idea, but can we just put this in metadata instead of a new thing? Like how we fetch title?

Also what we're talking about could be called global state. Right now it's managed in multiple places so I'm not excited about adding another

  • React app toolbar.js component state (I think, since that's where a lot of the save / load logic is)
  • metadata component on scene
  • STREET.coord (proposed)

@kfarr kfarr moved this from To Do - High Prio to In progress in 3DStreet Dev Tracking Jun 4, 2024
@kfarr
Copy link
Collaborator Author

kfarr commented Jun 8, 2024

#540

@kfarr kfarr closed this as completed Jun 8, 2024
@github-project-automation github-project-automation bot moved this from In progress to Done in 3DStreet Dev Tracking Jun 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

2 participants