Commit Graph

  • 7420ac9fd5 - fixed all the laser preprocessors to work correctly and the resulting GCode to be plotted - made sure that when drilling and milling with a laser preprocessor the first move is not done with the laser on Marius Stanciu 2022-01-31 00:04:49 +02:00
  • 262e795f2e - fixed the drillcncjob Tcl command to use the parameters: endz and endxy Marius Stanciu 2022-01-30 22:26:14 +02:00
  • d6c345656c - finished implementing the new feature that add a new parameter laser minimum power for the Drillin, Milling Plugins and for the cncjob and drillcncjob Tcl commands: - modified all the preprocessors that are for laser to use the new parameter: laser minimum power Marius Stanciu 2022-01-30 21:33:06 +02:00
  • dbc2e5c381 - finished the UI for adding a new parameter that is used in conjunction with the laser preprocessors: laser minimum power parameter which should help in doing a full power up/down cycle (should prolong the lifetime for the laser diode) - fixed some UI issues for the Milling and Drilling plugins when using a laser preprocessor Marius Stanciu 2022-01-30 19:03:20 +02:00
  • 16af642409 - in drillcncjob Tcl command added the usage of RTree path optimization and made it the default choice Marius Stanciu 2022-01-30 16:54:20 +02:00
  • 71441a80e5 - fixed not adding the feedrate code in drillcncjob Tcl command - fixed crash when trying to do a select all and there are app Scripts present - updated the drillcncjob Tcl command to make a script exit in case of an error Marius Stanciu 2022-01-30 16:25:11 +02:00
  • 619a9b7fe9 - fixed more issues in the ncc and paint Tcl commands (missing segx and segy keys) Marius Stanciu 2022-01-30 14:26:00 +02:00
  • 6965c91447 - some more work on the Isolation plugin Marius Stanciu 2022-01-30 14:13:36 +02:00
  • 66b874835c - refactored the Isolation Plugin class Marius Stanciu 2022-01-30 03:50:27 +02:00
  • 05c4993f92 - minor description update for export_gcode Tcl command Marius Stanciu 2022-01-29 22:39:25 +02:00
  • 7e927b9626 - fixed some issues in the paint Tcl command Marius Stanciu 2022-01-29 22:36:56 +02:00
  • 1467c5e0bc - fixed some issues in the ncc Tcl command Marius Stanciu 2022-01-29 22:21:32 +02:00
  • a29d18bd12 - updated the new Tcl command: now it has an argument -keep_scripts that when True, will keep the loaded scripts in the new project Marius Stanciu 2022-01-29 20:35:28 +02:00
  • 54def9a426 - in the panelize, cutout and geocutout Tcl commands updated the error strings and made sure that if an error occur then a potential script execution in chain is aborted Marius Stanciu 2022-01-29 16:24:29 +02:00
  • a0fb8b5413 - added a new preprocessor for Marlin that has movemements on the Z axis named Marlin_laser_Z - cleaned up Marlin preprocessors Marius Stanciu 2022-01-29 13:51:41 +02:00
  • 965ccca885 - upgraded/fixed the Panelize Tcl command Marius Stanciu 2022-01-29 03:11:56 +02:00
  • eb6ea7e623 - fixed an KeyError exception in the GCode Editor regarding the key: 'offset' not existing - updated the Tcl command drillcncjob to store the tool gcode and the parsed tool gcode in each tool data structure - updated the Tcl command drillcncjob description and examples Marius Stanciu 2022-01-28 15:54:41 +02:00
  • c470023719 - fixed an error in Drilling Plugin when selecting only a few tools and not all for drilling - fixed an error when building the UI for a CNCJob object created from drilling an Excellon object with a limited selection of tools Marius Stanciu 2022-01-28 04:03:19 +02:00
  • 2ebc231f6f - in camlib.CNCjob.gcode_parse() fixed an assumption that a certain object is present: tool_data["tools_drill_toolchange"] Marius Stanciu 2022-01-28 03:26:22 +02:00
  • c48ebdea00 - in Tcl command geocutout fixed an error due of a no longer used parameter Marius Stanciu 2022-01-28 03:19:09 +02:00
  • b003b95022 - made sure that for the Tcl command cncjob when using the dpp parameter (multi depth) the value is always positive, as expected - the cutout Tcl command creates a non-multigeo Geometry object Marius Stanciu 2022-01-27 14:36:24 +02:00
  • d6d251173c - fixed some errors in the buffer and isolate Tcl commands - updated the camlib.Geometry.buffer() method Marius Stanciu 2022-01-26 17:12:03 +02:00
  • 805cf75e85 - modified the bounding box utility feature in the Gerber Object UI to work with negative margin values Marius Stanciu 2022-01-26 13:49:48 +02:00
  • b69738d852 - minor changes Marius Stanciu 2022-01-26 13:35:01 +02:00
  • 73fca98f90 - fix the Transform plugin, buffer functionality for Geometry objects such that the buffer with negative values will work by crating a buffer toward the interior of that geometry Marius Stanciu 2022-01-26 13:11:44 +02:00
  • 7bc941f3dd - in Cutout plugin added the ability to create Manual Geometries with negative tool diameters Marius Stanciu 2022-01-26 12:51:08 +02:00
  • 5d3fce12d5 - modified the bounding box utility feature in the Gerber Object UI to work with buffer value of 0.0 and rounded corners Marius Stanciu 2022-01-26 12:23:12 +02:00
  • 5a912c6885 - fixed the Cutout plugin for the rectangular cutout: the name of the resulting object is now correct if there is no extension in the source file Marius Stanciu 2022-01-26 11:47:07 +02:00
  • b94514786c - fixed the Cutout plugin not working with Geometry objects that are made out of a LineString or LinearRing geometric elements Marius Stanciu 2022-01-26 11:30:06 +02:00
  • 51d4f9030d - fixed the Milling Plugin who changed the tools information "tools_mill_multidepth" when changing from Basic to Advanced mode to the application default value but that defeated the change made by the Cutout plugin - fixed a Shapely 2.0 deprecation warning in the Report plugin Marius Stanciu 2022-01-25 23:55:51 +02:00
  • ff805880e1 - fixed the Follow plugin not marking correctly the resulting Geometry objet as a multigeo - fixed the Cutout plugin not working with Geometry objects that are made out of a MultiLineString Marius Stanciu 2022-01-25 22:31:50 +02:00
  • 6cdb276a08 - minor changes Marius Stanciu 2022-01-25 04:30:14 +02:00
  • 0c656ab10c - fixed a syntax error in a call of the log.error() - trying to solve a 'circular reference' error when saving a project in Arch Linux Marius Stanciu 2022-01-25 00:32:52 +02:00
  • 4089438392 - in Milling Plugin there was issue that did not showed the Z focus parameter for the GRBL_laser_Z preprocessor - updated the GRBL_laser_Z preprocessor to show more complete parameter information's in the header Marius Stanciu 2022-01-22 23:28:21 +02:00
  • 2bda71bcfe - fixed the GRBL_laser preprocessor such that it does not have a Z move at the end of the job due of the fact that this preprocessor has moves only in the X-Y plane - in Milling Plugin made sure the preprocessors that have the laser_z in the name (case insensitive) have the ability to change the Z height at the end of the job (through End_Z parameter) Marius Stanciu 2022-01-22 21:39:19 +02:00
  • 90165ce0ac - improved the running of scripts when loading from GUI a script as a FlatCAM script Marius Stanciu 2022-01-22 00:23:22 +02:00
  • 17533aebc3 - fixed more issues with the cncjob Tcl command - made sure that some autocomplete keywords are correctly processed by the application; needs the delete of the preferences files Marius Stanciu 2022-01-21 22:15:33 +02:00
  • af688cb369 - fixed the description for the new Tcl command buffer Marius Stanciu 2022-01-21 02:39:57 +02:00
  • b0db73029d - added a new Tcl command: buffer which will buffer the geometry of an object or will scale individually each geometry sub element - fixed the buffer() method for the Excellon objects (the resulting tool diameters were calculated less than the what was expected) Marius Stanciu 2022-01-21 02:37:34 +02:00
  • ba8b16e54f - fixed some issues due of the above hack Marius Stanciu 2022-01-19 21:35:26 +02:00
  • a26fd24f65 - made a hack so if the Image Import plugin can't be loaded due of dependencies errors the app will not crash but this plugin will no longer be available Marius Stanciu 2022-01-19 18:05:13 +02:00
  • 8d06b5bf81 - remade the Image Import plugin in an attempt to fix issues with the latest packages of Gdal and Rasterio but it looks that it is a conflict between the Rasterio 1.2.10, Gdal 3.4.1 and Shapely 1.8.0 BAD MESSAGE previously Marius Stanciu 2022-01-19 17:46:59 +02:00
  • a9b26b291f - the Editors require an Object UI build before launching; I've added the required code so the shortcut keys work even if the Properties tab is not current Marius Stanciu 2022-01-19 17:45:59 +02:00
  • 62265f020d - added comments in the default preprocessors which will help other people create their own preprocessors Marius Stanciu 2022-01-19 03:02:41 +02:00
  • cdf6872e5e - updated the header of the postprocessos with 'laser' to show essential informations like some of them do not move on the Z axis - make sure that the laser postprocessor that do move on the Z axis (like 'GRBL_laser_Z') accept negative values for the Z focus - fixed issue in highlighter such that the keywords that have an underscore included are highlighted - rearranged the default keywords - fixed the generatecncjob() method default parameters to reflect new data structure names - in Geometry object the default self.options dictionary is updated with keys that reflect new data structure Marius Stanciu 2022-01-19 02:25:40 +02:00
  • 04e6bf0872 - added a new Tcl command named 'list_pp' which lists the available preprocessor names Marius Stanciu 2022-01-18 00:39:09 +02:00
  • 3363dd0fe8 - in the 'cutout' Tcl command made sure that when an error pop-up then it returns with a "fail" string - made sure when running scripts from the interface that if a command will generate an error then the script is aborted Marius Stanciu 2022-01-18 00:30:10 +02:00
  • 87f1b7e15e - modified the 'new' Tcl command to be silent and to show no popup message Marius Stanciu 2022-01-17 23:48:44 +02:00
  • c08acc79eb - fixed an issue with path conversion when using Windows-style of paths in the 'set_path' Tcl command Marius Stanciu 2022-01-17 23:37:28 +02:00
  • 2430158334 - fixing an issue with not building the UI for the generated objects when running a script and then trying to enable/disable the plots - attempting to add a feature in the text editors to autoselect all words in a document that are the same as the one that was clicked - all the colors set in Preferences now have to be in the 8digits format RGBA (including the alpha channel as a suffix) - it is required to delete the current preferences files Marius Stanciu 2022-01-17 21:26:10 +02:00
  • fd696b00a2 - fixed the 'isolate' Tcl command: updated to the new tools data structure elements Marius Stanciu 2022-01-17 14:08:44 +02:00
  • 0a9adcb82d - made sure that in Tcl commands deleting argument keys will not raise an error Marius Stanciu 2022-01-17 12:57:28 +02:00
  • e18690baf0 - fixed issues in the 'millslots' and 'milldrills' Tcl commands for the case when some parameters are not used Marius Stanciu 2022-01-17 12:35:36 +02:00
  • e63eaa6279 - fixed the 'save_project' Tcl Command - missing 'f_handlers' in the path Marius Stanciu 2022-01-15 18:18:05 +02:00
  • f59a166503 - fixed the 'cncjob' Tcl Command to work in the new configuration of the data structures Marius Stanciu 2022-01-15 18:05:56 +02:00
  • 7e3152e7a3 - fixed the Tcl Command 'set_origin' to work for a specified location - updated the Tcl Command 'set_origin' to give the option to set the origin for a specified object Marius Stanciu 2022-01-15 17:25:05 +02:00
  • 873cd6f947 - some changes to the FCMessageBox so the dark theme works ok on it Marius Stanciu 2022-01-15 03:34:33 +02:00
  • 8c154e6cc0 - All FCColorEntry GUI element instances have now a set icon for the title (and taskbar) Marius Stanciu 2022-01-15 02:53:34 +02:00
  • b615edd631 - made sure that new message boxes are always centered on the app UI by setting correctly the parent Marius Stanciu 2022-01-14 12:43:14 +02:00
  • 200d244b9b - made sure that the FCMessageBox taskbar icons and message are the correct ones - applied the FCMessageBox GUI elements everywhere; there is still a hack in appTranslation file where I needed to re-implement the class due of some circular imports errors Marius Stanciu 2022-01-13 18:08:11 +02:00
  • dc636369a6 - modified the FCMessageBox to have a border and a single color inside the box Marius Stanciu 2022-01-13 16:42:59 +02:00
  • 1d1613d2d6 - subclassed the QMessageBox and created a new type of MessageBox that is frameless; started to use it throughout the app Marius Stanciu 2022-01-12 02:27:12 +02:00
  • d7be3c3c3b - started to mod the qdarktheme to fit the application Marius Stanciu 2022-01-12 00:44:25 +02:00
  • 2165ebe419 - added an initial implementation of a dark theme using the qdarktheme (performance is not great and there are some artifacts); the theme is activated once the gray icons are checked in the Preferences Marius Stanciu 2022-01-11 23:21:18 +02:00
  • 1ccf4b38c6 - fixed and error in the Isolation Plugin when using the pad multi-isolations and area isolation simultaneously Marius Stanciu 2022-01-10 17:36:50 +02:00
  • ab3e610324 - added a new feature in Preferences -> Gerber: a Layer Color Manager where the user can set and edit predefined colors for the Gerber objects: loading order matter Marius Stanciu 2022-01-10 17:06:12 +02:00
  • 747a2f0de4 - fixed a Gerber parser issue shown by Gerber files generated by Autotrax DEX ECAD software: if the last operation before a region was a flash D03 then at the beginning of the region a flash was added with the previous aperture Marius Stanciu 2022-01-09 21:20:42 +02:00
  • e219562bbb - added in CNCJob preferences new preferences that allow compensation for the CNC bed skew/tilt (axes not being square one to another) - all pre-processors are altered such they can adjust the gcode to use the compensation values set in Preferences -> CNC-Job section Marius Stanciu 2022-01-09 19:44:56 +02:00
  • 9d9bfa8b03 - some UI changes in the Preferences: the clicked tab now have a distinctive color (green) and some strings are optimized Marius Stanciu 2022-01-09 16:39:06 +02:00
  • 12e69af3ef - in Isolation Plugin fixed the issue with clicking the header not toggling all tools rows - in Isolation Plugin fixed an issue in the reset_fields() method Marius Stanciu 2022-01-08 23:10:40 +02:00
  • 648fc81868 - added a donation link (some people wanted it there so...) Marius Stanciu 2022-01-06 19:08:23 +02:00
  • 518bedc78d - some changes in the Excellon object suggessted by an user: Karl-Heinz Marius Stanciu 2022-01-06 17:48:00 +02:00
  • 8f8bff3e4f - modified the 'laser-lines' method in the Paint Plugin such that the rounded part of a painted trace is painted too in the case that the trace width is much higher than the clearing tool diameter Marius Stanciu 2022-01-06 00:02:23 +02:00
  • fff657389e - in Paint Plugin fixed the method 'laser-lines' for the case when the painted Gerber file has square shape apertures Marius Stanciu 2022-01-05 04:41:47 +02:00
  • f3d379e4af - in Milling Plugin made sure that the UI is updated correctly when changing the type of target object depending on the Basic/Advanced mode Marius Stanciu 2021-12-24 04:49:34 +02:00
  • 03f096a1cd - fixed a double application of milling offset when having geometries with multiple tools - finished the mill-excellon feature in the Milling Tool; milling will be done progressively from the hole center toward the edge Marius Stanciu 2021-12-23 22:04:41 +02:00
  • da154a865c - in Milling Plugin working on milling Excellon holes by painting them from the center - removed display of some of the logs in Tcl Shell (when in Verbose mode) when parsing the Gerber files Marius Stanciu 2021-12-23 05:07:49 +02:00
  • 0e4eb2631e - in Milling Plugin fixed the toolchange_xy and end_xy parameters not being used Marius Stanciu 2021-12-16 05:33:25 +02:00
  • 2d1cf899e8 - small optimization when deleting all objects (creating a new project) Marius Stanciu 2021-12-09 13:10:01 +02:00
  • 24caaedac0 - fixed some more Shapely 2.0 deprecation warnings - fixed a message bug in the AppMain Marius Stanciu 2021-12-08 23:11:23 +02:00
  • 20587eaec8 - some issues fixed that were left behind rom porting to PyQt6 - trying to solve differently RuntimeError exceptions that randomly popup due of wrapped C++ objects being deleted by attempting to create a new UI for the objects Marius Stanciu 2021-11-30 00:00:18 +02:00
  • 2125071875 - fixed a bug in the Gerber Editor in the Move command Marius Stanciu 2021-11-27 01:41:31 +02:00
  • 7f472838d6 - in Follow Plugin made sure that the notebook is disabled until the user finish (or cancel) the operation when using the area type of 'follow' Marius Stanciu 2021-11-26 01:55:54 +02:00
  • a54de942a3 - added a few protections against RuntimeError exceptions that randomly popup due of wrapped C++ objects being deleted Marius Stanciu 2021-11-23 12:26:11 +02:00
  • 755da7c972 - minor Marius Stanciu 2021-11-22 21:25:49 +02:00
  • ee913e16a5 - when building the UI for the CNCJob first clear the CNCJob Tools Table Marius Stanciu 2021-11-22 13:16:32 +02:00
  • 822df5ba92 - fixed the Travelling Salesman algorithm such that it does not add duplicated points that are next to each other Marius Stanciu 2021-11-22 12:45:10 +02:00
  • 8f0b591d74 - in AppTextEditor made some changes (added some placeholders and a message popup when reaching the end of document) - when viewing GCode the Find field can now keep the focus Marius Stanciu 2021-11-22 03:26:09 +02:00
  • c98066834a - fixed a bug in Panelize Plugin where the Geometry objects could not be panelized - fixed some more Shapely 2.0 deprecation warnings in the Panelize Plugin Marius Stanciu 2021-11-21 20:34:05 +02:00
  • 262ccdda28 - updated the Italian (Massimiliano Golfetto) and Turkish (Mehmet Kaya) translations Marius Stanciu 2021-11-21 17:57:37 +02:00
  • 5f55471aaa - updated the language strings Marius Stanciu 2021-11-21 01:20:23 +02:00
  • b494669ca0 - made sure that if the OR-TOOLS package is not installed then the options in the Preferences for the related optimizations are disabled Marius Stanciu 2021-11-20 19:41:52 +02:00
  • 640739cc65 - fixed another issue when using Python 3.10, in GUI elements - fixed the Rtree optimization when drilling with no toolchange such that all drill points are used - fixed the CNCJob object Tools Table when drilling with no toolchange: now only one tool is displayed Marius Stanciu 2021-11-20 06:30:52 +02:00
  • 538f949983 - solved some Shapely 2.0 deprecation warnings in the Geometry object Marius Stanciu 2021-11-19 20:27:47 +02:00
  • 1ed9714d92 - solved some Shapely 2.0 deprecation warnings in the Panelize Plugin Marius Stanciu 2021-11-19 20:25:17 +02:00
  • 370e8f8ec1 - added Rtree optimization for Drilling Plugin Marius Stanciu 2021-11-17 18:59:37 +02:00
  • 9761e8a4d1 - added fix such that the application will work without having the ortools package installed: TSA and RTree algorithms will be automatically used in that case Marius Stanciu 2021-11-17 16:41:49 +02:00
  • 57004cf948 - fixed an issue when using Python 3.10, in GUI elements Marius Stanciu 2021-11-17 01:15:46 +02:00
  • b29586388b - fixed the issue with toggling visibility for Excellon objects - fixed some issue when using Python 3.10 Marius Stanciu 2021-11-10 22:48:59 +02:00
  • 825701c73c - in Cutout Plugin made sure that mouse bytes feature will not autoselect the Excellon object that is created Marius Stanciu 2021-11-07 00:17:02 +02:00