[SOLVED] Wall position is independent from sketch. How do I make it dependent?

A forum dedicated to the Draft, Arch and BIM workbenches development.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
regis
Posts: 725
Joined: Sun Jul 12, 2015 8:17 am
Contact:

Re: Wall position is independent from sketch. How do I make it dependent?

Post by regis »

Moult wrote: Wed Jan 23, 2019 9:32 pm I propose:

1. Add a new property called "Move base", similar to "Moves with host". It is set to TRUE by default, and it means that by default the object stays at 0,0,0 and transformations are done to the base.
2. Set "Moves with host" to TRUE by default. People can set to FALSE if needed, but TRUE is the more common scenario.
3. Make sure that if I move a host's base (I.e. the host has "Move base = TRUE"), all hosted bases are also moved with the host.
Pretty good idea here. Once the object that depends on it's base is created i.e Wall,Structure etc, there could be a default property "move base" that is always set to yes, so that if the person wants to move the base independently they can trigger the "move base" to "no". But keep these independent as the ability to just control the base is powerful and allows for one base to command and control many extruded objects.
for example the same line is used to create different wall layers
phpBB [video]

or in other circumstances we can store many wall types into single lines pretty effectively (not sure if this works with draftwires (but it strange that it works well with sketcher.) sketcher can save the wall properties it seems.
phpBB [video]

so there are advantages to keeping it flexible.
paullee
Veteran
Posts: 5092
Joined: Wed May 04, 2016 3:58 pm

Re: Wall position is independent from sketch. How do I make it dependent?

Post by paullee »

regis wrote: Sun Jan 27, 2019 2:18 am
Pretty good idea here. Once the object that depends on it's base is created i.e Wall,Structure etc, there could be a default property "move base" that is always set to yes, so that if the person wants to move the base independently they can trigger the "move base" to "no". But keep these independent as the ability to just control the base is powerful and allows for one base to command and control many extruded objects.
for example the same line is used to create different wall layers
Glad to have many more peoples here :) and Moult has great knowledge in coding and is helping BIM/IFC !

For Move Base attribute not sure like you says if many object are created based on same 'base', then which object should it moved along with?
User avatar
regis
Posts: 725
Joined: Sun Jul 12, 2015 8:17 am
Contact:

Re: Wall position is independent from sketch. How do I make it dependent?

Post by regis »

paullee wrote: Sun Jan 27, 2019 3:59 am Moult has great knowledge in coding and is helping BIM/IFC !
Haha great talent, i dont know that. Good stuffs.
paullee wrote: Sun Jan 27, 2019 3:59 am For Move Base attribute not sure like you says if many object are created based on same 'base', then which object should it moved along with?
I would guess the initial object that is being converted. But on the other hand that changes alors of aspects of the current workflow that I wonder if it is necessary. So lets keep the debate about it.
User avatar
yorik
Founder
Posts: 13630
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Wall position is independent from sketch. How do I make it dependent?

Post by yorik »

paullee wrote: Sun Jan 27, 2019 3:59 am For Move Base attribute not sure like you says if many object are created based on same 'base', then which object should it moved along with?
Indeed if you have several objects based on the same base, and one of them is set to move the base, then all of them will move. Unless there is a mechanism that would go through all of them and "compensate" the move with an inverse move. But that seems dangerous to me and potentially disastrous :) Maybe just a simple "Warning! Other objects will move! Are you sure?" message would suffice?
User avatar
regis
Posts: 725
Joined: Sun Jul 12, 2015 8:17 am
Contact:

Re: Wall position is independent from sketch. How do I make it dependent?

Post by regis »

yorik wrote: Mon Jan 28, 2019 1:43 am "Warning! Other objects will move! Are you sure?" message would suffice?
Yes I think this is more sensible approach.
paullee
Veteran
Posts: 5092
Joined: Wed May 04, 2016 3:58 pm

Re: Wall position is independent from sketch. How do I make it dependent?

Post by paullee »

yorik wrote: Mon Jan 28, 2019 1:43 am
Indeed if you have several objects based on the same base, and one of them is set to move the base, then all of them will move. Unless there is a mechanism that would go through all of them and "compensate" the move with an inverse move. But that seems dangerous to me and potentially disastrous :) Maybe just a simple "Warning! Other objects will move! Are you sure?" message would suffice?
I conceived there is another mode in Arch Objects - the placement in the Underlying Base is ignored.

One benefit other than confusion in placement, is that one will not mistakenly, unknowingly move a Base and affect a number of Arch Objects.

Now, the base move (change in placement), the ArchObjects will not be affected - some concept similar to block in AutoCad / Insertion Point ...


In this case, one can still have 'Move Base' and choose if the Base should 'stick' to an Arch Object or another - for handy to revise the shape - but now if the Base follow Arch Object 1 say, other Arch Object 2, 3, 4... based on same Base are not affected.
Bojan_Bekic
Posts: 26
Joined: Tue Feb 05, 2019 9:01 am

Re: Wall position is independent from sketch. How do I make it dependent?

Post by Bojan_Bekic »

Hello ppl, my first post in the forum :).

What about this:

Base sketch always moves with the wall, window, etc. Base PLACEMENT is relevant, arch object placement always = 0 (ignored).

THEN

When copying, you have 3 types of copy (something like in Blender) -

BASIC (FULL) COPY makes independent arch object with it's own new base sketch
LINKED COPY makes arch object with shared base sketch. In this case object PLACEMENT comes in to play as a sort of "displacement from the original"
CLONE

I think this takes care of the shared base concerns in a more user friendly (usual) way? That way a user doesn't have to fiddle with one more parameter (move base with obj) that could be to technical for some and simplifies settings.
User avatar
yorik
Founder
Posts: 13630
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Wall position is independent from sketch. How do I make it dependent?

Post by yorik »

The problem is, things can easily get much more complicated.. There is no guarantee where else the base line/sketch of a wall is used. It is not uncommon, for example, to have a rectangle, that defines the outer walls of a house, then use that same rectangle for other things like the slab of the house, or the roof.

People can do that in a number of ways, not only by copying. That's one of the big strengths of freecad.

Your copy options are a good idea user-wise, but i still think we need a stronger and more "absolute" way to decide..
User avatar
Moult
Posts: 321
Joined: Sat Jan 05, 2019 11:46 am
Contact:

Re: Wall position is independent from sketch. How do I make it dependent?

Post by Moult »

PR for the "move base" option on all arch elements. If True (you can set true to default in preferences) then if you choose to move that wall / structure / arch component, it will move the base object instead.

https://github.com/FreeCAD/FreeCAD/pull/1955
I also blog about 3D rendering, architecture, software and other on thinkMoult.com. RSS / Atom feed available for your convenience.
paullee
Veteran
Posts: 5092
Joined: Wed May 04, 2016 3:58 pm

Re: Wall position is independent from sketch. How do I make it dependent?

Post by paullee »

Moult wrote: Fri Feb 08, 2019 9:17 am PR for the "move base" option on all arch elements. If True (you can set true to default in preferences) then if you choose to move that wall / structure / arch component, it will move the base object instead.

https://github.com/FreeCAD/FreeCAD/pull/1955
It's a pleasure to see recent commits from so many BIM/Arch developers and to learn python programming :D

Do you think it is appropriate to add some reminder/warning to users when Move Base option is selected, when an Object with a Base is moved, other objects dependent on the same Base will move altogether? say...
  1. When user set this in Preference; or
  2. It is the 1st time User set this in an Arch Object
Post Reply