FlatCAM fork for modern systems

Marius Stanciu 808e1c5875 - fixed NCC Tool behavior when selecting tools for Isolation operation před 5 roky
AppEditors ffa063286f - refactored some methods from App class and moved them to plotcanvas (plotcanvaslegacy) class před 5 roky
AppGUI eee6b931c7 - made the Shell Dock always show docked před 5 roky
AppObjects f74379de3e - added a Multi-color checkbox for the Excellon UI (this way colors for each tool are easier to differentiate especially when the diameter is close) před 5 roky
AppParsers 2623bb0a65 - updated the Gerber parser such that it will parse correctly Gerber files that have only one solid polygon inside with multiple clear polygons (like those generated by the Invert Tool) před 5 roky
AppTools 808e1c5875 - fixed NCC Tool behavior when selecting tools for Isolation operation před 5 roky
Utils d739a5b05d - re-added the position labels in the status bar; they will be useful if HUD is Off (Altium does the same :) so learn from the best) před 5 roky
assets ffa063286f - refactored some methods from App class and moved them to plotcanvas (plotcanvaslegacy) class před 5 roky
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 před 6 roky
descartes 9f99520683 - fixed a bug in milling holes due of a message wrongly formatted před 6 roky
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. před 7 roky
locale facbdf0fd7 - updated all the language strings to the latest changes; updated the POT file před 5 roky
locale_template facbdf0fd7 - updated all the language strings to the latest changes; updated the POT file před 5 roky
preprocessors 2e8d5b3b96 - added the Exclusion zones processing to Geometry GCode generation před 5 roky
tclCommands dbd1098329 - working on Isolation Tool: added a Preferences section in Edit -> Preferences and updated their usage within the Isolation tool před 5 roky
tests a6b89dbf3a - moved back the ApertureMacro class to camlib for now and made some import changes in the new ParseGerber and ParseExcellon classes před 6 roky
.gitignore b9cbe97f4d - fixed display HPGL code geometry on canvas před 7 roky
AppDatabase.py 23ee9c8ad1 - modified the Tool Database such that when a tool shape is selected as 'V' any change in the Vdia or Vangle or CutZ parameters will update the tool diameter value před 5 roky
AppPool.py ba3f10d355 - renamed classes to have shorter names and grouped před 5 roky
AppPreProcessor.py a0a805217d - removed reference to postprocessors and replaced it with preprocessors před 5 roky
AppProcess.py ba3f10d355 - renamed classes to have shorter names and grouped před 5 roky
AppTool.py 15d94404a7 - made confirmation messages for the values that are modified not to be printed in the Shell před 5 roky
AppTranslation.py 66ceb5a360 - minor UI changes před 5 roky
AppWorker.py ba3f10d355 - renamed classes to have shorter names and grouped před 5 roky
AppWorkerStack.py ba3f10d355 - renamed classes to have shorter names and grouped před 5 roky
App_Main.py d8bf1a8a4e - In Tool Isolation made sure that the use of ESC key while some processes are active will disconnect the mouse events that may be connected, correctly před 5 roky
Bookmark.py ffa063286f - refactored some methods from App class and moved them to plotcanvas (plotcanvaslegacy) class před 5 roky
CHANGELOG.md 808e1c5875 - fixed NCC Tool behavior when selecting tools for Isolation operation před 5 roky
Common.py 15ec620cae - overloaded the App inform signal to allow not printing to shell if a second bool parameter is given; modified some GUI messages to use this feature před 5 roky
FlatCAM.py 9c707e0682 - solved a circular import před 5 roky
LICENSE f242e3163e - small changes (dates, version) před 7 roky
Makefile e7a42d037b Normalize messages před 5 roky
README.md 35674c9647 - in SVG parser modified some imports to be one on each line před 5 roky
camlib.py 8e687c5054 - fixed some issues related to using the new Numerical... GUI elements před 5 roky
defaults.py f74379de3e - added a Multi-color checkbox for the Excellon UI (this way colors for each tool are easier to differentiate especially when the diameter is close) před 5 roky
make_freezed.py ba3f10d355 - renamed classes to have shorter names and grouped před 5 roky
requirements.txt 98541775d4 - made some corrections - due of recent refactoring PyCharm reported errors all over (not correct but it made programming difficult) před 5 roky
setup_ubuntu.sh f03d6bfda4 - added a new package to be installed in Linux to make available the black theme for FlatCAM beta před 5 roky

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