Commit Graph

512 Commits

Author SHA1 Message Date
Marius Stanciu 9abb9c5df2 - added the possibility to display text annotation for the CNC travel lines. The setting is both in Preferences and in the CNC object properties 2019-05-31 12:43:30 +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
Marius Stanciu 17a93b8c7d - fixed some selection issues in the new tool Eraser in Geometry Editor
- updated the translation files
2019-05-22 18:37:33 +03:00
Marius Stanciu 4f2e5643d9 - added the file extension .ncd to the Excellon file extension list
- solved parsing issue for Excellon files generated by older Eagle versions (v6.x)
2019-05-21 16:13:36 +03:00
Marius Stanciu a545658d44 - fixed the Circle Steps parameter for both Gerber and Geometry objects not being applied and instead the app internal defaults were used.
- fixed the Tcl command Geocutout issue that gave an error when using the 4 or 8 value for gaps parameter
2019-05-19 17:15:24 +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 d172a3ca49 - Gerber Export: made sure that if some of the coordinates in a Gerber object geometry are repeating then the resulting Gerber code include only one copy
- added a new parameter/feature: now the spindle can work in clockwise mode (CW) or counter clockwise mode (CCW)
2019-05-16 03:13:22 +03:00
Marius Stanciu e6a0997fd6 - camlib Gerber parser - made sure that we don't loose goemetry in regions
- Gerber Editor - made sure that for some tools the added geometry is clean (the coordinates are non repeating)
- covered some possible issues in Gerber Export
2019-05-15 14:02:24 +03:00
Marius Stanciu 78939fdc84 - Gerber Editor: fixed units conversion for obj.apertures keys that require it 2019-05-15 03:56:31 +03:00
Marius Stanciu 3e3c8ae703 - rewrited the Gerber Parser in camlib - success
- moved the self.apertures[aperture]['geometry'] processing for clear_geometry (geometry made with Gerber LPC command) in Gerber Editor
2019-05-15 00:27:43 +03:00
Marius Stanciu 784865518f - Gerber Editor - working in conversion to the new data format 2019-05-13 17:09:09 +03:00
Marius Stanciu 820f75e20c - Gerber Editor - working in conversion to the new data format 2019-05-13 14:56:05 +03:00
Marius Stanciu 01c0f901ff - some modifications to ToolCutout 2019-05-13 01:57:37 +03:00
Marius Stanciu 3565a39918 - restored some changes in camlib.Gerber (the last_path_aperture value changed in G02/G03 parsing) 2019-05-11 19:31:23 +03:00
Marius Stanciu 49b917448b - wip in camblib.Gerber 2019-05-11 17:08:40 +03:00
Marius Stanciu 6e2392e871 - fixed camlib.Gerber issues related to what happen after parsing rectangular apertures 2019-05-11 07:46:19 +03:00
Marius Stanciu 23fb8b2d7c - fixed the camlib.Gerber functions of mirror, scale, offset, skew and rotate to work with the new data structure for apertures geometry
- fixed Gerber Editor selection to work with the new Gerber data structure in self.apertures
2019-05-11 05:19:42 +03:00
Marius Stanciu 883cf3372a - fixed issue in camlib.CNCjob.generate_from_excellon_by_tool() in the drill path optimization algorithm selection when selecting the MH algorithm. The new API's for Google OR-tools required some changes and also the time parameter can be now just an integer therefore I modified the GUI 2019-05-11 04:41:18 +03:00
Marius Stanciu aaa81f22b2 - wip 2019-05-09 05:01:33 +03:00
Marius Stanciu 3d113c89b1 - rework the Gerber parser 2019-05-09 03:43:17 +03:00
Marius Stanciu 28fce82432 - Geometry Editor: made the tool to be able to continuously move until the tool is exited either by ESC key or by right mouse button click
- Geometry Editor Move Tool: if no shape is selected when triggering this tool, now it is possible to make the selection inside the tool
- Gerber editor Move Tool: fixed a bug that repeated the plotting function unnecessarily
- Gerber editor Move Tool: if no shape is selected the tool will exit
2019-05-08 20:01: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 5b663c5f20 - work in Gerber Export: finished the body export but have some errors with clear geometry (LPC) 2019-05-08 04:21:34 +03:00
Marius Stanciu bdd13a3800 - work in Gerber Export: finished the body export but have some errors with clear geometry (LPC) 2019-05-07 21:13:20 +03:00
Marius Stanciu 41956d68d6 - another fix for bug in clear geometry processing for Gerber apertures 2019-05-05 18:16:29 +03:00
Marius Stanciu b07ce477a3 - small bug fixes 2019-05-05 17:40:03 +03:00
Marius Stanciu fee24505ae - fixed bug in parsing Gerber regions (a point was added unnecessary) 2019-05-05 00:15:21 +03:00
Marius Stanciu d7031bc89a - fixed bug in camlib.parse_lines() in the clear_geometry processing section for self.apertures 2019-05-04 22:39:51 +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 43c539702e - all Gerber regions (G36 G37) are stored in the '0' aperture
- fixed a bug that added geometry with clear polarity in the apertures where was not supposed to be
2019-04-27 03:03:00 +03:00
Marius Stanciu 6775c3f3da - updated the code in camlib.CNCJob.generate_from_excellon_by_tools() to work with the new API from Google OR-Tools 2019-04-27 00:02:21 +03:00
Marius Stanciu 29d57caacd - commented the camlib.alpha_shape() as it is not needed but require a huge package (scipy) 2019-04-23 22:03:40 +03:00
Marius Stanciu 49120c088e - Gerber Editor: made Add Pad repeat until user exits the Add Pad through either mouse right click, or ESC key or deselecting the Add Pad menu item
- Gerber and Geometry Editors: fixed some issues with the Add Arc/Add Semidisc; in mode 132, the norm() function was not the one from numpy but from a FlatCAM Class. Also fixed some of the texts and made sure that when changing the mode, the current points are reset to prepare for the newly selected mode.
2019-04-23 13:13:10 +03:00
Marius Stanciu f69f888e38 - added a warning regarding the fact that the loaded Excellon file has no tool info about the diameters. This is the case for at least the Excellon's generated by PCB Wizard. 2019-04-17 22:15:02 +03:00
Marius Stanciu 2ba0b494ff - Gerber Editor: finished a new tool: Poligonize Tool (ALT+N in Editor). It will fuse a selection of tracks into a polygon. It will fill a selection of polygons if they are apart and it will make a single polygon if the selection is overlapped. All the newly created filled polygons will be stored in aperture '0' (if it does not exist it will be automatically created)
- fixed a bug in Move command in context menu who crashed the app when triggered
- Gerber Editor: when adding a new aperture it will be store as the last selected and it will be used for any tools that are triggered until a new aperture is selected.
2019-04-15 22:48:22 +03:00
Marius Stanciu 2b4beebba2 - added support in Excellon parser for autodetection of Excellon file format for the Excellon files generate by the following ECAD sw: DipTrace, Eagle, Altium, Sprint Layout 2019-04-15 19:29:23 +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 2e7d9f953f - solved bug in Gerber apertures size and dimensions values conversion when file units are different than app units 2019-04-14 22:46:08 +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 e92cab2e96 - In Geometry Editor I fixed bug in Arc modes. Arc mode shortcut key is now key 'M' and arc direction change shortcut key is 'D' 2019-04-14 02:46:55 +03:00
Marius Stanciu 4100e98ebe - Gerber Editor: some more changes in processing LPC polygons 2019-04-14 01:03:42 +03:00
Marius Stanciu 84f3166e2f - Gerber Editor: Remade the processing of 'clear_geometry' (geometry generated by polygons made with Gerber LPC command) to work if more than one such polygon exists 2019-04-13 22:56:46 +03:00
Marius Stanciu 5020017cd7 - final fix for issue #277. Previous fix was applied only for one case out of three.
- RELEASE 8.913
2019-04-13 17:26:03 +03:00
Marius Stanciu 57e8db1f9b - moved the polarity change processing from FlatCAMGrbEditor() class to camlib.Gerber().parse_lines() 2019-04-12 19:44:03 +03:00
Marius Stanciu 80c5cf86b7 - Gerber Editor: added support for Gerber polarity change commands (LPD, LPC) 2019-04-12 19:29:12 +03:00
Marius Stanciu 5ef11a56cc - preliminary Gerber Editor.on_aperture_delete()
- fixed 'circular reference' error when creating the new Gerber file in Gerber Editor
- preliminary Gerber Editor.on_aperture_add()
2019-04-07 03:05:58 +03:00
Marius Stanciu f43bed8c66 - modified the bogus diameters series for Excellon objects that do not have tool diameter info
- made Excellon Editor aware of the fact that the Excellon object that is edited has fake (bogus) tool diameters and therefore it will not sort the tools based on diameter but based on tool number
- fixed bug on Excellon Editor: when diameter is edited in Tools Table and the target diameter is already in the tool table, the drills from current tool are moved to the new tool (with new dia) - before it crashed
2019-04-04 20:15:51 +03:00
Marius Stanciu b595991b1d - added a property for the Excellon obj to signal that object has no real tools diameter data 2019-04-04 18:20:24 +03:00
Marius Stanciu f177b2db7b - added support for Excellon file with no info about tool diameters - PCB Wizard Excellon file support 2019-04-04 18:13:39 +03:00
Marius Stanciu c623b8d63c - added support for Gerber format specification D (no zero suppression) - PCBWizard Gerber files support 2019-04-04 16:21:26 +03:00
Marius Stanciu 4bbdeaf844 - fixed the camlib.Geometry.import_svg() and camlib.Gerber.bounds() to work when importing SVG files as Gerber 2019-04-04 02:15:59 +03:00
Victor Benso 98370ada8d Issue #282 - Shapely keeps crashing with some valid geometries, further tests needed 2019-04-03 00:46:19 -04:00
Marius Stanciu 79e5cce6f1 - added a fix in the Excellon parser by allowing a comma in the tool definitions between the diameter and the rest 2019-03-30 02:55:11 +02:00
Marius Stanciu c5a77841f8 - update the TCL keyword list
- fix on the Gerber parser that makes searching for '%%' char optional when doing regex search for mode, units or image polarity. This allow loading Gerber files generated by the ECAD software TCl4.4
2019-03-29 13:02:53 +02: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 1aabb1c084 - added CNCJob geometry for the holes created by the drills from Excellon objects 2019-03-27 01:21:01 +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 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 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 e54ee9b569 - 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 19:30:38 +02:00
Marius Stanciu 5a4d61ee8f - grouped all parsers files in flatcamParsers folder 2019-03-11 12:28:44 +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 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 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 a4ae0f65ca - finished preparing for internationalization for the files: camlib and objectColletion 2019-03-08 17:04:53 +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 996b63cf4e - modified the grbl-laser postprocessor lift_code()
- treated an error created by Z_Cut parameter being None
- changed the hover and selection box transparency
2019-03-04 21:19:55 +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 9f60df850e - progress in ToolChange Custom commands replacement and rename 2019-02-28 18:02:29 +02:00
Marius Stanciu fb6edfc394 - made the Custom ToolChange Text area in CNCJob Selected Tab depend on the status of the ToolChange Enable Checkbox even in the init stage.
- added some parameters throughout camlib gcode generation functions; handled some possible errors (e.g like when attempting to use an empty Custom GCode Toolchange)
2019-02-27 01:45:32 +02:00
Marius Stanciu 874ce11d84 - work in progress to Toolchange_Custom code replacememnt -> finished the parse and replace function 2019-02-26 17:03:57 +02:00
Marius Stanciu 00340287a4 - fixed the geometry adding to the self.apertures in the case when regions are done without declaring any aperture first (Allegro does that). Now, that geometry will be stored in the '0' aperture with type REG 2019-02-26 13:22:43 +02:00
Marius Stanciu 74ecbabf1f - added a function to read the parameters from ToolChange macro Text Box (I need to move it from CNCJob to Excellon and Geometry) 2019-02-26 02:24:56 +02:00
Marius Stanciu 11ef818f0d - more modifications for the Gerber UI layout; made 'follow' an advanced Gerber option 2019-02-25 19:42:56 +02:00
Marius Stanciu d43de2ea77 - fixed the Gerber object UI layout
- added ability to mark individual apertures in Gerber file using the Gerber Aperture Table
2019-02-25 16:28:32 +02:00
Marius Stanciu a25fc1e88c - fixed bug in Set Origin function 2019-02-24 17:10:01 +02:00
Marius Stanciu 945196a44c - minor changes in Gerber parser 2019-02-24 01:30:57 +02:00
Marius Stanciu 1cab33314f - reverted a change in GCode that might affect Gerber polarity change in Gerber parser 2019-02-23 21:32:13 +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 2843810ab3 - some GUI elements changes 2019-02-23 06:11:42 +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 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 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 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 9d0bcf477a - removed the Open Gerber with 'follow' menu entry and also the open_gerber Tcl Command attribute 'follow'. This is no longer required because now the follow_geometry is stored by default in a Gerber object attribute gerber_obj.follow_geometry
- added a new parameter for the Tcl CommandIsolate, named: 'follow'. When follow = 1 (True) the resulting geometry will follow the Gerber paths.
2019-02-19 14:53:55 +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 941cec30ae - Serialized the source_file of the Objects so it is saved in the FlatCAM project and restored.
- if there is a single tool in the tool list (Geometry , Excellon) and the user click the Generate GCode, use that tool even if it is not selected
2019-02-16 21:03:27 +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 71d8b2df36 - fixed Excellon parser to detect correctly the units and zeros for Excellon's generated by Eagle 9.3.0
- modified the initial size of the canvas on startup
- modified the build file (make_win.py) to solve the issue with suddenly not accepting the version as Beta
2019-02-16 14:43:26 +02:00
Marius Stanciu fa0ee40e90 - in Gerber aperture table now the values are displayed in the current units set in FlatCAM 2019-02-14 23:21:20 +02:00
Marius Stanciu 3a05ebaffb - added total travel distance for CNCJob object created from Excellon Object in the CNCJob Selected tab 2019-02-14 01:21:24 +02:00
Marius Stanciu f3b1b45968 - changed the layout in the Selected Tab UI
- started to add apertures table support
- finished Gerber aperture table display
2019-02-13 17:26:21 +02:00
Marius Stanciu 899e8b433d - added new parameter for Excellon Object in Preferences: Fast Retract. If the checkbox is checked then after reaching the drill depth, the drill bit will be raised out of the hole asap.
- started to work on GUI forms simplification
- changed the Preferences GUI for Geometry and Excellon Objects to make a difference between parameters that are changed often and those that are not.
2019-02-13 14:30:29 +02:00
Marius Stanciu c94679919d - stored solid_geometry of Excellon object in the self.tools dictionary
- finished the solid_geometry restore after edit in Excellon Editor
- finished plotting selection for each tool in the Excellon Tool Table
- fixed the camlib.Excellon.bounds() function for the new type of Excellon geometry therefore fixed the canvas selection, too
2019-02-13 01:22:09 +02:00
Marius Stanciu 02793f7ae2 - starting to work on storing the solid_geometry for each tool in part in Excellon Object 2019-02-12 16:55:43 +02:00
Marius Stanciu 9b61e4cc37 - finished work on Offset parameter in Excellon Object (Excellon Editor, camlib, FlatCAMObj updated to take this param in consideration)
- fixed a bug where in Excellon editor when editing a file, a tool was automatically added. That is supposed to happen only for empty newly created Excellon Objects.
2019-02-12 15:12:12 +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 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 6c6a802afb - commented some debug messages
- imported speedups for shapely
2019-02-07 01:36:37 +02:00
Marius Stanciu 1a8db0b5d9 - fixed the Tcl Command Geocutout to work with Gerber objects too (besides Geometry objects) 2019-02-06 22:32:32 +02:00
Marius Stanciu dedf8c09de - fixed the name self-insert in save dialog file for GCode; added protection in case the save path is None
- fixed FlatCAM crash when trying to make drills GCode out of a file that have only slots.
- made the shell toggle shortcut key work when focused on Selected Tab; toggle units shortcut also
- changed the messages for Units COnversion
2019-02-06 14:03:59 +02:00
Marius Stanciu b589292c0f - fixed bug in Excellon Slots milling: a value of a dict key was a string instead to be an int. A cast to integer solved it. 2019-02-06 02:17:29 +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 3b8b7d470a - added a new parameter to set the feedrate of the probing in case the used postprocessor does probing (has toolchange_probe in it's name)
- fixed bug in Marlin postprocessor for the Excellon files; the header and toolchange event always used the parenthesis witch is not compatible with GCode for Marlin
- fixed a issue with a move to Z_move before any toolchange
2019-02-05 19:40:46 +02:00
Marius Stanciu 822800e7f5 - added a way to set the Probe depth if Toolchange_Probe postprocessors are selected
- finished the postprocessor file for MACH3 tool probing on toolchange event
2019-02-05 16:43:12 +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 e5ebfac3ce - bug solved in a message display showed when there are Gerber Parser errors 2019-02-03 02:34:21 +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 de7e41991d - fixed a source of possible errors in DetachableTab Widget.
- fixed gcode conversion/scale (on units change) when multiple values are found on each line
- replaced the pop-up window for the shortcut list with a new detachable tab
- removed the pop-up messages from the rotate, skew, flip commands
2019-02-02 03:27:34 +02:00
Marius Stanciu d5853722c3 - updated the camlib.CNCJob.scale() function so now the GCode is scaled also (quite a HACK :( it will need to be replaced at some point)). Units change work now on the GCODE also. 2019-01-31 23:07:53 +02:00
Marius Stanciu 3c355f72be - added a parameter ('Fast plunge' in Edit -> Preferences -> Geometry Options and Excellon Options) to control if the fast move to Z_move is done or not 2019-01-31 13:58:49 +02:00
Marius Stanciu 4441e40042 - fixed postprocessor files to work with toolchange_xy parameter value = None (no values in Edit - Preferences fields) - actual fix
- fixed Tcl commands CncJob and DrillCncJob to work with toolchange
2019-01-31 01:45:14 +02:00
Marius Stanciu 7bc806f1dc - fixed unit conversion functions in case the toolchange_xy parameter is None
- more fixes in camlib.CNCJob regarding usage of toolchange (in case it is None)
- fixed postprocessor files to work with toolchange_xy parameter value = None (no values in Edit - Preferences fields)
2019-01-31 00:36:32 +02:00
Marius Stanciu 7e5ce009d8 - added a traceback report in the TCL Shell for the errors that don't allow creation of an object; useful to trace exceptions/errors
- in case that the Toolchange X,Y parameter in Selected (or in Preferences) are deleted then the app will still do the job using the current coordinates for toolchange
- fixed an issue in camlib.CNCJob where tha variable self.toolchange_xy was used for 2 different purposes which created loss of information.
2019-01-30 23:17:27 +02:00
Marius Stanciu 5a0390f2a4 - fixed the scale, mirror, rotate, skew functions to work with Geometry Objects of multi-geometry type. 2019-01-29 15:56:49 +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 8145ff9aac - 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:01:53 +02:00
Marius Stanciu 4f7b2bbb34 - added options for trace segmentation that can be useful for auto-levelling (code snippet from Lei Zheng from a rejected pull request on FlatCAM https://bitbucket.org/realthunder/ ) 2019-01-27 05:03:23 +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 6673c4f608 - fixed 'grbl_laser' postprocessor bugs (missing functions)
- fixed display geometry for 'grbl_laser' postprocessor
2019-01-24 19:22:02 +02:00
Marius Stanciu 7c301922db - added a new postprocessor file named 'line_xyz' which have x, y, z values on the same GCode line
- fixed calculation of total path for Excellon Gcode file
2019-01-23 00:31:48 +02:00
Marius Stanciu 7ea6ee4a85 - fixed the HPGL code geometry rendering when travel
- fixed the message box layout when asking to save the current work
- made sure that whenever the HPGL postprocessor is selected the Toolchange is always ON and the MultiDepth is OFF
- the HPGL postprocessor entry is not allowed in Excellon Object postprocessor selection combobox as it is only applicable for Geometry
2019-01-20 02:46:42 +02:00
Marius Stanciu b9cbe97f4d - fixed display HPGL code geometry on canvas
- added build folder to gitignore list
2019-01-19 03:02:47 +02:00
Marius Stanciu 37067b5bff - added a fix to allow creating of Excellon geometry even when there are points with no tools by skipping those points and warning the user about this in a Tcl message 2019-01-09 15:47:29 +02:00
Marius Stanciu ddf4884051 - fixed cutting from copper features when doing Gerber isolation with multiple passes 2019-01-07 21:38:34 +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
Marius Stanciu 421e9766ea -clean-up before merge 2019-01-03 21:20:54 +02:00
Marius Stanciu 14477f4db4 - the main issue was the modules that I imported. It was the FlatCAMObj.py
modules which it was not what it was needed. I changed the imports to
camlib.py, remade the functions in camlib.py and now the Flip, Rotate
and Skew work over all the objects of FlatCAM (Gerber, Geometry created
by the FC, Geometry created by the objects, Excellon, CNCJob)
2018-06-06 04:08:50 +03:00
Marius Stanciu 74104ec19f - modified the pull request to include along the flipX, flipY commands
also the Rotate, SkewX and SkewY commands. Fix for issue #235

All perform the same in regard of multiple object selection.
2018-06-05 13:43:14 +03:00
Marius Stanciu d4331b49bc Merged in marius_stanciu/flatcam_mpl/load_gerber_with_zero_value (pull request #83)
Support for Gerber files that have apertures with size zero
2018-06-04 16:56:22 +00:00
Marius Stanciu da9f890c39 Merged master into Port_to_Python3k 2018-05-29 17:43:33 +03:00
Marius Stanciu eb0637c5bb - minor PEP changes 2018-05-26 19:10:07 +03:00
Marius Stanciu a4bbb98bf1 - converted from Python2 code to Python3 code
- in camlib.py, CNCJob class -> generate_from_excellon_by_tool() was
failing in the line to sort the tools due of been unable to compare
between dict's. I replaced that section.
2018-05-26 04:43:40 +03:00
Marius Stanciu b8a8cfe1fd - added support for Gerber files that have apertures with size zero
Basically it test the "size" value for the current aperture and if it's
found with zero value it will replace with a really small value
(0.0000001)that for all practical purposes is "zero"
(0.0000001 in inch is really small and in mm is even smaller)
- correcting small typos
2018-05-25 12:41:17 +03:00
Juan Pablo Caram 62f0662083 Support to mill all holes from the command line. Fixes #218. 2017-05-05 16:20:14 -04:00
Juan Pablo Caram fb6e1135e9 Added comments. 2016-11-01 00:34:46 -04:00
Juan Pablo Caram f6d9901365 Added "connect" option for painting polygons. 2016-10-27 17:34:41 -04:00
Juan Pablo Caram 0b26a90175 Support for parallel-line painting. 2016-10-27 16:57:36 -04:00
jpcgt deed138867 Merged in realthunder/flatcam/mirror_fix (pull request #46)
Fixed mirroring list of geometries
2016-10-27 19:48:02 +00:00
Juan Pablo Caram 8afb0704fd Functional select-all for painting (#210). 2016-09-23 14:04:31 -04:00
Juan Pablo Caram dbe0105f9b Fixes SVG parser to produce polygons. Fixes #212. 2016-09-21 13:01:51 -04:00
Juan Pablo Caram 7474609776 Added feature: Select all polygons for painting and shell support with "paint" command. 2016-09-19 16:44:29 -04:00
Juan Pablo Caram 74e936ba02 Added inline docs 2016-08-08 15:23:37 -04:00
Zheng, Lei 8a43a63b80 Fixed mirroring list of geometries 2016-06-13 13:20:25 +08:00
Juan Pablo Caram f9cbd78cd1 Show messages and errors in TCL shell. Better exception handling and reporting when opening files. 2016-06-11 21:33:38 -04:00
Juan Pablo Caram 9f138bdcc2 Fixes #119. 2016-06-04 23:01:36 -04:00
Juan Pablo Caram eb18b7fd3f Fixes #157. 2016-06-04 17:54:07 -04:00
Juan Pablo Caram d1442a4900 Cleaned up G-code parser. Fixed dwell command. Fixes #184. 2016-06-04 16:45:52 -04:00
Juan Pablo Caram 6136afe84c Added dwell (G4) post processing option to gcode. 2016-06-03 22:19:47 -04:00
Juan Pablo Caram d28858ff38 Fast vertical movement above board. Fixes #141. 2016-04-10 16:43:03 -04:00
Kamil Sopko 4c20040fbe fix errors in tool selection 2016-04-09 12:48:32 +02:00
Kamil Sopko b98954dccd fix error handling in signaled commands, error gets info about different scoup instead of true error
more detaild error  print including python trace when more complex unknown error

reinplement drillcncjob

fix camlib problem with all  drills("all"  was already there) but it crashes on tools without points, when  no tools "all" is as default

add timeout to all helps  if  command is  signaled
2016-04-03 14:20:50 +02:00
Kamil Sopko e96ee1af29 merge new pull requests from FlatCAM->master
implement  executing of tasks  inside worker thread
cleanups, reimplement  Isolate/New/OpenGerber as OOP style Shell commands
disable edit  during shell execution,  show   some  progress
add ability for breakpoints in other threads and only if available
add X11 safe flag, not sure what happen on windows
2016-03-24 23:06:44 +01:00
Kamil Sopko 78854f7fe0 fix ordering in naming arguments and help
add commands TclCommandAddPolygon(add_poly, add_polygon) and TclCommandAddPolyline(add_polyline)

implement add_polyline in camlib.py
2016-03-17 12:14:12 +01:00
Kamil Sopko a827e184b7 rename del_polygon to subtract_polygon
correctly  modify current  geometry and  dont leave it as path
fix shellcommands  to follow  new names
tweak  geocutout to be able cut 8  gaps
2016-02-23 00:23:27 +01:00
Kamil Sopko cf51e4ce2c implement del_polygon from geometry 2016-02-20 10:56:32 +01:00
Marius Stanciu 71a81173bd camlib.py edited online with Bitbucket; removed the paranthesis around lambda function as it was making an tuple which it was not the intention. 2016-02-16 21:59:54 +00:00
Marius Stanciu 1be364d065 Issue #188: Adopted the solution suggested by JP to not use the operator module when performing the sorting on exobj,tools and use instead the lambda function. 2016-02-16 23:25:58 +02:00
Marius Stanciu 1a7e001a66 Added spaces after '#' in the comments 2016-02-16 22:53:01 +02:00
Marius Stanciu cfa078a1e5 camlib.py (edited a comment) edited online with Bitbucket 2016-02-15 22:35:22 +00:00
Marius Stanciu a35a422bcc This is a implementation of the the sorting of the tools found in Excellon file done in Python language and independent of the UI. There is no need to revert the previous solution as that one will make the sorting visible in GUI. 2016-02-15 23:40:08 +02:00
Marius Stanciu a7b29065df Solved issue #188: Order of the drill bits in Gcode generation from Excellon file
The tools are ordered by diameter as I found that the tools order in the Excellon file is not always diameter based. There is also a plated / no-plated holes criteria.
The tools in the GUI tool-list are selected all by default.
If the user wants to select only some tools, he should be carefull when selecting the tools as the order of the selection will be the actual order of the tools in G-code.
2016-02-14 07:40:32 +02:00
Juan Pablo Caram 7fd026c254 Fix to Gerber parser, corrects line splitting. Fixes #183. 2015-12-30 10:26:19 -05:00
Juan Pablo Caram 3940408da5 Added non-compliant support for "-" in ApertureMacro names. Temporary fix for #185. 2015-12-29 17:35:43 -05:00
Juan Pablo Caram ea27748697 Use Decimal for depth calculation. Fixes #130. 2015-12-29 16:34:13 -05:00
Juan Pablo Caram 67ef16e776 SVG: Accept but ignore units in length. 2015-12-20 20:51:33 -05:00
Juan Pablo Caram d3ed12e5de Added SVG importing support to the GUI menu. See issue #179. 2015-12-18 16:43:47 -05:00
Juan Pablo Caram fdf809774f Basic support for importing SVG. Via shell only at this time. See issue #179. 2015-12-18 12:49:52 -05:00
Juan Pablo Caram 89f3d6e3e3 Added line number information to status bar message on parse error. 2015-11-30 12:36:03 -05:00
Juan Pablo Caram 05e89b0ec3 Last pass in multi-pass cuts limited to specified z_cut. 2015-11-04 17:27:57 -05:00
Juan Pablo Caram 051b82009d Multiple depth cut functional. 2015-11-01 18:06:20 -05:00
Juan Pablo Caram 616237ea93 Replace exact last point of arc. Fixes #110. 2015-10-31 18:55:32 -04:00
Juan Pablo Caram 8f5cc7a02d Option to override user's defaults. Needed for unit testing. 2015-10-28 12:00:56 -04:00
Thomas Duffin 2c9a307483 Fixes #135
The polygon passed to clear_polygon() is generated using shapely’s buffer() function on line FlatCAMObj.py:1095.

When the margin given to the buffer() function is small, a single Polygon object is returned. If the margin is large enough it causes the polygon to be broken into pieces and a Multipolygon is returned instead. A visualisation of this can be seen in the shapely manual in the object.buffer() section.

The first thing clear_polygon() does is buffer the polygon again to take the tool diameter into account and the Polygon/Multipolygon generated by this is handled further down the function. The buffer() function used to take the tool diameter into account can be called happily on both Polygon and Multipolygon objects so there is no reason to block Multipolygons being passed to clear_polygon().

Therefore simply adding Multipolygon to the acceptable types in the assert statement on line camlib.py:382 fixes this bug and causes no further issues.
2015-10-25 23:14:11 +00:00
Juan Pablo Caram d22b47f4af Log level back to debug after release. 2015-10-20 20:47:45 -04:00
Juan Pablo Caram a679883adf RTree now using shapely object's id() instead of __hash__. Fixes 1#163. 2015-10-20 19:53:39 -04:00
Juan Pablo Caram 982ab16f28 Release version 8.4 2015-10-18 19:24:04 -04:00
Juan Pablo Caram ee684e8101 Further work on multi-pass cuts. 2015-10-11 20:58:21 -04:00
Juan Pablo Caram d687fb5287 Started multi-pass cuts. 2015-10-04 21:45:19 -04:00
Juan Pablo Caram b5f428deea Added "interiors" shell command. 2015-10-04 21:25:00 -04:00
Juan Pablo Caram 4110940d49 Minor fix to "millholes" shell docs. Added get_exterior() method to Geometry. 2015-10-04 20:48:06 -04:00
Juan Pablo Caram 1942fe3bed Create polygon for path drawn so far when D03 is encountered. Fixes #150. 2015-10-02 19:09:44 -04:00
Juan Pablo Caram d8c5d46cd0 Workaround for #152. Check for empty polygons before adding. 2015-09-28 21:25:31 -04:00
Juan Pablo Caram 22119072d3 Cleanup. And fixes #148. 2015-09-11 14:45:08 -04:00
Juan Pablo Caram 6fa0e91875 Fixed #139, Polygon aperture twice as large. 2015-08-29 22:30:58 -04:00
Jørn Sandvik Nilsson 44f5da3326 Added parameter "spindlespeed" to cncjob and drillcncjob. Will generate gcode "M03 S4000" (4000 rpm), or "M03" if omitted. 2015-07-17 09:49:24 +02:00
phdussud 0bf21458c6 Resolve issue 144
Added a test for the new mechanism
Added a gerber test file
2015-06-26 13:42:55 -07:00
phdussud f5e481d1fa Best effort to generate isolation path cutting on the conventional side 2015-06-20 17:50:02 -07:00
jpcaram cd39a55696 Support for optional '+' on Gerber numbers. Solvers #142. 2015-06-20 17:29:03 -04:00
phdussud a8e8b9f0b6 Added S and T to the list of allowed Gcode commands. 2015-06-06 14:14:30 -07:00
jpcaram 31ddb9cf7c Multiple statement per line problem fixed (Issue #125). 2015-04-17 12:46:48 -04:00
Juan Pablo Caram 4ec72bc3f0 Fix for multiple statements per line. Tests pending. 2015-04-16 22:17:06 -04:00
jpcaram aa951e277b Fixed conflict with PyQt5. Cleanup. Log level back to debug. 2015-03-31 10:41:32 -04:00
Juan Pablo Caram 476f1e5858 Version 8.3 for Windows. 2015-02-22 17:34:57 -05:00
jpcaram 873db32aad Fixed gerber parse error related to extra trace. 2015-02-17 17:54:51 -05:00
Juan Pablo Caram 519df2385f Final 8.2 for Windows. Removed cd into app folder. 2015-02-13 17:39:22 -05:00
Juan Pablo Caram dda9bb1864 Version 8.2. Log level to WARNING. Removed unused scipy.optimize. 2015-02-13 16:57:42 -05:00
jpcaram 9dec4ff32f Activity shown for CNC Job generation via context manager. 2015-02-13 14:37:54 -05:00
jpcaram 2c699406f7 Activity indicator as context manager when opening files. Opening gerber from File->Open Gerber launches open_gerber in thread. 2015-02-13 14:05:06 -05:00
jpcaram 8da39d54d4 Desctivates canvas callbacks in drawing tool when deactivated. 2015-02-12 17:06:29 -05:00
jpcaram 247901655c Complete tool change sequence for gcode generated from excellon. 2015-02-07 19:32:02 -05:00
jpcaram 41e63c4390 Added paint_connect to standard paint algorithm. Resolves issue #103. 2015-02-07 18:41:29 -05:00
jpcaram bba4f3a8bb Tool change support for gcode from excellon. Untested. 2015-02-07 13:32:58 -05:00
jpcaram 17a3316ce4 Improved speed in FlatCAMRTreeStorage. 2015-02-06 17:16:11 -05:00
jpcaram e353413cd3 Disabled "Ok"/"Update Geometry" button after first update. Solves issue #105. 2015-02-05 09:18:54 -05:00
jpcaram 87fdf0a581 Another fixed bug introduced to clear_poly() in previous commit. Added process widget. 2015-01-30 18:10:06 -05:00
jpcaram f92255b8f9 Fixed bug introduced to clear_poly() in previous commit. 2015-01-30 15:17:57 -05:00
jpcaram d903356a55 Solved units change problem during parsing (issue #80). 2015-01-30 14:41:56 -05:00
jpcaram 3aa1746b23 Refactored basic painting algorithm to generate FlatCAMRtreeStorage. 2015-01-30 13:47:25 -05:00
jpcaram 4389f173a8 Removed path_join() from painting algorithm as paint_join() should do the trick alone. 2015-01-29 17:22:09 -05:00
jpcaram c2c7a83855 Seed painting algorithm working with optimizations. 2015-01-29 17:02:06 -05:00
jpcaram 6733ebbfa8 Refactored paint_connect() and path_connect() to receive and return FlatCAMRTreeStorage objects. Updated unittests acordingly. 2015-01-29 15:52:03 -05:00
jpcaram a1345f0a58 Fixes to path_connect() related to LinearRings. Added test cases. 2015-01-27 18:16:22 -05:00
jpcaram 573581ca80 Fixes to path_connect() and added units tests for it. 2015-01-26 17:52:26 -05:00
jpcaram 6b51f03db2 "Paint connect" functional. Added to seed-based painting and unit-tested. "Path connect" still pending. Disabled. "Path connect" unit test added. 2015-01-25 16:55:22 -05:00
jpcaram 9632d9a98f First write (untested) of paint_connect. 2015-01-22 21:23:10 -05:00
jpcaram a42c3f6e10 Functional Geometry.path_connect() and added to seed-based painting algorithm. 2015-01-22 18:43:39 -05:00
jpcaram a7dc9bcc09 Path optimization: Connect adjacent paths. 2015-01-22 18:11:09 -05:00
jpcaram e5185dd66f Cleanup of camlib.CNCjob. 2015-01-22 17:23:18 -05:00
jpcaram fd2657a8d7 Solves seed painting problem in issue #102. 2015-01-21 09:50:01 -05:00
Juan Pablo Caram 6361ad3338 Path check. 2015-01-19 17:17:16 -05:00
Juan Pablo Caram 922aa6734d Added python-simplejson line to setup_ubuntu.sh. 2015-01-19 12:41:34 -05:00
Juan Pablo Caram 670dd48127 Added "excellon_zeros" application default. It get propagated to the Excellon class. 2015-01-18 21:10:19 -05:00
Juan Pablo Caram 34a6b60053 Fixed Geometry merging. Solves issue #99. 2015-01-18 20:23:37 -05:00
Juan Pablo Caram 840cfcf9ff Cleanup for 8.1 2015-01-15 15:53:42 -05:00
jpcaram 4c234fcd55 Fixes polygon finding for painting. Function find_polygon made a method of Geometry. Solves Issue #96. 2015-01-14 20:24:37 -05:00
jpcaram 3bedda2aeb Unittests for Excellon number parser. 2015-01-11 19:39:01 -05:00
jpcaram 1b154ab057 Added support for M71/72 in Excellon parser. 2015-01-11 18:28:59 -05:00
jpcaram 207842f98f Added some error handling to the Excellon parser. 2015-01-10 19:01:12 -05:00
Juan Pablo Caram ddd90f9f33 Solves Gerber parser bug in Issue #92 (Incorrect Flashes). 2015-01-06 13:06:01 -05:00
Juan Pablo Caram 1eaba57dd1 Version 8. Cleanup and logging level reduced to WARNING. 2015-01-02 18:25:05 -05:00
Juan Pablo Caram fe61447887 Cleanup for version 8. 2015-01-02 12:59:06 -05:00
Juan Pablo Caram 04d028ecc0 Removed print statements. 2015-01-02 00:06:48 -05:00
jpcaram 9c5b6a8799 Cleanup. 2015-01-01 23:13:07 -05:00
jpcaram 8c082365d7 Added KeySensitiveListView for objects in project. Delete key deletes selected objects. 2015-01-01 22:27:55 -05:00
jpcaram f17f955355 Added delete button in drawing toolbar. 2015-01-01 15:41:50 -05:00
jpcaram 977b5b1f91 Using FlatCamRTreeStorage in copper clearing algorithm. 2015-01-01 14:59:45 -05:00
jpcaram c20c6b0abf Using FlatCAMRTreeStorage in DrawingTool. 2014-12-31 16:45:10 -05:00
Juan Pablo Caram e547386649 Custom RTree wrapper. FlatCAMRTree and FlatCAMRTreeStorage. 2014-12-28 18:06:54 -05:00
jpcaram a0d6d1a6a9 Added OS-X installation instructions to manual. 2014-12-27 15:12:49 -05:00
jpcaram 360127e6ad Functioning 3-point arc. Progress on 2pt + center arc. 2014-12-22 21:31:57 -05:00
jpcaram 97a1e17b0d Fixed bug preventing from saving G-Code. 2014-12-19 13:40:14 -05:00
jpcaram c1b606feb4 Temporary fix/workaround for bug #83. Checking for empty list before running cascaded_union. 2014-12-14 19:03:04 -05:00