First create a standard door panel say 717x597x16
its a good idea to start with a known mix dimensional item and always return the DC to this size before any edits. If you edit a DC that has any of its main attributes changed you can get scaling issues. The mixed dimensions make it easier to match the lenX,lenY…
I assume width (597) is along the x-axis, thickness (16) along y, with z up
At this point one should change the axis (right click context menu) to the back, so change in thickness is out and hinge rotation is correct
you would be aware that you can only produce a cutting component or group on one face at a time, so we need one at the front and one rear. Moreover we need a rim between both.
now enter the door component and use offset on the front face, say 70mm. Then select the inner rectangle and make it a group and name it front cut, enter this group then push the surface to the back of the door (16mm) this forms the rim.
(you will notice that the frount cut group is a natural face cutter, with the green axis up, blue out)
now delete the front and back face
select (triple click) the edge faces and right click context menu, reverse faces, so face is correct orientation as good modelling practice (I miss this step on the one I posted above)
escape that group and move to the rear
whilst still in the door component trace the rectangle, select it (double click) and make it a group “rear cut”. Now enter the rear cut group and delete the surface
So you have the raw component with the size and position attributes exposed
lets assume the user inputs the border width and chooses the door thickness, then one can scale in height and width
one uses the value icon to set the attribute properties, set your units,
then its a matter of working out the relationships to match the greyed values. Always match them, if your formula or value changes the original value you are creating scaling differences that could be problematic, If it happens, undo and try another.
you will notice that the cuts heights seem to be on the wrong axis, but recall that they are cutting shapes and they are always on their XY plane. So for the front cut, leny is the height and its value
=door!LenZ-2*door!border.
added the scale tool control to restrict the user options
door with hole.skp (31.6 KB)