Commit Graph

1223 Commits

Author SHA1 Message Date
wmayer
7f772ba227 port to MSYS2/clang 2021-09-20 18:15:44 +02:00
wmayer
666f67f8d9 Part: support null shapes in boolean operations 2021-09-16 12:43:32 +02:00
wmayer
62723f3dfd Part: move handling of changed properties of the Primitive class to handleChangedPropertyName and handleChangedPropertyType 2021-09-15 14:45:50 +02:00
wmayer
4327cd5ccb Mod: make sure to call the base class' handleChangedPropertyType 2021-09-15 14:07:32 +02:00
Christophe Grellier
108437e37b Update BSplineSurfacePyImp.cpp
Typo in setVKnot()
2021-08-15 11:16:01 +02:00
wmayer
91b0409c48 Part: [skip ci] workaround for OCCT 7.5.2 2021-05-12 17:35:42 +02:00
Yorik van Havre
f626e1e2b7 Merge pull request #4770 from mpu-creare/master
Mod Part [doc]: Adding documentation to Part.BSplineCurve of Python API
2021-05-11 12:15:59 +02:00
wmayer
b69ef38c7f allow to enable PCH for gcc and clang 2021-05-03 17:37:58 +02:00
Matt Ueckermann
495e6279f4 Part [DOC]: Adding documentation to Python API of BSplineCurve (intersect and buildFromPoles) 2021-04-29 23:06:55 -04:00
wmayer
6aef001272 Part: remove some more deprecated Py2 code 2021-04-26 11:13:22 +02:00
luz paz
c69f245d6f Part: remove py2 code 2021-04-25 11:29:35 +02:00
Tomas Pavlicek
4d6b1f3eb8 Sketcher - Add new Split Edge action 2021-04-24 14:30:35 +02:00
tomate44
8b0c58d1b4 Part: Shape.ReflectLines: add 2D/3D, visibility and EdgeType options 2021-04-18 08:26:26 +02:00
wmayer
6f1455700e Py: fix memory leak 2021-04-12 00:05:42 +02:00
wmayer
111a21e45c Base: do not report C++ exception when converting it to Python exception
See https://forum.freecadweb.org/viewtopic.php?f=23&t=56464
2021-04-11 14:54:11 +02:00
wmayer
4e4068e44f Py: fix memory leak 2021-04-09 16:59:33 +02:00
donovaly
d26e7500ab [Part] [skip ci] add a word in description
since we have now 3 angles for cylinders, make clear the angle property is for the rotation
2021-04-06 11:39:51 +02:00
donovaly
c0e6debcfa [Part] add direction to cylinder primitive
We already have the possibility to create skewed prisms. I recently stumbled upon that I would need this feature for cylinders too.

This PR takes the existing prism extrude direction feature and use it for cylinders too
2021-04-05 13:59:03 +02:00
wmayer
57d2a2fae0 Part: for Prism feature use PrismExtension 2021-04-05 13:25:19 +02:00
wmayer
84c5d22ccb Part: implement Prism as extension 2021-04-05 13:05:59 +02:00
flachyjoe
80a3aa8eaa format TopoShapeWirePy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
44f6b670a8 format TopoShapeSolidPy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
7111e137a1 format TopoShapeShellPy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
37764982bd format TopoShapeEdgePy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
c09093a079 format TopoShapeCompoundPy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
f9af6e8ea3 format TopoShapeCompSolidPy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
5f01c7559e format TopoShapeFacePy.xml 2021-03-28 15:36:36 +02:00
flachyjoe
88c27d502e fix some missed lines 2021-03-28 15:36:36 +02:00
flachyjoe
f94b3c3f58 Improve Part.Shape methods documentation
Formats UserDocu to follow the template:
 Description
 method(args) -> return
 --
 More infos
2021-03-28 15:36:36 +02:00
luz paz
15c16610c8 fix source comment typos [skip ci]
Found via  codespell v2.1.dev0
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,apoints,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,parms,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml,./build/doc/SourceDocu
```
2021-03-28 10:57:24 +02:00
Abdullah Tahiri
2afcbff0d6 Part: Geometry - Add function to trim a B-Spline
================================================

Supports both non-periodic and periodic case
2021-03-21 06:56:23 +01:00
Abdullah Tahiri
595fc118e3 Part: Part2DObject::seekTrimPoints rename parameters
====================================================

This function takes parameters named GeoId, which evoke the Sketcher GeoId and which
indeed are used by the sketcher. However, these indices are just indices of the provided
geometry list. Therefore:
1. The are never negative (no matter if a corresponding Sketcher GeoId is external or not).
2. They do not have reserved indices for axes.
3. Most importantly, not found GeoId1 and GeoId2 are coded as -1, which for the Sketcher has
a well defined meaning (axis), whereas the Sketcher uses Constraint::GeoUndef as undefined or
not present/ not found index, which currently is -2000.

For these reasons, it was judged appropriate to rename the parameters and documentation to
emphasise that this function is unrelated and dettached from any Sketcher knowledge, and that
indices are just normal indices of a vector.
2021-03-21 06:56:23 +01:00
wmayer
4561deb4fa Part: [skip ci] implement makeShellFromWires 2021-03-16 16:01:43 +01:00
tomate44
839b96385c Part: fixes and check input values for spiral and helix primitives 2021-03-10 14:24:01 +01:00
tomate44
97543396c5 Part primitives: add SegmentLength property to helix and spiral 2021-03-10 14:23:16 +01:00
tomate44
6f9856bd46 Part primitives: use makeSpiralHelix in spiral and helix primitives 2021-03-10 14:22:04 +01:00
tomate44
18f36c10da TopoShape: add a common function to build spirals and helixes 2021-03-10 14:18:12 +01:00
Benjamin Nauck
f6c9cc90ee [Base] Remove includes to StdStlTools.h as that's not needed anymore
std::make_unique was introduced in c++14, so no need to use the back
ported version
2021-03-06 21:20:32 +01:00
Benjamin Nauck
afb1d0fbc9 [Path] Switch from boost::tuple to std::tuple
It's better to use the standard lib when possible
2021-03-06 19:31:06 +01:00
wmayer
f85478155b Revert "[PartDesign] Add Material property to Body"
This reverts commit 4fcf8f199c.

There is no need to make this a static property because it can be added at runtime via Python or the GUI
2021-03-04 18:50:57 +01:00
howetuft
4fcf8f199c [PartDesign] Add Material property to Body 2021-03-04 12:19:50 +01:00
Abdullah Tahiri
324f6d3e26 Part: Geometry - BSpline - fix weight assignment
================================================

If during assignment of weights (during the for loop iteratively setting the poles) all weights
become (temporarily) equal even though weights does not have equal values
OCCT will convert all the weights (the already assigned and those not yet assigned)
to 1.0 (nonrational b-splines have 1.0 weights). This may lead to the assignment of wrong
of weight values.

The work-around is to temporarily set the last weight to be assigned to a value different from
the current value and the to-be-assigned value for the weight at position last-to-be-assign but one.

Fixes:
https://forum.freecadweb.org/viewtopic.php?p=478701#p478702
2021-02-18 17:28:38 +01:00
David Osterberg
dac937ae35 Part: Allow helix primitive with negative Angle 2021-02-14 11:53:34 +01:00
Chris Hennes
15d4cac123 LGTM: Remove superfluous conditional 2021-02-08 16:39:40 +01:00
David Osterberg
59ec3cb141 PartDesign: New features AdditiveHelix and SubtractiveHelix
These features, based on the code for the Pipe class, allow the user
to simply create a helical sweep within PartDesign workbench.

Sample application is threads, springs, coils, augers, etc.

Also, remove needless requirement for positive cone angle on helixes.

Thanks to @bitacovir for helping with the icons
Thanks to @chennes for review
Thanks to @vosk for review
Thanks to @wwmayer for review

Enforce that links stay within scope for ProfileBased features
This also ensures that the Body itself is not used for creating features within
the body, causing a "Graph not a DAG" error.
2021-02-04 13:01:12 +01:00
wmayer
3ebd7d119b Part: [skip ci] rename methods in TopoShape that override non-virtual functions of base class 2021-02-03 16:10:38 +01:00
wmayer
7a83853535 Part: offer all supported STEP schemes by OCC in a combo box 2021-02-02 21:51:11 +01:00
vosk
4bd5c2669d [Part] - Fix memory leaks 2021-01-28 15:45:00 +01:00
marioalexis
4c323a6325 Part: Crash when calling SubShapes of empty shape from Python 2021-01-18 19:47:35 +01:00
Abdullah Tahiri
c0d810a370 Part: Geometry trigger notifyAttach on extension addition 2021-01-09 20:08:05 +01:00