Doors and windows avoid unwanted deformation- my way mini tip

This topic has been viewed 3506 times and has 4 replies
Thread status: Active
How can I do this? [img]http://www.sweethome3d.com/images/flags/en_small.gif[/img]
Post Reply New Topic
User avatar
dorin
Posts: 824
Joined: Thu Apr 24, 2014 9:14 am
Country: Vatra Dornei, Suceava, Romania

Doors and windows avoid unwanted deformation- my way mini tip

Post by dorin »

The unwanted deformation of doors and widows inserted in walls is very old (at least for me).
Motivations:
All the doors and windows I bought were made of wood, glass, metal and plastic including the handles.
All were fixed sizes and none were made of rubber or gum.
This was also to be reflected in the house plan.
Unfortunately, it wasn't quite like that.
Look at the first left door in the picture:
Image

Also see how they are represented in the plan.
Let's analyze it.
If you like how look the first door skip the rest and read something else.
Some unnecessarily explanations:
SH3D work with libraries of objects.
Every object in the library have a order number and a description of their specific properties writhed in the FurnitureCatalog.properties file.
First door, from the DefaultFurnitureCatalog.properties file have this description:

Code: Select all

id#19=eTeks#door 
name#19=Door 
tags#19=Default, Adjustable 
category#19=Doors and windows 
icon#19=/com/eteks/sweethome3d/io/resources/door.png 
model#19=/com/eteks/sweethome3d/io/resources/door.obj 
width#19=91.5 
depth#19=14.5 
height#19=208.5 
dropOnTopElevation#19=-1 
movable#19=false 
doorOrWindow#19=true 
doorOrWindowCutOutShape#19=M0,0 v1 h1 v-1 z 
doorOrWindowWallThickness#19=7.5 
doorOrWindowWallDistance#19=1 
doorOrWindowSashXAxis#19=5 
doorOrWindowSashYAxis#19=8.5 
doorOrWindowSashWidth#19=81.5 
doorOrWindowSashStartAngle#19=0 
doorOrWindowSashEndAngle#19=-90 
modelSize#19=14086 
creator#19=eTeks 
license#19=GNU GPL / CC-BY

The second, which is pretty similar have this description:

Code: Select all

id#20=eTeks#openDoor 
name#20=Open door 
tags#20=Default, Adjustable 
category#20=Doors and windows 
icon#20=/com/eteks/sweethome3d/io/resources/openDoor.png 
model#20=/com/eteks/sweethome3d/io/resources/openDoor.obj 
width#20=91.5 
depth#20=68 
height#20=208.5 
dropOnTopElevation#20=-1 
movable#20=false 
doorOrWindow#20=true 
doorOrWindowCutOutShape#20=M0,0 v1 h1 v-1 z 
doorOrWindowWallThickness#20=7.5 
doorOrWindowWallDistance#20=1 
doorOrWindowWidthDepthDeformable#20=false 
doorOrWindowSashXAxis#20=5 
doorOrWindowSashYAxis#20=8.5 
doorOrWindowSashWidth#20=81.5 
doorOrWindowSashStartAngle#20=0 
doorOrWindowSashEndAngle#20=-90 
modelSize#20=14055 
creator#20=eTeks 
license#20=GNU GPL / CC-BY
What's the major difference?
This:

Code: Select all

[b]doorOrWindowWidthDepthDeformable#20=false[/b] 

If is not specified, the default is 'true' and is used.
At the third door, because it is not quite usual, I've need to set also other properties accordingly with my needs.
How I usually solve this?
Well, in the most ugly way: Manually!
I add this property to every door or window in the Default Catalog and on every imported furniture library.
Usually took between one to one and half hour.

The demo file is here .
A computer program does what you tell it to do, not what you want it to do. Murphy's Law
When all else fails, read the instructions. Murphy's Law
If you don't like "AS IS", DIY. Dorin's law
User avatar
Puybaret
Posts: 9440
Joined: Mon Nov 07, 2005 12:00 pm
Country: Paris, France
Contact:

Re: Doors and windows avoid unwanted deformation- my way mini tip

Post by Puybaret »

There’s another easy way: disable magnetism while you place or move the door.
Emmanuel Puybaret, Sweet Home 3D creator
User avatar
Keet
Posts: 1807
Joined: Fri Apr 08, 2022 7:13 am
Country: Netherlands

Re: Doors and windows avoid unwanted deformation- my way mini tip

Post by Keet »

I didn't know about that property string!

But... it might prevent the door/window from snapping to the wall thickness but if the difference gets too big it leaves a door/window that doesn't fill the gap or expands outside the wall. Ok, it does retain the original dimensions with a well-formed handle and of course it works for all doors and windows.

In some cases that might work perfectly well but not by default. I prefer to create doors and windows for a specific wall thickness. I mainly use three different wall sizes so it's easy to simply create the door or window with an inner frame and add an outer frame for each thickness. Perfectly fitting furniture without distorted handles.

Besides the sashes I set at least these two:

Code: Select all

doorOrWindowWallThickness#1=20
doorOrWindowWallDistance#1=1
This is for a wall 20 thick and the wall distance of 1 is because most of my outer frames have an edged border that should remain outside the wall.
It's a little more work but you have perfect fitting doors and windows with the exact distance for borders or a sill that should stick outside the wall.

If you have bought/downloaded a door or window you can still use the same trick by exporting with the outer frame made invisible and a second export with only the outer frame visible. After import you have the separate door and outer frame where it's easy to either stretch the outer frame or create a custom outer frame for the correct thickness. Combine and export to get a single object again.
Dodecagon.nl
1300+ 3D models, manuals, and projects
User avatar
dorin
Posts: 824
Joined: Thu Apr 24, 2014 9:14 am
Country: Vatra Dornei, Suceava, Romania

Re: Doors and windows avoid unwanted deformation- my way mini tip

Post by dorin »

@Emmanuel
You've right! But, without magnetism I have to manually set every door to be in the right position.
That mean to have a proper angle of view in 3D and move the door in 2D until the case-frame remain exactly at 1 cm outside the wall (the case-frame thicknesses).
It's not impossible but it need a lot of work every time.
So, I prefer to work once to set the correct furniture properties (which also is not so simple) and than use it with confidence everywhere.
With the last version of FLE this task it is a little more easy.

@Keet
Unfortunately I'm stuck in the real life.
In my apartment I have 7 doors in 7 walls with 10 different thicknesses [:(] .
but if the difference gets too big it leaves a door/window that doesn't fill the gap

Indeed. Exactly that has happened to me (in real life).
Well, when I will have some extra money I will buy some extra door frames to complete the gaps.(Not in this life [:((] )

I've also played with different properties for my doors.
Here is one of my Door glass:

Code: Select all

name#2=Door glass 80 opening 
tags#2=door, Adjustable 
category#2=Doors and windows 
icon#2=/Door glass 80opening.png 
model#2=/Door glass 80opening/Door Glass 80 opening.obj
multiPartModel#2=true 
width#2=95.95488 
depth#2=16.9776 
height#2=209.60001 
movable#2=true 
doorOrWindow#2=true 
doorOrWindowCutOutShape#2=M0.04,0.02 v0.98 h0.92 v-0.98 z 
doorOrWindowWallThickness#2=16 
#doorOrWindowWallDistance#2=4 
doorOrWindowWidthDepthDeformable#2=false 
doorOrWindowSashXAxis#2=6 
doorOrWindowSashYAxis#2=2 
doorOrWindowSashWidth#2=83 
doorOrWindowSashStartAngle#2=0 
doorOrWindowSashEndAngle#2=90 
modelSize#2=607897 
horizontallyRotatable#2=false 
creator#2=Dorin Vatavu
As you could see the #doorOrWindowWallDistance#2=4 is commented.
In my case was useless while the outer frame stay exactly where I want.
A computer program does what you tell it to do, not what you want it to do. Murphy's Law
When all else fails, read the instructions. Murphy's Law
If you don't like "AS IS", DIY. Dorin's law
User avatar
Keet
Posts: 1807
Joined: Fri Apr 08, 2022 7:13 am
Country: Netherlands

Re: Doors and windows avoid unwanted deformation- my way mini tip

Post by Keet »

Fortunately we have all these different options to get what we need anyway we want [:)]

By-the-way, even with 7 different wall sizes it's simple to create 7 objects with the same door but with a different outer frame. If the outer frame is a simple construcion of three boxes you create one frame and export with the door in it. Simply enlarge the depth of the frame and export again. Rinse and repeat for each wall size.

My outer frames are usually those simple three boxes and beveled borders on the inside and outside. I increase the depth of the boxes, attach the beveled borders and export. Using a separate outer and inner frame makes these adjustments for wall thickness very easy.
Dodecagon.nl
1300+ 3D models, manuals, and projects
Post Reply New Topic

Who is online

Users browsing this forum: No registered users and 1 guest