Commit Graph

1277 Commits

Author SHA1 Message Date
Uwe
29997d5e71 [Part] Extrusion: simplify code by using full recursion
- the recursion can be done completely by one void
- also add a brief description of this void
2022-01-30 16:53:44 +01:00
Uwe
8eab4a397e [Part] Extrusion: code optimizations
kudos to @marioalexis84
2022-01-30 06:02:37 +01:00
Uwe
63c864c5b6 [Part] Extrusion: taper nested wires properly
addendum to commit cce730c79

Now also wires nested by more than one level are supported.
The possible nesting is infinite.
2022-01-30 05:52:43 +01:00
mwganson
c63c3e6538 Part.show() python return the new document object instead of None 2022-01-29 23:50:43 +01:00
Uwe
99d9e781fc [Part] Extrude: remove unused variable 2022-01-29 23:18:11 +01:00
Uwe
cce730c79d [Part] handle inner wires for Extrude (#5367)
* [Part] handle inner wires for Extrude

this is a PR to make Extrude handle inner wires of sketches.
2022-01-29 21:50:55 +01:00
luz paz
da6f34723b Part: fix source comment typo 2022-01-22 16:28:41 +01:00
Uwe
39ed257eb4 [Part] add missing include
needed since PR #5382

- also transfer another include
2022-01-21 01:07:38 +01:00
marioalexis
7b23f6793c Part: Use Tools::getNormal to compute normal to surface 2022-01-20 13:01:27 +01:00
marioalexis
a888a0ac0a Part: Implement Tools::getNormal function 2022-01-20 13:01:27 +01:00
Uwe
fcaa698be8 [Part] Extrusion: just style fixes
to keep following PR diffs small

all changes were automatically done by MSVC
2022-01-20 01:08:35 +01:00
wmayer
113a587ae5 Part: in function to create a part handle meshes with defects 2022-01-18 15:20:55 +01:00
Uwe
af45d932c4 [Part] Extrude: avoid code duplication
more code that is used twice into a subroutine
2022-01-17 16:58:03 +01:00
wmayer
20b86e55b8 Part: expose Precision to Python 2022-01-17 12:30:45 +01:00
Uwe
a3b3134594 [Part] just style fixes
to keep following PR diffs small

all changes automatically done by MSVC
2022-01-17 01:08:48 +01:00
mwganson
c0c4ae40a5 TopoShape::analyze() SetRunParallel(true) to do the bopcheck in parallel mode 2022-01-16 16:30:08 +01:00
wmayer
f147986fa9 App: Bugfix for NULL-Pointer dereference of Property->getName() 2022-01-16 14:30:51 +01:00
Uwe
cf0764c1b5 [Part] sort includes 2022-01-09 21:59:02 +01:00
Ajinkya Dahale
978f579870 [Part] Support insertion of knots in b-splines 2022-01-09 11:33:53 +01:00
Uwe
76c611ae2a [PD] remove unnecessary Unicode characters
they cause problems: https://forum.freecadweb.org/viewtopic.php?p=559077#p559077
2022-01-06 02:57:53 +01:00
luz paz
dc288a7ade Fix more typos + whitespace fix and added 'TODO'
Found via `codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,apoints,ba,beginn,behaviour,bloaded,bottome,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childrens,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,inout,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oce,oder,ontop,orgin,orginx,orginy,ot,pard,parm,parms,pres,programm,que,rady,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`
2022-01-04 18:57:56 -06:00
wmayer
07e2dc8c9c Part: fix issue found by lgtm: Expression has no effect 2021-12-28 17:38:20 +01:00
Abdullah Tahiri
f7dec6b601 Part: Geometry and Sketcher: GeometryFacade and ExternalGeometryFacade
======================================================================

Change pass-by-value to const reference.

Thanks Kunda!

https://lgtm.com/projects/g/FreeCAD/FreeCAD/alerts/?mode=tree&ruleFocus=2163210742
https://forum.freecadweb.org/viewtopic.php?p=555658#p555658
2021-12-27 21:03:51 +01:00
wmayer
427fe5d1e1 Part: handle removal of function HLRBRep_PolyAlgo::Angle in OCC 7.5 2021-12-21 21:26:00 +01:00
wmayer
ea85cf5e36 Part: expose Poly HLR algorithm to Python 2021-12-21 19:45:01 +01:00
wmayer
73a986714c Part: expose HLR algorithm to Python 2021-12-21 10:49:03 +01:00
wmayer
955fe455cb Part: add function GetCircleCenter from CommandCreateGeo.cpp of the Sketcher module to the Geom2dCircle class in the Part module 2021-12-17 13:01:59 +01:00
wmayer
651a4d7626 Part: set explicit format version number for binary BRep files to support all OCC versions 2021-12-12 01:15:56 +01:00
wmayer
f212a8ef76 Part: set explicit format version number for BRep files to support all OCC versions 2021-12-11 23:31:41 +01:00
luz paz
b6f9f39ffc Fix various typos and grammatical refinements 2021-12-09 08:57:52 -06:00
Abdullah Tahiri
e16b9f47af Part: Geometry - Curve member to calculate the normal at Point
==============================================================

Convenience member function combining closestParameter and normalAt using parameter.
2021-12-07 16:30:53 +01:00
Abdullah Tahiri
8b4276c2cc Part: Geometry - Extend Geometry Curve to query the value at parameter point directly from D0
=============================================================================================

Use the geometry specific D0 to calculate value at parameter point.
2021-12-07 16:30:53 +01:00
wmayer
a05cd50fa5 Part: add exception handling to Face.makeEvolved/Wire.makeEvolved 2021-11-30 20:04:31 +01:00
wmayer
5018af974c Part: implement Part.Wire.makeEvolved and Part.Face.makeEvolved 2021-11-30 18:17:29 +01:00
wmayer
0c933ac70a Part: use of factory method of Vector2dPy 2021-11-14 18:19:34 +01:00
wmayer
9e8516002b Part: fixes #0004774: Datum plane or line is not available in sketch in another body via binder 2021-10-30 22:28:57 +02:00
wmayer
398381c16e Part: for vertex, edge, wire use BRepExtrema_DistShapeShape to check whether point is inside 2021-10-23 16:39:28 +02:00
wmayer
aa19f8b05f Part: adjust orientation of refined face to input faces 2021-10-22 14:11:00 +02:00
jack9603301
67df930184 [Part] Fix null pointer error in sweep operation
When the spine line of the sweep operation of the part workbench depends
on the Sketcher document, if the dependent spine line drawn by this document
is deleted afterwards, the path variable will get a null pointer.
Due to programming errors, the standard judgment of this pointer is ignored, resulting in a crash.
Call IsNull() of the OCC document to determine the legitimacy of the shape.
If it is empty, an error is reported.

Fixes #0004764
2021-10-14 03:54:44 +08:00
wmayer
03be15cc6b Part: fix bug in Part::Tools::getPointNormals for OCCT 7.6 2021-10-09 14:34:04 +02:00
wmayer
74639da997 OCCT: port FreeCAD sources to version 7.6
SMESH is not yet ported
Although FreeCAD code compiles with OCCT 7.6 it doesn't work at the moment
2021-10-09 13:49:02 +02:00
wmayer
66d3dd897f Part: add convenience function to convert TColgp_Array1OfDir to std::vector 2021-10-09 11:37:18 +02:00
wmayer
302568d177 Part: copy ViewProviderPartExt::getNormals to Tools class 2021-10-08 16:55:09 +02:00
wmayer
9b4db7e064 Part: in Part.getFacets() use functions of Tools class 2021-10-08 15:32:41 +02:00
wmayer
442c8d52a1 Part: in TopoShape::getDomains use functions of Tools class 2021-10-08 15:32:19 +02:00
wmayer
08d46b5f88 Part: add methods to get the point normals of the triangulation or surface 2021-10-08 15:28:22 +02:00
wmayer
8e6dab209e Part: change TopoShape::exportFaceSet and TopoShape::exportLineSet to use the functions of the Tools class 2021-10-08 12:43:06 +02:00
wmayer
c9d17ebde2 Part: add convenience functions to retrieve triangulation of a face or edge 2021-10-08 12:41:07 +02:00
wmayer
5bb00636d5 Part: [skip ci] fix build failure when using PCH 2021-10-07 10:19:49 +02:00
wmayer
5593b8499b Part: add function Geometry.toShell 2021-10-06 19:44:53 +02:00