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

Creating text tags inside viewer #258

Open
paireks opened this issue May 7, 2022 · 6 comments
Open

Creating text tags inside viewer #258

paireks opened this issue May 7, 2022 · 6 comments

Comments

@paireks
Copy link
Contributor

paireks commented May 7, 2022

Hey Viktor,

I'm passing to you the request from Yoann Obry who came up with this idea. Idea is to display a text with values of chosen property inside the viewer. Such feature should greately improve readability of data inside complex models, as you won't have to click at every element to get some specific info, but you could see it for multiple elements at once. Yoann shared these images:

This is how it is right now, we could have a radio button to pick the properties we want to see inside model:
image

This is how it could be displayed in viewer once the radiobutton would be pressed (this example was created using this: https://github.com/paireks/dotbimpy#customize):
image

Not sure how big challange it would be to implement it. Also obtaining the text location could be interesting, as e.g. finding some sort of a center of a mass for a mesh might be a challange itself, or it might look weird for some meshes, e.g. if one mesh is constructed with two separate meshes with gap in between. But maybe I'm overthinking it, would love to hear your opinion on that.

I found these two examples that maybe would be helpful to implement it:
https://stemkoski.github.io/Three.js/Labeled-Geometry.html
https://stemkoski.github.io/Three.js/Sprite-Text-Labels.html

Best regards ;)
Wojciech

@paireks
Copy link
Contributor Author

paireks commented May 8, 2022

Regarding location of text: maybe center of bounding box would be easy to obtain and good enough for most of the cases.

@kovacsv
Copy link
Owner

kovacsv commented May 9, 2022

I like the idea, but the complexity here is that there is no common property set. So for example if you check the "Guid" property, the model should be scanned if any of the meshes has a property with the name "Guid".

From the UX perspective it's misleading that you select from the list of mesh properties, but it will effect the visualization of the entire model.

So I think it's need more investigation on how to achieve this goal.

@os4bim
Copy link

os4bim commented May 10, 2022

Hello,

Thanks for your discussion. I just want to add that as far as I know there is no IFC viewer who have this ability. If one day we can have this it will be a step forward in the reading of the metadata from the 3D BIM models.

Kind regards,
Yoann

@paireks
Copy link
Contributor Author

paireks commented May 10, 2022

Maybe this would do better work from the UX perspective:
2022-05-10_18h07_07

But generally when I'm thinking about some edge cases (overlapping elements, meshes with gaps, tiny elements next to each other) I see that it can be misleading in many cases, so I'd say making it clear for the user that this tag goes to this element could be more challenging.

@paireks
Copy link
Contributor Author

paireks commented May 15, 2022

For an example this is how it looks like when middle of the bounding box is taken for text tag
2022-05-15_19h37_58

@os4bim
Copy link

os4bim commented May 16, 2022

This is very useful to make some parameter checking. In this sample you can hide the walls to better see the elements inside.
For example you need to order the windows and you want to check if the schedule is conform. You can display the width and the height of the windows in the 3D viewer to validate them.

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

No branches or pull requests

3 participants