Commit Graph

156 Commits

Author SHA1 Message Date
wmayer
8cbd92d874 port to MSYS2/clang 2021-09-19 19:49:44 +02:00
Benjamin Nauck
8441f0f690 [Path] Use std::shared_ptr instead of boost::shared_ptr
There's no need to use boost version when stl has support for shared_ptr
2021-03-06 19:32:03 +01:00
wmayer
0d5b38385c [skip ci] Do not throw plain C string as exception 2021-02-06 15:52:21 +01:00
Patrick F
6a79225066 Added missing attribute 2021-01-02 01:46:28 +01:00
Mateusz Skowroński
98f63ba60f Fix build warnings from deprecated Boost headers (they are used internally by Boost). Thanks @wwmayer for the hint. 2020-12-29 10:20:53 +01:00
Bryan Bendall
d8ebf1bb30 Path: Added option for the finishing pass of the adaptive op 2020-12-18 08:03:42 -05:00
luz paz
60c055e62d Path: Fix header uniformity and remove trailing whitespace
This PR fixes header uniformity across all Path files. It also removes all trailing whitespace.
2020-11-05 19:57:21 +01:00
wmayer
1c9573e8d2 dxf: [skip ci] Coverity: Buffer not null terminated 2020-09-14 14:37:20 +02:00
wmayer
e079e7a7bb LGTM: [skip ci] fix: Non-virtual destructor in base class 2020-07-24 19:30:12 +02:00
wmayer
c4bb1ff762 Coverity: Copied into fixed size buffer 2020-07-20 17:34:25 +02:00
wmayer
083d0e012f Coverity: Invalid printf format string 2020-07-20 17:34:23 +02:00
wmayer
730154a684 boost 1.73.0: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated 2020-06-12 17:51:33 +02:00
Gabriel Wicke
86cd9f2124 Path: Opt into automatic git newline normalization
Avoid spurious diffs from inadvertent newline changes by letting git
normalize newlines in the path module as well, just as a list of other
modules including Draft already do.

This effectively standardizes all checked-in code to Unix newlines, but
checkouts might use CRLF if that is the user preference.
2020-05-31 08:33:29 -07:00
luz.paz
1663fbb1cd [skip ci] Fix typos in Path WB
Found via 
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml
```
2020-04-01 13:28:48 +02:00
luz.paz
ea0868a433 Fix typos and some trailing whitespace
Found via:  
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,currenty,dof,doubleclick,dum,eiter,elemente,feld,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml
```
2019-12-03 12:22:59 +01:00
asapelkin
55e758c2f9 used make_shared and make_unique for creating shared pointers 2019-11-21 18:51:43 +01:00
asapelkin
ced8100ab9 use emplace_back instead of push_back where justified 2019-11-21 14:48:09 +01:00
howetuft
5807ee2022 Fix -Wclass-memaccess warning
Replace C-style memset with C++ value-initialization/assignment (smarter and safer: see https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#slcon3-avoid-bounds-errors)
2019-11-18 12:32:27 +01:00
howetuft
3e5d3460c7 Fix -Wdeprecated-copy warnings (rule of 5/3/0)
Fix -Wdeprecated-copy warnings in various places. Consists in enforcing
rule of five/three/zero (https://en.cppreference.com/w/cpp/language/rule_of_three)
mainly by deleting redundant copy constructors or copy assignment operators
that replicate default constructors/operators, or more rarely by adding
missing copy/move constructors/operators.
See also https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c20-if-you-can-avoid-defining-default-operations-do
2019-10-20 17:02:17 +02:00
wmayer
e48c52c480 force strict ISO C++ (-Wpedantic)
for Drawing, Image, Inspection, Mesh, MeshPart, Part, Path, Points, Raytracing, ReverseEngineering, Spreadsheet, Start, Surface, Web

TODO: fix several -Woverflow in area
2019-09-18 11:32:42 +02:00
kreso-t
614c071d3e PathAdaptive: Increased accuracy for small tools 2019-09-07 20:00:35 +02:00
luz.paz
7af7c10cf1 Fix misc. typos, whitespace, and http:// to https:// issues 2019-09-03 11:11:43 -03:00
Zheng, Lei
cfc6c0ee89 Path changes
* Relaxed valid base shape requirement, as long as it can return a
  shape using part.getShape()

* Improve ViewProviderPath performance by sharing the same selection
  observer

* Relocate libarea binary installation
2019-08-17 15:15:48 +02:00
kreso-t
3bb20a9322 PathAdaptive: bugfix
fix for "path to nowhere" that occurs on some enviroments
2019-07-23 23:07:34 +02:00
wmayer
cb53719821 Fix a couple of clang compiler warnings:
-Wunused-variable
-Winconsistent-missing-override
-Wdelete-non-virtual-dtor
-Wunused-private-field
-Wformat
2019-06-23 15:19:12 +02:00
wmayer
3fa43e8b9c fix some compiler warnings 2019-05-26 14:35:09 +02:00
lo
069746975c cmake: manually add dynamic_lookup flag to area-target 2019-05-24 14:37:33 +02:00
lo
1922c84ca0 cmake: add option to disable linking of python extension modules to python-libraries 2019-05-24 14:37:33 +02:00
MA-DEVELOP\apeltauer
7f827874f4 pybind11 mod 2019-04-04 23:37:12 +02:00
luz.paz
ad0ee86589 Misc. source comment typos 2019-03-22 10:44:14 -03:00
wmayer
21c1301df1 PVS: V794 The assignment operator should be protected from the case of 'this == ...' 2019-03-13 12:38:46 +01:00
wmayer
7e482a5002 PVS: V730 Not all members of a class are initialized inside the constructor 2019-03-12 18:33:25 +01:00
wmayer
61eeca41e1 fix -Wmaybe-uninitialized 2019-03-03 15:04:24 +01:00
wmayer
3e12a59d41 fix several Py3 issues 2019-01-03 18:11:37 +01:00
kreso-t
0b6bd3c2ae Path: Adaptive - bugfix
fix for path cleaning, related to uncleared regions
2018-12-11 09:10:08 -03:00
wmayer
4accbb257c Fix scan coverity issues:
CID 184299:  Null pointer dereferences  (FORWARD_NULL)
CID 184297:  Error handling issues  (UNCAUGHT_EXCEPT)
CID 184296:  Uninitialized members  (UNINIT_CTOR)
CID 184292:  Uninitialized members  (UNINIT_CTOR)
2018-11-13 13:20:16 +01:00
Zheng, Lei
b6c0cf8ce5 Path.Area: minor optimization 2018-11-06 12:02:12 -03:00
kreso-t
4032bd302a Path: Adaptive - fix for path cleaning
- fix for side-effect introduced by last change
(completely collinear paths were filtered out)
2018-10-29 23:29:08 +01:00
kreso-t
9d60ced83d Path: Adaptive - finishing path improvements
- fixed bug in path cleaning (artifacts on the finish path)
- increased path discretization resolution
2018-10-29 10:28:54 -03:00
kreso-t
b8c030066b Path: Adaptive - adjustments to path smoothing 2018-10-04 16:23:20 +02:00
kreso-t
90315b3752 Path: Adaptive - Small adjustment to link path cleaning 2018-09-29 18:12:45 +02:00
kreso-t
c4c9ce85e4 Path: Adaptive - small performance improvement
- related to linking path smoothing
2018-09-29 18:12:28 +02:00
kreso-t
51f1cabadb Path: Adaptive - improvements and bug fixes
- more accurate path smoothing
- fix for missing helix lead-in in some cases
- fix for cleaning of helix center point
- increased max allowed step-over to 75%
2018-09-29 18:12:09 +02:00
kreso-t
cdbb902ae8 Fix for crash on windows env. 2018-09-26 17:05:29 +02:00
kreso-t
e6abbef296 Path: Adaptive - small improvement
- tendency to join cuts when possible
2018-09-26 17:05:05 +02:00
kreso-t
f24b838b57 Path: Adaptive - enhancements and bug fixes
- more accurate path cleaning
- fix for uncleared area remaining
- linking paths smoothing
2018-09-23 10:45:45 +02:00
kreso-t
2104222f45 Path: Adaptive - fix for profiling operation
- improved handling for sharp corners for profiling op.
2018-09-19 18:29:18 +02:00
kreso-t
214b45a180 Path: Adaptive - enhancements and bug fixes
- cleanup & spelling corrections
- lead-in/lead-out improvements
- safer transition of linking path into lead-in/cut
- self-intersection check for keep tool down path
- additional perf. optimisations by parameter tuning
2018-09-19 18:28:48 +02:00
kreso-t
b1fb3b02d1 Fix for compiler warnings 2018-09-17 09:57:47 +02:00
kreso-t
a76dfc6254 Path: Adaptive - small enhancement
- improved handling in spiky corners
2018-09-17 09:57:47 +02:00