Commit Graph

124 Commits

Author SHA1 Message Date
Zheng, Lei
c1b296dab8 ShapeMapper code from RT branch to new TopoShapeMapper files 2024-01-16 20:11:43 -05: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
liukaiwen
4f8fe8fd4a [cmake] some definitions do not matter build now 2023-09-27 18:17:14 +08:00
andrea
ad4f8783e3 removed unnecesary include into cmake 2023-09-15 17:10:00 -05:00
wandererfan
9905572116 [Part]add scale command & feature 2023-09-07 18:21:56 +02:00
Ajinkya Dahale
27a987949f [Part] Add TopoShapeOpCode.h
Constants to be used in the future.

Apply suggestions from code review

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2023-03-22 22:09:13 +05:30
wandererfan
7c7fcbb33d [Part]add PropertyTopoShapeList 2023-03-01 14:24:40 +01:00
wmayer
1635e7cd91 Part: use separate setting classes for IGES, STEP and OCAF handling 2022-10-04 11:26:33 +02:00
wmayer
8db7ee1051 Part: implement wrapper class around Interface_Static 2022-10-03 19:03:32 +02:00
wmayer
a899f078bd CMake: [skip ci] remove trailing whitespaces 2022-08-24 07:46:07 +02:00
Jonas Bähr
a1776d3e74 Fix build on MacOS-X 10.14: missing Xerces include dir
This undoes most of the Xerces related part of the commits listed below.
The issue resolved here is that the Xerces include dir *is* set in the
CMakeLists.txt of src/Base, but it got removed from various App and Gui
dirs in src/Mod. If those now include a header from src/Base, which
itself includes xercesc, the build fails using Apple clang version 11.0.0
(clang-1100.0.33.17) on Mojave, configured using cmake 3.22.1, with
errors like the following:

In file included from .../src/Mod/Part/App/FeaturePartBoolean.cpp:34:
In file included from .../src/App/Application.h:33:
.../src/Base/Parameter.h:54:10: fatal error: 'xercesc/util/XercesDefs.hpp' file not found
 #include <xercesc/util/XercesDefs.hpp>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Finally, a full list of the commits that introduced this spurious include
dir optimization for reference:
- Drawing: commit 96ad045b91
- Image: commit dde71a21d5
- Import: commit c9d28b542f
- Inspection: commit d41f55f382
- Mesh: commit 19072b0538
- Part: commit fe213a48f0
- PartDesign: commit b037d8e240
- Path: commit f23fa31f42
- Points: commit bec723ba17
- Raytracing: commit 08d4ac63a3
- ReverseEnginering: commit 5ca787cb0e
- Robot: commit bad4809a1c
- Sketcher: commit 3c96daf105
- Spreadsheet: commit 66e8a2bef3
- Start: commit c9dee5e70a
- Surface: commit 6b04215be6
- TechDraw: commit 5e6699e48d
- Test: commit ea5b45b92c
- Web: commit ee6d631531
2022-08-24 07:40:04 +02:00
wmayer
bd5ef26536 Base: add Precision class
and move the Python binding from Part to Base module
2022-07-30 17:10:56 +02:00
wmayer
9a3258c9da Part: move BiArcs algorithm to its own class 2022-06-28 12:42:15 +02:00
wmayer
b70d8d3781 Part: expose ShapeFix_FixSmallSolid to Python 2022-06-21 15:47:27 +02:00
wmayer
4c2946c8a4 Part: expose ShapeFix_FixSmallFace to Python 2022-06-21 15:47:10 +02:00
wmayer
6843a461e6 Part: expose ShapeFix_Wireframe to Python 2022-06-21 15:46:51 +02:00
wmayer
bbecc3f296 Part: expose ShapeFix_SplitTool to Python 2022-06-21 15:46:27 +02:00
wmayer
8c6ffc99e3 Part: expose ShapeFix_WireVertex to Python 2022-06-21 15:46:11 +02:00
wmayer
1ee1aee10e Part: expose ShapeFix_FreeBounds to Python 2022-06-21 15:45:55 +02:00
wmayer
125d5b6360 Part: expose ShapeFix_ShapeTolerance to Python 2022-06-21 15:45:36 +02:00
wmayer
a0eb2e9de7 Part: expose ShapeFix_FaceConnect to Python 2022-06-21 15:45:10 +02:00
wmayer
4b44c54cfa Part: expose ShapeFix_SplitCommonVertex to Python 2022-06-21 15:44:50 +02:00
wmayer
4d4adb932b Part: expose ShapeFix_EdgeConnect to Python 2022-06-21 15:44:30 +02:00
wmayer
8d56879305 Part: expose ShapeFix_Solid to Python 2022-06-21 15:43:31 +02:00
wmayer
4089cbfbf2 Part: expose ShapeFix_Edge to Python 2022-06-21 15:43:13 +02:00
wmayer
87db9dccb5 Part: expose ShapeFix_Shape to Python 2022-06-21 15:42:31 +02:00
wmayer
94f6279a67 Part: expose ShapeFix_Wire to Python 2022-06-21 15:41:44 +02:00
wmayer
b6cd635cc1 Part: expose ShapeFix and ShapeFix_Face to Python 2022-06-21 15:39:09 +02:00
wmayer
f3e941a382 Part: start to expose ShapeFix framework to Python 2022-06-21 15:34:55 +02:00
wmayer
30f8015e71 Part: expose ChFi2d_ChamferAPI to Python 2022-05-29 12:24:32 +02:00
wmayer
f94ab3ec84 Part: expose ChFi2d_AnaFilletAlgo to Python 2022-05-29 11:31:43 +02:00
wmayer
b47f8d2605 Part: move ChFi2d wrappers to own sub-directory 2022-05-29 11:05:55 +02:00
wmayer
b07be87677 Part: expose ChFi2d_FilletAPI to Python and move to ChFi2d module 2022-05-28 11:10:45 +02:00
wmayer
bd853e5ef2 Part: expose ChFi2d_FilletAlgo to Python 2022-05-28 10:37:04 +02:00
Uwe
fe213a48f0 [Part] remove unused Xerces 2022-03-20 19:37:20 +01:00
Uwe
cfdf334b7f [PD] add option to create tapered Pad / Pocket
This PR adds the same functionality as provided by Part Extrude.
The used code parts are sorted out to a new helper function that is used by Part and PartDesign.
2022-02-02 01:04:06 +01:00
wmayer
20b86e55b8 Part: expose Precision to Python 2022-01-17 12:30:45 +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
84c5d22ccb Part: implement Prism as extension 2021-04-05 13:05:59 +02:00
Abdullah Tahiri
ec5976ec28 Part: GeometryMigrationExtension classes
========================================

This is a light-weight c++ only geometry extension to enable migration of information that was stored within
the Part WB and should be migrated to another WB (for example Sketcher WB)

It is designed so that a single extension can migrate different types of data (current and future).

When new data needs to be migrated, first a new enum bit is to be added to the class enum and new data members are to
be added to store the information within GeometryMigrationExtension class.

In the Restore() function restoring the data to be migrated, a GeometryMigrationExtension extension is added to the
geometry to be migrated with the data information and the corresponding enum bit set.

In the object to receive the migration data, onDocumentRestored() it is checked whether an extension of type
GeometryMigrationExtension is present, if yes, it is checked whether a bit used for migration is set and, if yes,
the data is retrieved and the GeometryMigrationExtension extension (preferably) removed from the Geometry object.
2020-12-10 18:34:06 +01:00
wmayer
e1b56f8551 Part: expose BRepFeat_MakePrism to Python 2020-10-16 13:50:29 +02:00
wmayer
9c20ce05ed Part: [skip ci] expose ShapeUpgrade_UnifySameDomain to Python 2020-10-05 16:57:16 +02:00
wmayer
312a4652f6 Part: [skip ci] expose BRepOffsetAPI_MakeFilling to Python 2020-09-30 01:19:30 +02:00
wmayer
00e0e7745c Part: expose GeomPlate algorithm to Python 2020-09-28 18:46:35 +02:00
wmayer
27b6066beb clang/gcc/cmake: move handling of suppressed deprecated-copy warnings from source file to CMake file to more easily support gcc 10 2020-06-09 15:30:42 +02:00
Abdullah Tahiri
a43c29ccd4 Part: Default geometry extensions for boolean and double 2019-07-14 12:37:35 +02:00
Abdullah Tahiri
fb5e8b4df7 Part: GeometryDefaultExtensions template
========================================

Generalisation of code for a default geometry extension in the form of a template.

Default geometry extensions provide a standard interface for an extension having a single stored value (e.g. one int or one string).

Python implementation must be provided separatedly.
2019-07-14 12:37:31 +02:00
Abdullah Tahiri
b5f5d1c32f Part: GeometryStringExtension to extend a geometry by a string 2019-07-14 12:37:30 +02:00
Abdullah Tahiri
7828c34ffe Part: Standard geometry extension adding an integer value 2019-07-14 12:37:30 +02:00