Abdullah Tahiri
578ea97647
Part: Geometry use CADKernelError exception for OCCT
...
====================================================
Part of the geometry was using CADKernelError and part was using RunTimeError exceptions, so unify criteria.
Runtime is very generic and does not need to stem from OCCT.
- Also rename of a typo basic to basis, to be coherent with OCCT terminology
2018-10-28 18:34:36 +01:00
Abdullah Tahiri
0554944923
Part: Geometry New Bounded-Trimmed-curve inheritance
...
====================================================
The new hierarchy is as this:
GeomArcOfConic:GeomTrimmedCurve:GeomBoundedCurve:GeomCurve
A bounded curve is one having a start and endpoint, like an arc, a line segment, or a b-spline
A trimmed curve is one arising from trimming a basis curve, line an arc or a line segment, but NOT a b-spline.
An arc of Conic is one arising from a conic section, line an arc, but neither a line segment, nor a b-spline.
This new hierarchy enables a more consistent handling of geometry and it is closer to the OCCT hierarchy.
2018-10-28 18:33:58 +01:00
Abdullah Tahiri
e5521fe0e1
Part: Geometry - refactoring of intersection code
2018-10-28 18:33:45 +01:00
Abdullah Tahiri
ae3ad1f84c
Part: Geometry - intersection - checkendpoints
...
===============================================
Extrema algorithms sometimes fails when coincident endpoints
I am not sure if it is a bug in OCCT or it is just not intended.
This commits adds an extra check to add endpoints if within tolerance.
https://forum.freecadweb.org/viewtopic.php?f=10&t=31700
2018-10-28 18:33:32 +01:00
Abdullah Tahiri
e189ee78c9
Part: Geometry GeomTrim Geomline segment type
...
=============================================
Make line segment inherit from GeomTrim. This allows seamless management of trimmed curves.
2018-10-28 18:33:19 +01:00
Abdullah Tahiri
22f8c12235
Part: Geometry intersect routines throw when OCCT throws
2018-10-28 18:32:42 +01:00
Abdullah Tahiri
c3592c8ff4
Part: Geometry Arcs inheriting from GeomTrimmedCurve
2018-10-28 18:32:15 +01:00
Abdullah Tahiri
e761180872
Part: Geometry refactoring
...
==========================
python c+ wrapper to use twin class c++ function instead of duplicating the code
2018-10-28 18:31:35 +01:00
Abdullah Tahiri
90ae032d6d
Part: Geometry - improvements/bug fixes
...
=======================================
routine for closest parameter to point was failing on endpoints. The former version
used the parameter of the basis curve, which sometimes was giving parameter values
incoherent. This version uses distance to endpoints when a projection on the trimmed
curve can not be found.
2018-10-28 18:31:22 +01:00
Abdullah Tahiri
8a134466ed
Part: New routines for curve intersection
2018-10-28 18:31:06 +01:00
wmayer
d88860a4c1
rework error handling mechanism
2018-10-24 19:38:43 +02:00
wmayer
f5a920fed2
avoid throwing exception in intersectCC
2018-10-05 22:17:20 +02:00
wmayer
348ed301de
avoid re-throwing an exception in case normal is not defined
2018-10-04 23:31:55 +02:00
wmayer
6bcc7e6315
fixes 0003571: Offset3D of volumes intersection is not solid
2018-09-30 22:40:32 +02:00
wmayer
111a13a578
fix GeometryPy::setConstruction
2018-09-29 21:36:07 +02:00
wmayer
1c646c9488
fixes 0003427: Measurement tool measures wrongly
2018-09-26 16:37:00 +02:00
wmayer
c345e4e728
fixes 0003469: FreeCAD crashes on edge selection during fillet edge operation on extruded geometry
2018-09-25 22:51:33 +02:00
wmayer
6c87152d36
fixes 0003333: Wrong behaviour of fuse operation
2018-09-25 17:53:37 +02:00
wmayer
3a521917ef
fix possible crash when aborting geometry checker
2018-09-19 13:50:44 +02:00
wmayer
072d05725b
fix compiler warning, fix build failure with older OCCT versions
2018-09-17 10:20:03 +02:00
tomate44
b2c9833c9f
add a check to BSplineCurve.segment()
2018-09-17 10:02:04 +02:00
wmayer
70aa8e056b
expose more methods of Geom_Curve to Python
2018-09-15 11:26:26 +02:00
DeepSOIC
e7485effb4
Part, PartDesign, Attacher: fix a few problems with infinite shapes
...
To throw an error instead of returning a semi-infinite result that kills rendering.
fixes #3439
2018-09-13 13:12:55 +02:00
DeepSOIC
d91765a79c
Part: Attacher: fix flip-sides for O-X-Y-like attachment modes
...
fixes #2519
2018-09-13 13:03:06 +02:00
wmayer
aef87aeec5
Ignore key events in dialogs and let parent task panel handle them
...
The affected dialogs are:
* Texture mapping
* Cross-sections
* Extrusion
* Revolution
2018-09-13 11:13:33 +02:00
wmayer
47c6e294f6
fix build failure for OCCT < 7.0
2018-09-05 10:56:56 +02:00
wmayer
68b57d659a
add optional parameters to copy method to copy topology and/or triangulation
2018-09-04 23:17:25 +02:00
Christophe Grellier
56d5305edf
add Const to ancestorsOfType
2018-09-03 22:06:46 +02:00
Michal Ulianko
2e2b8cba6a
py3.7 fix
...
PyUnicode_AsUTF8() returns const char* in py3.7 instead of char*. Making
changes to reflect that which should also be safe in
other Python versions.
2018-09-01 22:44:39 +02:00
wmayer
1d11f742ca
now each module registers its unit tests itself
2018-08-28 13:14:16 +02:00
luz.paz
f6de3eac88
Whitespace formatting
2018-08-26 17:30:44 +02:00
luz.paz
53e122a75a
Misc. typo fixes
...
Found via `codespell`
2018-08-26 17:30:44 +02:00
wmayer
498040e9ee
Part sweep now accepts compounds of edges that build a wire
2018-08-26 17:02:01 +02:00
wmayer
908e680a3e
Part loft now accepts compounds of edges that build a wire
2018-08-26 16:49:48 +02:00
wmayer
303b7f41cb
CMP0050: make Part module aware of cmake policy
2018-08-20 16:54:23 +02:00
wmayer
5a380af1d7
remove ambiguous function setTolerance, use Tolerance attribute instead
2018-08-19 14:31:04 +02:00
wmayer
1c7a41af58
fix -Wignored-qualifiers
2018-08-19 12:38:57 +02:00
wmayer
cd02aac795
fix -Wparentheses
2018-08-19 12:28:05 +02:00
wmayer
05089339cd
fix -Wabsolute-value
2018-08-17 09:47:38 +02:00
wmayer
6ea3ad3ed9
do not show dialog of progress indicator for OCCT < 6.9.0
2018-08-17 08:10:16 +02:00
wmayer
0eb432ddb7
BOPAlgo supports progress indicator since version 6.9.0
2018-08-15 09:09:44 +02:00
wmayer
23af852ad9
add progress indicator to BOP check task panel
2018-08-14 23:51:02 +02:00
Mark Ganson TheMarkster
176820c042
use parallel mode of BOPCheck class
2018-08-13 10:10:27 +02:00
wmayer
a7f261dc13
fix warnings
2018-08-08 18:02:59 +02:00
wmayer
ddfa3c8843
remove kwd argument for functions only with flag METH_VARARGS
2018-08-08 17:39:32 +02:00
Markus Lampert
e13c09235f
Changed all catch types to references for polymorphic exceptions.
2018-08-08 15:45:30 +02:00
luz.paz
424cd49398
Typos and whitespace fixes
2018-08-07 11:13:31 -04:00
wmayer
4bf5a5f3b3
backport to OCCT < 6.8
2018-08-07 16:56:33 +02:00
Zheng, Lei
4028057b3c
PropertyPartShape: remove CopyShapeOnSave parameter
2018-08-06 19:01:37 +02:00
Zheng, Lei
94940c8471
PropertyPartShape: fix brep shape saving without copy
2018-08-06 19:01:09 +02:00