Commit Graph

1696 Commits

Author SHA1 Message Date
Pesc0
a74c6b3391 Part/Toponaming: Pesc0's work replacing ShapeProtector
In realthunder's original version this class was not derived from TopoDS_Shape, but rather duplicated
its interface and wrapped its non-const methods. This resulted in quite a lot of boilerplate, so in
the merged implementation we are now deriving from TopoDS_Shape and only overriding the non-const
methods. The downside is that if OCCT adds or changes methods we will have to add them proactively
to this class so that they don't bypass the TNP code.
2024-01-12 09:57:33 -06:00
bgbsww
8abd09398a Add support for OCCT 7.8.0 (#11909) 2024-01-09 19:47:25 -06:00
Chris Hennes
2dc5e8de5b Part/Toponaming: clang-tidy cleanup of cache calls 2023-12-27 21:16:59 -06:00
Chris Hennes
58e53c1b22 Part/Toponaming: Add original cache methods 2023-12-27 21:16:15 -06:00
Chris Hennes
48a857e808 Part/Toponaming: Clang-tidy cleanup of TopoShapeCache
Part/Toponaming: Move implementions to cpp file
Part/Toponaming: Automated code cleanup
Part/Toponaming: Address boolean blindess with HistoryTraceType
Part/Toponaming: More linter cleanup
Part/Toponaming: Add located and moved methods
Part/Toponaming: Moved and Located
Part/Toponaming: Add missing methods
Part/Toponaming: Add test framework for TopoShapeCache
Part/Toponaming: Add documentation provided by realthunder
Part/Toponaming: Extend tests for TopoShapeCache
Part/Toponaming: Rename getInfo to getAncestry
Part/Toponaming: Fix bug with newer OCCT
Part/Toponaming: Add final tests and tweak naming
Part/Toponaming: Address reviewer comments
2023-12-27 21:16:15 -06:00
Chris Hennes
4077c55fae Part/Toponaming: Add TopoShapeCache base implementation
Copied from RealThunder's TopoNaming branch and modified only as much as required to enable compilation.
2023-12-27 21:16:09 -06:00
Paddle
e685918ea8 PythonConverter: Extend for Hyperbola/Parabola/BSpline 2023-12-20 06:59:47 +01:00
luzpaz
c67562f7c3 Docs: minor tweek to GeometryDoubleExtensionPy.xml
Follow-up to #11709
2023-12-18 07:42:10 -06:00
luzpaz
48c8116948 Docs: minor tweek to GeometryBoolExtensionPy.xml
Capitalize first letter.
2023-12-18 07:41:53 -06:00
sliptonic
1066bb54ce Merge pull request #11693 from RohanMishra315/patch-6
Update ShapeFix_FixSmallFacePy.xml
2023-12-11 11:23:59 -06:00
sliptonic
b2aea637f4 Merge pull request #11683 from chennes/fixTDMissingBOPAlgoBuilder
Part: Add BOPAlgo_Builder.hxx to OpenCascadeAll.h
2023-12-11 11:22:17 -06:00
Rohan Mishra
e3bb0afd34 Update ShapeFix_WirePy.xml
Fix the issue and Update ShapeFix_WirePy.xml.
2023-12-11 17:43:46 +01:00
Rohan Mishra
21e992932d Update ShapeFix_WirePy.xml
Issues #11184

Updated the docs of ShapeFix_WirePy.xml
2023-12-11 17:43:46 +01:00
André Caldas
560898907b Avoids using getNameInDocument() to test if DocumentObject is attached to a Document.
This patch substitutes by isAttachedToDocument() (almost) everywhere where
getNameInDocument() is used for this purpose.

The very few places not touched by this patch demand a (just a little) less trivial change.
When we change the returning type of getNameInDocument() to std::string,
those places will be easily found, because they shall generate a compiler error
(converting std::string to bool).

Rationale:
The fact that getNameInDocument() return nullptr to indicate
that the object is not attached to a document is responsible for lots of bugs
where the developer does not check for "nullptr".

The idea is to eliminate all those uses of getNameInDocument() and, in the near future,
make getNameInDocument() return always a valid std::string.
2023-12-11 17:37:58 +01:00
Rohan Mishra
e89025c413 Update ShapeFix_FixSmallFacePy.xml
Updated the docs of ShapeFix_FixSmallFacePy.xml
2023-12-09 22:24:40 +05:30
Chris Hennes
2008436cc9 Part: Add BOPAlgo_Builder.hxx to OpenCascadeAll.h
Needed by TechDraw DrawProjectSplit
2023-12-07 19:56:06 -06:00
bgbsww
a4db18af56 Default freenet to true for sweep to fix rendering bug 2023-12-01 14:02:49 +01:00
wmayer
d529193f75 Part: use BRepTools::OuterWire to get outer wire of a face
In the past ShapeAnalysis::OuterWire() was used that may fail to determine the correct outer wire.

Forum thread: https://forum.freecad.org/viewtopic.php?t=83122
2023-11-30 12:41:49 +01:00
mwganson
6ea4a743b1 [Part::Mirroring] Add support for mirror plane reference object 2023-11-27 11:17:48 -06:00
bgbsww
08d84fce15 Add readonly length properties to part helix and spiral (#11406)
* Add readonly length properties to part helix and spiral

* Comment to explain non obvious Mass as Length
2023-11-27 10:52:23 -06:00
Chris Hennes
fa65438556 Core: Enable compiling with MSVC /permissive- (#11014)
* Base: Fixes for MSVC permissive-

* App: Fixes for MSVC permissive-

* Gui: Fixes for MSVC permissive-

* Main: Fixes for MSVC permissive-

* Fem: Fixes for MSVC permissive-

* Material: Fixes for MSVC permissive-

* Part: Fixes for MSVC permissive-

* Mesh: Fixes for MSVC permissive-

* Points: Fixes for MSVC permissive-

* Robot: Fixes for MSVC permissive-

* TechDraw: Fixes for MSVC permissive-

* Path: Fixes for MSVC permissive-

* Core; Changes per review comments

* TD: Revision from wandererfan

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-11-27 17:37:29 +01:00
wmayer
c18ecb1a9b Part: fix TopoShapePy::optimalBoundingBox 2023-11-24 15:06:00 +01:00
wmayer
5f3c6b6d1a Part: fix BSplineCurve2dPy::insertKnot 2023-11-24 15:06:00 +01:00
bgbsww
aa6da42ca1 Setting on 89.9 as a limit, enforce in dialog and properties 2023-11-22 10:30:54 +01:00
Pieter Hijma
d91e54dfab Make comments consistent 2023-11-21 16:19:29 +01:00
Pieter Hijma
10c6d64e34 Add documentation for PolyHLRToShape 2023-11-21 16:19:29 +01:00
Pieter Hijma
99f7bc700d Add constructor documentation as well 2023-11-21 16:19:29 +01:00
Pieter Hijma
974651e159 Add documentation for HLRToShape 2023-11-21 16:19:29 +01:00
Pieter Hijma
eeb56dd914 Remove comments from the text field 2023-11-21 16:19:29 +01:00
Pieter Hijma
80aecd0508 Fix a small problem with parameters
This is the same problem as in https://github.com/FreeCAD/FreeCAD/pull/10727.
Apparently it was also present in PolyAlgo.
2023-11-21 16:19:29 +01:00
Pieter Hijma
ef1e119405 Add documentation for HLRBRep.PolyAlgo 2023-11-21 16:19:29 +01:00
Pieter Hijma
bdca56e766 Improve the documentation of HLRBRep.Algo 2023-11-21 16:19:29 +01:00
Pieter Hijma
0d2609bf37 Change <S> to S
Otherwise, it is invalid XML
2023-11-21 16:19:29 +01:00
Rohan Mishra
c0a1f81ca5 Update HLRBRep_AlgoPy.xml
#10728

Updated the API documentation of HLRBRep_AlgoPy.xml.
2023-11-21 16:19:29 +01:00
Chris Hennes
632d5e80ee Part: Add BRepFeat_MakeRevol.hxx to Precompiled header 2023-11-20 21:43:38 -06:00
bgbsww
8cc48c488f Defend against surface not created from invalid face 2023-11-20 13:59:01 -03:00
Rohan Mishra
8d2d3e5315 Update ShapeFix_EdgePy.xml (#11193)
* Update ShapeFix_EdgePy.xml

Issue #11182
---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2023-11-20 10:49:41 -06:00
tomate44
207bcfa80d Part : fix edge creation of Geom2d curves 2023-11-20 12:35:09 +01:00
sliptonic
c83f9273fe Merge pull request #11223 from wwmayer/Part_format_xml
Part: format XML files
2023-11-13 10:52:03 -06:00
Chris Hennes
aaa0db3867 Merge pull request #11231 from DeflateAwning/http-cleanup
Find and replace http://freecad to https://freecad
2023-11-06 11:16:13 -06:00
Chris Hennes
b2f069f8b0 Merge branch 'main' into modernize-type-check 2023-10-31 15:46:18 -05:00
DeflateAwning
8de6db3e97 Find and replace http://freecad.org to https://freecad.org
Find and replace:
http:\/\/(.{0,10})freecad
https://$1freecad
Done in all remaining files (after doing it in SVGs in the last commit)
2023-10-29 22:39:22 -06:00
wmayer
fe82b737e8 Part: format XML files 2023-10-28 22:45:15 +02:00
Roy-043
410d4f9f6a Part: Fix mistake in Part.getShape docstring
For confirmation see:
cad29253a4/src/Mod/Draft/draftguitools/gui_selectplane.py (L198)
2023-10-26 10:32:54 +02:00
Rohan Mishra
fa895df1c9 Update PointConstraintPy.xml
Issue #10729 

Update the API documentation for `src/Mod/Part/App/GeomPlate`
2023-10-26 10:27:12 +02:00
Rohan Mishra
82a74b15c3 Update CurveConstraintPy.xml
Issue #10729

Updated the API documentation for `src/Mod/Part/App/GeomPlate`
2023-10-26 10:26:18 +02:00
Florian Foinant-Willig
eb55f1fe52 Part: modernize type checking 2023-10-23 18:12:03 +02:00
Rohan Mishra
806fdce9b7 Update MakePrismPy.xml
#10773  
Solved the issue and Update the MakePrismPy.xml
2023-10-17 17:45:07 +02:00
Florian Foinant-Willig
afe8e70b86 Part: fix crash with null face 2023-10-05 08:14:50 +02:00
Florian Foinant-Willig
74a31d1473 Part: fix #10868 crash with null edge 2023-10-05 08:14:50 +02:00