Commit Graph

330 Commits

Author SHA1 Message Date
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