Commit Graph

443 Commits

Author SHA1 Message Date
Marius Stanciu 6c3364c9cc - fixed some typos due of actions above 2020-08-27 21:44:17 +03:00
Marius Stanciu c45444a772 - in Tools: Film, Image, InvertGerber, Optimal, PcbWizard - moved the Tool UI in its own class 2020-08-27 21:37:00 +03:00
Marius Stanciu b3a22f3d0a - Film Tool - moved the Tool UI in its own class 2020-08-27 21:06:44 +03:00
Marius Stanciu 46ac265dc7 - Turkish translation strings were updated by the translator, Mehmet Kaya 2020-08-27 18:33:54 +03:00
Marius Stanciu 5cd78d211e - in Tool Cutout: modified the UI in preparation for adding the Mouse Bites feature 2020-08-27 17:29:58 +03:00
Marius Stanciu 7eeda0347f - in Tool Cutout fixed manual adding of gaps with thin gaps and plotting
- in Tool Cutout, when using fix gaps made sure that this feature is not activated if the value is zero
2020-08-27 03:29:52 +03:00
Marius Stanciu c99b20df7b - in Tool Cutout, when using the Thin Gaps feature, the resulting geometry loose the extra color by toggling tool plot in Geometry UI Tools Table- fixed 2020-08-27 03:16:07 +03:00
Marius Stanciu 19b5e100d5 - fixed the Tcl commands AddCircle, AddPolygon, AddPolyline and AddRectangle to have stored bounds therefore making them movable/selectable on canvas 2020-08-27 02:25:07 +03:00
Marius Stanciu 66fcec49cc - in Gerber UI done some optimizations 2020-08-27 00:56:55 +03:00
Marius Stanciu ffdcfb0b5d - fixed crash in Properties Tool, when applied on a CNCJob object made out of an Excellon object (fixed issue #444)
- in Properties Tool, for CNCJob objects made out of Excellon objects, added the information's from Tool Data
- in Properties Tool made sure that the set color for the Tree parents depends on the fact if the gray icons set are used (dark theme) or not
- Properties Tool - properties for a Gerber objects has the Tool Data now at the end of the information's
2020-08-27 00:17:14 +03:00
Marius Stanciu a823de9f98 - fixed issue when plotting a CNCJob object with multiple tools and annotations on by plotting annotations after all the tools geometries are plotted 2020-08-26 22:58:40 +03:00
Marius Stanciu 9696e8faad - NCC Tool - UI change: if the operation is Isolation then some of the tool parameters are disabled 2020-08-26 18:53:38 +03:00
Marius Stanciu be01e00898 - Isolation Tool - added ability to find the tool diameter that will guarantee total isolation of the currently selected Gerber object 2020-08-26 18:32:28 +03:00
Marius Stanciu d4c922cdf9 - Drilling Tool - when replacing Tools if more than one tool for one diameter is found, the application exit the process and display an error in status bar; some minor fixes
- Isolation Tool - remade the UI
- Isolation Tool - modified the add new tool method to search first in Tools Database  for a suitable tool
2020-08-26 17:21:00 +03:00
Marius Stanciu e22ae1ad6c - solved some deprecation warnings (Shapely module) 2020-08-26 15:10:36 +03:00
Marius Stanciu e658b61e53 - Geometry object - now plotting color for an individual tool can be specified
- in CutOut Tool - when using  'thin gaps' option then the cut parts are colored differently than the rest of the geometry in the Geometry object
2020-08-26 03:38:47 +03:00
Marius Stanciu 86ec32b821 - fix for issue nr 2 in case of Drilling Tool. Need to check Isolation Tool, Paint Tool, NCC Tool
- Drilling Tool - UI changes
2020-08-26 01:01:27 +03:00
Marius Stanciu c3b99c3e33 - for Tools: Calculators, Calibration, Copper Thieving, Corners, Fiducials - moved the Tool UI in its own class 2020-08-25 18:23:38 +03:00
Marius Stanciu 0d15130b40 - Tool Align Objects - moved the Tool Ui into its own class 2020-08-25 15:52:50 +03:00
Marius Stanciu 08750a575c - 2Sided Tool - finished the feature that allows picking an Excellon drill hole center as a Point mirror reference 2020-08-25 15:40:53 +03:00
Marius Stanciu c1c819276f - in CNCJob UI Autolevelling - made the Voronoi calculations work even in the scenarios that previously did not work; it need a newer version of Shapely, currently I installed the GIT version
- in CNCJob UI Autolevelling - Voronoi polygons are now plotted
- in CNCJob UI Autolevelling - adding manual probe points now show some geometry (circles) for the added points until the adding is finished
2020-08-25 03:06:09 +03:00
Marius Stanciu 96059c4b54 - in CNCJob UI Autolevelling - GRBL controller - fixed the send_grbl_command() method 2020-08-24 13:14:54 +03:00
Marius Stanciu f8eba0084d - in CNCJob UI Autolevelling - GRBL controller - added the probing method 2020-08-24 02:13:13 +03:00
Marius Stanciu 40682ea1e9 - made sure that when doing units conversion keep only the decimals specified in the application decimals setting (should differentiate between values and display?) 2020-08-24 01:05:14 +03:00
Marius Stanciu 01df27f45f - fixed issues in units conversion
- in CNCJob UI Autolevelling - changed how the probing code is generated and when
- changed some strings in CNCJob UI Autolevelling
2020-08-24 00:51:07 +03:00
Marius Stanciu 3430d86dba - in GUI element FCDoubleSpinner fixed an range issue 2020-08-23 16:57:59 +03:00
Marius Stanciu 26ac43bd2e - in CNCJob UI Autolevelling - autolevelling is made to be not available for cnc code generated with Roland or HPGL preprocessors
- in CNCJob UI Autolevelling - added a save dialog for the probing GCode
- added a new GUI element, a DoubleSlider
- in CNCJob UI Autolevelling - GRBL controller - Control: trying to add DoubleSlider + DoubleSpinner combo controls
2020-08-23 15:20:12 +03:00
Marius Stanciu 2deba3a8f9 - in CNCJob UI Autolevelling - GRBL controller - added handlers for the Zeroing and for Homing and for Pause/Resume; some UI optimizations 2020-08-22 03:34:45 +03:00
Marius Stanciu 1b31abeb62 - in CNCJob UI Autolevelling - GRBL controller - Control: added a Origin button; changed the UI to have rounded rectangles
- in CNCJob UI Autolevelling - GRBL controller - Control: added feedrate and step size controls and added them in Preferences
2020-08-21 18:08:40 +03:00
Marius Stanciu a75e7e5cf8 - in CNCJob UI Autolevelling - GRBL Sender - now only a single command can be sent
- in CNCJob UI Autolevelling - GRBL controller - changed the UI
- in CNCJob UI Autolevelling - added some VOronoi poly calculations
2020-08-19 17:20:05 +03:00
Marius Stanciu d62793c9bd - in CNCJob UI Autolevelling - GRBL Control and Sender tabs are disabled when the serial port is disconnected 2020-08-19 04:44:50 +03:00
Marius Stanciu 7285ee0b82 - in CNCJob UI Autolevelling - Grbl Connect tab colors will change with the connection status 2020-08-19 04:36:46 +03:00
Marius Stanciu 33c633f0c4 - in CNCJob UI Autolevelling - sending GCode/GRBL commands is now threaded 2020-08-19 04:15:15 +03:00
Marius Stanciu 3afcabe559 - in CNCJob UI Autolevelling - added handlers for GRBL report and for getting GRBL parameters 2020-08-19 03:44:16 +03:00
Marius Stanciu 56ac489466 - in CNCJob UI Autolevelling - added handlers for: jogging, reset, sending commands 2020-08-19 02:26:35 +03:00
Marius Stanciu bdb0e71425 - in CNCJob UI Autolevelling - in COntrol section added buttons for Jog an individual axes zeroing 2020-08-18 17:51:25 +03:00
Marius Stanciu 48660a0fd6 - in Doublesided Tool cleaned up the UI 2020-08-18 16:18:13 +03:00
Marius Stanciu d1733f1e1d - in Doublesided Tool added some UI for Excellon hole snapping 2020-08-18 15:30:33 +03:00
Marius Stanciu 85a0d3da9f - in CNCJob UI Autolevelling - GRBL GUI controls are now organized in a tab widget 2020-08-17 15:50:51 +03:00
Marius Stanciu 495947f8c5 - in CNCJob UI Autolevelling - made autolevelling checkbox state persistent between app restarts 2020-08-17 02:31:51 +03:00
Marius Stanciu 115e882614 - in CNCJob UI Autolevelling - finished the Import Height Map method 2020-08-17 02:09:44 +03:00
Marius Stanciu 3ef47da370 - in CNCJob UI Autolevelling - Added entries in Preferences 2020-08-17 00:40:45 +03:00
Marius Stanciu e0ec8ac44f - in CNCJob UI Autolevelling - Probing GCode has now a header 2020-08-16 23:49:53 +03:00
Marius Stanciu fd895e3c21 - in CNCJob UI Autolevelling - updated the UI with controls for probing GCode parameters and added signals and slots for the UI
- in CNCJob UI Autolevelling - added a mini gcode sender for the GRBL to be able to send the probing GCode and get the height map (I may make a small and light app for that so it does not need to have FlatCAM on the GCode sender PC)
- in CNCJob UI Autolevelling finished the probing GCode generation for MACH/LinuxCNC controllers; this GCode can also be viewed
2020-08-16 23:05:31 +03:00
Marius Stanciu cc7c525be1 - in CNCJob UI finished working on adding test points in Manual mode 2020-08-14 17:04:16 +03:00
Marius Stanciu 5af8918441 - in CNCJob UI worked on the UI for the Autolevelling
- in CNCJob UI finished working on adding test points in Grid mode
2020-08-14 12:46:27 +03:00
Marius Stanciu 298976f32e - CNCJob object - working in generating Voronoi diagram for autolevelling 2020-08-14 02:03:03 +03:00
Marius Stanciu 776034d1b1 - Tool Cutout - some work in gaps thickness control for the free form cutout 2020-08-13 22:38:39 +03:00
Marius Stanciu daf66ae58c - in CNCJob UI updated the GUI for Autolevelling 2020-08-13 17:32:54 +03:00
Marius Stanciu fff0d6efc1 - in CNCJob UI added GUI for an eventual Autolevelling feature 2020-08-13 15:13:07 +03:00
Marius Stanciu 6af295358d - Tool Cutout - some work in gaps thickness control for the free form cutout 2020-08-12 00:11:39 +03:00
Marius Stanciu b9faa7b2b8 - small fix so the cx_freeze 6.2 module will work in building a frozen version of FlatCAM 2020-08-09 04:57:29 +03:00
Marius Stanciu 9b6c65cdcb - all Geometry objects resulted from Isolation Tool are now of type multi-geo
- fixed minor glitch in the Isolation Tool UI
- added an extra check when doing selection on canvas
- fixed an UI problem in Gerber Editor
2020-08-07 13:55:32 +03:00
Marius Stanciu 06bb17f255 - Tool Cutout - some work in gaps thickness control for the free form cutout 2020-08-06 00:07:56 +03:00
Marius Stanciu 14a9710a43 - Tool Cutout - done handling the gaps thickness control for the rectangular cutout; TODO: check all app for the usage of geometry_spindledir and geometry_optimization_type defaults in tools and in options 2020-08-05 17:37:24 +03:00
Marius Stanciu b5f77eac1b - Tool Cutout - more work in gaps thickness control feature
- Tool Cutout - added some icons to buttons
2020-08-05 11:46:56 +03:00
Marius Stanciu f86193a5c0 - Tool Cutout - working in adding gaps suppression feature; added the UI in the Tool 2020-08-04 17:57:28 +03:00
Marius Stanciu e4852292b7 - removed the Toolchange Macro feature (in the future it will be replaced by full preprocessor customization)
- modified GUI in Preferences
2020-08-04 13:33:58 +03:00
Marius Stanciu eb28d28ea2 - GCode Editor - modified the UI 2020-08-03 23:20:41 +03:00
Marius Stanciu b7630f1334 - added a way to remember the old state of Tools toolbar before and after entering an Editor 2020-08-03 22:11:17 +03:00
Marius Stanciu ffda89f949 - GCode Editor - can not delete objects while in the Editor; can not close the Code Editor Tab except on Editor exit; activated the shortcut keys (for now only CTRL+S is working) 2020-08-03 22:01:42 +03:00
Marius Stanciu 7d47a133f6 - GCode Editor - GCode tool selection when clicking on tool in Tools table is working. The only issue is that the first tool gcode includes the start gcode which confuse the algorithm 2020-08-03 17:01:52 +03:00
Marius Stanciu f557eeb98d - GCode Editor - working on GCode tool selection - not OK 2020-08-02 22:25:48 +03:00
Marius Stanciu 44411cdc82 - GCode Editor - closing the Editor will close also the Code Editor Tab
- cleanup of the CNCJob UI; added a checkbox to signal if any append/prepend gcode was set in Preferences (unchecking it will override and disable the usage of the append/prepend GCode)
- the start Gcode is now stored in the CNCJob object attribute gc_start
- GCode Editor - finished adding the ability to select a row in the Tools table and select the related GCode
2020-08-02 16:27:30 +03:00
Marius Stanciu 840db915f1 - GCode Editor - work in the UI 2020-08-02 02:31:06 +03:00
Marius Stanciu a66d8a7438 - Tools Database: added a Cutout Tool Parameters section 2020-08-01 22:34:13 +03:00
Marius Stanciu 1fc70fd3cf - minor work in GCode Editor 2020-07-31 14:08:53 +03:00
Marius Stanciu 593e6a80e5 - fixed an exception that was raised in Geometry object when using an Offset 2020-07-29 17:18:02 +03:00
Marius Stanciu 445b4300f5 - Gerber parser - a single move with pen up D2 followed by a pen down D1 at the same location is now treated as a Flash; fixed issue #441 2020-07-27 03:25:38 +03:00
Marius a24b09d8ad - Tools Tab is hidden when entering into a Editor and showed on exit (this needs to be remade such that the toolbars state should be restored to whatever it was before entering in the Editor) - changed the ChangeLog 2020-07-25 12:43:11 +03:00
Marius Stanciu 64529c4cfd - wip 2020-07-25 12:42:27 +03:00
Marius e7e1d959fd Merge remote-tracking branch 'origin/Beta_8.994' into Beta_8.994
# Conflicts:
#	CHANGELOG.md
2020-07-25 12:41:23 +03:00
Marius Stanciu 8354bce680 - Tools Tab is hidden when entering into a Editor and showed on exit (this needs to be remade such that the toolbars state should be restored to whatever it was before entering in the Editor) 2020-07-25 12:39:39 +03:00
Marius Stanciu 5142b51590 - in import SVG and import DXF methods made sure that any polygons that are imported as polygons will survive and only the lines are optimized (changed the behavior of the above made modification) 2020-07-23 01:01:40 +03:00
Marius Stanciu b8fb64a143 - added a Laser preprocessor named 'Z_laser' which will change the Z to the Travel Z on each ToolChange event allowing therefore control of the dot size
- by default now a new blank Geometry object created by FlatCAM is of type multigeo
- made sure that optimizations of lines when importing SVG or DXF as lines will not encounter polygons but only LinesStrings or LinearRings, otherwise having crashes
- fixed the import SVG and import DXF, when importing as Geometry to be imported as multigeo tool
- fixed the import SVG and import DXF, the source files will be saved as loaded into the source_file attribute of the resulting object (be it Geometry or Gerber)
2020-07-23 00:44:33 +03:00
Marius Stanciu cf78211a6f - wip in the GCode Editor 2020-07-22 17:08:40 +03:00
Marius Stanciu 9e8ab610b4 - working on a proper GCode Editor 2020-07-22 15:49:52 +03:00
Marius Stanciu 65d4f70b21 - made sure there are no issues when plotting the Excellon object in one thread and trying to build the UI in another by using a signal 2020-07-21 15:58:22 +03:00
Marius Stanciu 786423eb57 - fixed some issues in Excellon Editor due of recent changes
- moved the Gerber colors fill in the AppObject.on_object_created() slot and fixed some minor issues here
2020-07-21 15:52:53 +03:00
Marius Stanciu 8a95580f15 - fixed issues with detecting older Preferences files 2020-07-21 14:17:58 +03:00
Marius Stanciu 676645d6f5 - made sure that the Preferences files are deleted on new version install, while the application is in Beta status 2020-07-21 13:07:47 +03:00
Marius Stanciu 687efd1fc0 - Excellon UI: made sure that when the Multicolor checkbox is unchecked, the color is updated in the Color column of the tools table 2020-07-21 07:20:14 +03:00
Marius Stanciu 617b483267 - Excellon UI: added a column which will color each row/tool of that column in the color used when checking Multicolor checkbox 2020-07-21 06:49:49 +03:00
Marius Stanciu e147ef1994 - Excellon UI: fixed plot checkbox performing an extra plot function which was not required 2020-07-21 06:12:44 +03:00
Marius Stanciu 51290a6b8b - Excellon UI in Legacy Mode (2D): fixed the Solid checkbox functionality 2020-07-21 06:08:48 +03:00
Marius Stanciu e57820f707 - fixed MultiColor checkbox in Excellon Object to work in Legacy Mode (2D)
- modified the visibility change in Excellon UI to no longer do plot() when doing visibility toggle for one of the tools but only a visibility change in the shapes properties
2020-07-21 06:01:04 +03:00
Marius Stanciu e99dd967fe - updated the FCRadio class with a method that allow disabling certain options
- the Path optimization options for Excellon and Geometry objects are now available depending on the OS platform used (32bit vs 64bit)
2020-07-21 00:57:26 +03:00
Marius Stanciu a3e1570747 - added a control in Preferences -> Gerber Tab for Gerber colors storage usage
- made sure that the defaults on first install will set the number of workers to half the number of CPU's on the system but no less than 2
2020-07-21 00:04:18 +03:00
Marius Stanciu ebdb2b3ca0 - fixed a bug in the FlatCAMGerber.on_mark_cb_click_table() method when moving a Gerber object
- added a way to remember the colors set for the Gerber objects; it will remember the order that they were loaded and set a color previously given
2020-07-20 19:21:17 +03:00
Marius Stanciu 8409c74e23 - added some icons in the Code Editor
- replaced some icons in the app
- in Code Editor, when changing text, the Save Code button will change color (text and icon) to red and after save it will revert the color to the default one
- in Code Editor some methods rework
2020-07-18 00:26:03 +03:00
Marius Stanciu 144a89f686 - added a new method for GCode generation for Geometry objects
- added multiple algorithms for path optimization when generating GCode from an Geometry object beside the original Rtree algorithm: TSA, OR-Tools Basic, OR-Tools metaheuristics
- added controls for Geometry object path optimization in Preferences
2020-07-16 04:55:58 +03:00
Marius Stanciu 6c3774be7a - a new icon for Search in DB 2020-07-15 21:27:01 +03:00
Marius Stanciu 0fc6f41177 - added some icons to more push buttons inside the app
- a change of layout in Tools Database
2020-07-15 21:11:47 +03:00
Marius Stanciu 5b80760ba7 - Tool Drilling - brushing through code and solved the report on estimation of execution time
- Tool Drilling - more optimizations regarding of using Toolchange as opposed to not using it
- modfied the preprocessors to work with the new properties for Excellon objects
- added to preprocessors information regarding the X,Y position at the end of the job
- Tool Drilling made sure that on Toolchange event after toolchange event the tool feedrate is set
2020-07-15 20:16:57 +03:00
Marius Stanciu 7b891900be - added Editor Push buttons in Geometry and CNCJob UI's 2020-07-15 03:31:39 +03:00
Marius Stanciu 66adab95ca - added icons to some of the push buttons 2020-07-15 02:23:45 +03:00
Marius Stanciu e67e676e45 - Tool Database - more changes to the UI 2020-07-14 23:33:43 +03:00
Marius Stanciu e0af0b2a2f - Tools Database - some fixes in the UI (some of the widgets had duplicated names)
- Tools Database - made sure the on save the tools are saved only with the properties that relate to their targeted area of the app
- Tools Database - changes can be done only for one tool at a time
2020-07-14 18:22:24 +03:00
Marius Stanciu 5748eb049b - Tools Database - remade the UI
- made sure that the serializable attributes are added correctly and only once (self.ser_attrs)
2020-07-14 16:46:01 +03:00
Marius Stanciu 5badd7a26b - Gerber UI - optimized the mark shapes to use only on ShapeCollection 2020-07-14 14:20:19 +03:00