Commit Graph

57 Commits

Author SHA1 Message Date
wmayer
312975edba Part: modernize C++: use range-based for loop 2023-08-16 21:56:32 -05:00
wmayer
0af4990817 modernize C++: make unique 2023-08-07 19:51:30 -06:00
Ajinkya Dahale
acb42e4109 [Part] Limit periodic B-spline degree to number of poles
This leads to issues down the line in Sketcher. If there is a reason this should
be permitted within Part, then Sketcher needs to be adjusted.
2023-01-16 16:45:17 +01:00
wmayer
df8e661ddf Part: [skip ci] improve whitespaces 2022-08-23 13:07:10 +02:00
tomate44
c86490eb15 [Part] Change BSplineCurve/Surface setBounds() method name to scaleKnotsToBounds() 2022-08-23 12:41:55 +02:00
tomate44
e3dd67ad9f [Part] Add setBounds method to BSplineCurve
and change BSplineSurface.setBounds() to use dedicated OCCT function
2022-08-23 12:41:55 +02:00
berniev
da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
wmayer
f34a814ead Part: replace PyObject_Not with Base::asBoolean 2022-07-16 14:10:34 +02:00
wmayer
8ae3185e3b Part: replace PyObject_IsTrue with Base::asBoolean 2022-07-16 13:31:10 +02:00
Uwe
47460b632c [Part] BSpline*: remove unneeded includes
- also sort includes
2022-07-08 01:34:59 +02:00
wmayer
c955372ecf cppcoreguidelines-pro-type-union-access
According to https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md using union for type-punning is undefined behaviour.
 Replace it with std::memcpy
2022-06-24 14:29:50 +02:00
marioalexis
ad0f1147f7 Part: Use PyObject_IsTrue in combination with conditional ternary operator 2022-06-22 19:50:03 -04:00
wmayer
068c0e5a98 Part: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
luz paz
c69f245d6f Part: remove py2 code 2021-04-25 11:29:35 +02:00
wmayer
c5d5d69c91 Part: [skip ci] add method to approximate a B-spline curve with a given max. degree 2020-10-23 00:06:31 +02:00
wmayer
48744aa9b5 Part: [skip ci] check for mults of inner knots when creating B-Spline curve/surface 2020-02-17 15:38:01 +01:00
asapelkin
e951094af9 use emplace_back instead of push_back where justified 2019-11-21 14:48:09 +01:00
Zheng, Lei
71c54272a0 Fix various Py::Object leak 2019-10-08 17:53:20 +02:00
Abdullah Tahiri
a56658489b Part: Make 3rd party libraries into PCH 2019-05-02 07:09:22 +02:00
wmayer
f9ca7d62c2 fix compiler warning, fix build failure with older OCCT versions 2018-09-17 10:20:03 +02:00
tomate44
f6d9b692be add a check to BSplineCurve.segment() 2018-09-17 10:02:04 +02:00
luz.paz
505488c4f9 Misc. typos
Found via `codespell`
2018-04-25 09:41:33 -03:00
luzpaz
706141b967 Make uniform the use of B-spline visible to users
Forum thread: https://forum.freecadweb.org/viewtopic.php?f=8&t=25411
This commit does not include fixes to source  comments unless they were 'doxygenated'.
No .xml files were altered either.
2017-11-17 19:30:37 -05:00
wmayer
949c86d364 Port to occ7.2:
+ Standard_Failure::Caught() is now marked as deprecated and should be replaced with standard C++ exception handling
2017-09-01 16:27:46 +02:00
wmayer
41051e9dd8 implement object serialization for BSplineCurve class 2017-06-22 22:42:01 +02:00
Peter Lama
a75a98ef27 Use OCCT Handle macro for Handle_ classes
This is the result of running OCCT's upgrade script provided
with OCCT 7.0. See
https://www.opencascade.com/content/freecad-occt710-and-windows-rtti-data-missing#comment-form
and
https://www.forum.freecadweb.org/viewtopic.php?f=4&t=21405&start=120#p169019
for why this is necessary for OCCT >= 7.1
2017-04-20 12:27:34 +02:00
Abdullah Tahiri
d825c4cb61 Part: BSplineCurve Python creation change for greater flexibility 2017-04-08 12:58:06 +02:00
tomate44
3e195d5d94 in approximate, don't autocorrect continuity. Explain requirements in UserDocu instead 2017-03-18 19:01:45 +01:00
tomate44
281e5935fb BSplineCurve approximate, fix function sometime failing with smoothing algo 2017-03-18 19:01:45 +01:00
looooo
a388a9d72d py3: Part: App: gathering commits relevant for Mod/Part/App 2017-03-01 17:10:46 +01:00
wmayer
ed23c0d3c4 py3: ported Part to python3 2017-03-01 16:38:53 +01:00
wmayer
787b930a58 improve exception handling in BSplineCurvePy class 2017-02-18 12:53:36 +01:00
wmayer
72375db71b clear error state when creating spline 2017-02-18 12:30:00 +01:00
Abdullah Tahiri
1076b70056 Part: BSpline creation method corrected as per Werner's indication
==================================================================

http://forum.freecadweb.org/viewtopic.php?f=10&t=19700
2017-01-12 22:44:07 +01:00
Abdullah Tahiri
8ea8699d14 Part: Enable BSpline creation from poles 2017-01-07 02:00:12 +01:00
wmayer
9ff8260608 + remove GeomHermiteCurve class and add its methods to GeomBSplineCurve 2016-10-29 15:08:17 +02:00
wmayer
f944ab3846 replace deprecated auto_ptr with unique_ptr 2016-09-22 13:01:20 +02:00
tomate44
f13f57ef3d Implements more arguments to BSplineCurve.approximate 2016-06-13 14:18:35 +02:00
wmayer
33c9b9d0dd + fix mistake in BSplineCurve.interpolate for Tangents/TangentFlags argument 2016-05-25 14:22:22 +02:00
wmayer
8cfabdb579 + support of tangents in BSplineCurve.interpolate 2016-05-24 23:15:17 +02:00
wmayer
23e97bbb2c + issue #0002560: Part BSplineCurve alternate interpolate method 2016-05-23 14:14:50 +02:00
wmayer
bca7a1866e + port to OCC 7.0 2016-05-14 16:53:27 +02:00
wmayer
1a12d109e9 + fix strict-aliasing warnings 2015-08-29 19:48:08 +02:00
wmayer
fbdfeef2a3 + add method getPolesAndWeights() to NURBS surfaces and curves 2015-05-09 00:58:07 +02:00
wmayer
960be3c809 + fix memory leak in toBiArcs 2015-04-05 17:19:04 +02:00
wmayer
79de781304 + remove leftover 2015-04-05 16:50:58 +02:00
wmayer
1d1e71b52f + integrate biarcs algorithm 2015-04-05 14:10:03 +02:00
Sebastian Hoogen
5e51a6cdf7 fixes #0001422: Subclass Exception
inherit Base.FreeCADError form RuntimeError
inherit Part.OCCError from Base.FreeCADError
inherit OCCDomainError from Part.OCCError
inherit OCCRangeError from Part.OCCError
inherit OCCConstructionError from OCCDomainError
inherit OCCDimensionError from OCCDomainError
Added PY_CATCH_OCC macro
replace PyExc_Exception
use FreeCADError in makeWireString
catch exception in BSplineCurve.increasedegree
2014-09-17 11:15:56 +02:00
wmayer
d62ed23068 + Fix compiler warnings with OCC 6.6 2013-12-05 23:06:13 +01:00
wmayer
5678247628 0000895: Part.BSplineCurve: allow to set degree and mutliplicites when calling constructor. 2013-10-27 12:56:05 +01:00