Commit Graph

52 Commits

Author SHA1 Message Date
Chris Mayo
3e7f5bb085 BIM,CAM: Resolve Python invalid escape sequence warnings 2024-11-05 17:18:50 -05:00
ronak
d2adeb6e69 final returned at line 461 2024-10-15 08:47:56 -05:00
Unl0gic
4a617bf326 Update SurfaceSupport.py
- Fixed mapping v_bit to ConeCutter
2024-10-07 17:35:02 +02:00
bgbsww
64ecfe7a0e Make python Regex Strings raw to avoid py3.12 SyntaxError 2024-09-30 17:42:49 +02:00
spanner888
a4313f358e save after del, new, add (#16230)
Co-authored-by: spanner888 <spanner888@users.noreply.github.com>
2024-09-10 11:20:35 -05:00
sliptonic
6ac0cb7588 set default directory for sanity (#15934)
Respond correctly if user cancels  Fixes #14796

Co-authored-by: Brad Collette <bradcollette@pop-os.localdomain>
2024-09-10 10:23:13 -05:00
Adrian Insaurralde Avalos
7274dac185 CAM: apply precommit 2024-09-03 14:54:36 -04:00
Shai Seger
e15af16232 [CAM SIMULATOR] Bug fixes for Issues #16073 and #16052 (#16118)
* Bug fixes for Issues #16073 and #16052

* Fix tool rendering when tool position is not reset. Issue #16180

* Fix some lint warnings
2024-09-02 11:31:08 -05:00
Shai Seger
a750034490 Cam simulator feature update (#15597)
* remove redundant code

* Improve lighting, add ambient occlusion

* Add cleanup code. Dialog is now deleted when cloesd.

* change back to ambient occlusion

* Fix G8x drill sequence bug.  issue #14369

* fix bad simulation artifacts under Linux and QT. Issue #14369

* fix merge issue

* fix border artifact on buttons

* support showing path lines. revise the gui.

* add option for arbitrary solids. wip

* use vectors instead of mallocs

* Handle arbitrary stock shapes + show base shape.

* Complete the base shape display feature. eliminate co-planar artifacts.

* support window scaling. upstream issue #14334

* Apply lint fixes

* some missing lints.

* Attend pylint issues

* Apply code fixes based on @kadet1090 review

* fix some clang-tidy warnings.

* CAM: Linter cleanup round 1

---------

Co-authored-by: Chris Hennes <chennes@gmail.com>
2024-08-21 15:18:52 -05:00
Brad Collette
4ec94e678e Add Feedrate to G85 command moves
#fixes #15646
2024-08-19 11:52:15 -04:00
Alex Facciorusso
43b6f57700 [cam] fixed tests and fixed dialogs cancel ignored 2024-08-17 12:30:58 -05:00
Alex Facciorusso
4b32ec1b28 Updated comment in CAM Path Utils 2024-08-17 12:30:58 -05:00
Alex Facciorusso
d3e92037b9 FIX: empty filename in CAM workbench saves to the current project folder
Previously, if the user didn't set a default gcode path, the file was saved to getcwd. Now, it attempts to take the active document's path first.
2024-08-17 12:30:58 -05:00
Syres916
e3bf55a052 [CAM] Fix numeric sorting of drill diameters 2024-08-17 12:20:23 -05:00
spanner888
58729b3ab0 Fixes #15637 Attributes are ignored when using ToolBitFactory() CreateFromAttrs(self, attrs, name="ToolBit", path=None) 2024-08-12 11:13:29 -05:00
sliptonic
b5295411b5 Fixes https://github.com/Ondsel-Development/FreeCAD/issues/114
The refactored postprocessor system uses
a factory to load scripts.  The preference
system has logic to load the scripts to get the tooltips
That logic was overlooked during the refactor.
Added it here.
2024-07-22 10:50:53 -05:00
sliptonic
fbbad53361 fixes https://github.com/Ondsel-Development/FreeCAD/issues/115
dead function call.
2024-07-22 10:50:53 -05:00
sliptonic
e252661db5 Fixes: https://github.com/Ondsel-Development/FreeCAD/issues/116
The migration of CAM to use the new material system left behind some
logic that created an old dedicated stock material property.

This commit removes that property
2024-07-22 10:50:53 -05:00
luzpaz
8a14a7d6f0 Path (and PathSimulator): Trim trailing Newlines 2024-07-14 09:26:15 +02:00
luzpaz
9a1f487cdb Fix various typos throughout the codebase 2024-07-08 17:19:20 -05:00
Max Wilfinger
7d21d9edb8 Fix source string typos mentioned on Crowdin (#15261) 2024-07-08 17:18:31 -05:00
jffmichi
c47e0ec507 Path: replace import of PySide2 with PySide 2024-06-22 08:17:16 -05:00
sliptonic
00bdb354b3 fix regression with adding TC to job 2024-06-22 08:16:33 -05:00
sliptonic
18a23b8260 Fixing 'red ink' bugs in CAM
fixes:  https://github.com/Ondsel-Development/FreeCAD/issues/93
fixes https://github.com/Ondsel-Development/FreeCAD/issues/87
fixes https://github.com/Ondsel-Development/FreeCAD/issues/88


fix threadmilling error if not proper tool
fix vcarve error if no proper tool
fix probe error if no proper tool
fix deburr error if no base geometry
Fix adaptive op error if no base geometry
2024-06-22 08:16:33 -05:00
sliptonic
45439f0a36 fixes #14765 (#14814) 2024-06-22 08:15:25 -05:00
sliptonic
e755fc1a5a Machining model and materials (#14460)
* Machining model and materials

Adds a few machinability material model
and a couple materials.  There's a button in the job dialog
to assign a material.

The sanity report is updated to display the surface speed for assigned materials

* improving the machinability model

* Introduce MaterialConstant for the machinability model

This constant is required to calculate the actual specific cutting force
from the normalized value. It determines how the actaual value varies
when the actual chip thickness gets further away from the normalization
point.

* Rename some machinability properties

- SpecificCuttingForce becomes UnitCuttingForce to clearer differentiate
between normalized and actual specific cutting force. The term unit
cutting force is used less often in literature, but
NormalizedSpecificCuttingForce as property name is too long for my taste.
- MaterialConstant becomes ChipThicknessExponent, as "material constant"
is just too generic for our context. In literature, this constant is most
often just used as the symbol m_c.

---------

Co-authored-by: Jonas Bähr <jonas.baehr@web.de>
2024-06-17 11:25:55 -05:00
shai
2a6a3649af Added a fix to issue #14613: tool shapes not shown correctly 2024-06-16 08:27:04 -05:00
shai
bd3f0893fd Fix issue #14513 - simulation of partially selected operations not working. 2024-06-16 08:27:04 -05:00
James Waples
7e62d07538 CAM: Rename CW/CCW to Climb/Conventional for consistency (#14364)
* Find and replace CW/CCW with Climb/Conventional

* Find and replace CCW/CW in CAM tests

* Find and replace in some UI files
2024-06-12 10:48:57 -05:00
phaseloop
888ffcf6d5 [CAM] VCarve improvements (#14093)
* Add stepDown setting to Vcarve Op

* fix UI issued, add finishing pass to Vcarve

* Improve step-down performance, add debugVoronoi()

* add debugVoronoi method

* Add movement optimization

* add CAM/Vcarve unit-tests

* Disable debugging mode

* Cache caller info in debug method

* Format code
2024-05-28 07:57:07 -05:00
sliptonic
f41c634a23 add combobox selector to toolbit dock (#14297)
Create a more useful tooltip

checkpoint

fix missing dovetail shape

CAM tool fix

remove image stuff
2024-05-26 13:35:50 -05:00
Shai Seger
ff40ef3586 New Cam simulator based on low level OpenGL functions (faster and more precise) (#13884)
* Initial opengl test window

* added core files

* some fixes for code comparability with other platforms

* more compatibility cleanup

* add missing opengl libraries

* Basic simulation window works!

* try using different define

* fix wrapper for better compatibility

* Gui is now operational

* Finally SIM works on actual freecad models

* support drill commands

* cleanup python script and add tool profile generation

* Now using actual tools specified in the operation.

* support mouse wheel and freecad-style 3d navigation

* Support accuracy gauge

* remove endsimulation reference

* show simulation speed indicator

* apply clang-format

* apply changes suggested by code review

* gui items are loaded via QT resource system instead of hard coded

* use vector instead of pointer to pass tool profile points

* Fix some more formatting errors.
2024-05-22 10:16:34 -05:00
sliptonic
a0e4184c73 fix minor bugs with sanity report and job visibility (#14043) 2024-05-16 07:27:45 -05:00
LarryWoestman
9b528b0b43 CAM: Added tests for A, B, and C parameters to the linuxcnc post (#13702)
Also added code to keep A, B, C parameters from changing with --inches

Co-authored-by: LarryWoestman <LarryWoestman@users.noreply.github.com>
2024-05-06 11:08:43 -05:00
Martin Rodriguez Reboredo
9759da82e4 Fixups with Qt6 enums (#13611)
* Python PySide enums to C++ converter

* Python IntFlags to C++ int in getStandardButtons

* Remove int conversion in mods Python sources
2024-05-06 18:02:18 +02:00
sliptonic
92a9b3061d Merge pull request #13668 from Ondsel-Development/RefactorPostCommand
Refactor post command
2024-05-06 09:49:28 -05:00
sliptonic
6b25433fbf Merge pull request #13667 from Ondsel-Development/refactorsanity
refactor Sanity
2024-05-06 09:48:59 -05:00
sliptonic
7d841c05f0 More work on unit tests
Avoid unnecessary reloads from disk
2024-05-04 08:24:00 -05:00
sliptonic
26e9d396d9 add generic post processor 2024-05-03 10:16:41 -05:00
sliptonic
205d6339cb Make Job gui work with new PostProcessor class 2024-05-03 10:16:41 -05:00
sliptonic
0514163ec7 Major refactor on post stack 2024-05-03 10:16:41 -05:00
Dov Grobgeld
ff11cd25ee Fix run time errors with python3.12 and pyside6 (#13337)
* Change pyopen=open expression to from builtins import open as pyopen

---------

Co-authored-by: Adrián Insaurralde Avalos <36372335+adrianinsaval@users.noreply.github.com>
2024-04-30 00:28:01 -04:00
Brad Collette
33e82c3d21 refactor Sanity
Logic is more modular with many more unit tests.
Reduced dependence on GUI
Cleaner template structure
2024-04-27 17:28:15 -05:00
Chris Hennes
f47138c08a Merge pull request #13520 from wwmayer/fix_material
Fix further material issues
2024-04-22 11:16:44 -05:00
sliptonic
85cdc56e60 translation stuff 2024-04-18 17:38:12 -05:00
wmayer
113782f65e CAM: fix regressions with material handling
The ShapeAppearance is a list of materials and thus assigning a color with 'obj.ViewObject.ShapeAppearance.DiffuseColor = color'
is incorrect.
But doing it with 'obj.ViewObject.ShapeAppearance[0].DiffuseColor = color' doesn't work as expected because the
internal notification doesn't work with a list.

So, the only viable way is to revert the changes and do it by assigning the color to the 'ShapeColor' attribute.
2024-04-18 13:57:48 +02:00
bgbsww
19794498bb Have grbl_post not write - file like other posts 2024-04-10 16:17:47 -04:00
David Carter
495a96a0f5 Material: Material appearance
Uses new material system for appearance

Each feature object now has a property called ShapeMaterial that
describes its physical properties. If it has a shape, it has a
material.

The ShapeColor attribute is replaced by a ShapeAppearance attribute.
This is a material list that describes all appearance properties, not
just diffuse color. As a list in can be used for all elements of a
shape, such as edges and faces.

A new widget is provided to allow the user to select materials in a
consistent fashion. It can also launch the material editor with its
more advanced capabilities.
2024-04-04 07:39:58 -05:00
James Waples
37c27b9488 Add some extra docs and combinatorial checks 2024-04-02 09:45:34 +01:00
James Waples
de685691ad CAM/Drilling: Add feed retract option to drilling op settings
Adds a checkbox to output a G85 cycle used for reaming or boring. The
cycle is like a normal drilling op, but feeds back out of the hole
instead of performing a rapid move.

G85 does not support peck or dwell, so those other options are disabled
when the "Feed retract" option is enabled in the UI.
2024-04-02 09:45:34 +01:00