| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
|
@dipayansardar73-decode This is awesome, thank you. |
Sorry, something went wrong.
@theoryshaw Yes, absolutely! That's a great point. I noticed the original logic only checked the instance class types but skipped over the materials entirely. |
Sorry, something went wrong.
|
@theoryshaw Just pushed the update! It now checks style_index before merging. Does the logic in that commit look good to you, or is there another material attribute you'd prefer I check instead? |
Sorry, something went wrong.
|
I just tested and i couldn't get this to work. I created some test files we can commonly use to test: I think both materials and styles should play into when edges merge. I'm thinking the following logic would be a good approach:
|
Sorry, something went wrong.
@theoryshaw Ah, that makes perfect sense. Thank you for the detailed diagram and the test file. You are absolutely right—relying on the visual style_index alone is a drafting hazard. If two adjacent walls are made of Concrete and Plaster respectively, their physical material boundary line must remain visible on the drawing, even if an architect accidentally painted them both with the same grey visual style. I have just pushed an extensive update to this PR to implement exactly the logic you asked for. |
Sorry, something went wrong.
|
Implementation Details: I upgraded the pipeline inside draw.py to directly fetch and enforce real-world physical material boundaries during the SVG path merge.
Could you re-run your coplanar join.ifc test file against this latest commit? It should map to your Red "X" Diagram completely now. |
Sorry, something went wrong.
Sorry, something went wrong.
@theoryshaw The issue isn't in the coplanar joining logic itself, but in how the drawing engine handles the material-to-style mapping. Currently, different materials (like your Concrete and Brick examples) are colliding and falling back to a single generic style because the CSS class names aren't being generated uniquely or accurately for each material. |
Sorry, something went wrong.
|
@theoryshaw
|
Sorry, something went wrong.
|
@theoryshaw I’ve been working on this for hours across both the Python engine and the Blender addon layers to get the mapping perfect. I'd love to hear your thoughts on standardizing these material classes so i can finally fix this 'Same Style' collision for everyone. |
Sorry, something went wrong.
|
Hi @dipayansardar73-decode Feel free to comment and review. I would defer to an core maintainer on the ultimate pull. |
Sorry, something went wrong.
|
@theoryshaw |
Sorry, something went wrong.
|
Thank Claude. :) |
Sorry, something went wrong.
Haha! Claude is blushing 😂 |
Sorry, something went wrong.
|
@dipayansardar73-decode okay to close this PR? If you have some other intent, please open again. |
Sorry, something went wrong.
@theoryshaw Yes yes, that's perfectly fine 👍 |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Resolves #3742
This PR addresses the issue where IfcOpenShell SVG outputs failed to join cells forming coplanar faces if they were angled relative to the projection.
The previous logic inside draw.py relied on identical ray_distance (depth). This fails on any surface that is non-orthogonal to the view frustum.
Implementation Details:
This ensures cells properly merge regardless of arbitrary projection angles.