Status PartDesign and further development

About the development of the Part Design module/workbench. PLEASE DO NOT POST HELP REQUESTS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
NormandC
Veteran
Posts: 18589
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: Status PartDesign and further development

Post by NormandC »

As an end user I admit I don't understand fully the implications of base planes outside of the body, or as its first features. Either is fine by me, they will be very welcome in either of their implementation.
jriegel wrote:But if we need one, I would implement a PartDesign feature Plane which always have to be a offset (or angel) to a solid face or base plane.
Please pretty please, do implement this! :)

AFAIK this is how it works in Solid Edge.
logari81
Posts: 658
Joined: Mon Jun 14, 2010 6:00 pm

Re: Status PartDesign and further development

Post by logari81 »

I have answered about the Body feature implementation in the other thread, dedicated to that topic.
jriegel wrote: Your quit right, we can not use the Body itself! The question is the base planes under the Body (first entries in the history) or somewhere outside (like in Catia) to be used by multiple bodies which get eventually later put together by booleans....
I would put them inside the body because it would be nice to allow referencing only among features within the same body. (this is a restriction that has to be implemented in the Gui level)
jriegel wrote: I wouldn't allow "free" planes beside the base planes. I never needed on with all my projects under e.g. Catia. Its a bit cross to the PartDesign philosophy, its more a paradigm in Free Form Design.
But if we need one, I would implement a PartDesign feature Plane which always have to be a offset (or angel) to a solid face or base plane.
you mean a kind of parametric plane that is attached somehow (e.g. through offset value) to the body features in contrast to a plane that is arbitrarily positioned. I find this a good idea. But lets discuss it in the separate thread that Jan started only for this.

Just some tidiness thing. I would put the following declaration in PartDesign/Gui/Workbench.h inside the PartDesignGui namespace:

Code: Select all

// pointer to the active assembly object
extern App::Document                   *ActiveAppDoc;
extern Gui::Document                   *ActiveGuiDoc;
extern PartDesign::Body                *ActivePartObject;
extern Gui::ViewProviderDocumentObject *ActiveVp;
and use #include "Workbench.h" wherever I need these global variables.
Post Reply