Commit Graph

225 Commits

Author SHA1 Message Date
phaseloop
f0e9a6475f CAM: change design of origin axis (#20358)
* change design of CAM origin axis

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* change Inventor example comment

* move to SoFCPlacementIndicatorKit - increase stock point size display

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Use So3DAnnotation for origin axis

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-04-07 20:04:27 +02:00
bdieterm
b9aa5c5d83 CAM: fix context menu callbacks for Qt6 2025-04-07 10:50:02 -05:00
Kacper Donat
35a9673a75 Base: Rename Base::freecad_dynamic_cast into freecad_cast
This is to make it shorter and easier to use. QT does the same thing
with their qobject_cast.
2025-04-07 10:32:28 -05:00
luzpaz
7a12d2f96f Fix various typos (#20651)
* Fix various typos
Found via `codespell -q 3 -L aci,addmin,ake,aline,alle,alledges,alocation,als,ang,anid,anormal,anull,aply,apoints,ba,beginn,behaviour,bloaded,bottome,brushin,bu,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childrens,childs,colour,colours,commen,connexion,currenty,documentin,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,findn,fle,freez,graphin,groupe,hist,iff,incrementin,indexin,indicies,initialisation,initialise,initialised,initialises,initialisiert,inout,ist,itsel,kilometre,leadin,localy,lod,mantatory,matc,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oce,oder,ontop,orgin,orginx,orginy,ot,pard,parm,parms,pres,programm,que,rady,recurrance,renderin,re-use,re-used,re-using,rin,ro,rougly,sectionin,seperator,sergent,serie,shs,sinc,siz,som,stpo,strack,substraction,te,technic,thist,thru,tread,tru,ue,uint,unter,uupper,uptodate,vas,vertexes,vew,wallthickness,whitespaces -S "./.git,*.po,*.ts,*.pdf,./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,./src/Base/StackWalker.cpp,./build/doc/SourceDoc,./tools/build/WindowsInstaller/lang,./src/Mod/TechDraw/Templates/locale"`

* [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>
2025-04-05 22:58:20 -05:00
Kacper Donat
db08735e10 Merge pull request #20559 from hyarion/refactor/add-limits
Add `#include <limits>` in all files where it is used
2025-04-01 17:11:50 +02:00
Benjamin Nauck
df6a76ba84 CAM: Add #include <limits> where used 2025-03-31 23:50:49 +02:00
sliptonic
f1258e36b2 Merge pull request #20169 from phaseloop/vcarve-speed
[CAM] Improve Vcarve path generation speed on complex shapes
2025-03-31 23:32:42 +02:00
Andrea
85179089b1 [mod] clean
code clean
2025-03-31 11:01:39 -05:00
Benjamin Nauck
a7b71335b7 CAM: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:38 +01:00
Lawrence Woestman
1dddbb2aa5 CAM: Enabled coolant in the refactored_grbl post, with test 2025-03-27 07:31:13 +01:00
phaseloop
40ace3241a CAM: fix estlcam postprocessor (#20407) 2025-03-25 10:24:27 +01:00
Chris Hennes
50bc99c3eb Merge pull request #20428 from pieterhijma/fix-doxygen-structural-warnings
Fix doxygen structural warnings
2025-03-24 21:07:53 -05:00
sliptonic
d71cfabd4c Merge pull request #19910 from LarryWoestman/refactor
CAM:  Used inheritance to simplify the refactored postprocessors even more
2025-03-24 17:58:58 +01:00
Pieter Hijma
b3ae844792 [Doc] Fix CAM documentation problems
- Fix nested comments
- Fix section labels
2025-03-24 16:33:54 +01:00
J-Dunn
d3f617bb4b CAM: thread-mill Shape , more robust model (#20320)
* CAM:  thread-mill Shape , more robust model 

Purpose: prevent solver dumping arcane coding errors to report window if "crest" value is (legitimately) set to zero by user. 

Single tooth thread-mill tools exist which have a sharp point, ie zero flat "crest " surface. Thus the user can reasonably expect to configure a zero dimension to the truncated end of the tool if it is not truncated. This should not provoke an error condition and certainly not crash the model and dump lots of arcane developer info on the machinist user. 

The problem is that a zero dimension makes two points concurrent and removes an edge from the model. This leads to and ill-defined model which crashes the solver. The user should not be exposed to this kind of coding breakage when entering legitimate data for a tool shape. The solution (or workaround) here is to add a very small faction of the shaft diameter to the user supplied zero to prevent the solver crashing. Since this is proportional to the tool shaft it will scale to any use of the tool shape without disrupting path accuracy.

This is a drop in replacement for the existing file and caters for both types of this tool:  truncated tip and pointed tip.

* threadmill Shape update

This thread-mill Shape file uses max()  in the expression for crest. 
This allows user setting zero crest by adding a small finite dimension to prevent the solver crashing, while not making any change to finite crest tools. 
Best of both worlds.
2025-03-23 19:12:36 +01:00
Adrian Insaurralde
9f9610076e cmake: remove distutils usage for python < 3.10 2025-03-22 11:08:36 -05:00
Chris Hennes
5502fafafb CAM: Add missing destructor
Coverity issue 513026
2025-03-22 07:15:15 +01:00
Lawrence Woestman
f680ee7af9 CAM: Used inheritance to simplify the refactored postprocessors more
Updated the Masso tests now that it is using the new API.
2025-03-20 19:22:50 -07:00
Chris Hennes
64d658e38a FreeCAD: Compiler warning fixes 2025-03-19 10:13:34 +01:00
Lawrence Woestman
f3bb974855 CAM: Added three options to the refactored postprocessors
with tests.

Removed extra spaces in comments to work around auto-fix
removal of spaces at the end of lines in multi-line python strings.
2025-03-17 20:59:29 -05:00
Chris Hennes
e574fa1efc Merge pull request #19899 from tritao/cmake-cleanup-targets
CMake: Cleanup targets with transitive dependencies
2025-03-17 13:15:37 -05:00
Chris Hennes
0400673e1d Merge pull request #20149 from phaseloop/vcarve-improvements
[CAM] Change VBit tip diameter to 0.1 mm.
2025-03-17 11:13:51 -05:00
tritao
6c2c6847eb CMake: Cleanup targets with transitive dependencies 2025-03-17 12:12:06 +00:00
Chris Hennes
5f623390fb Merge pull request #20142 from bofdahof/ranges
Apply C++20 std::ranges (mainly to std::find)
2025-03-17 03:08:27 -05:00
Chris Hennes
fdb3f70719 Merge pull request #19661 from jbaehr/cam-improve-unit-warning
CAM: Improve warning text for improper unit scheme
2025-03-17 00:00:52 -05:00
Chris Hennes
d09d2c02bb Merge pull request #17779 from wwmayer/noboostpy
Remove support for Boost.Python
2025-03-17 00:00:32 -05:00
bofdahof
b89f3353ce CAM: apply std::ranges 2025-03-16 17:15:38 -05:00
Luz Paz
17102251e5 Fix various typos 2025-03-14 12:37:12 -04:00
pre-commit-ci[bot]
cec8aca628 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-03-13 18:25:19 +00:00
PhaseLoop
e4c9484139 migrate isInside to isPartOfDomain 2025-03-13 19:20:12 +01:00
PhaseLoop
34ab659cd7 Improve Vcarve generating speed 2025-03-13 13:19:32 +01:00
clsergent
3995d91c96 Added snapmaker postprocessor to CAM 2025-03-12 20:00:55 +01:00
PhaseLoop
4ed09be936 fix tip length 2025-03-12 14:50:04 +01:00
PhaseLoop
2170375f11 [CAM] Change VBit tip diameter to 0.1 mm. 2025-03-12 14:40:26 +01:00
Chris Hennes
2ab256e6d5 Merge pull request #19976 from clsergent/patch-1
CAM: Fix an error in CAM/Path/Post/UtilsParse.py
2025-03-10 15:49:47 +00:00
Jonas Bähr
b0947a7a64 CAM: Improve warning text for improper unit scheme
The previous text suggested to change the scheme in the preferences,
however, the preferences only take effect for new documents. Now, that
we have the "ProjectUnitSystem" in place, the setting for the current
document needs to be changed.

The text is restructured accodring to the UX pattern for warnings:
 - What is the problem
 - How can I fix it
 - What happens if I don't
and includes a link to the wiki for further details.

In addition, the 'US Customary' was removed from the proposed schemes as
suggested during review.

Finally, the button text was decapitalized and aligned with the
style used in other parts of FreeCAD, e.g. the Start page.
2025-03-09 16:09:12 +01:00
Jonas Bähr
345778ac3a CAM: Refactor schema warning at job creation
This is a pure refactoring to clean up the code for upcomming changes.
It does not change any functionality or UI messages.
2025-03-09 16:03:36 +01:00
mos
c70a7933e6 Removed old Python code <3.10 2025-03-07 16:34:08 -06:00
Jookia
287b0a2510 Remove support for Boost.Python 2025-03-04 08:03:19 -06:00
clsergent
545553557a Update UtilsParse.py
Fixed an error where strings were added to a list (gcode) using the addition assignment operator ('+=') rather than the 'list.append' method, resulting in adding every character as a list member
2025-03-03 22:49:42 +01:00
Chris Hennes
7f1c43a335 Merge pull request #19636 from kadet1090/color-in-base
Base: Move App::Color to Base
2025-03-02 16:36:40 -06:00
Benjamin Bræstrup Sayoc
755229df23 Build: suppress warnings from 3rd party libraries
Warnings from 3rd parties are not relevant and are only polluting the warning output. Marking these libraries as SYSTEM suppresses warning.

https://gcc.gnu.org/onlinedocs/cpp/Invocation.html#index-I
https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html
2025-02-25 14:39:05 +00:00
Joao Matos
cc6ffb44de Core: Move PyCXX library to src/3rdParty. 2025-02-24 16:36:06 +00:00
Chris Hennes
86e8355478 CAM: Remove C++14 workaround for boost 2025-02-22 20:48:44 -06:00
Kacper Donat
a72a63232a Base: Move App::Color to Base
Every basic data type is stored in Base module, color is standing out as
one that does not. Moving it to Base opens possibilities to integrate it
better with the rest of FreeCAD.
2025-02-17 21:10:26 +01:00
Lawrence Woestman
b9c4bee4e3 CAM: Fixed F parameter handling for only rotary axes
with tests
      and the commit for converting the refactored*
      postprocessors to the new API
2025-02-17 11:10:40 -06:00
Joao Matos
27ebc68a11 CMake: Modernize build files using outdated Python variables. 2025-02-16 10:21:26 -06:00
Andrea
de9bd5e1ce change MIN_boost_version
ubuntu version 20.04 is no longer supported.
The minimum boost version used for freecad is now 1.74 (ubuntu 22.04) https://launchpad.net/ubuntu/jammy/+package/libboost-system-dev
2025-02-15 13:33:32 -06:00
tritao
9636068460 Base: Move zipios library to 3rdParty folder. 2025-02-14 13:08:28 -06:00
Benjamin Nauck
1d89f9c23c CAM: Fix finish passes by avoiding fuzzy in Area.cpp (#19525) 2025-02-14 10:31:32 -06:00