Commit Graph

5235 Commits

Author SHA1 Message Date
DeepSOIC
a3d9907e8c PartDesign: adapt Datum UI to work using Attacher
* adapt
* introduce mode selection
* kill selection gate to allow selecting whole objects (selection gate
should be reintroduced to disallow references between parts, no
restrictions is a temporary state)
* prevent auto-switchover to next ref after an explicit push of a button
* fix highlighting of buttons when selecting corresponding reference
* allow creation of a feature, even if no mode fits references. With a
warning.
2016-04-12 18:12:12 +02:00
DeepSOIC
a5d38c9a99 PartDesign: patch old partdesign porting for changes in Datums 2016-04-12 18:12:12 +02:00
DeepSOIC
9e440b955c PartDesign: transfer Datums to become AttachableObjects
Crude and quick, needs cleanup.
2016-04-12 18:12:12 +02:00
DeepSOIC
40592e6055 Attacher: line and point AttachEngines. Other changes.
* propose attachment modes
* refactor setUp and Copy
* split off postprocessing from 3D to reuse in 1D and 0D calculations
* AttachableObject: fix error printout in onChange
* AttachableObject: no more defaults to Attacher3D
* implementation of lines and points attachment (some of the proposed modes).
* refactor getShapeType, add getShapeType(obj, sub); add a flag to eRefType enum, indicating that referenced thing is a whole object that has placement.
* change readLinks to be static, and obtain shape types in the process.
* test mode enums lengths equality
* extend ObjectXY to work on conics.
* Fix upside-down sketches attached as TangentPlane on most shapes.
* Fix crash when a shape of unlisted type is in the links.
* fix attaching to datum lines go crazy because of infinities.
* abs->fabs
* support for App::Line
* Add namespace qualifiers to TYPESYSTEM_SOURCE-like stuff
2016-04-12 18:12:12 +02:00
DeepSOIC
4800957858 Attacher: change Part2DObject's MapMode default to mmDeactivated, and set mode to mmFlatFace only when reading files of old format.
PartDesign, Sketcher: set mapping mode when setting support

Mapping mode mmFlatFace is no longer default, so an explicit assignment
is required.
2016-04-12 18:12:12 +02:00
DeepSOIC
fa441a9623 PropertyLinkSubList, Sketcher: move legacy Support readout from PropertyContainer to Part2DObject 2016-04-12 18:12:12 +02:00
DeepSOIC
ad01411efc Attacher: fix crash of suggestor on compounds 2016-04-12 18:12:12 +02:00
DeepSOIC
34784b2d29 PartDesign: Fix revolution
It failed to close task if starting a body.
2016-04-12 18:12:12 +02:00
DeepSOIC
f688546106 InvoluteGear: positionBySupport 2016-04-12 18:12:12 +02:00
DeepSOIC
acac286cd0 Sketch: expose positionBySupport python func 2016-04-12 18:12:12 +02:00
DeepSOIC
4cc9b32e32 PartDesign: accomodating to sketch's multisupport
* FeatureSketchBased getSupportFace check for mapping mode
* Fixes failure to place sketches on DatumPlanes
2016-04-12 18:12:12 +02:00
DeepSOIC
2a390660c8 Sketcher: minimalistic UI for new attachment engine 2016-04-12 18:12:12 +02:00
DeepSOIC
42ecc24ec5 Sketcher: new attachment engine 2016-04-12 18:12:12 +02:00
DeepSOIC
061747f367 Sketcher: change Support from PropertyLinkSub to PropertyLinkSubList
Note: may fail to build after this commit...
2016-04-12 18:12:12 +02:00
DeepSOIC
eccff10d90 PartDesign: fix refuse to pad
When something was depending on a sketch (another sketch, for example),
padding (revolving, pocketing, etc) it was impossible. This is fixed.

Also, padding or revolving a single sketch twice was allowed (with a
warning msg displayed).
2016-04-12 18:12:11 +02:00
Alexander Golubev
445c26f658 PartDesign/Body: make insert/removeFeature treat NULL in a less special way 2016-04-12 18:12:11 +02:00
Alexander Golubev
bf58a7be2a PartDesign: make MoveFeatureInTree command use new insert functions 2016-04-12 18:12:11 +02:00
Alexander Golubev
9c113357c5 PartDesign: add migrating sketch support to MoveFeature command 2016-04-12 18:12:11 +02:00
Alexander Golubev
03d3f45277 PartDesign/Workbench: make a message more translation-frendly 2016-04-12 18:12:11 +02:00
Alexander Golubev
ad461fc472 PartDesign: fix spacing in several files 2016-04-12 18:12:11 +02:00
Alexander Golubev
7e1a76eb37 PartDesign/Workbench: move fix of sketch support into separate function
Outside PartDesign sketches can have no support plane for them. But
PartDesign doesn't allow that.
Move the code for migration of "free" sketches of planes
into a separate fuction so it may be reused.
2016-04-12 18:12:11 +02:00
Alexander Golubev
7c2413b0aa PartDesign/Body: add methodes to insert features into specific place
Add a Body::insertFeature() methodes as well as python API for it.
2016-04-12 18:12:11 +02:00
DeepSOIC
ec2bbc4c34 Loft: fix build with MSVC2013 2016-04-12 18:12:11 +02:00
DeepSOIC
4b48362ec6 PartDesign: refactor positionBySketch
Rename it to positionByPrevious. Rewrite.
Rewrite SketchBased::transformPlacement.
2016-04-12 18:12:11 +02:00
DeepSOIC
03be8e1bba PartDesign: tidy up sketch support and base feature confusion
Not complete, transformPlacement and positionBySketch are pending...
2016-04-12 18:12:11 +02:00
Alexander Golubev
b67c8bd34d PartDesign/FeatureDraft: fix a wronly placed NOT 2016-04-12 18:12:11 +02:00
Alexander Golubev
b9f4e10fa5 PartDesign: fix a couple of crashes
The first crash was reported here:
http://forum.freecadweb.org/viewtopic.php?f=20&t=11205&start=50#p91052

The second one accures then moving a feature from a body without solid
features.
2016-04-12 18:12:11 +02:00
Stefan Tröger
08e4151ea1 make hole feature work again 2016-04-12 18:12:11 +02:00
Stefan Tröger
7f80e711f6 better active part and document tip handling 2016-04-12 18:12:10 +02:00
Stefan Tröger
d435e15a97 make part design loft functional 2016-04-12 18:12:10 +02:00
Stefan Tröger
987880fffa add loft viewprovider 2016-04-12 18:12:10 +02:00
Stefan Tröger
c82e4117e9 add feature loft 2016-04-12 18:12:10 +02:00
Alexander Golubev
f4a5bf6acd PartDesign: remove Body::isFeature() because it's the same as BodyBase::hasFeature() 2016-04-12 18:12:10 +02:00
DeepSOIC
36fe5994b9 Revolution: fix crash when selecting stuff during task 2016-04-12 18:12:10 +02:00
Danny Lepage
8aecb00a8d Fix Debug Assert in CmdPartDesignDuplicateSelection::activated
Under Windows, "Edit/Duplicate selected object" raised a
Debug Assertion Failed "Expression: sequence not ordered".
2016-04-12 18:12:10 +02:00
Danny Lepage
63bdbe5561 Fix Boolean operation tooltip text.
As reported by triplus
2016-04-12 18:12:10 +02:00
DeepSOIC
578f038cf9 Fix programming error in DatumCS 2016-04-12 18:12:10 +02:00
DeepSOIC
7653d2d48f Fix build on Windows 2016-04-12 18:12:10 +02:00
Stefan Tröger
ab2cc10ac7 add missing return value 2016-04-12 18:12:09 +02:00
Stefan Tröger
c0e850cd0d remove import dependency on assembly workbench 2016-04-12 18:12:09 +02:00
Stefan Tröger
84cd1588d0 Update pipe icon and add it to the taskwatcher 2016-04-12 18:12:09 +02:00
Stefan Tröger
20d551bc88 fix part and body search for invalid objects 2016-04-12 18:12:09 +02:00
Stefan Tröger
3aae4ce011 respect part design placement rules in pipe 2016-04-12 18:12:09 +02:00
Stefan Tröger
620b2bb5d7 simple bugfixes 2016-04-12 18:12:09 +02:00
Stefan Tröger
68ee7f4f27 add two scaling modes 2016-04-12 18:12:09 +02:00
Stefan Tröger
df386cc3c1 make multisection work 2016-04-12 18:12:09 +02:00
Stefan Tröger
d796ca2bf9 better pipe view handling 2016-04-12 18:12:09 +02:00
Stefan Tröger
a727a9b93d prevent inverted pipes and correct camera adjustment 2016-04-12 18:12:09 +02:00
Stefan Tröger
342ba89afd generalize preview mode 2016-04-12 18:12:09 +02:00
Stefan Tröger
68d172687b implement faster pipes with inner wires 2016-04-12 18:12:09 +02:00