paireks / dotbimpy

Python library for dotbim.
MIT License
45 stars 6 forks source link

Python GUI editor? #8

Open asmith26 opened 5 months ago

asmith26 commented 5 months ago

Hi there,

Is it possible to edit a bim file using this library through a GUI (e.g. you have file.view(), maybe there is something like file.edit())?

Just thought I'd ask if this is currently possible (or even theoretically possible - I'm happy to have a go at adding this feature if it is possible).

Thanks for any help, and for this amazing lib! :)

paireks commented 5 months ago

Hello :)

There is no such option currently. Is it possible: it depends on what you want to edit inside a file and how :)

asmith26 commented 5 months ago

Thanks for the response and info @paireks.

I'm thinking it would be great if we could do something like edit a 3D model in e.g. the Plotly view (e.g. move objects, stretch/shrink/drag corners etc.), and the export this to a new .bim file. Not sure if this is possible/how this might work?

Thanks again!

paireks commented 5 months ago

I don't know if it would be possible specifically in Plotly view. However, such functionality anywhere would be great. The tricky part is it's mostly the UI part which is a bit of a challange to work natively with .bim file. Cause even if someone tries to do it e.g. with Three.js, he can move objects on a Three.js scene, but doing it natively with a file means all the actions (such as moving) should not only move element on scene, but also change e.g. "vector" of a moved object in a file. It can be a bit tricky. You can check https://plainview.fi/ from Slava, he achieved something like this, but with landXML :) With .bim there was only prototype of properties change from Ilya: https://www.linkedin.com/posts/iliya-muzychuk-122b0a58_rhino3d-sketchup-digitaltwins-activity-7064728795601137666-wLHu?utm_source=share&utm_medium=member_desktop

asmith26 commented 5 months ago

Thanks for all the information.

Another idea: I wonder instead of being able to edit through a traditional CAD GUI, we could instead create a tool to generate a required dotbim file/3D model through "prompts" (i.e. like ChatGPT). To edit, you edit your prompt and generate a new dotbim/3D model, and then use the existing Plotly viewer to analyse it. I'd have to think a bit more about this (e.g. what the training/fine-tuning data might look like 🤔), but I welcome any thoughts you have on this. Thanks again

paireks commented 5 months ago

It should be possible, as I've seen multiple times mesh generations through prompts, like this for instance:

They provide geometries only though, without a property set probably.