Print at Feb 5, 2026, 4:06:34 PM

Posted by Keet at Mar 7, 2024, 11:08:12 PM
Re: problem to 3d view
I'm not sure I understand the problem exactly but when you slide the door open the bounding box as shown in the 2Dview expands. That's how it works. A screenshot with a closed and opened door in a wall would help (a screenshot with both the 2D and 3Dview.)

I assume that by 'drags "the door/window property" along the rail' you mean that the whole door expands and cuts a bigger hole in the wall? If that is the case you probably have parts of the door frame that slide along the rail, i.e. the frame has sweethome3d_opening_.. connected to it. Only the parts that should move should have that prefix.
If you did that correctly and the hole still expands you will have to resort to adding the door to a Furniture Library to control the wall cutout.

The second part of your question:
Almost every complex object is defined by parts. If you look in the OBJ file you will see lots of lines starting with "g ". Each part of the object is a set of "g " lines.
Export a box and you will see 6 "g " lines in the OBJ file. Those are the six sides of the box. If you add a cylinder and export the box+cylinder you will see the same 6 groups for the box and 3 more for the cylinder.
That is how I create furniture: I create parts and export them. I edit the OBJ and MTL files to merge material names. I import all the parts I created and add them together to create the end product. Then export them all together and import as a single complex object. In short: Yes, you can define parts for a complex object. Every part is an object just not so complex as the end result.

For example your sliding door:
Construct the frame and export it as 'frame.obj'.
Edit the obj file: Rename all usemtl lines to "usemtl Frame", in the mtl file rename the first block "newmtl Frame" and remove all other blocks. Save and import the frame.

Construct the rail and export as 'rail.obj' (just the top of a stretched box, all other sides made invisible).
Edit the rail obj file and add the prefix "sweethome3d_rail_1_" in the "g " line. Rename the line with usemtl to "usemtl Rail".
In the rail.mtl file rename the newmtl line to "newmtl Rail". There should be no other blocks.
Import the rail object.

Construct the door and export as 'door.obj'.
Edit the obj file: Rename all usemtl lines to "usemtl Door". Add the prefix "sweethome3d_opening_on_rail_1_ in all "g " lines.
In the mtl file rename the first block "newmtl Door" and remove all other blocks. Save and import the door.

Add the 3 imported objects together and export as "slidingdoor.obj", import as "Door or window'. Done, and created in parts.

For more details you will want to create more parts, for example an outerframe and innerframe, a handle to add to a door, etc.
----------------------------------------
Dodecagon.nl
1300+ 3D models, manuals, and projects