Commit Graph

884 Commits

Author SHA1 Message Date
DeepSOIC
12d33e841f Part: register facemaker classes into typesystem 2016-10-01 23:13:44 +03:00
DeepSOIC
02286a21d1 Part: implement facemakers: FaceMakerCheese, FaceMakerBullseye
FaceMakerCheese: based on code extracted from Part FeatureExtrude,
exactly the same as facemaking code in PartDesign.

FaceMakerBullseye: new facemaker, that supports nesting like hole inside
a face inside a hole of another face...
2016-10-01 23:13:44 +03:00
DeepSOIC
b6db15a5d3 Part: Introduce FaceMaker class
A general class to implement smart making faces from wires (e.g. making
a face from sketch prior to extruding)
2016-10-01 23:13:44 +03:00
wmayer
801ac34258 fix -Wdeprecated in Part & FreeCADGui 2016-09-22 15:32:49 +02:00
wmayer
f944ab3846 replace deprecated auto_ptr with unique_ptr 2016-09-22 13:01:20 +02:00
wmayer
1ce73dda96 fix -Wextra in Part 2016-09-22 11:49:28 +02:00
DeepSOIC
47c745f228 Part: Offset2D: fix save-load instability
Fixes #2699
It was found out that when direction of normal found by FindPlane
depends on if we are using result of offset directly, or after copying.

The fix (workaround) is to copy offset result inside  offset routine, so
that no unstable behavior makes its way to the user.
2016-09-18 18:45:04 +03:00
wmayer
afa37847b5 remove Application::runPythonCode 2016-09-15 23:14:31 +02:00
wmayer
f44df3cdf0 do not use doCommand without using format string, add overloaded method of runCommand 2016-09-15 18:53:37 +02:00
wmayer
53ca0eb6a3 support offset curve in edge.Curve for occ 7.0 2016-09-15 10:36:44 +02:00
wmayer
9370378ec7 allow to pass parameter range when creating a line from a line 2016-09-09 13:02:15 +02:00
wwmayer
04aa24ec00 Merge pull request #271 from DeepSOIC/UIFixes
PartGui: fixes to Revolve and Extrude tasks
2016-09-02 17:30:32 +02:00
DeepSOIC
4e252175ee PartGui: Fixes and updates for Offset2D to task dialog
+ add expression support for offset value
2016-09-02 16:26:02 +02:00
DeepSOIC
c5f642e44a PartGui: add 2D Offset feature creation command
(made offset toolbar button into a dropdown button)

Icon for 2D offset was copied from Draft workbench.
2016-09-02 16:26:02 +02:00
DeepSOIC
e3ca28baa8 Part: add Offset2D feature
derived from Part::Offset, to re-use task dialog easily
2016-09-02 16:26:02 +02:00
DeepSOIC
1f6174e3f2 Part: Offset feature: split off into separate file
withdrew code from PartFeatures.h/.cpp and created FeatureOffset.h/.cpp
2016-09-02 16:26:02 +02:00
DeepSOIC
7f6872817a Part: Py API: deprecate Part.Wire.makeOffset
(code unchanged. Only added deprecation note to documentation)
2016-09-02 16:26:02 +02:00
DeepSOIC
78d32b6405 Part: Py API: add makeOffset2d method to Part.Shape
+ write documentation to makeOffsetShape
2016-09-02 16:26:02 +02:00
DeepSOIC
5318e03561 Part: TopoShape: add makeOffset2D method
Supports:
* offsetting wire, compound of wires.
* offsetting compounds in collective or independent manners
('intersection' parameter)
* two offset modes (parameter 'allowOpenResult')
* filling offset when offsetting one wire, or compound in independent
manner

Not supported yet (planned):
* filling offset when offset in collective manner (intersection= true)
* offsetting planar faces
2016-09-02 16:26:02 +02:00
DeepSOIC
c60e4c944e PartGui: task Extrude: fix remove selection gate on cancel 2016-09-02 15:05:30 +03:00
DeepSOIC
35ed8a8afa PartGui: fixes to Revolve and Extrude tasks by @f3nix
fixes layout issues on KDE of Part Extrude and Part Revolve task dialogs
2016-09-02 12:03:21 +03:00
wmayer
e6575f65f9 fix compiler warnings 2016-09-01 12:01:22 +02:00
DeepSOIC
fa2b70878e PartGui: Extrude: new task dialog
to account for new functionality of extrusion feature.
2016-09-01 11:46:18 +02:00
DeepSOIC
98418a4e0c Part: Extrude: improvements
* split Dir into Dir+Length; added second Length
* support for parametric linked direction: to arbitrary edge, and to
normal
* options: reverse, symmetric
* second taper angle
* changed offset join mode for tapered extrusion on OCCT7
2016-09-01 11:46:18 +02:00
DeepSOIC
616c2f7feb PartGui: Revolve: solid checkbox automation
Solid checkbox will be checked by default, if the shape being revolved
is closed wires.
2016-09-01 11:46:18 +02:00
DeepSOIC
f3a3bd14fb [breaking] Part: Revolve: fix forgotten check for reverseness of axis link
I didn't know BRepAdaptor_Curve does not take shape orientation
(reverseness) into account.

The commit can break existing projects. If revolution feature was
created with axis linked to reversed edge, and angle span is not 360,
the revolution direction will now swap. The chances of this situation
are pretty low, and revolution supports axis linkage for not long yet.
So I hope it won't cause any noticeable trouble.

--DeepSOIC
2016-09-01 11:46:18 +02:00
wmayer
6e284fc9ea fix crash when saving a document after aborting a pending transaction 2016-08-31 17:58:55 +02:00
wmayer
4ba53881b5 fix Coverity issues 2016-08-22 15:33:54 +02:00
wmayer
63ad26491f fix Coverity issues 2016-08-22 15:02:18 +02:00
wmayer
e8b36592c0 fix Coverity issues 2016-08-21 18:46:40 +02:00
wmayer
f3f0f5bd2e fix Coverity issues 2016-08-20 15:41:33 +02:00
Yorik van Havre
3dd3461aec Do not get transparency from DiffuseColor if not set per face - fixes #2675 2016-08-16 23:45:17 -03:00
wmayer
006de1ab19 issue #0002666: Error on Save File 2016-08-12 13:33:48 +02:00
wmayer
1c1f0dfe49 fix various compiler warnings 2016-08-09 13:16:26 +02:00
DeepSOIC
507b39e3fc Part: use the just-added methods to make properties read-only 2016-08-08 21:48:50 +03:00
DeepSOIC
50af9efa9f PartGui: new Revolve task dialog.
Updated to support Axis link, and Symmetric properties. Layout was
completely changed.
2016-08-08 20:53:03 +03:00
DeepSOIC
779b7eedb2 Part: Revolve: add support for axis link and midplane
Changes on the App side only.
Added two properties:
* AxisLink (accepts an edge - line or arc of circle)
* Symmetric (for distributing the revolution symmetrically in both
directions)
2016-08-08 19:34:27 +03:00
wmayer
b32e1aae11 fix compiler warnings 2016-08-07 13:38:41 +02:00
DeepSOIC
433bd375f3 Part: make Fusion and Common able to fuse arrays
If Fusion or Common features get only one argument, and the shape is a
compound, the children of the compound are treated as list of arguments.
2016-08-07 12:15:08 +02:00
Wolfgang E. Sanyer
7f4a437cc2 This commit adds getShape and setShape to TopoShape 2016-08-06 23:42:55 +02:00
wmayer
461c0b1f7b fix TopoShape::getFacesFromSubelement 2016-08-04 15:22:30 +02:00
wmayer
1e2e24b652 + rename methods in Vector3 class
+ add convenience methods Cross and Dot to Vector3 class
+ fix bug in DistanceToLineSegment in Vector3 class
2016-07-30 15:14:47 +02:00
maito78
8fe7c94452 Add parameter at given distance method for curves 2016-07-29 22:40:19 +02:00
DeepSOIC
e9b31ddb6a Part: add/update GUI commands
* Updated translation contexts for  Gui commands for JoinFeatures.
* Added Gui commands for Split tools: BooleanFragments, Slice, XOR.
Icons.
2016-07-29 14:20:52 +03:00
DeepSOIC
c069987e41 Part: add BOPTools package as member of Part Py module 2016-07-29 14:18:01 +03:00
DeepSOIC
87b7c86197 Part: add BOPTools package
Containing implementation of new JoinConnect, as well as new splitting
tools: BooleanFragments, Slice and XOR.
2016-07-29 14:16:54 +03:00
DeepSOIC
ea586e9880 Part: deprecate old JoinFeatures code
Commented out all the code not essential for recomputing old
JoinFeatures. The rest is left to support opening old projects.
2016-07-29 14:13:12 +03:00
wmayer
bff60f36a7 fix build failure with occ 6.9.0 2016-07-17 16:18:12 +02:00
wwmayer
fe60a44f5c Merge pull request #219 from tomate44/tomate44-BezierSurface-fix
fix VDegree
2016-07-15 13:57:52 +02:00
Mateusz Skowroński
d7240c6b2b Fix some GCC warnings. 2016-07-15 13:05:37 +02:00