Commit Graph

324 Commits

Author SHA1 Message Date
Stefan Tröger
83ce80f133 fixes #0002512 Allow multi-face part design tools 2016-05-18 23:54:18 +02:00
wmayer
bca7a1866e + port to OCC 7.0 2016-05-14 16:53:27 +02:00
wmayer
de47702b17 + fix typos + improve whitespaces 2016-04-24 18:11:02 +02:00
wmayer
d03a8fd386 + fix various gcc & clang warnings 2016-04-24 16:21:19 +02:00
DeepSOIC
431373823d Attacher: split Attacher3d and AttacherPlane
Even though they share all the functionality now, I split them, to allow
independent user-friendly mode names.
2016-04-21 20:55:42 +03:00
wmayer
08df5cbc59 + remove 'using namespace Part' inside header file 2016-04-13 16:20:31 +02:00
wmayer
df48d1668b + remove 'using namespace Attacher' inside header file 2016-04-13 15:57:49 +02:00
wmayer
0a7ab4e1ff + add missing license text 2016-04-13 15:20:41 +02:00
Stefan Tröger
483e64f368 remove unneeded orig files 2016-04-12 19:10:19 +02:00
Stefan Tröger
e7d8a1a9a4 Remove ShapeBinder2D
As profile based features can work with faces and wires now ShapeBinder can do everything that needed ShapeBinder2D before.
2016-04-12 18:12:23 +02:00
Stefan Tröger
4ec7fe6303 PartDesign: Adopt pattern to face based features 2016-04-12 18:12:22 +02:00
Stefan Tröger
f712f5e4ac PartDesign: Modeling features work with faces
-Rename Sketchbased to ProfileBased to show new behavior
-Adopt ProfileBased to make the relevant helper functions work with faces too
-Adopt features for unified use of helper functions
-Adopt commands to allow face selection
2016-04-12 18:12:22 +02:00
Stefan Tröger
7d30833349 PartDesign: Adopt to new property status bits 2016-04-12 18:12:22 +02:00
Stefan Tröger
7cd20adc9a ShapeBinder: fix Null shape on recompute for copy 2016-04-12 18:12:22 +02:00
Stefan Tröger
e88b042a26 Fix shape binder placement
-- hidden for user
-- inherited by linked part
2016-04-12 18:12:22 +02:00
Alexander Golubev
96486cc4ed PartDesign/App: a small fix to offset constraint syntax for Pad and Pocket 2016-04-12 18:12:21 +02:00
Alexander Golubev
0cfc0cd424 Fix warnings introduced in new PartDesign
Mostly unused wariables and compare of signed & unsigned
2016-04-12 18:12:21 +02:00
Stefan Tröger
2ab25ea414 Fix incorrect ShapeBinder recalculation 2016-04-12 18:12:21 +02:00
Alexander Golubev
1f3d2df4d5 PartDesign/Body: add ability to store facebinders inside a body 2016-04-12 18:12:20 +02:00
Stefan Tröger
655bf961be add task for datum shape features 2016-04-12 18:12:19 +02:00
Stefan Tröger
e58ae2b616 Setup ShapeBinder Viewprovider and command 2016-04-12 18:12:19 +02:00
Stefan Tröger
9969aac671 fix dependent copy references
to make them work with sketches an additional Part2DObject reference needed to be created
2016-04-12 18:12:19 +02:00
Alexander Golubev
118f1cec6a PartDesign/App: cleanup datum's classes and headers 2016-04-12 18:12:19 +02:00
Alexander Golubev
26fb01b429 PartDesign/Gui: add origin sizing and rework datums sizing 2016-04-12 18:12:18 +02:00
Alexander Golubev
1a26f7551f PartDesign: add Origin to the Body and unstrap the module from the Parts 2016-04-12 18:12:18 +02:00
Alexander Golubev
797d6d3a11 App/Origin: big refactoring
- Rebase App::Origin on App::DocumentObject
 - Keep all control over the Origin structure inside the Origin and it's
   ViewProvider
 - Add OriginFeature class as common base for App::Plane and App::Line
 - Rebase App::Plane and App::Line on top of newly created class and
   move to the file.
 - Change Origin's ViewProvider API associated with temporary display
 - Lots of associated changes to files
 - Several minor fixes
 - Lots of new bugs
2016-04-12 18:12:18 +02:00
Alexander Golubev
c6797b6c29 Revert "part deletion handling"
This reverts commit 6ab2002021ac1df26ebe77f488f5cd94e1df0b26.
2016-04-12 18:12:17 +02:00
Alexander Golubev
5016054a8b PartDesign/Body: move deletion of subobjects to view provider 2016-04-12 18:12:17 +02:00
Alexander Golubev
f9e67626ec PartDesign/Body: remowe Part::Feature from isAllowed() 2016-04-12 18:12:17 +02:00
Alexander Golubev
8a2d4289f6 PartDesign/FeaturePrimitive: suppress a -Woverloaded-virtual warning 2016-04-12 18:12:17 +02:00
Alexander Golubev
a5fcd5775e PartDesign: update body management commands according to the changes in body paradigms 2016-04-12 18:12:16 +02:00
Alexander Golubev
bf94c3ebf7 PartDesign: fix negative Offset property in pad and pocket 2016-04-12 18:12:16 +02:00
Alexander Golubev
8c5d514b18 PartDesign: Body rework - add BaseFeature property and make Tip always point to solid 2016-04-12 18:12:16 +02:00
Alexander Golubev
113c10a2b7 PartDesign: make transform parameter dialogs use common base code with other dialogs
subj;
Make PasrtDesign::Transformed provide common for all features
classes interface getBaseObject() instead of specific getSupportObject ();
Refactor some TransformedParameters methods.
2016-04-12 18:12:16 +02:00
Alexander Golubev
147aff0395 PartDesign/Feature: minor gramma fix 2016-04-12 18:12:16 +02:00
Alexander Golubev
55f3f52f54 PartDesign/Feature: add an optional parameter to getBaseObject() to prevent it from throwing exceptions
In most cases getBaseObject() is used with an exception handler which
only detects if it failed but not the reason. This modification allows
to use it without excess exception handlers.
Also add the same parameter to SketchBased::getVerifiedSketch().
2016-04-12 18:12:15 +02:00
Alexander Golubev
5f6f16e757 PartDesign/FeatureDressUp: implement a proper getBaseObject()
The function getBaseShape() is removed and replaced with getBaseObject()
because it doesn't make a lot of scense: getBaseShape() masked the
base's class implementation (rather than redefine a virtual) which was
better in words of code reuse.

Also BaseFeature and Base properties relations are defined now in a
little another way.
2016-04-12 18:12:15 +02:00
Alexander Golubev
0ca40ed48b PartDesign/Task{Pad,Pocket}Parameters: massive refactoring
Give a massive refactoring to Task dialogs for pocket and pad.
This commit features:
 * Make Task dialogs for pocket and pad look nice in side-by side diff and
   cross import features missing in each other.
 * As a result it fixes several minor bugs.
 * Gives a rework to the UpdateUI function.
 * This one also fixes offset option support and migrates it to use unit
   framework.
2016-04-12 18:12:15 +02:00
Alexander Golubev
0208a3667d PartDesign/FeatureDressUp: make Base and BaseFeature properties track the same feature
Also remove reseting of read-only flag on placement properties on
removing Base feature: it doesn't make any scense for dressup features.
2016-04-12 18:12:15 +02:00
Alexander Golubev
98a0e30582 PartDesign: fix a crash in the loft 2016-04-12 18:12:14 +02:00
Alexander Golubev
ffc6cc2f23 Share code for finding a body containing a feature 2016-04-12 18:12:14 +02:00
DeepSOIC
16e4ce20f0 PartDesign workflow without part/body
PartDesign: make datum features work outside of body/part
PartDesign old workflow: remove a few messageboxes about no part
PartDesign: old workflow: multitransform without body

Still has visibility issues, but generally works.
2016-04-12 18:12:14 +02:00
DeepSOIC
c3da141020 Revolution: fix failure on sketch edges used as an axis
PartDesign Revolution used to fail, when an edge of a sketch was
selected as an axis of revolution. This is fixed by this commit.
Also, made it support selecting an edge from the sketch the revolution
itself is made from.
2016-04-12 18:12:14 +02:00
Stefan Tröger
45aca9fb55 fix loft top face location 2016-04-12 18:12:13 +02:00
Stefan Tröger
e876d9aa81 fix loft result orientation 2016-04-12 18:12:13 +02:00
Stefan Tröger
ef11b75c79 fix pipe tool result orientation 2016-04-12 18:12:13 +02:00
Stefan Tröger
45861b4f92 remove linear and S-shape scaling from pipe
They worked and are nice feature, but the handling with properties must be worked out better. To avoid any incompatibility due to property changes the functionality is removed now.
2016-04-12 18:12:13 +02:00
Stefan Tröger
7d759a5793 delete features when deleting body 2016-04-12 18:12:13 +02:00
Stefan Tröger
12c5e1f92f remove hole feature
A hole feature is something needed, however, the current implementation does not use the attacher code which would made it intuitive and compatibel to other workbench tools. A reimplementation is needed.
2016-04-12 18:12:13 +02:00
DeepSOIC
9e440b955c PartDesign: transfer Datums to become AttachableObjects
Crude and quick, needs cleanup.
2016-04-12 18:12:12 +02:00