wmayer
ba27d6d92d
Part: Add overloaded methods of GeomBSplineCurve::approximate
2024-04-03 18:06:00 +02:00
bgbsww
f3c9b8ee97
Delinting pass
2024-02-03 18:33:07 -05:00
Zheng, Lei
728a880078
Transfer in Geometry.x changes from RT branch
2024-02-01 17:48:32 -05:00
Paddle
e685918ea8
PythonConverter: Extend for Hyperbola/Parabola/BSpline
2023-12-20 06:59:47 +01:00
Paddle
1c8f49ee67
Adds a small convenience function to get arc of circle angle.
2023-09-18 21:33:24 +02:00
wmayer
9f456d712b
modernize C++: use equals delete
2023-08-10 17:29:05 +02:00
wmayer
91048d7900
Part: fixes to create a NURBS for the arc of a conic
...
See forum: https://forum.freecad.org/viewtopic.php?t=75846
2023-02-12 19:45:00 +01:00
Abdullah Tahiri
7fcee31c07
Part/Sketcher: Geometry/Geometry facade pass by const-reference instead of by value
2023-01-09 17:13:26 +01:00
Ajinkya Dahale
4d2837a6c2
[Part] Add/change some methods in GeomBSplineCurve
...
Add `setPeriodic` to turn a b-spline periodic.
Allow `join` to join any bounded curve not just b-spline.
2022-12-04 08:17:20 +01:00
berniev
6953310116
Mod: Single arg ctors must be explicit
2022-08-24 16:55:20 +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
wmayer
2062f9ce87
clang: fix warnings [-Winconsistent-missing-override]
2022-08-09 17:36:25 +02:00
berniev
ddafb98813
Mod: Use override etc 2
2022-08-09 12:52:26 +02:00
berniev
da9ebc572f
Mod: redundant void 2
2022-08-08 10:27:50 +02:00
tomate44
7328f2f302
[Part] BSplineSurface: add setBounds method
2022-07-27 14:27:08 +02:00
Uwe
fd68d0d947
[Part] Geometry*: remove unneeded includes
...
- also sort includes
2022-07-04 10:25:05 +02:00
wmayer
9a3258c9da
Part: move BiArcs algorithm to its own class
2022-06-28 12:42:15 +02:00
wmayer
9de8b33bb4
Part: fix GeomBSplineCurve::toBiArcs
...
If tangent of start and end point are parallel then also check a tangent in between to make sure that it can be considered a straight line
See https://forum.freecadweb.org/viewtopic.php?f=8&t=69710
2022-06-28 11:26:35 +02:00
Abdullah Tahiri
cd208c5477
Part: Geometry - Add Ellipse minor radio convenience function
2022-06-25 19:03:11 +02:00
Abdullah Tahiri
6a06f60ee3
Part: Geometry - function to get the conic axis direction
2022-06-25 19:03:11 +02:00
Benjamin Alterauge
ad8bb4dc69
GeomBSplineCurve: Add interpolate without tangents
...
Now with description
Periodic selectable
2022-06-24 02:25:55 +02:00
wmayer
9252f5f9ec
Part: issue #6488 : Cone surface returns wrong dv derivative
...
This is a workaround to fix a bug in ElSLib::ConeDN
2022-03-01 14:59:26 +01:00
Ajinkya Dahale
978f579870
[Part] Support insertion of knots in b-splines
2022-01-09 11:33:53 +01:00
Abdullah Tahiri
f7dec6b601
Part: Geometry and Sketcher: GeometryFacade and ExternalGeometryFacade
...
======================================================================
Change pass-by-value to const reference.
Thanks Kunda!
https://lgtm.com/projects/g/FreeCAD/FreeCAD/alerts/?mode=tree&ruleFocus=2163210742
https://forum.freecadweb.org/viewtopic.php?p=555658#p555658
2021-12-27 21:03:51 +01:00
Abdullah Tahiri
e16b9f47af
Part: Geometry - Curve member to calculate the normal at Point
...
==============================================================
Convenience member function combining closestParameter and normalAt using parameter.
2021-12-07 16:30:53 +01:00
Abdullah Tahiri
8b4276c2cc
Part: Geometry - Extend Geometry Curve to query the value at parameter point directly from D0
...
=============================================================================================
Use the geometry specific D0 to calculate value at parameter point.
2021-12-07 16:30:53 +01:00
Tomas Pavlicek
4d6b1f3eb8
Sketcher - Add new Split Edge action
2021-04-24 14:30:35 +02:00
Abdullah Tahiri
2afcbff0d6
Part: Geometry - Add function to trim a B-Spline
...
================================================
Supports both non-periodic and periodic case
2021-03-21 06:56:23 +01:00
Abdullah Tahiri
324f6d3e26
Part: Geometry - BSpline - fix weight assignment
...
================================================
If during assignment of weights (during the for loop iteratively setting the poles) all weights
become (temporarily) equal even though weights does not have equal values
OCCT will convert all the weights (the already assigned and those not yet assigned)
to 1.0 (nonrational b-splines have 1.0 weights). This may lead to the assignment of wrong
of weight values.
The work-around is to temporarily set the last weight to be assigned to a value different from
the current value and the to-be-assigned value for the weight at position last-to-be-assign but one.
Fixes:
https://forum.freecadweb.org/viewtopic.php?p=478701#p478702
2021-02-18 17:28:38 +01:00
Abdullah Tahiri
117c63ad21
Part: Geometry - BSplineCurve - add IsRational member function
2020-12-19 11:58:54 +01:00
Abdullah Tahiri
395a0f19b4
Part/Sketcher - Construction Migration - step 3: Removal of Geometry construction data member
...
=============================================================================================
This commits removes the Geometry construction data member and adapts sketcher code to use
GeometryFacade to access construction information via the SketchGeometryExtension.
2020-12-10 18:34:06 +01:00
Abdullah Tahiri
6a02496860
Part: Geometry - Add non-const getters for extensions
2020-12-10 18:34:06 +01:00
Abdullah Tahiri
90dea635ac
Part: Geometry refactor member copy
...
===================================
Encapsulate Part::Geometry data member copy process in a single function (copyNonTag).
Part::Geometry derived classes need not know the specifics of the data member of Part::Geometry.
Change the delegation of the copy of extensions from clone() to copyNonTag. Because clone() relies on
copy() and now copy() of Part::Geometry data member relies on copyNonTag(), there is no actual change
to the clone() functionality, but the copy() funcionality gains the copy of the extensions via copyNonTag().
2020-12-10 18:34:06 +01:00
wmayer
f4aceec54b
Part: [skip ci] make arguments const references
2020-11-03 13:12:23 +01:00
Abdullah Tahiri
5b415f6d74
Part: Geometry extensions constness correction
2020-11-03 12:01:22 +01:00
Abdullah Tahiri
33b4d00872
Part: Geometry - refactor py functions into class for code reuse
2020-11-03 12:01:22 +01:00
Abdullah Tahiri
1f46b72491
Part: Geometry - encapsulate construction access
2020-10-25 03:52:51 +01: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
218d61768a
Part: converter from Adaptor3d_Curve to GeomCurve
2020-09-28 14:53:42 +02:00
wmayer
a6c55acdb1
Part: improve Python interface
...
+ rename getCurve2dFromGeom2d to makeFromCurve2d
+ add function makeFromCurve and makeFromTrimmedCurve like makeFromSurface
+ implement OffsetCurve.BasisCurve
+ fix memory leak in BRepOffsetAPI_MakePipeShellPy
2020-09-27 23:34:45 +02:00
wmayer
a5899f3892
Part: [skip ci] return std::unique_ptr from Part::makeFromSurface() to avoid memory leaks
2020-08-29 23:56:12 +02:00
Abdullah Tahiri
5a435f8d84
Part: geometry extensions minor code clean up
2019-07-14 12:37:35 +02:00
Abdullah Tahiri
11793ba0b2
Part Geometry: get an extension from type or name, also from python
2019-07-14 12:37:33 +02:00
Abdullah Tahiri
afbe1df322
Part:: Geometry container extend hasExtension to type and name
2019-07-14 12:37:33 +02:00
Abdullah Tahiri
854452e2e1
Part: Geometry - methods to remove extensions by name and type
2019-07-14 12:37:33 +02:00
Abdullah Tahiri
9bb2210c92
Part: Geometry extensions set interface
...
=======================================
unique_ptr is a move only type. Therefore it may only take an rvalue.
It does not make sense a pass by value for move only types (Item 41).
2019-07-14 12:37:31 +02:00
Abdullah Tahiri
1e2c627f26
Part: Excise GeometryExtension from Geometry
2019-07-14 12:37:30 +02:00
Abdullah Tahiri
aedfb6a6a3
Geometry Extension based on smart pointers
2019-07-14 12:37:28 +02:00
Abdullah Tahiri
2400d63d70
Part: Geometry Extensions
2019-07-14 12:37:28 +02:00