FlatCAM fork for modern systems

Marius Stanciu 69d0b3ad3f - updated the FCTable GUI element to work correctly when doing drag&drop for the rows hace 5 años
Utils f5c84fdc49 - maintenance_2 hace 5 años
appEditors 850b80bb41 - more refactoring in the app Editors hace 5 años
appGUI 69d0b3ad3f - updated the FCTable GUI element to work correctly when doing drag&drop for the rows hace 5 años
appObjects 69d0b3ad3f - updated the FCTable GUI element to work correctly when doing drag&drop for the rows hace 5 años
appParsers 5ce7011123 - changed the Excellon defaults for zeros suppression to TZ (assumed that most Excellon without units in header will come out of older Eagle) and the Excellon export default is now with coordinates in decimal hace 5 años
appTools 1ea168fd4b - NCC Tool - fixed the non-rest copper clearing to work as expected: each tool in the tool table will make it's own copper clearing without interference from the rest of the tools hace 5 años
assets f5c84fdc49 - maintenance_2 hace 5 años
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 hace 6 años
descartes 9f99520683 - fixed a bug in milling holes due of a message wrongly formatted hace 6 años
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. hace 7 años
locale 850b80bb41 - more refactoring in the app Editors hace 5 años
locale_template 850b80bb41 - more refactoring in the app Editors hace 5 años
preprocessors 2eecb20e95 - remade file names in the app hace 5 años
tclCommands 039500b43f - fixed issue with trying to access GUI from different threads by adding a new signal for printing to shell messages hace 5 años
tests a6b89dbf3a - moved back the ApertureMacro class to camlib for now and made some import changes in the new ParseGerber and ParseExcellon classes hace 6 años
.gitignore b9cbe97f4d - fixed display HPGL code geometry on canvas hace 7 años
Bookmark.py 2eecb20e95 - remade file names in the app hace 5 años
CHANGELOG.md 69d0b3ad3f - updated the FCTable GUI element to work correctly when doing drag&drop for the rows hace 5 años
Common.py 329a3262ee - made sure that the message that exclusion areas are deleted is displayed only if there are shapes in the exclusion areas storage hace 5 años
FlatCAM.py 427f2bcbe0 - fixed the color set for the application objects hace 5 años
LICENSE f242e3163e - small changes (dates, version) hace 7 años
Makefile e7a42d037b Normalize messages hace 5 años
README.md 35674c9647 - in SVG parser modified some imports to be one on each line hace 5 años
appDatabase.py 32dd8870f8 - modified the Tools Database such that there is now a way to mark a tool as meant to be used in a certain part of the application; it will disable or enable parts of the parameters of the tool hace 5 años
appPool.py 2eecb20e95 - remade file names in the app hace 5 años
appPreProcessor.py 2eecb20e95 - remade file names in the app hace 5 años
appProcess.py 2eecb20e95 - remade file names in the app hace 5 años
appTool.py 2eecb20e95 - remade file names in the app hace 5 años
appTranslation.py e2df2c3b62 - fixed bug: on first ever usage of FlatCAM beta the last loaded language (alphabetically) is used instead of English (in current state is Russian) hace 5 años
appWorker.py 2eecb20e95 - remade file names in the app hace 5 años
appWorkerStack.py 2eecb20e95 - remade file names in the app hace 5 años
app_Main.py a3fd6e9f87 - fixed bug in the Isolation Tool that in certain cases an empty geometry was present in the solid_geometry which mae the CNCJob object generation to fail. It happen for Gerber objects created in the Gerber Editor hace 5 años
camlib.py 1ea168fd4b - NCC Tool - fixed the non-rest copper clearing to work as expected: each tool in the tool table will make it's own copper clearing without interference from the rest of the tools hace 5 años
defaults.py 0643971b01 - added ability to merge tools when merging Geometry objects if they share the same attributes like: diameter, tool_type or type hace 5 años
make_freezed.py 2eecb20e95 - remade file names in the app hace 5 años
requirements.txt 98541775d4 - made some corrections - due of recent refactoring PyCharm reported errors all over (not correct but it made programming difficult) hace 5 años
setup_ubuntu.sh f03d6bfda4 - added a new package to be installed in Linux to make available the black theme for FlatCAM beta hace 5 años

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