Commit Graph

484 Commits

Author SHA1 Message Date
DeepSOIC
d6a3d1b140 Attacher: fix superPlacement applied twice in some cases
superPlacement was applied twice on line and point attachment modes that
re-use 3d attachment modes code. Fixed.
2016-04-21 20:55:42 +03: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
wmayer
5de9696365 + fix warnings:
-Wsign-compare, -Wunused-variable, -Wunused-function, -Wswitch
+ fix Qt issues
2016-04-13 14:26:38 +02:00
wmayer
e3b609b309 + consistent naming 2016-04-13 11:37:09 +02:00
Stefan Tröger
4119bb7adc Fix compilation issue in Attacher code 2016-04-12 18:12:24 +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
8bca27463e Part/Attacher: remove a couple of no more valid asserts 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
8c5d514b18 PartDesign: Body rework - add BaseFeature property and make Tip always point to solid 2016-04-12 18:12:16 +02:00
Alexander Golubev
ffc6cc2f23 Share code for finding a body containing a feature 2016-04-12 18:12:14 +02:00
Stefan Tröger
d2f4410c1e fix datum crash when origin is selected 2016-04-12 18:12:13 +02:00
DeepSOIC
98717f010a Attacher: proximity modes
The modes that base on distToShape:
* a line that connects the closest points,
* the actual points
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
acac286cd0 Sketch: expose positionBySupport python func 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
Stefan Tröger
c3f35d9f05 add part design thickness 2016-04-12 18:12:08 +02:00
Stefan Tröger
0385734339 primitive bug fixes, add cylinder and sphere 2016-04-12 18:12:07 +02:00
Stefan Tröger
8fdde38e75 add coordinate system datum 2016-04-12 18:12:07 +02:00
DeepSOIC
31e4fd8994 Sketcher: fix free-standing sketches
See forum thread, Sketch support == NULL
http://forum.freecadweb.org/viewtopic.php?f=20&t=10942
2016-04-12 18:12:07 +02:00
blobfish
8fffa8b564 Part: BodyBase: typo in property header macro 2016-04-12 18:12:06 +02:00
blobfish
4b2f107cc1 Part Design: support for overlapping and coincident patterns
Fixed crash after rejecting a MultiTransform dialog
    remove overlap check
    adding getSolid to cut operation
    add extrema method to part::checkinterference
    move refineshape call out of loops
    divideTools functions
2016-04-12 18:12:00 +02:00
jrheinlaender
0ab6a77442 Update SketchObject Placement when the Support property changes 2016-04-12 18:11:55 +02:00
jrheinlaender
ae1890f56b Python functions to intersect curves and surfaces 2016-04-12 18:11:55 +02:00
jrheinlaender
8e1ea4ac14 Removed some old code 2016-04-12 18:11:55 +02:00
jrheinlaender
b6932b0bdb Allow datum points and lines to have offsets from their references 2016-04-12 18:11:55 +02:00
jrheinlaender
99fe9b6178 Moved Body::isAfterTip() to BodyBase 2016-04-12 18:11:55 +02:00
jrheinlaender
f954a51430 Pad/Pocket: Allow extrude up to a datum plane 2016-04-12 18:11:50 +02:00
jrheinlaender
6915d8b734 Miscellaneous fixes 2016-04-12 18:11:50 +02:00
jrheinlaender
ba17aa2839 Try to be consistent with sketch plane orientation PartDesign module <-> Sketcher module 2016-04-12 18:11:50 +02:00
jrheinlaender
fe2e490645 Allow selecting back of base planes, miscellaneous fixes 2016-04-12 18:11:50 +02:00
jrheinlaender
02dfb8551d Moved some methods from PartDesign::Body to Part::BodyBase so the SketchObjects will be removed cleanly from the Body when deleted 2016-04-12 18:11:49 +02:00
jrheinlaender
5b3d5e6bd8 Moved generic Datum class to Part module to avoid Sketcher dependency on PartDesign 2016-04-12 18:11:49 +02:00
jrheinlaender
bb1a3a532f Miscellaneous fixes 2016-04-12 18:11:49 +02:00
jrheinlaender
4280334751 Make sure that App::Plane sketch placement is identical to deprecated SketchOrientationDialog placement 2016-04-12 18:11:49 +02:00
jrheinlaender
1ec99c5d32 Work on inserting, removing, hiding and showing features in the body 2016-04-12 18:11:48 +02:00
jrheinlaender
417576d5eb Show three base planes (XY, YZ, XZ) at the beginning of the feature tree and allow to create sketches on them 2016-04-12 18:11:47 +02:00
jriegel
b825571562 implement active body in PartDesign 2016-04-12 18:11:45 +02:00
jriegel
6700512efe Add some commands to assembly 2016-04-12 18:11:44 +02:00
wmayer
a4dc263846 + always get occ version information in About dialog 2016-03-19 15:55:09 +01:00
wmayer
34b9ff8867 + command to create points object from geometry
+ implement TopoShape::getPoints
2016-03-05 23:36:57 +01:00