Commit Graph

44 Commits

Author SHA1 Message Date
Chris Hennes
cfd41683a5 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
Chris Hennes
068b39092c Part: Wrap PyArg_ParseTupleAndKeywords 2023-08-25 15:34:26 -05:00
wmayer
22e6e2cd40 Part/PD: modernize C++: redundant void arg 2023-08-05 16:50:31 +02:00
wmayer
e0034bed61 Part: fix test failure and add setBounds for backward compatibility 2022-08-23 14:06:47 +02:00
tomate44
bb8f8d4647 [Part] Change BSplineCurve/Surface setBounds() method name to scaleKnotsToBounds() 2022-08-23 12:41:55 +02:00
luz paz
b42c1b32a5 Trim trailing whitespace for Part/App/BSplineSurfacePyImp.cpp 2022-07-27 14:27:08 +02:00
tomate44
0398a684df [Part] BSplineSurface: add setBounds method 2022-07-27 14:27:08 +02:00
tomate44
07805f1a61 [Part] BSplineSurface: fix KnotSequence for periodic BSpline surfaces 2022-07-27 14:14:01 +02:00
Uwe
48e84945ed [Part] remove superfluous nullptr checks 2022-07-17 18:06:21 +02:00
wmayer
74e77f0191 Part: replace PyObject_Not with Base::asBoolean 2022-07-16 14:10:34 +02:00
wmayer
b6494085b4 Part: replace PyObject_IsTrue with Base::asBoolean 2022-07-16 13:31:10 +02:00
Uwe
4119084faf [Part] [skip CI] BSplineSurfacePyImp.cpp: remove unneeded comment 2022-07-08 02:00:02 +02:00
Uwe
7fb0f50f49 [Part] BSpline*: remove unneeded includes
- also sort includes
2022-07-08 01:34:59 +02:00
marioalexis
eaf01ab0c6 Part: Use PyObject_IsTrue in combination with conditional ternary operator 2022-06-22 19:50:03 -04:00
wmayer
6d2d45ceb7 Part: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
Christophe Grellier
67ecfb6a1d Update BSplineSurfacePyImp.cpp
Typo in setVKnot()
2021-08-15 11:16:01 +02:00
luz paz
e0ab0382b3 Part: remove py2 code 2021-04-25 11:29:35 +02:00
wmayer
ed7cdd4c2c Surface: add command to create surface from sections 2020-09-26 16:32:42 +02:00
wmayer
e22e215d16 Part: implement BSplineSurface.buildFromNSections based on GeomFill_NSections 2020-09-25 15:07:47 +02:00
tomate44
b81f654905 Part: remove uIso and vIso methods. Methods from base class GeomSurface will be used instead 2020-09-20 18:25:39 +02:00
wmayer
b7bb0a8e9e Part: [skip ci] check for mults of inner knots when creating B-Spline curve/surface 2020-02-17 15:38:01 +01:00
Zheng, Lei
8426ebe2ba Fix various Py::Object leak 2019-10-08 17:53:20 +02:00
sdh4
8928f863fe Part.BSplineSurface.buildFromPolesMultsKnots(): Fix 'Truth value of an array ... use a.any() or a.all()' when explicit knots or weights provided
Calls to BSplineSurface.buildFromPolesMultsKnots() with explicit knots or weights fail in recent versions of FreeCAD (tested on 0.18.3 with python3) with the message 'The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()'. 

This trivial change follows the pattern used later in the function of explicit comparisons with Py_None, replacing PyObject_Not() and PyObject_IsTrue()  when they are used to determine whether explicit weights or knots have been provided.
2019-08-27 21:48:52 +02:00
wmayer
0d617f97d6 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
Peter Lama
fa4bebf2e0 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
tomate44
645dc7d2ba in approximate, don't autocorrect continuity. Explain requirements in UserDocu instead 2017-03-18 19:01:45 +01:00
tomate44
8da5ea5e2d BSplineSurface approximate, add parametrization type and smoothing algo 2017-03-18 19:01:45 +01:00
looooo
275db827aa py3: Part: App: gathering commits relevant for Mod/Part/App 2017-03-01 17:10:46 +01:00
wmayer
d5e9afa52b py3: ported Part to python3 2017-03-01 16:38:53 +01:00
wmayer
cb73d010bb + port to OCC 7.0 2016-05-14 16:53:27 +02:00
wmayer
4a176cbe29 + fix various warnings 2015-08-29 22:05:09 +02:00
wmayer
c1f96b20b1 + fix strict-aliasing warnings 2015-08-29 19:48:08 +02:00
wmayer
e01fc4cb18 + add method getPolesAndWeights() to NURBS surfaces and curves 2015-05-09 00:58:07 +02:00
Sebastian Hoogen
af50cbf964 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
55984a200f + fix flaws found with code analyzer tool 2014-05-07 13:09:44 +02:00
wmayer
583a830b92 + Fix compiler warnings with OCC 6.6 2013-12-05 23:06:13 +01:00
Sebastian Hoogen
8a703d28ce 0000895: Part.BSplineCurve: allow to set degree and mutliplicites when calling constructor.
Adds the functions:
Part.BSplineCurve.buildFromPolesMultsKnots()
Part.BSplineSurface.buildFromPolesMultsKnots()
2013-10-26 10:46:43 +02:00
wmayer
ad877e1ae1 + Make Python API more pythonic 2013-10-11 13:57:05 +02:00
wmayer
1cdcbfa77a Use PyObject_IsTrue to check argument 2012-12-29 15:59:54 +01:00
wmayer
d669a49574 Add approximate() method to B-spline surface class 2012-07-11 13:31:40 +02:00
wmayer
ddc25e071a Apply patch to add interpolate() method to B-Spline surface class 2012-06-25 11:48:43 +02:00
wmayer
3f2f65fa3e 0000673: BSplineSurfacePy::insertVKnots manipulates UKnots 2012-04-16 17:22:48 +02:00
wmayer
2edd283f4b 0000668: getPole() does not provide proper bound checking 2012-04-12 13:24:48 +02:00
wmayer
120ca87015 + unify DLL export defines to namespace names
git-svn-id: https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk@5000 e8eeb9e2-ec13-0410-a4a9-efa5cf37419d
2011-10-10 13:44:52 +00:00