Print at Dec 18, 2025, 11:36:52 PM View all posts in this thread on one page
Posted by Bubblobill at Sep 1, 2019, 8:22:47 AM
How is the 3d wall object (baserail specifically) constructed?
I am exploring possible enhancements to the wall object, specifically the addition of a profile path to the baseboard with the intention of duplicating its functionality as a cornice.

Straight walls are no problem as we are just bulding boxes and the functionality of a cornice isn't really required as I can just add them as furniture and stretch to fit.

Curved walls are where the fun is.

As baseboards start out life as a box I can see two ways that they would be constructed; 1) Calculate the curve and extrude vertically, or 2) Take the vertical profile and extrude along the curve.

1 would not adapt easily to a variable profile but 2 would be doable.

I'm trying to make sense of the wall3D class and from having a look it seems that the three visible points of a baseboard are propagated along the curve. This implies that it might be possible to increase the number of visible points to produce a profile that is not square.

Am I reading it right?

Jay

Posted by Puybaret at Sep 1, 2019, 3:29:09 PM
Re: How is the 3d wall object (baserail specifically) constructed?
If you look at Wall3D class, you'll see that the method createWallGeometries is used to create the main parts of a wall and also to create baseboards as if they were some small walls. Maybe you could inspire yourself of the same system for a cornice, except that you will have to manage a profile in createVerticalPartGeometry method instead of a simple vertical plan which makes it more difficult.
Round walls are actually a serial of small vertical parts and you should create a getWallCornicePoints that will return the global shape of the cornice along the wall like getWallBaseboardPoints does.
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D creator

Posted by Bubblobill at Sep 2, 2019, 8:10:20 AM
Re: How is the 3d wall object (baserail specifically) constructed?
Thanks. Shall see how I go.