FlatCAM fork for modern systems

Marius Stanciu b8d85d2be2 - fixed the merge methods for all FlatCAM objects 5 anni fa
Utils ca4c7b245f - added a script to remove the bad profiles from resource pictures. From here: https://stackoverflow.com/questions/22745076/libpng-warning-iccp-known-incorrect-srgb-profile/43415650, link mentioned by @camellan (Andrey Kultyapov) 6 anni fa
assets f03d6bfda4 - added a new package to be installed in Linux to make available the black theme for FlatCAM beta 5 anni fa
config 26fe1bf5e1 - if FlatCAM is started with the 'quit' or 'exit' as argument it will close immediately and it will close also another instance of FlatCAM that may be running 6 anni fa
descartes 9f99520683 - fixed a bug in milling holes due of a message wrongly formatted 6 anni fa
doc e945ced44b - modified the way FlatCAM preferences are saved. Now they can be saved as new files with .FlatConfig extension by the user and shared. 7 anni fa
flatcamEditors a05c174ec8 Fix some things that I broke and further cleanup 5 anni fa
flatcamGUI 2ca6e2e3f1 - modified the method that detects which tab was closed in the Plot Area so it will no longer depend on it's translated text but on it's objectName set on the QTab creation 5 anni fa
flatcamObjects b8d85d2be2 - fixed the merge methods for all FlatCAM objects 5 anni fa
flatcamParsers 35674c9647 - in SVG parser modified some imports to be one on each line 5 anni fa
flatcamTools db37714025 Merge branch 'Beta' of https://bitbucket.org/jpcgt/flatcam into extract-prefs-code-from-app-class 5 anni fa
locale a30d2d9185 - added support for Hungarian language - no translation for now 5 anni fa
locale_template 9f13b47077 - replaced the testing if instance of FlatCAMObj with testing the obj.kind attribute 5 anni fa
preprocessors c5e4d72db8 - solved issue #381 where there was an error when trying to generate CNCJob out of an Excellon file that have a tool with only slots and no drills 5 anni fa
tclCommands b8d85d2be2 - fixed the merge methods for all FlatCAM objects 5 anni fa
tests a6b89dbf3a - moved back the ApertureMacro class to camlib for now and made some import changes in the new ParseGerber and ParseExcellon classes 6 anni fa
.gitignore b9cbe97f4d - fixed display HPGL code geometry on canvas 7 anni fa
CHANGELOG.md b8d85d2be2 - fixed the merge methods for all FlatCAM objects 5 anni fa
FlatCAM.py e1bc55a090 - added a try-except clause in the FlatCAMTranslation.restart_program() when closing the Listener and the thread that runs it to adjust to MacOS usage 5 anni fa
FlatCAMApp.py b8d85d2be2 - fixed the merge methods for all FlatCAM objects 5 anni fa
FlatCAMBookmark.py a05c174ec8 Fix some things that I broke and further cleanup 5 anni fa
FlatCAMCommon.py 723e242c2b Remove duplicate factory defaults saving code in App 5 anni fa
FlatCAMDB.py db37714025 Merge branch 'Beta' of https://bitbucket.org/jpcgt/flatcam into extract-prefs-code-from-app-class 5 anni fa
FlatCAMPool.py 32ff417a2c - fixed a bug in Excellon Editor that crashed the app when editing the first tool added automatically into a new black Excellon file 6 anni fa
FlatCAMPostProc.py 3ec666edbb - replaced the testing if instance of FlatCAMObj with testing the obj.kind attribute 5 anni fa
FlatCAMProcess.py 97024ed643 - corrected some issues and made Move Tool to show correctly when it is moving and when it is offsetting the objects position 6 anni fa
FlatCAMTool.py a1499158c2 - refactored some of the code in the App class and created a new Tcl Command named Help 5 anni fa
FlatCAMTranslation.py ef6b5bcfe5 Merged marius_stanciu/flatcam_beta/Beta 8.992 into Beta 5 anni fa
FlatCAMWorker.py 4c1fdd2e2d - fixed bug in Tool Subtract that did not allow subtracting Gerber objects 6 anni fa
FlatCAMWorkerStack.py dc6479210a - chagend the workers thread priority back to Normal 6 anni fa
LICENSE f242e3163e - small changes (dates, version) 7 anni fa
Makefile e7a42d037b Normalize messages 5 anni fa
README.md 35674c9647 - in SVG parser modified some imports to be one on each line 5 anni fa
camlib.py 9f13b47077 - replaced the testing if instance of FlatCAMObj with testing the obj.kind attribute 5 anni fa
defaults.py a5384d50d8 - more PEP8 changes 5 anni fa
make_freezed.py f03d6bfda4 - added a new package to be installed in Linux to make available the black theme for FlatCAM beta 5 anni fa
requirements.txt 61020e3624 - finished the moving of all Tcl Shell stuff out of the FlatCAAMApp class to flatcamTools.ToolShell class 5 anni fa
setup_ubuntu.sh f03d6bfda4 - added a new package to be installed in Linux to make available the black theme for FlatCAM beta 5 anni fa

README.md

FlatCAM BETA (c) 2019 - by Marius Stanciu Based on FlatCAM:

2D Computer-Aided PCB Manufacturing by (c) 2014-2016 Juan Pablo Caram

FlatCAM is a program for preparing CNC jobs for making PCBs on a CNC router. Among other things, it can take a Gerber file generated by your favorite PCB CAD program, and create G-Code for Isolation routing.

=====================================================================

-------------------------- Installation instructions ----------------

Works with Python version 3.5 or greater and PyQt5. More on the YouTube channel: https://www.youtube.com/playlist?list=PLVvP2SYRpx-AQgNlfoxw93tXUXon7G94_

You can contact me on my email address found in the app in: Menu -> Help -> About FlatCAM -> Programmers -> Marius Stanciu

1.Windows

or from sources:

You can download all the required wheels files into a folder (e.g D:\my_folder) and install them from Command Prompt like this:

cd D:\my_folder

and for each wheel file (*.whl) run:

D:\my_folder\> pip install --upgrade package_from_requirements.whl

Run FlatCAM beta from the installation folder (e.g D:\FlatCAM_beta) in the Command Prompt with the following command: cd D:\FlatCAM_beta python FlatCAM.py

2.Linux

  • make sure that Python 3.8 is installed on your OS and that the command: python3 -V confirm it
  • verify that the pip package is installed for your Python installation (e.g 3.8) by running the command:

    pip3 -V
    

If it is not installed, install it. In Ubuntu-like OS's it is done like this:

sudo apt-get install python3-pip 

or:

sudo apt-get install python3.8-pip
  • verify that the file setup_ubuntu.sh has Linux line-endings (LF) and that it is executable (chmod +x setup_ubuntu.sh)
  • run the file setup_ubuntu.sh and install all the dependencies with the command:

    ./setup_ubuntu.sh
    
  • if the previous command is successful and has no errors, run FlatCAM with the command: python3 FlatCAM.py

  • Alternatively you can install it on Ubuntu with:

    # Optional if depencencies are missing
    make install_dependencies
    
    # Install for the current user only (using the folder in its place)
    make install
    
    # System-wide instalation
    sudo make install
    

3.MacOS

Instructions from here: https://gist.github.com/natevw/3e6fc929aff358b38c0a#gistcomment-3111878