Arch WB Wall and splines

A forum dedicated to the Draft, Arch and BIM workbenches development.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
drmacro
Veteran
Posts: 8867
Joined: Sun Mar 02, 2014 4:35 pm

Arch WB Wall and splines

Post by drmacro »

Should Arch Wall tool work with splines in 0.21?

It seems to be broken here. Basically just ignores the spline in a sketch.

Code: Select all

OS: Ubuntu 22.04.1 LTS (ubuntu:GNOME/ubuntu)
Word size of FreeCAD: 64-bit
Version: 0.21.0.31709 (Git) AppImage
Build type: Release
Branch: master
Hash: e188802ca6997d2564e7570ab648462e6a059f87
Python 3.10.8, Qt 5.15.6, Coin 4.0.0, Vtk 9.1.0, OCC 7.6.3
Locale: English/United States (en_US)
Installed mods: 
  * Manipulator 1.5.0
  * Defeaturing 1.2.0
  * Curves 0.6.5
  * DynamicData 2.46.0
  * freecad.gears 1.0.0
  * fasteners 0.4.54
  * A2plus 0.4.60i
  * Assembly4 0.12.5
  * sheetmetal 0.2.61
  * CurvedShapes 1.0.4
  * lattice2 1.0.0
Star Trek II: The Wrath of Khan: Spock: "...His pattern indicates two-dimensional thinking."
User avatar
Roy_043
Veteran
Posts: 8450
Joined: Thu Dec 27, 2018 12:28 pm

Re: Arch WB Wall and splines

Post by Roy_043 »

Some edges in sketches are indeed ignored.
viewtopic.php?p=652253&sid=aabcab5bee63 ... cf#p652253

If you use an intermediate PartDesign_SubShapeBinder you will find that the wall algorithm in fact cannot handle splines.
user1234
Veteran
Posts: 3343
Joined: Mon Jul 11, 2016 5:08 pm

Re: Arch WB Wall and splines

Post by user1234 »

From a bricklayers point of view, hell no!

Greetings
user1234
drmacro
Veteran
Posts: 8867
Joined: Sun Mar 02, 2014 4:35 pm

Re: Arch WB Wall and splines

Post by drmacro »

user1234 wrote: Fri Feb 03, 2023 11:59 am From a bricklayers point of view, hell no!

Greetings
user1234
True, for building walls. ;)

But, the wall tool is great for being able to lay a centerline and create a solid. Since it can be like the, the much opined, lacking offset capabilities in sketcher.

And, the wall tool seems to be better at handling most shapes...except a spline.

That said, there are plenty of buildings with curvy walls. :)

As for offsets in general, I have to say I agree with the general opinion that offset is a ubiquitous tool in virtually every other CAD/drawing software system and in FC a comprehensive system wide offset capability seems to be missing. :roll:
Star Trek II: The Wrath of Khan: Spock: "...His pattern indicates two-dimensional thinking."
paullee
Veteran
Posts: 5098
Joined: Wed May 04, 2016 3:58 pm

Re: Arch WB Wall and splines

Post by paullee »

Just wonder what is the mathematics of offsetting spline, someone can advise ? And it can be added to ArchWall :D
user1234
Veteran
Posts: 3343
Joined: Mon Jul 11, 2016 5:08 pm

Re: Arch WB Wall and splines

Post by user1234 »

drmacro wrote: Fri Feb 03, 2023 2:47 pm
user1234 wrote: Fri Feb 03, 2023 11:59 am From a bricklayers point of view, hell no!
True, for building walls. ;)
It was, more or less, a joke, but i would still refuse to build a wall like that, if this have not a technical reason, like a concrete spiral for a turbine.


Greetings
user1234
Hologram
Posts: 201
Joined: Thu Nov 03, 2022 3:05 pm

Re: Arch WB Wall and splines

Post by Hologram »

user1234 wrote: Fri Feb 03, 2023 11:59 am From a bricklayers point of view, hell no!
In the present and in the near future in particular, we can use robots to construct curvy or patterned walls (especially with Pre-fab). ;)
User avatar
onekk
Veteran
Posts: 6146
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: Arch WB Wall and splines

Post by onekk »

paullee wrote: Fri Feb 03, 2023 3:58 pm Just wonder what is the mathematics of offsetting spline, someone can advise ? And it can be added to ArchWall :D
I don0t know the mathematics but you could use:

Code: Select all

spline2 = Part.OffsetCurve(bs0, 10, V3d(0,0,1))

Part.show(spline2.toShape(), "offset_spline")
as in the following code file:
20230205-bspline_scale.py
(2.14 KiB) Downloaded 30 times
Hope it helps.

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
paullee
Veteran
Posts: 5098
Joined: Wed May 04, 2016 3:58 pm

Re: Arch WB Wall and splines

Post by paullee »

onekk wrote: Sun Feb 05, 2023 4:26 pm
I don0t know the mathematics but you could use:

Code: Select all

spline2 = Part.OffsetCurve(bs0, 10, V3d(0,0,1))

Part.show(spline2.toShape(), "offset_spline")
Looks great ! Trying to find the Part API to understand how Part.OffsetCurve(), but it seems there is none ?
User avatar
onekk
Veteran
Posts: 6146
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: Arch WB Wall and splines

Post by onekk »

paullee wrote: Sun Feb 05, 2023 5:39 pm ...
Looks great ! Trying to find the Part API to understand how Part.OffsetCurve(), but it seems there is none ?
Sadly I don't know very much the code, but it seems that is defined here, probably directly an OCCT wrapper for Python.

https://github.com/FreeCAD/FreeCAD/blob ... urvePy.xml

in:

https://github.com/FreeCAD/FreeCAD/blob ... ePyImp.cpp

around line 52 (it is from development it could change)

Code: Select all

/ constructor method
int OffsetCurvePy::PyInit(PyObject* args, PyObject* /*kwd*/)
{
...
    }
EDIT: probably guessed from this header :

Code: Select all

#ifndef _PreComp_
# include <Geom_OffsetCurve.hxx>
#endif
in:

https://github.com/FreeCAD/FreeCAD/blob ... ePyImp.cpp

Is this OCCT method:

https://dev.opencascade.org/doc/occt-7. ... bf6348f6c6

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
Post Reply