Commit Graph

550 Commits

Author SHA1 Message Date
Marius Stanciu 2d408f7c3c - fixes to cover all possible situations for the Minimum Annular Ring Rule in Rules Check Tool 2019-09-30 23:24:54 +03:00
Marius Stanciu d002efa9ee - in Rules Check Tool added the functionality for Copper to Outline Clearance, Silk to Silk Clearance, Silk to Solder Mask Clearance, Silk to Outline Clearance, Minimum Solder Mask Sliver, Minimum Annular Ring 2019-09-30 22:40:18 +03:00
Marius Stanciu ddb8a90fae - in Rules Check Tool added the functionality for Copper to Copper Clearance 2019-09-30 20:26:09 +03:00
Marius Stanciu e8faeb2c94 - added support to use Multi Processing (multi core usage, not simple threading) in Rules Check Tool
- in Rules Check Tool added the functionality for the following rules: Hole Size, Trace Size, Hole to Hole Clerance
2019-09-30 19:10:46 +03:00
Marius Stanciu 01adca5714 - in Optimal Tool added the display of the locations where the minimum distance was detected 2019-09-30 07:27:17 +03:00
Marius Stanciu b226177448 - in Tool Distance and Tool Minimal Distance made the entry fields read-only 2019-09-30 04:58:26 +03:00
Marius Stanciu cc9ae05e22 - in Optimal Tool added display of how frequent that minimum distance is found 2019-09-30 04:52:18 +03:00
Marius Stanciu 4936e5b46c - changed a tooltip in Optimal Tool 2019-09-30 04:16:05 +03:00
Marius Stanciu 35ca487122 - small change in the UI layout for Check Rules Tool by adding a new rule (Check trace size) 2019-09-30 04:13:55 +03:00
Marius Stanciu 3211fedca0 - made the Minimum Distance Tool more precise for the Excellon Editor since in the Excellon Editor the holes shape are represented as a cross line but in reality they should be evaluated as circles 2019-09-30 03:57:15 +03:00
Marius Stanciu 34062e8296 - completed the Minimum Distance Tool by adding the usage in Editors 2019-09-30 03:32:02 +03:00
Marius Stanciu d3cad737cc - modified the Distance Tool such that the numbe of decimals all over the tool is set in one place by the self.decimals
- added a new tool named Minimum Distance Tool who will calculate the minimum distance between two objects; key shortcut: SHIFT + M
- finished the Minimum Distance Tool in case of using it at the object level (not in Editors)
2019-09-30 03:02:04 +03:00
Marius Stanciu bacb8a7184 - changed the name of the Measurement Tool to Distance Tool. Moved it's location to the Edit Menu
- added Angle parameter which is continuously updated to the Distance Tool
2019-09-29 05:13:36 +03:00
Marius Stanciu aa7b2426e7 - setup signals in the Rules Check Tool GUI 2019-09-29 03:28:01 +03:00
Marius Stanciu 364e9ad15e - work done for the GUI layout of the Rule Check Tool 2019-09-29 02:46:59 +03:00
Marius Stanciu f47d9cf3d2 - fixed issue #319 where generating a CNCJob from a geometry made with NCC Tool made the app crash
- replaced in FlatCAM Tools and in FLatCAMObj.py  and in Editors all references to hardcoded decimals in string formats for tools with a variable declared in the __init__()
2019-09-28 23:58:23 +03:00
Marius Stanciu 32ff417a2c - fixed a bug in Excellon Editor that crashed the app when editing the first tool added automatically into a new black Excellon file
- made sure that if the big mouse cursor is selected, the utility geometry in Excellon Editor has a thicker line width (2 pixels now) so it is visible over the geometry of the mouse cursor
2019-09-28 21:29:23 +03:00
Marius Stanciu 161dbdcb2d - fixed the ToolMeasurement geometry not being displayed 2019-09-28 04:23:10 +03:00
Marius Stanciu a2bef40097 - added a new tool named "Optimal Tool" which will determine the minimum distance between the copper features for a Gerber object, in fact determining the maximum diameter for a isolation tool that can be used for a complete isolation 2019-09-28 03:51:39 +03:00
Marius Stanciu c5ecc7ad88 - created the GUI for the Rule Check Tool
- if there are (x, y) coordinates in the clipboard, when launching the "Jump to" function, those coordinates will be preloaded in the Dialog box.
- when the combo SHIFT + LMB is executed there is no longer a deselection of objects
- when the "Jump to" function is called, the mouse cursor (if active) will be moved to the new position and the screen position labels will be updated accordingly
- changed the icon for Open Script and reused it for the Check Rules Tool
2019-09-28 00:34:18 +03:00
Marius Stanciu bf60c98b6c - started to work on a new FlatCAM tool: Rules Check 2019-09-27 17:45:30 +03:00
Marius Stanciu 46e7be20e2 - optimized the toggle axis command
- added posibility of using a big mouse cursor or a small mouse cursor. The big mouse cursor is made from 2 infinite lines. This was implemented for both graphic engines
- added ability to change the cursor size when the small mouse cursor is selected in Preferences -> General
2019-09-27 04:42:28 +03:00
Marius Stanciu 0f91d4dff0 - added a Copy All button in the Code Editor, clicking this button will copy all text in the editor to the clipboard
- added a 'Milling Type' radio button in Geometry Editor Preferences to contorl the type of geometry will be generated in the Geo Editor (for conventional milling or for the climb milling)
- added the functionality to allow climb/conventional milling selection for the geometry created in the Geometry Editor
- now any Geometry that is edited in Geometry editor will have coordinates ordered such that the resulting Gcode will allow the selected milling type in the 'Milling Type' radio button in Geometry Editor Preferences (which depends also of the spindle direction)
- some strings update
- French Google-translation at 100%
- German Google-translation update to 100%
2019-09-26 17:46:25 +03:00
Marius Stanciu ae7fec6dd1 - optimized the Gerber mark shapes display
- fixed a color format bug in Tool Move for 3D engine
- made sure that when the Tool Move is used on a Gerber file with mark shapes active, those mark shapes are deleted before the actual move
2019-09-23 17:08:46 +03:00
Marius Stanciu 183d4b7966 - some strings changed to be easier for translation
- updated the .POT file and the translation files
- updated and corrected the Romanian and Spanish translations
- updated the .PO files for the rest of the translations, they need to be filled in.
2019-09-22 17:06:22 +03:00
Marius Stanciu f00559bf6a - made hover shapes work in legacy graphic engine
- fixed bug in display of the apertures marked in the Aperture table found in the Gerber Selected tab and through this made it to also work with the legacy graphic engine
- fixed annotation in Mark Area Tool in Gerber Editor to work in legacy graphic engine
2019-09-22 13:12:21 +03:00
Marius Stanciu 42d26c1323 - fixed display of distance labels and code optimizations in ToolPaint and NCC Tool 2019-09-22 03:54:25 +03:00
Marius Stanciu 03dd0ee8b6 - fixed CutOut Tool to work in legacy graphic engine 2019-09-22 02:52:40 +03:00
Marius Stanciu 5a4f5dbe2f - fixed zoom directions legacy graphic engine (previous commit)
- fixed display of MultiGeo geometries in legacy graphic engine
- fixed Paint tool to work in legacy graphic engine
2019-09-22 02:38:56 +03:00
Marius Stanciu e8109d2007 - fixed Gerber Editor to work in legacy graphic engine
- fixed NCC tool to work in egacy graphic engine
2019-09-22 02:03:19 +03:00
Marius Stanciu 399b0b45c6 - fixed drawing of selection box when dragging mouse on screen and the selection shape drawing on the selected objects
- fixed the moving drawing shape in Tool Move in legacy graphic engine
- fixed moving geometry in Tool Measurement in legacy graphic engine
2019-09-21 22:00:02 +03:00
Marius Stanciu bc6dc3decf - fixed CNCJob and Excellon plotting in legacy graphic engine
- in legacy graphic engine fixed the travel vs cut lines in CNCJob objects
- final fix for key shortcuts with modifier in legacy graphic engine
- refactored some of the code in the legacy graphic engine
2019-09-21 18:26:03 +03:00
Marius Stanciu 9aef293a26 - fixed Measuring Tool in legacy graphic engine
- fixed Gerber plotting
- fixed Geometry plotting
2019-09-21 13:07:30 +03:00
Marius Stanciu 01e2755676 - fixed mouse cursor to work for all objects
- fixed event signals to work in both graphic engines: 2D and 3D
2019-09-21 01:10:32 +03:00
Marius Stanciu 011e80c0ce - legacy graphic engine - made the mouse events work (click, release, doubleclick, dragging)
- legacy graphic engine - made the key events work (simple or with modifiers)
- legacy graphic engine - made the mouse cursor work (enabled/disabled, position report); snapping is not moving the cursor yet
2019-09-20 17:25:32 +03:00
Marius Stanciu 608f1dd958 - made --shellvars into --shellvar and make it only one list of commands passed to the Tcl. The list is separated by comma but without spaces. The variables are accessed in Tcl with the names shellvar_x where x is the index in the list of command comma separated values
- fixed an issue in the TclShell that generated an exception IndexError which crashed the software
2019-09-17 18:37:34 +03:00
Marius Stanciu f51a3fa038 - made the splashscreen to be showed on the current monitor on systems with multiple monitors
- added a new entry in Menu -> View -> Redraw All which is doing what the name says: redraw all loaded objects
- fixed issue where in TCl Shell the Windows paths were not understood due of backslash symbol understood as escape symbol instead of path separator
- made sure that in for the TclCommand cncjob and for the drillcncjob if one of the args is stated but no value then the value used will be the default one
- made available the TSA algorithm for drill path optimization when the used OS is 64bit. When used OS is 32bit the only available algorithm is TSA
2019-09-16 23:27:02 +03:00
Marius Stanciu be4d4387f4 - more GUI optimizations related to being part of the Advanced category or not
- added possibility to change the positive SVG exported file color in Tool Film
2019-09-16 16:04:47 +03:00
Marius Stanciu 846e68a8c2 - some GUI optimizations 2019-09-16 05:22:07 +03:00
Marius Stanciu 8cba74647f - made all TclCommands not to be plotted automatically
- made sure that all TclCommands are not threaded
2019-09-16 01:39:11 +03:00
Marius Stanciu 30f00abce8 - fixed issue in ToolPaint that could not allow area painting of a geometry that was a list and not a Geometric element (polygon or MultiPolygon)
- fixed UI showing before the initialization of FlatCAM is finished when the last state of GUI was maximized
- finished updating the TclCommand cncjob to work for multi-geo Geometry objects with the parameters from the args
2019-09-15 13:37:06 +03:00
Marius Stanciu 57f4762261 - added to the NonCopperClear.clear_copper() a parameter to be able to run it non-threaded 2019-09-14 18:27:08 +03:00
Marius Stanciu e82bc22caf - more string changes
- updated translation files
2019-09-14 02:14:26 +03:00
Marius Stanciu f6cd63021e - fixed some of the strings that were left in the old way
- updated the POT file
- updated Romanian language partially
2019-09-13 18:27:00 +03:00
Marius Stanciu 19444fb28c - upgraded the Script Editor to be able to run Tcl commands in batches
- added some ToolTips for the buttons in the Code Editor
2019-09-13 13:52:55 +03:00
Marius Stanciu 91cad9c57d - added the Gerber code as source for the panelized object in Panelize Tool
- whenever a Gerber file is deleted, the mark_shapes objects are deleted also
2019-09-11 04:54:30 +03:00
Marius Stanciu 4114e773dd - when disabling plots, if the selection shape is visible, it will be deleted
- small changes in Tool Panel (eliminating some deepcopy() calls)
- made sure that all the progress counters count to 100%
2019-09-10 16:05:54 +03:00
Marius Stanciu f658e05240 - added progress and possibility of graceful exit in Panel Tool
- added graceful exit possibility when creating Isolation
2019-09-10 15:08:42 +03:00
Marius Stanciu 7341e089dd - fixed an object used before declaring it in NCC Tool - Area option 2019-09-10 12:50:20 +03:00
Marius Stanciu 59704a6e01 - fixed issue when loading unbuffered a Gerber file that has negative regions
- fixed Panelize Tool to save the aperture geometries into the panel apertures. Also made the tool faster by removing the buffering at the end of the job
- modified FlatCAMEditor's files to the new string format that will allow easier translations
- updated POT file and the Romanian translation
2019-09-10 03:20:14 +03:00
Marius Stanciu 2bd730ceeb - some fixes in Paint Tool when done over the Gerber objects in case that the progressive plotting is selected
- some fixes in Gerber isolation in case that the progressive plotting is selected; added a 'Buffer solid geometry' button shown only when progressive plotting for Gerber object is selected. It will buffer the entire geometry of the object and plot it, in a threaded way.
2019-09-09 14:32:30 +03:00
Marius Stanciu f38dab80e3 - added for NCC Tool and Paint Tool a setting in the Preferences -> Tools --> (NCC Tool/ Paint Tool) that can set a progressive plotting (plot shapes as they are processed) 2019-09-09 05:14:44 +03:00
Marius Stanciu 198e055328 - added a setting in Preferences -> Gerber -> Gerber General named Buffering. If set to 'no' the Gerber objects load a lot more faster (perhaps 10 times faster than when set to 'full') but the visual look is not so great as all the aperture polygons can be seen 2019-09-09 02:41:14 +03:00
Marius Stanciu 28a86aa661 - updated German language translation files
- separated the Plotting thread from the transformations threads
2019-09-07 23:16:20 +03:00
Marius Stanciu 97024ed643 - corrected some issues and made Move Tool to show correctly when it is moving and when it is offsetting the objects position 2019-09-07 18:41:48 +03:00
Marius Stanciu 4cbb5846e3 - all transformation functions show now the progress (rotate, mirror, scale, offset, skew)
- made threaded the Offset and Scale operations found in the Selected tab of the object
2019-09-07 17:08:25 +03:00
Marius Stanciu 5d854a6f1b - added a method to gracefully exit from threaded tasks and implemented it for the NCC Tool and for the Paint Tool
- modified the on_about() function to reflect the reality in 2019 - FlatCAM it is an Open Source contributed software
2019-09-07 09:16:32 +03:00
Marius Stanciu e2b9de743f - small change 2019-09-06 23:09:21 +03:00
Marius Stanciu 24e29bda55 - more customization for the progress display in case of NCC Tool, Paint Tool and for the Gcode generation 2019-09-06 22:25:38 +03:00
Marius Stanciu 88b04f9e7a - modified all the FlatCAM tools strings to the new format in which the status is no longer included in the translated strings to make it easier for the future translations
- updated POT file with the new strings
2019-09-06 21:02:08 +03:00
Marius Stanciu c1ce72e9fb - some fixes and prepared the activity monitor area to receive updated texts 2019-09-06 15:20:19 +03:00
Marius Stanciu 9f0b5d92db - added percentage display for work done in NCC Tool 2019-09-06 10:37:59 +03:00
Marius Stanciu c1e079474d - small changes 2019-09-06 00:40:07 +03:00
Marius Stanciu 76138986bf - fixed issue with loading files at start-up
- fixed issue with generating bounding box geometry for CNCJob objects
- added some more infobar messages and log.debug
- increased the priority for the worker tasks
2019-09-05 17:38:45 +03:00
Marius Stanciu d909b98130 - fixed bug in camblib.clear_polygon3() which caused that some copper clearing / paintings were not complete (some polygons were not processed) when the Straight Lines method was used
- some changes in NCC Tools regarding of the clearing itself
2019-09-03 23:15:29 +03:00
Marius Stanciu 241cac8556 - finished the work on file extensions registration with FlatCAM. If the file extensions are deleted in the Preferences -> File Associations then those extensions are unregistered with FlatCAM
- fixed bug in NCC Tools and in SolderPaste Tool if in Edit -> Preferences only one tool is entered
2019-09-03 22:46:18 +03:00
Marius Stanciu e8aba2cdb7 - in Paint Tool and NCC Tool fixed the RMB click detection when Area selection is used 2019-09-03 16:11:21 +03:00
Marius Stanciu c0cab6ee23 - in NCC Tool added a warning in case there are isolation tools and if those isolation's are interrupted by an area or a box
- in Paint Tool made that the area selection is repeated until RMB click
2019-09-03 15:52:28 +03:00
Marius Stanciu 50aacf21c2 - in NCC Tool now the Area adding is continuous until RMB is clicked (no key modifier is needed anymore) 2019-09-03 02:17:31 +03:00
Marius Stanciu a1d874b705 - fixed the isolation distance in NCC Tool for the tools with iso_op type 2019-09-03 01:47:32 +03:00
Marius Stanciu 4dbf6b2fa9 - small changes in NCC tool regarding the usage of the V-shape tool 2019-09-03 01:32:10 +03:00
Marius Stanciu 7ff8d893c0 - in NCC tool there is now a depth of cut parameter named 'Cut Z' which will dictate how deep the tool will enter into the PCB material
- in NCC tool added possibility to choose between the type of tools to be used and when V-shape is used then the tool diameter is calculated from the desired depth of cut and from the V-tip parameters
2019-09-03 01:13:03 +03:00
Marius Stanciu 707a22c7a3 - in Properties Tool fixed the dimensions calculations (length, width, area) to work for multi-geo objects 2019-09-02 22:36:20 +03:00
Marius Stanciu 60512f09a7 - in Properties Tool made threaded the calculation of convex_hull area and to work for multi-geo objects
- in NCC tool the type of tool that is used is transferred to the Geometry object
- in NCC tool the type of isolation done with the tools selected as isolation tools can now be selected and it has also an Edit -> Preferences entry
2019-09-02 21:39:46 +03:00
Marius Stanciu 4b7115ca59 - added formatting for some strings in the app strings, making the future translations easier 2019-09-02 13:24:04 +03:00
Marius Stanciu 7827cbfe6c - fixed issue in NCC Tool when using area option 2019-09-02 00:53:02 +03:00
Marius Stanciu 1e6eebefed - added isolation capability in NCC tool for the rest-machining option 2019-09-02 00:43:34 +03:00
Marius Stanciu 1295a94af1 - fixed open handlers
- fixed issue in NCC Tool where the tool table context menu could be installed multiple times
- added new ability to create simple isolation's in the NCC Tool
2019-09-02 00:14:28 +03:00
Marius Stanciu ba1e0bc94b - fixed Tcl Command CncJob
- fixed crash due of Properties Tool trying to have a convex hull area on FlatCAMCNCJob objects which is not possible due of their nature
- modified Tcl Command SubtractRectangle
- fixed and modernized the Tcl Command Scale to be able to scale on X axis or on Y axis or on both and having as scale reference either the (0, 0) point or the minimum point of the bounding box or the center of the bounding box.
- fixed and modernized the Tcl Command Skew
2019-08-26 00:40:35 +03:00
Marius Stanciu 61df272bbc - added new capability in NCC Tool when the reference object is of Gerber type and fixed some newly introduced errors 2019-08-25 18:13:13 +03:00
Marius Stanciu 354946025c - finished adding the TclCommandCopperClear that can be called with alias: 'ncc' 2019-08-25 16:05:03 +03:00
Marius Stanciu 8c0b8ed13d - initial add of a new Tcl COmmand named CopperClear
- remade the NCC Tool in preparation for the newly added TclCommand CopperClear
2019-08-25 04:45:16 +03:00
Marius Stanciu 87d1558977 - modified the Paint Tool. Now the Single Polygon and Area/Reference Object painting works with multiple tools too. The tools have to be selected in the Tool Table.
- remade the TclCommand Paint to work in the new configuration of the the app (the painting functions are now in their own tool, Paint Tool)
- fixed a bug in the Properties Tool
2019-08-24 19:55:03 +03:00
Marius Stanciu 82b39d64d2 - fixed selection by dragging a selection shape in Geometry Editor 2019-08-24 05:08:27 +03:00
Marius Stanciu 0e96be7d9a - made PlotCanvas class inherit from VisPy Canvas instead of creating an instance of it (work of JP) 2019-08-24 04:45:25 +03:00
Marius Stanciu 3fe31dec59 - modified CutOut Tool so now the manual gaps adding will continue until the user is clicking the RMB
- added ability to turn on/of the grid snapping and to jump to a location while in CutOut Tool manual gap adding action
2019-08-24 04:30:27 +03:00
Marius Stanciu e35cf7f02c - fixed the issue with GUI entries content being deselected on right click in the box in order to copy the value 2019-08-23 21:01:23 +03:00
Marius Stanciu beda0df4a4 - for all the tools launched rom toolbar the behavior is modified: first click it will launch the tool; second click: if the Tool tab has focus it will close the tool but if another tab is selected, the tool will have focus
- modified the NCC Tool and Paint Tool to work multiple times after first launch
2019-08-23 19:30:33 +03:00
Marius Stanciu 23f85b71e9 - in Paint Tool added ability to add multiple zones to paint when Area option is checked and the modifier key is pressed (either CTRL or SHIFT as set in Preferences). Right click of the mouse is an additional way to finish the job.
- in Paint Tool and NCC Tool, for the Area option, now mouse panning is allowed while adding areas to process
2019-08-23 16:44:41 +03:00
Marius Stanciu 2fbb480f86 - in NCC Tool added ability to add multiple zones to clear when Area option is checked and the modifier key is pressed (either CTRL or SHIFT as set in Preferences). Right click of the mouse is an additional way to finish the job.
- fixed a bug in Excellon Editor that made that the selection of drills is always cumulative
2019-08-23 15:22:53 +03:00
Marius Stanciu f087c242f3 - in Tool Cutout tool I've added the possibility to create a cutout without bridge gaps; added the 'None' option in the Gaps combobox 2019-08-23 02:38:42 +03:00
Marius Stanciu 211a7e4f6f - in Tool Cutout for the manual gaps, right mouse button click will exit from the action of adding gaps 2019-08-23 02:25:25 +03:00
Marius Stanciu 948c495447 - in Tool Cutout for the manual gaps, now the moving geometry that cuts gaps will orient itself to fit the angle of the cutout geometry 2019-08-23 02:15:45 +03:00
Marius Stanciu 299ccb2eca - fixed Tool Cutout so when the target Gerber is a single Polygon then the created manual geometry will follow the shape if shape is freeform 2019-08-22 22:56:02 +03:00
Marius Stanciu a92ecaf2de - fixed some issues introduced in NCC Tool 2019-08-21 22:15:32 +03:00
Marius Stanciu fb62b58cd5 - small changes 2019-08-21 21:04:06 +03:00
Marius Stanciu 47cd3dd043 - in NCC Tool added area selection feature 2019-08-21 03:24:38 +03:00
Marius Stanciu f338403130 - added new entry in Properties Tool which is the calculated Convex Hull Area (should give a more precise area for the irregular shapes than the box area)
- added some more strings in Properties Tool for the translation
2019-08-21 02:33:51 +03:00
Marius Stanciu 50210820e2 - added feature in Paint Tool allowing the painting to be done on Gerber objects
- added feature in Paint Tool to set how (and if) the tools are sorted
- added Edit -> Preferences GUI entries for the above just added features
2019-08-21 02:13:10 +03:00
Marius Stanciu 1d470bafb4 - replaced the layout from Grid to Form for the Reference objects comboboxes in Paint Tool and in NCC Tool 2019-08-21 01:09:57 +03:00
Marius Stanciu 03c264886d - added ability to do copper clearing through NCC Tool on Geometry objects also 2019-08-20 23:00:09 +03:00
Marius Stanciu 07c31bba22 - fixed bug in Tool Sub that created issues when toggling visibility of the plots 2019-08-19 23:34:37 +03:00
Marius Stanciu 1b6dd02217 - some mods in the Tool Sub 2019-08-19 20:57:23 +03:00
Marius Stanciu 5cc16a03db - updated the Edit -> Preferences to include also the Gerber Editor complete Preferences
- started to update the app strings to make it easier for future translations
2019-08-19 17:24:56 +03:00
Marius Stanciu 36586aecce - finished adding in Paint Tool the usage of an external object to set the extent of th area painted. For simple shapes (single Polygon) the shape can be anything, for the rest will be a convex hull of the reference object
- modified NCC tool so for simple objects (single Polygon) the external object used as reference can have any shape, for the other types of objects the copper cleared area will be the convex hull of the reference object
- modified the strings of the app wherever they contained the char seq <b> </b> so it is not included in the translated string
2019-08-18 14:17:46 +03:00
Marius Stanciu 762d949461 - added GUI in Paint tool in beginning to add Paint by external reference object 2019-08-18 05:08:09 +03:00
Marius Stanciu 531beb1d97 - in NCC Tool added a new parameter (radio button) that offer the choice on the order of the tools both in tools table and in execution of engraving; added as a parameter also in Edit -> Preferences -> Tools -> NCC Tool 2019-08-18 03:03:18 +03:00
Marius Stanciu eb4f504911 - fixed a bug in FCDoubleSpinner GUI element
- added a new parameter in NCC tool named offset. If the offset is used then the copper clearing will finish to a set distance of the copper features
2019-08-13 11:32:58 +03:00
Marius Stanciu ee3b38327e - added new option in ToolSub: the ability to close (or not) the resulting paths when using tool on Geometry objects. Added also a new category in the Edit -> Preferences -> Tools, the Substractor Tool Options 2019-08-13 00:42:58 +03:00
Marius Stanciu cac92f75f2 - improved the FlatCAMGerber.isolate() function to work for geometry in the form of list and also in case that the elements of the list are LinearRings (like when doing the Exterior Isolation)
- in NCC Tool made sure that at each run the old objects are deleted
2019-08-12 22:39:38 +03:00
Marius Stanciu cf8a277825 - trying to fix reported bugs 2019-08-11 02:18:32 +03:00
Marius Stanciu a81471a7c8 - small change; debug message added 2019-08-10 15:19:47 +03:00
Marius Stanciu 4a7ff22c8e - fixed issue in the latest feature in NCC Tool: now it works also with reference objects made out of LineStrings (tool 'Path' in Geometry Editor) 2019-08-10 15:12:59 +03:00
Marius Stanciu eea66c0311 - added new feature in NCC Tool: now another object can be used as reference for the area extent to be cleared of copper 2019-08-10 14:59:29 +03:00
Marius Stanciu 40dc73ce93 - finished added 'Area' type of Paint in Paint Tool 2019-08-10 01:15:31 +03:00
Marius Stanciu 6f526acb4d - added Exception handing for the case when the user is trying to save & overwrite a file already opened in another file 2019-08-09 22:39:13 +03:00
Marius Stanciu 7a6c0541be - started to work on Paint Area in Paint Tool 2019-08-07 17:10:48 +03:00
Marius Stanciu 258d3463e7 - replaced setFixedWidth calls with setMinimumWidth 2019-08-07 14:29:59 +03:00
Camellan 0ca9f3fed5 Merged in camellan/flatcam/Beta (pull request #173)
Edit Russian translation
2019-08-03 20:13:29 +00:00
Marius Stanciu 93f9a2f052 - solved bug such that the app is not crashing when some apertures in the Gerber file have no geometry. More than that, now the apertures that have geometry elements are bolded as opposed to the ones without geometry for which the text is unbolded 2019-08-03 22:53:44 +03:00
camellan ab489df0b6 Update pot. Edit Russian translation. 2019-08-01 20:19:01 +04:00
Marius Stanciu 8cadcb3837 - fixed another bug that when selecting an Excellon object after disabling it it crashed the app
- RELEASE 8.92
2019-08-01 00:37:11 +03:00
Marius Stanciu 8e80ec156c - fixed Panelize Tool to do panelization for multiple passes type of geometry that comes out of the isolation done with multiple passes 2019-07-29 02:36:29 +03:00
Marius Stanciu dce0d971cd - updated the CutOut tool so it will work on single PCB Gerbers or on PCB panel Gerbers 2019-07-20 19:36:37 +03:00
Marius Stanciu e691c26b01 - fixed bug in FlatCAMObj.FlatCAMGeometry.ui_disconnect(); the widgets signals were not disconnected from handlers when required therefore the signals were connected in an exponential way
- some changes in the widgets used in the Selected tab for Geometry object
- some PEP8 cleanup in FlatCAMObj.py
- updated languages
- 60% progress in Spanish Google translation
2019-07-20 01:17:33 +03:00
Marius Stanciu 2797a58165 - fixed bug in FlatCAMObj.FlatCAMGeometry.ui_disconnect(); the widgets signals were not disconnected from handlers when required therefore the signals were connected in an exponential way
- some changes in the widgets used in the Selected tab for Geometry object
- some PEP8 cleanup in FlatCAMObj.py
2019-07-19 21:46:11 +03:00
Marius Stanciu 86287ea10f - version date change 2019-07-17 14:58:43 +03:00
Marius Stanciu 0e54d42c1b - fixed issue in ToolMove regarding grid snapping recently introduced 2019-07-17 14:56:20 +03:00
Marius Stanciu ac2bf56e14 - added some more strings to the translateable ones, especially the radio button labels
- updated the .POT file and the available translations
- 51% progress in Spanish Google translation
2019-07-17 14:11:10 +03:00
Marius Stanciu e6153298bc - PEP8 correction in flatcamTools
- merged the Brazilian-portuguese language from a pull request made by Carlos Stein
2019-07-16 16:22:20 +03:00
Marius Stanciu 7c0a8b73e3 - some PEP8 corrections 2019-07-15 01:16:02 +03:00
Marius Stanciu 729b7cb11c - some changes in the app.on_togle_units() to make sure we don't try to convert empty parameters which may cause crashes on FlatCAM units change
- updated setup_ubuntu.sh file
- made sure to import certain libraries in some of the FlatCAM files and not to rely on chained imports
2019-07-09 13:58:33 +03:00
Marius Stanciu 16525a606c - fixed some log errors 2019-07-08 22:42:58 +03:00
Marius Stanciu 769f92147a - fixed bug that allowed empty tool in the tools generated in Geometry object
- fixed bug in Tool Cutout that did not allow the transfer of used cutout tool diameter to the cutout geometry object
2019-07-08 20:06:41 +03:00
Marius Stanciu 5e401fd9f7 - some other bug in CutOut tool fixed 2019-07-05 20:45:15 +03:00
Marius Stanciu 1edb049d86 - fixed bug in CutOut Tool 2019-07-05 12:13:53 +03:00
Marius Stanciu 429753d211 - fixes issues with units conversion when the tool diameters are a list of comma separated values (NCC Tool, SolderPaste Tool and Geometry Object)
- fixed a "typo" kind of bug in SolderPaste Tool
- RELEASE 8.919
2019-06-23 00:04:49 +03:00
Marius Stanciu 21a15e73bd - fixed bug in Gerber isolation (Geometry expects now a value in string format and not float)
- fixed bug in Paint tool: now it is possible to paint geometry generated by External Isolation (or Internal isolation)
- fixed bug in editing a multigeo Geometry object if previously a tool was deleted
2019-06-22 20:17:45 +03:00
Marius Stanciu 68bdfaf062 - some GUI layout optimizations in Edit -> Preferences
- added the possibility for multiple tool diameters in the Edit -> Preferences -> Geometry -> Geometry General -> Tool dia separated by comma
- fixed scaling for the multiple tool diameters in Edit -> Preferences -> Geometry -> Geometry General -> Tool dia, for NCC tools more than 2 and for Solderpaste nozzles more than 2
- fixed bug in CNCJob where the CNC Tools table will show always only 2 decimals for Tool diameters regardless of the current measuring units
- made the tools diameters decimals in case of INCH FlatCAM units to be 4 instead of 3
- fixed bug in updating Grid values whenever toggling the FlatCAM units and the X, Y Grid values are linked, bugs which caused the Y value to be scaled incorrectly
- set the decimals for Grid values to be set to 6 if the units of FlatCAM is INCH and to set to 4 if FlatCAM units are METRIC
- updated translations
- updated the Russian translate from 51% complete to 69% complete using the Yandex translation engine
2019-06-22 17:58:31 +03:00
camellan 8e71c93a62 Update Russian translate. Add translation strings. Update pot. 2019-06-09 22:09:15 +04:00
camellan 4b820d2bd3 Update pot-file. Edit Russian translation. 2019-06-09 01:32:20 +04:00
camellan 70e939ca36 Merge remote-tracking branch 'remotes/jpcgt/flatcam/Beta' into Beta 2019-06-08 23:16:41 +04:00
Marius Stanciu a5ffe475dd - fixed bug in ToolCutout where creating a cutout object geometry from another external isolation geometry failed
- fixed bug in cncjob TclCommand where the gcode could not be correctly generated due of missing bounds params in obj.options dict
- fixed a hardcoded tolerance in FlatCAMGeometry.generatecncjob() and in FlatCAMGeometry.mtool_gen_cncjob() to use the parameter from Preferences
2019-06-07 23:14:00 +03:00
camellan 9e88950e65 Add translation strings. Update Russian translation. 2019-06-04 23:39:36 +04:00
Marius Stanciu 2a30101bb0 - TclCommand Geocutout is now creating a new geometry object when working on a geometry, preserving also the origin object 2019-06-03 04:47:29 +03:00
Marius Stanciu 8ee516ec14 - editing a multi geometry will no longer pop-up a Tcl window
- solved issue #292 where a new geometry renamed with many underscores failed to store the name in a saved project
- the name for the saved projects are updated to the current time and not to the time of the app startup
- some PEP8 changes related to comments starting with only one '#' symbol
2019-05-30 21:05:12 +03:00
camellan 41c6b0bde6 Update Russian language. Fix translate string 2019-05-29 13:29:42 +04:00
Marius Stanciu b273bdc3df - Gerber Editor: finished a new tool: Eraser. It will erase certain parts of Gerber geometries having the shape of a selected shape. 2019-05-22 01:04:10 +03:00
Marius Stanciu f71645c96c - fixed Tool PDF to work with the new Gerber apertures data structure 2019-05-19 00:44:52 +03:00
Marius Stanciu f779c74d0e - fixed App.convert_any2gerber to work with the new Gerber apertures data structure
- fixed Tool Sub to work with the new Gerber apertures data structure
2019-05-18 18:22:02 +03:00
Marius Stanciu 8ccd73b919 - added a new toggle option in Edit -> Preferences -> General Tab -> App Preferences -> "Open" Behavior. It controls which path is used when opening a new file. If checked the last saved path is used when saving files and the last opened path is used when opening files. If unchecked then the path for the last action (either open or save) is used. 2019-05-18 17:17:37 +03:00
Marius Stanciu 630d9c733d - remade the Properties Tool such that it works with the new Gerber data structure in the obj.apertures. Also changed the view for the Gerber object in Properties
- fixed issue with false warning that the Gerber object has no geometry after an empty Gerber was edited and added geometry elements
2019-05-18 00:17:37 +03:00
Marius Stanciu 7f0a1695ef - fixed an issue in the remade Cutout Tool where when applied on a single Gerber object, the Freeform Cutout produced no cutout Geometry object 2019-05-17 20:11:01 +03:00
Marius Stanciu 3713a5d78f - remade the Tool Cutout to work on panels
- remade the Tool Cutour such that on multiple applications on the same object it will yield the same result
2019-05-17 17:17:58 +03:00
Marius Stanciu e0001dc9b7 - some cleanup in ToolCutout 2019-05-17 03:04:28 +03:00
Marius Stanciu 01c0f901ff - some modifications to ToolCutout 2019-05-13 01:57:37 +03:00
Marius Stanciu 5dd0ff7e14 - optimized Transform tool 2019-05-11 02:57:06 +03:00
Marius Stanciu 8275750d3e - fixed camlib.Gerber skew, rotate, offset, mirror functions to work for geometry stored in the Gerber apertures 2019-05-08 06:15:02 +03:00
Marius Stanciu 6fb33ebc5e - Gerber Export - finished
- added zoom fit for Set Origin command
- added move action for solid_geometry stored in the gerber_obj.apertures
2019-05-08 06:02:38 +03:00
Marius Stanciu b31f3b7587 - remade the Tool Paenlize GUI 2019-05-07 13:55:20 +03:00
Marius Stanciu f6106dd319 - updated the ToolPanelize tool so the Gerber panel of type FlatCAMGerber can be isolated like any other FlatCAMGerber object
- updated the ToolPanelize tool so it can be edited
2019-05-07 02:08:17 +03:00
Marius Stanciu b53c08f1e5 - finished the new Substract Tool 2019-04-30 20:22:46 +03:00
Marius Stanciu 17bbbad72d - progress in the new Substract Tool for Geometry Objects 2019-04-30 17:53:21 +03:00
Marius Stanciu bc981ab92c - started to modify the Substract Tool to work on Geometry objects too 2019-04-30 15:52:12 +03:00
Marius Stanciu eb00176519 - renamed SilkScreen Tool to Substract Tool and move it's menu location in Edit -> Conversion 2019-04-30 13:16:32 +03:00
Marius Stanciu b8495f06ca - solved the issue in Silkscreen Tool with losing some fragments of wires from silkscreen 2019-04-30 03:54:29 +03:00
Marius Stanciu 0e94a2bd11 - finished the Silkscreen Tool but there are some limitations (some wires fragments from silkscreen are lost) 2019-04-30 03:50:01 +03:00
Marius Stanciu c3c37d1473 - finished the Silkscreen Tool 2019-04-30 03:29:46 +03:00
Marius Stanciu 91e6cc0bff - soled bug in Gerber Editor: the '0' aperture (the region aperture) had no size which created errors. Made the size to be zero.
- solved bug in editors: the canvas selection shape was not deleted on mouse release if the grid snap was OFF
- solved bug in Excellon Editor: when selecting a drill hole on canvas the selected row in the Tools Table was not the correct onw but the next highest row
2019-04-29 22:28:45 +03:00
Marius Stanciu 8fcd75a8e4 - commented the camlib.alpha_shape() as it is not needed but require a huge package (scipy) 2019-04-26 18:02:07 +03:00
Marius Stanciu 4c275b25af - fixed Edit -> Copy as Geom function handler to work for Excellon objects, too
- made sure that the mouse pointer is restored to default on Editor exit
2019-04-25 20:42:56 +03:00
Marius Stanciu ddc2f2d873 - Geometry Editor: modified the intersection (if the selected shapes don't intersects preserve them) and substract functions (delete all shapes that were used in the process)
- work in the ToolSilk
2019-04-25 16:47:17 +03:00
Marius Stanciu c2334bd747 - Geometry Editor: modified the intersection (if the selected shapes don't intersects preserve them) and substract functions (delete all shapes that were used in the process)
- work in the ToolSilk
2019-04-25 16:26:31 +03:00
Marius Stanciu ae8111bf59 - wip 2019-04-25 01:52:29 +03:00
Marius Stanciu 7fd8d99932 - wip 2019-04-25 01:23:36 +03:00
Marius Stanciu 386e811c65 - New tool: Silkscreen Tool: I am trying to remove the overlapped geo with the soldermask layer from overlay layer; layed out the class and functions - not working yet 2019-04-25 01:13:37 +03:00
Marius Stanciu b11c67d453 - PDF import tool: solved a bug in parsing the rectangle subpath (an extra point was added to the subpath creating nonexisting geometry)
- PDF import tool: finished layer rendering multithreading
2019-04-24 22:26:13 +03:00
Marius Stanciu c0716f22e5 - wip for multithreading in PDF Tool 2019-04-24 16:37:16 +03:00
Marius Stanciu e4faa27351 - PDF import tool: working in making the PDF layer rendering multithreaded in itself (one layer rendered on each worker) 2019-04-24 14:11:15 +03:00
Marius Stanciu 5f5b37eb98 - Fixed Measurement Tool to show the mouse coordinates on the status bar (it was broken at some point) 2019-04-23 16:10:34 +03:00
Marius Stanciu 82a0287f4d - PDF Import tool: added support for detection of circular geometry drawn with white color which means actually invisible color. When detected, FlatCAM will build an Excellon file out of those geoms.
- PDF Import tool: fixed storing geometries in apertures with the right size (before they were all stored in aperture D10)
2019-04-23 02:02:20 +03:00
Marius Stanciu d66d914cc3 - PDF Import tool: fixed bugs when drag & dropping PDF files on canvas the files geometry previously opened was added to the new one. Also scaling issues. Solved. 2019-04-22 20:33:03 +03:00
Marius Stanciu 8f1a0c1fdc - added PDF file as type in the Recent File list and capability to load it from there
- PDF's can be drag & dropped on the GUI to be loaded
2019-04-22 19:18:23 +03:00
Marius Stanciu 7442af1b06 - PDF Import tool: added support for PDF files that embed multiple Gerber layers (top, bottom, outline, silkscreen etc). Each will be opened in it's own Gerber file. The requirement is that each one is drawn in a different color 2019-04-22 17:35:36 +03:00
Marius Stanciu 8a2a48f668 - PDF import tool: added support for save/restore Graphics stack. Only for scale and offset transformations and for the linewidth. This is the final fix for Microsoft PDF printer who saves in PDF format 1.7 2019-04-22 15:35:21 +03:00
Marius Stanciu 53444fc685 - fixed the PDF import tool to work with files generated by the Microsoft PDF printer (chained subpaths)
- in PDF import tool added support for paths filled and at the same time stroked ('B' and 'B*'commands)
- added a shortcut key for PDF Import Tool (ALT+Q) and updated the Shortcut list (also with the 'T' and 'R' keys for Gerber Editor where they control the bend in Track and Region tool and the 'M' and 'D' keys for Add Arc tool in Geometry Editor)
2019-04-22 03:28:05 +03:00
Marius Stanciu 108f11eacf - finished adding the PDF import tool although it does not support all kinds of outputs from PDF printers. Microsoft PDF printer is not supported. 2019-04-21 04:43:49 +03:00
Marius Stanciu 52fceae054 - started to work on PDF import tool 2019-04-19 17:12:10 +03:00
Marius Stanciu d92750d124 - added ability to use ENTER key to finish tool adding in Editors, NCC Tool, Paint Tool and SolderPaste Tool. 2019-04-16 15:27:51 +03:00
Marius Stanciu 348fe4f135 - finished ToolPcbWizard; it will autodetect the Excellon format, units from the INF file 2019-04-15 05:17:16 +03:00
Marius Stanciu db26895b5b - working on a new tool to process automatically PcbWizard Excellon files which are generated in 2 files 2019-04-15 03:29:43 +03:00
Marius Stanciu fc1dfb8550 - cleaned up Measuring Tool 2019-04-14 16:59:20 +03:00
Marius Stanciu 1332601624 - moved the key handler out of the Measurement tool to flatcamGUI.FlatCAMGui.keyPressEvent()
- Gerber Editor: started to add new function of poligonize which should make a filled polygon out of a shape
2019-04-14 15:16:37 +03:00
Marius Stanciu 58abfcb7f7 - fixed above bug in Measurement Tool (but there is a TODO there) 2019-04-10 04:37:03 +03:00
Marius Stanciu 942d9e2b01 - Gerber Editor: finished the selection on canvas; should be used as an template for the other Editors
- Gerber Editor: finished the Copy, Aperture Add, Buffer, Scale, Move including the Utility geometry
- Trying to fix bug in Measurement Tool: the mouse events don't disconnect
2019-04-10 03:56:56 +03:00
Victor Benso 1f67158e35 Issue #284 - Sanitize the entered Overlap value for the Copper Clear Tool as well.
Change the "Overlap:" label occurrences to "Overlap Rate:" for clarity.
2019-04-03 12:41:25 -04:00
Victor Benso ece1538239 Issue #284 - Sanitize the entered Overlap value 2019-04-03 12:28:20 -04:00
Victor Benso 309dbb132e Issue #284 - Sanitize the entered Overlap value. 2019-04-03 12:20:53 -04:00
Victor Benso 328677aa36 Issue #282 - Paint operations should ignore lines, after all only geometries that have a valid area should be painted. 2019-04-03 00:47:41 -04:00
Marius Stanciu bfd7cbdd44 - changed Measuring Tool to use the mouse click release instead of mouse click press; also fixed a bug when using the ESC key. 2019-04-01 00:07:26 +03:00
Marius Stanciu ecd6472220 - fixed issue #281 by making generation of a convex shape for the freeform cutout in Tool Cutout a choice rather than the default
- fixed bug in Tool Cutout, now in manual cutout mode the gap size reflect the value set
2019-03-31 21:52:27 +03:00
Marius Stanciu e0417b034b - modified Gerber parser to copy the follow_geometry in the self.apertures
- modified the Properties Tool to show the number of elements in the follow_geometry for each aperture
- modified the copy functions to copy the follow_geometry and also the apertures if it's possible (only for Gerber objects)
2019-03-29 02:13:20 +02:00
Marius Stanciu ecc2c90f2a - changed all the info messages that are of type warning, error or success so they have a space added after the keyword
- changed the Romanian translation by adding more diacritics
2019-03-29 00:26:00 +02:00
Marius Stanciu 0002d32341 - fixed bug: after using Paint Tool shortcut keys are disabled 2019-03-26 22:39:49 +02:00
Marius Stanciu a964e6282d - fixed an module import issue in NCC Tool
- minor change (optimization) of the CNCJob UI
- work in progress in German translation ~20%
2019-03-25 22:00:07 +02:00
Marius Stanciu 74d1765a95 - added ability to create new scripts and open scripts in FlatCAM Script Editor 2019-03-18 22:59:13 +02:00
Marius Stanciu 1c8c973971 - finished translation in Romanian 2019-03-18 01:23:36 +02:00
Marius Stanciu abfa78d898 - remade the layout in 2Sided Tool
- work in progress for translation in Romanian - 91%
2019-03-17 15:47:17 +02:00
Marius Stanciu fe6fa826ce - remade the layout in 2Sided Tool
- work in progress for translation in Romanian - 91%
2019-03-17 04:35:04 +02:00
Marius Stanciu 46da2dfd1e - made the layout combobox current item from Preferences -> General window to reflect the current layout
- remade the POT translate file
- work in progress in translation for Romanian language 44%
- fix for showing tools by activating them from the Menu - final fix.
2019-03-16 00:59:59 +02:00
Marius Stanciu c0d21ee4e0 - made the layout combobox current item from Preferences -> General window to reflect the current layout
- remade the POT translate file
- work in progress in translation for Romanian language 44%
- fix for showing tools by activating them from the Menu - final fix.
2019-03-14 01:09:06 +02:00
Marius Stanciu ae0706620e - reverted changes in Tools regarding the toggle effect - now they work as expected and added protection against AttributeError that can happen when switching from another tab. 2019-03-11 23:04:38 +02:00
Marius Stanciu 090a3ff8f8 - reverted changes in Tools regarding the toggle effect - now they work as expected 2019-03-11 22:58:27 +02:00
Marius Stanciu 255254a292 - some strings were left outside the translation formatting - fixed
- finished the replacement of '_' symbols throughout the app which conflicted with the _() function used by the i18n
2019-03-11 20:00:07 +02:00
Marius Stanciu 9d33e08ecf - added a visual cue in Menu -> Edit about the entries to enter the Editor and to Save & Exit Editor. When one is enabled the other is disabled.
- grouped all the UI files in flatcamGUI folder
2019-03-11 12:23:26 +02:00
Marius Stanciu 29722de6ac - fixed the Properties Project menu entry to work on the new way
- in Properties tool now the Gerber apertures show the number of polygons in 'solid_geometry' instead of listing the objects
2019-03-11 03:31:33 +02:00
Marius Stanciu 68cadb08ce - fixed some issues with ToolMeasurement due of above changes 2019-03-10 17:21:45 +02:00
Marius Stanciu a6e23b28a7 - fix app crash for the case that there are no translation files
- fixed some forgotten strings to be prepared for internationalization in ToolCalculators
- fixed Tools menu no longer working due of changes
- added some test translation for the ToolCalculators (in Romanian)
- fixed bug in ToolCutOut where for each tool invocation the signals were reconnected
2019-03-10 17:12:58 +02:00
Marius Stanciu ffd707ccce - comment changes on the file licenses (added major contributor names) 2019-03-10 15:22:16 +02:00
Marius Stanciu 53627b566c - added a fix in the Gerber parser when adding the geometry in the self.apertures dict for the case that the current aperture is None (Allegro does that)
- finished support for internationalization by adding a set of .po/.mo files for the English language. Unfortunately the final action can be done only when Beta will be out of Beta (no more changes) or when I will decide to stop working on this app.
- changed the tooltip for 'feedrate_rapids' parameter to point out that this parameter is useful only for the Marlin postprocessor
2019-03-10 14:34:13 +02:00
Marius Stanciu ebdcf0bbba - fixed tools shortcuts not working anymore due of the new toogle parameter for the .run(). 2019-03-08 17:18:04 +02:00
Marius Stanciu 6ba037fd83 - fixed issue when doing th CTRL (or SHIFT) + LMB, the focus is automatically moved to Project Tab
- further work in internationalization, added a fallback to English language in case there is no translation for a string
2019-03-08 14:10:23 +02:00
Marius Stanciu 574184f44c - fixed Measuring Tool - after doing a measurement the Notebook was switching to Project Tab without letting the user see the results
- more work on the translation engine; the app now restarts after a language is applied
- added protection against using Travel Z parameter with negative or zero value (in Geometry).
2019-03-08 01:32:18 +02:00
Marius Stanciu 934d971002 - WIP for internationalization 2019-03-07 18:04:11 +02:00
Marius Stanciu 94d2fb23e2 - made showing a shape when hovering over objects, optional, by adding a Preferences -> General parameter
- starting to work in internationalization using gettext()
- Finished adding _() in FlatCAM Tools
2019-03-07 17:37:38 +02:00
Marius Stanciu b20a6a1a85 - modified the way the FlatCAM Tools are run from toolbar as opposed of running them from other sources
- some Gerber UI changes
2019-03-06 15:22:35 +02:00
Marius Stanciu d775e999fe - remade the CutOut Tool
- finished Manual Cutout Tool by adding utility geometry to the cutting geometry
- added CTRL + click behavior for adding manual bridge gaps in Cutout Tool
- in Tool Cutout added shortcut key 'Escape' to cancel the current adding of bridge gaps
2019-03-04 16:09:41 +02:00
Marius Stanciu 2eccb61660 - starting to work on Manual Cutout Tool 2019-03-04 05:10:58 +02:00
Marius Stanciu 90ff773546 - fixed Excellon object move and all the other transformations 2019-03-04 04:41:04 +02:00
Marius Stanciu 06fb48eb6a - minor UI changes for Gerber UI
- ~~after an object move, the apertures plotted shapes are deleted from canvas and the 'mark all' button is deselected~~
- after move tool action or any other transform (rotate, skew, scale, mirror, offset), the plotted apertures are kept plotted.
- changing units now will convert all the default values from one unit type to another
- prettified the selection shape and the moving shape
- initial work in object hovering shape
2019-03-04 03:47:19 +02:00
Marius Stanciu d79d6cf2bc - minor UI changes for Gerber UI
- after an object move, the apertures plotted shapes are deleted from canvas and the mark all button is deselected
- fixed offset, rotate, scale, skew for follow_geometry. Fixed the move tool also.
- fixed offset, rotate, scale, skew for 'solid_geometry' inside the self.apertures.
2019-03-03 16:35:15 +02:00
Marius Stanciu ee23a31d50 - added some protections for the FlatCAM Tools run after an object was loaded 2019-02-28 04:28:38 +02:00
Marius Stanciu 7635687d30 - upgraded the Tool Cutout when done from Gerber file to create a convex_hull around the Gerber file rather than trying to isolate it 2019-02-28 04:22:52 +02:00
Marius Stanciu 1839843fad - added toggle effect for the tools in the toolbar.
- enhanced the toggle effect for the tools in the Tools Toolbar and also for Notebook Tab selection: if the current tool is activated it will toggle the notebook side but only if the installed widget is itself. If coming from another tool, the notebook will stay visible
2019-02-27 17:32:52 +02:00
Marius Stanciu 2291a58727 - fixed a small bug in the Tool Solder Paste: the App don't take into consideration pads already filled with solder paste. 2019-02-23 18:51:42 +02:00
Marius Stanciu 568d97d899 - added protection, not allowing the user to make a Paint job on a MultiGeo geometry (one that is converted in the Edit -> Conversion menu)) because it is not supported 2019-02-23 16:25:16 +02:00
Marius Stanciu 3bad47b3be - updated the Properties Tool to include more information's, also details if a Geometry is of type MultiGeo or SingleGeo
- remade the Preferences GUI to include the Advanced Options in a separate way so it is obvious which are displayed when App Level is Advanced.
2019-02-23 16:02:45 +02:00
Marius Stanciu adcafb7cac - remade the SolderPaste geometry generation function in ToolSoderPaste to work in certain scenarios where the Gerber pads in the SolderPaste mask Gerber may be just pads outlines 2019-02-23 13:48:18 +02:00
Marius Stanciu 92c02bc6a1 - cleaned up the imports in ToolSolderPaste 2019-02-23 06:38:02 +02:00
Marius Stanciu 2843810ab3 - some GUI elements changes 2019-02-23 06:11:42 +02:00
Marius Stanciu 21f970204e - added the ability of context menu inside the GuiElements.FCCombobox() object.
- remade the UI for ToolSolderPaste. The object comboboxes now have context menu's that allow object deletion. Also the last object created is set as current item in comboboxes.
2019-02-23 03:38:39 +02:00
Marius Stanciu 7272b46dd9 - added Repetier postprocessor file
- removed "added ability to regenerate objects (it's actually deletion followed by recreation)" because of the way Python pass parameters to functions by reference instead of copy
2019-02-22 16:54:58 +02:00
Marius Stanciu 18f38999c4 - added ability to regenerate objects (it's actually deletion followed by recreation) 2019-02-22 03:28:04 +02:00
Marius Stanciu 45b5cba68a - fixed issue with not updating correctly the plot kind (all, cut, travel) when clicking in the CNC Tools Table plot buttons
- made the GCode Editor for ToolSolderPaste clear the text before updating the Code Editor tab
- all the Tabs in Plot Area are closed (except Plot Area itself) on New Project creation
2019-02-22 00:37:57 +02:00
Marius Stanciu d453c31bf5 - finished work in ToolSolderPaste 2019-02-21 23:48:13 +02:00
Marius Stanciu d5768d3b34 - creating the camlib functions for the ToolSolderPaste gcode generation functions 2019-02-21 17:07:38 +02:00
Marius Stanciu 48e54a0655 - added protection against trying to create a CNCJob from a solder_paste dispenser geometry. This one is different than the default Geometry and can be handled only by SolderPaste Tool.
- ToolSoderPaste tools (nozzles) now have each it's own settings
2019-02-21 14:23:34 +02:00
Marius Stanciu 7a5196207f - some work in the Gcode generation function in Tool SolderPaste 2019-02-21 03:11:22 +02:00
Marius Stanciu 9557e1af60 - added protection against creating CNCJob from an empty Geometry object (with no geometry inside)
- changed the shortcut key for YouTube channel from F2 to key F4
- changed the way APP LEVEL is showed both in Edit -> Preferences -> General tab and in each Selected Tab. Changed the ToolTips content for this.
- added the functions for GCode View and GCode Save in Tool SolderPaste
2019-02-21 03:04:38 +02:00
Marius Stanciu 4ab2374903 - added protection against creating CNCJob from an empty Geometry object (with no geometry inside)
- changed the shortcut key for YOuTube channel from F2 to key F4
2019-02-21 01:14:55 +02:00
Marius Stanciu f62e7e51fd - finished the Edit -> Preferences defaults section
- finished the UI, created the postprocessor file template
- finished the multi-tool solder paste dispensing: it will start using the biggest nozzle, fill the pads it can, and then go to the next smaller nozzle until there are no pads without solder.
2019-02-20 22:46:46 +02:00
Marius Stanciu bd1293a774 - wip 2019-02-20 17:24:26 +02:00
Marius Stanciu 448f34c090 - finished added a Tool Table for Tool SolderPaste
- working on multi tool soder paste dispensing
2019-02-20 17:10:43 +02:00
Marius Stanciu 3ee6eb4a87 - fixed a bug in rotate from shortcut function
- finished generating the solder paste dispense geometry
2019-02-20 03:27:17 +02:00
Marius Stanciu 89052379b2 - started to work on Solder Paste Dispensing Tool 2019-02-19 17:48:24 +02:00
Marius Stanciu c22d6766f4 - small GUI change 2019-02-18 23:50:33 +02:00
Marius Stanciu 783604f2aa - made the output of Panelization Tool a choice out of Gerber and Geometry type of objects. Useful for those who want to engrave multiple copies of the same design. 2019-02-18 23:47:59 +02:00
Marius Stanciu 7c2d8ff28e - added Tool Transform preferences in Edit -> Preferences and used them through out the app 2019-02-18 22:48:28 +02:00
Marius Stanciu bb8dcb37b9 - fixed a bug in Tool Transform that made the user to not be able to capture the click coordinates with SHIFT + LMB click combo
- added the ability to choose an App QStyle out of the offered choices (different for each OS) to be applied at the next app start (Preferences -> General -> Gui Pref -> Style Combobox)
- added support for FlatCAM usage with High DPI monitors (4k). It is applied on the next app startup after change in Preferences -> General -> Gui Pref -> HDPI Support Checkbox
2019-02-18 16:11:24 +02:00
Marius Stanciu cc2fe29942 - fixed an issue where the function handler that changed the layout had a parameter changed accidentally by an index value passed by the 'activate' signal to which was connected
- fixed bug in paint function in Geometry Editor that didn't allow painting due of overlap value
- added protections again wrong values for the Buffer and Paint Tool in Geometry Editor
- the Paint Tool in Geometry Editor will load the default values from Tool Paint in Preferences
- when the Tools in Geometry Editor are activated, the notebook with the Tool Tab will be unhidden. After execution the notebook will hide again for the Buffer Tool.
- changed the font in Tool names
- added in Geometry Editor a new Tool: Transformation Tool. It still has some bugs, though ...
2019-02-18 03:45:34 +02:00
Marius Stanciu 326599e4a3 - changed some status bar messages
- New feature: added the capability to view the source code of the Gerber/Excellon file that was loaded into the app. The file is also stored as an object attribute for later use. THe view option is in the project context menu and in Menu -> Options -> View Source
2019-02-16 19:47:50 +02:00
Marius Stanciu b6d36bb86d - fixed DblSided Tool issue when entering Tool diameter values with comma decimal separator instead of decimal dot separator
- fixed Cutout Tool Freeform to generate cutouts with options: LR, TB. 2LR, 2TB which didn't worked previously
2019-02-16 12:40:44 +02:00
Marius Stanciu ffb7931adb - added messages in info bar when selecting objects in the Project View list
- fixed DblSided Tool so it correctly creates the Alignment Drills Excellon file using the new structure
- fixed DblSided Tool so it will not crash the app if the user tries to make a mirror using no coordinates
- added some relevant status bar messages in DblSided Tool
- fixed DblSided Tool to correctly use the Box object (until now it used as reference only Gerber object in spite of Excellon or Geometry objects being available)
- fixed DblSided Tool crash when trying to create Alignment Drills object without a Tool diameter specified
2019-02-16 12:22:07 +02:00
Marius Stanciu 681f1ef1eb - more updates on project save choice 2019-02-16 00:42:18 +02:00
Marius Stanciu 33b722aa1a - more update s on project save choice 2019-02-16 00:40:51 +02:00
Marius Stanciu d0641458e4 - whenever a FlatCAM tool is activated, if the notebook side is hidden it will be unhidden
- reactivated the Voronoi classed
- added a new parameter named Offset in the Excellon tool table - work in progress
2019-02-12 04:00:11 +02:00
Marius Stanciu b68a010bde - the SELECTED type of messages are no longer printed to shell from 2 reasons: first, too much spam and second, issue with displaying html
- on set_zero function and creation of new geometry or new excellon there is no longer a zoom fit
2019-02-09 19:44:01 +02:00
Marius Stanciu 59e12cf295 - fixed an error in Excellon Editor -> add drill array that could appear by starting the function to add a drill array by shortcut before any mouse move is registered while in Editor
- changed the messages from status bar on new object creation/selection
- in Geometry Editor fixed the handler for the Rotate shortcut key ('R')
2019-02-09 16:00:47 +02:00
Marius Stanciu 8665b1d8c3 - added into Preferences the Calculator Tools
- made the Preferences window scrollable on the horizontal side (it was only vertically scrollable before)
- made invisible some buttons that could mislead (the ones for slots converted to drills which I deem unsafe)
2019-02-09 11:52:08 +02:00
Marius Stanciu da7029dc0b - if trying to add a tool using shortcut key 'T' with value zero the app will react with a message telling to use a non-zero value. 2019-02-09 01:18:03 +02:00
Marius Stanciu 8f000c0a18 - in Excellon Editor added a protection for Tool_dia field in case numbers using comma as decimal separator are used. Also added a QDoubleValidator forcing a number with max 4 decimals and from 0.0000 to 9.9999
- in Excellon Editor added a shortcut key 'T' that popup a window allowing to enter a new Tool with the set diameter
- in App added a shortcut key 'T' that popup a windows allowing to enter a new Tool with set diameter only when the Selected tab is on focus and only if a Geometry object is selected
- changed the shortcut key for Transform Tool from 'T' to 'ALT+T'
- fixed bug in Geometry Selected tab that generated error when used tool offset was less than half of either total length or half of total width. Now the app signal the issue with a status bar message
- added Double Validator for the Offset value so only float numbers can be entered.
- in App added a shortcut key 'T' that popup a windows allowing to enter a new Tool with set diameter only when the Tool tab is on focus and only if a NCC Tool or Paint Area Tool object is installed in the Tool Tab
2019-02-09 00:08:54 +02:00
Marius Stanciu 5b75d416ec - moved some graphical classes out of Tool Shell to GUIElements.py where they belong
- when selecting an object on canvas by single click, it's name is displayed in status bar. When nothing is selected a blank message (nothing) it's displayed
- in Move Tool I've added the type of object that was moved in the status bar message
- color coded the status bar bullet to blue for selection
- the name of the selected objects are displayed in the status bar color coded: green for Gerber objects, Brown for Excellon, Red for Geometry and Blue for CNCJobs.
2019-02-07 22:37:51 +02:00
Marius Stanciu 700222d5dc - in Paint Tool, when painting single polygon, when clicking on canvas for the polygon there is no longer a selection of the entire object 2019-02-07 00:53:51 +02:00
Marius Stanciu 8bbb9ba534 - all kwy shortcuts work across the entire application; started to move all the shortcuts definitions in FlatCAMGUI.keyPressEvent() 2019-02-06 16:23:09 +02:00
Marius Stanciu 299a6585a7 - done a regression on Tool Tab default text. It somehow delete Tools in certain scenarios so I got rid of it
- fixed bug in multigeometry geometry not having the bounds in self.options and crashing the GCode generation
- fixed bug that crashed whole application in case that the GCode editor is activated on a Tool gcode that is defective.
2019-02-06 00:16:14 +02:00
Marius Stanciu 2ea2ed0cb0 - fixed the units calculators crash FlatCAM when using comma as decimal separator 2019-02-05 22:32:48 +02:00
Marius Stanciu bd3cb3aba3 - added a text in the Selected Tab which is showed whenever the Selected Tab is selected but without having an object selected to display it's properties 2019-02-05 13:04:37 +02:00
Marius Stanciu 713b584841 - added a new parameter in the Tool Film which control the thickness of the stroke width in the resulting SVG. It's a scale parameter.
- whatever was the visibility of the corresponding toolbar when we enter in the Editor, it will be set after exit from the Editor (either Geometry Editor or Excellon Editor).
- added ability to be detached for the tabs in the Notebook section (Project, Selected and Tool)
- added ability for all detachable tabs to be restored to the same position from where they were detached.
- restored the way the tools autoloaded the objects in the comboboxes
2019-02-04 20:49:37 +02:00
Marius Stanciu 4e8f8905c8 - modified the Toolchange_Probe_general postprocessor file to include now Z moves before the actual toolchange event
- created a prototype postprocessor file for usage with tool probing in MACH3
- added the default values for Tool Film and Tool Panelize to the Edit -> Preferences
2019-02-04 16:29:12 +02:00
Marius Stanciu e1888b1647 - added an automatic name on each save operation based on the object name and/or the current date
- added more information's for the statistics
2019-02-03 23:08:09 +02:00
Marius Stanciu 6ea3499d39 - updated the new shortcut list with the shortcuts added lately
- now the special messages in the Shell are color coded according to the level. Before they all were RED. Now the WARNINGS are yellow, ERRORS are red and SUCCESS is a dark green. Also the level is in CAPS LOCK to make them more obvious
- some more changes to GUI interface (solved issues)
- added some status bar messages in the Geometry Editor to guide the user when using the Geometry Tools
- now the '`' shortcut key that shows the 'shortcut key list' in Editors points to the same window which is created in a tab no longer as a pop-up window. This tab can be detached if needed.
2019-02-03 15:13:09 +02:00
Marius Stanciu 7607aad8d8 - added protection against entering float numbers with comma separator instead of decimal dot separator in key points of FlatCAM (not everywhere)
- added a choice of plotting the kind of geometry for the CNC plot (all, travel and cut kind of geometries) in CNCJob Selected Tab
2019-02-02 23:56:08 +02:00
Marius Stanciu 0b96cbbac1 - code cleanup in Tools
- some GUI structure optimization's
2019-02-02 18:26:01 +02:00
Marius Stanciu 366bfbd0f5 - added in Calculators Tool an Electroplating Calculator. 2019-01-30 16:12:02 +02:00
Marius Stanciu 369d9256da - added 2Sided Tool default values in Edit -> Preferences -> Tools 2019-01-29 22:33:04 +02:00
Marius Stanciu e3d51c9da5 - added protection so the Cutout (either Freeform or Rectangular) cannot be done on a multigeo Geometry 2019-01-29 22:03:24 +02:00
Marius Stanciu be2ecaa152 - added a GUI for Excellon Search time for OR-TOOLS path optimization in Edit -> Preferences -> Excellon General -> Optimization Time
- more changes in Edit -> Preferences -> Geometry, Gerber and in CNCJob
- added new option for Cutout Tool Freeform Gaps in Edit -> Preferences -> Tools
- fixed Freeform Cutout gaps issue (it was double than the value set)
2019-01-29 21:47:27 +02:00
Marius Stanciu 32aa37d793 - disabled the context menu in tools table on Paint Tool in case that the painting method is single.
- added protection when trying to do Intersection in Geometry Editor without having selected Geometry items.
2019-01-29 15:18:41 +02:00
Marius Stanciu f6271033b3 - fixed issue in Tool Calculators when a float value was entered starting only with the dot.
- added protection for entering incorrect values in Offset and Scale fields for Gerber and Geometry objects (in Selected Tab)
2019-01-29 01:03:21 +02:00
Marius Stanciu c7a22e7ce5 - wip 2019-01-28 02:53:33 +02:00
Marius Stanciu 37e7c8167d - fixed the FlatCAMGerber.merge() function
- added a new menu entry for the Gerber Join function: Edit -> Conversions -> "Join Gerber(s) to Gerber" allowing joining Gerber objects into a final Gerber object
2019-01-28 02:47:53 +02:00
Marius Stanciu ad69be0456 - remade the EDIT -> PREFERENCES window, the Excellon and Gerber sections. Created a new section named TOOLS 2019-01-27 15:46:54 +02:00
Marius Stanciu c4a9c8bd77 - added more key shortcuts into the application; they are now displayed in the GUI menu's
- reorganized the Edit -> Preferences -> Global
- redesigned the messagebox that is showed when quiting ot creating a New Project: now it has an option ('Cancel') to abort the process returning to the app
2019-01-27 03:32:09 +02:00
Marius Stanciu 006b0c8ecb - modified the panelize TclCommand to take advantage of the new panelize() function; added a 'threaded' parameter (default value is 1) which controls the execution of the panelize TclCommand: threaded or non-threaded 2019-01-25 18:57:44 +02:00
Marius Stanciu d88d334867 - make sure to copy the options attribute to the final object in the case of: FlatCAMGeometry.merge(), FlatCAMGerber.merge() and for the Panelize Tool 2019-01-25 15:27:46 +02:00
Marius Stanciu f553f2b35a - deleted junk folders
- remade the Panelize Tool: now it is much faster, it is multi-threaded, it works with multitool geometries and it works with multigeo geometries too.
2019-01-25 15:16:36 +02:00
Marius Stanciu 780b5c8bf2 - wip 2019-01-24 01:56:22 +02:00
Marius Stanciu 037b9657ff - trying to fix painting single when the actual painted object it's a MultiPolygon 2019-01-24 01:34:12 +02:00
Marius Stanciu 3ea1f4e62c - fixed cncjob TclCommand - it used the default values for parameters
- fixed the layout in ToolTransform
- fixed the initial text in the ToolShell
2019-01-06 20:40:05 +02:00
Marius Stanciu e48d2d2f49 -clean-up before merge 2019-01-03 21:25:08 +02:00