kopia lustrzana https://github.com/vilemduha/blendercam
README change
rodzic
b223bd847d
commit
6679aab918
155
README.md
155
README.md
|
@ -1,41 +1,130 @@
|
|||

|
||||
|
||||
# BlenderCam - CNC path addon
|
||||
<center>
|
||||
|
||||

|
||||
|
||||
- - -
|
||||
|
||||
|
||||
### An open source solution for artistic CAM with Blender 3D
|
||||
|
||||
<p align="center">
|
||||
|
||||
[](https://riot.im/app/#/room/#blendercam:matrix.org)
|
||||
[](http://webchat.freenode.net/?channels=%23blendercam)
|
||||
[](https://github.com/vilemduha/blendercam)
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
</p>
|
||||
<br>
|
||||
<p align="center">
|
||||
|
||||
[About](#About) • [How to use](#How-to-use-(Wiki)) • [Features](#Features) • [Post-Processors](#Post-processors) • [Contributing](#Contributing) • [License](#Disclaimer)
|
||||
</p>
|
||||
|
||||
<br>
|
||||
|
||||

|
||||
|
||||
|
||||
</center>
|
||||
|
||||
## 👁️ About
|
||||
Blender CAM is an open source solution for artistic CAM - Computer aided machining - a g-code generation tool.
|
||||
Blender CAM is an extension for the free open-source Blender 3d package.
|
||||
|
||||
It has been used for many milling projects, and is actively developed.
|
||||
Blender CAM is an add-on for the free open-source [Blender 3d package](https://www.blender.org/).
|
||||
|
||||
It has been used for many milling projects, and is actively developed. If you are a developer who would like to help, don't hesistate to fork the project and start generating pull requests.
|
||||
|
||||
## 👨🎓 How to use (Wiki)
|
||||
|
||||

|
||||
|
||||
BlenderCam is recommended with Linux. BlenderCam can work on Windows but the installation of a dependency (OpenCamlib) is tricky.
|
||||
|
||||
* [BlenderCam Installation](./Blendercam_installation.md)
|
||||
* [Getting started](./Getting_started.md)
|
||||
* [Panel descriptions](./Blendercam-Panel-Descriptions.md)
|
||||
* [Tools](./Blendercam-Tools.md)
|
||||
* [Example of using Profile and Pocket operations](./Profile_and_Pocket_operations.md)
|
||||
|
||||
|
||||
## 👌 Features
|
||||
|
||||
| | Blender 2.92 and 2.80
|
||||
| -------------------------- | :----------------: |
|
||||
| Several milling strategies for 2D and 3D | ✔️ |
|
||||
| Cutter types: ball, flat, v-carve with various angles, user definable | ✔️ |
|
||||
| work with 3d data or depth images | ✔️ |
|
||||
| Layers and skin for roughing. | ✔️ |
|
||||
| Inverse milling | ✔️ |
|
||||
| Various options for ambient around model | ✔️ |
|
||||
| protection of vertical surfaces | ✔️ |
|
||||
| Stay low - option for movement | ✔️ |
|
||||
| Material size setup | ✔️ |
|
||||
| Simulation of 3d operations | ✔️ |
|
||||
| Helix entry, arc retract, ramp down for some of the strategies. | ✔️ |
|
||||
| Automatic bridges for cutout operation | ✔️ |
|
||||
| Chain export and simulation | ✔️ |
|
||||
| Background computing of the operations, so you can continue working | ✔️ |
|
||||
|
||||
|
||||
|
||||
## 💻 Post-processors
|
||||
* GRBL
|
||||
* Iso
|
||||
* LinuxCNC - EMC2
|
||||
* Fadal
|
||||
* Heidenhain
|
||||
* Sieg KX1
|
||||
* Hafco HM-50
|
||||
* Centroïd M40
|
||||
* Anilam Crusader M
|
||||
* Gravos
|
||||
* WinPC-NC
|
||||
* ShopBot MTC
|
||||
* Lynx Otter o
|
||||
* ...
|
||||
|
||||
|
||||
## 🔬 Pending features
|
||||
* motion direction - classic, conventional, meander, are only partially supported
|
||||
* 4 and 5 axis milling
|
||||
|
||||
## 📒 Files organisation
|
||||
|
||||
```
|
||||
.
|
||||
├── config
|
||||
├── scripts
|
||||
│ ├── addons
|
||||
│ │ ├── cam
|
||||
│ │ │ ├── nc
|
||||
│ │ │ └── opencamlib
|
||||
│ │ ├── GPack
|
||||
│ │ └── print_3d
|
||||
│ │ ├── ini
|
||||
│ │ └── machine_profiles
|
||||
│ └── presets
|
||||
│ ├── cam_cutters
|
||||
│ ├── cam_machines
|
||||
│ └── cam_operations
|
||||
└── static
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
## 🤝 Contributing
|
||||
BlenderCAM has been used for many milling projects, and is actively developed.
|
||||
|
||||
If you are a developer who would like to help, fork and open pull requests
|
||||
|
||||
|
||||
[](https://riot.im/app/#/room/#blendercam:matrix.org)
|
||||
|
||||
## Installation and Usage
|
||||
|
||||
See the [Wiki](https://github.com/vilemduha/blendercam/wiki).
|
||||
|
||||
|
||||
## Resources
|
||||
|
||||
* [Development](https://github.com/vilemduha/blendercam)
|
||||
* [Documentation](https://github.com/vilemduha/blendercam/wiki)
|
||||
* [Freenode IRC](http://webchat.freenode.net/?channels=%23blendercam) (#blendercam)
|
||||
* [The Matrix](https://riot.im/app/#/room/#blendercam:matrix.org) (#blendercam:matrix.org)
|
||||
* [Issue Tracker](https://github.com/blendercam/blendercam/issues)
|
||||
|
||||
|
||||
## Dependencies
|
||||
|
||||
* Blender 2.80 or 2.92
|
||||
* OpenCamLib (optional but highly recomended - required for ballcone and bullnose cutter support)
|
||||
* Recomended on Linux.
|
||||
* No instructions for Mac users (unknown if opencamlib works)
|
||||
* OpenCamlib can work on Windows but installation is tricky
|
||||
* Equation python module (~/Apps/blender-2.92/2.92/python/bin/pip3 install Equation)
|
||||
|
||||
|
||||
## DISCLAIMER
|
||||
## 🤕 DISCLAIMER
|
||||
|
||||
THE AUTHORS OF THIS SOFTWARE ACCEPT ABSOLUTELY NO LIABILITY FOR
|
||||
ANY HARM OR LOSS RESULTING FROM ITS USE. IT IS _EXTREMELY_ UNWISE
|
||||
|
@ -47,3 +136,7 @@ codes, and the authors of this software can not, and do not, take
|
|||
any responsibility for such compliance.
|
||||
|
||||
This software is released under the GPLv2.
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 0f58262dc397578d83a4d6e451c8d38f7273d187
|
|
@ -45,6 +45,9 @@ $ ./pip3 install Equation
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
**Note:** if you are using a Blender with a bundled Python then shapely and numpy must be installed in the `site-packages` directory of the bundled python. For Blender 2.8 only Shapely is needed. To install it, open terminal, get to Blender directory and use PIP:
|
||||
|
||||
`cd 2.80/python/bin/`
|
||||
|
@ -95,7 +98,7 @@ Now when ever blender is started, the external blendercam add-on will be enabled
|
|||
|
||||
## 4. (Optional) Install Opencamlib
|
||||
|
||||
To install OpenCamLib, you can follow this link.
|
||||
To install OpenCamLib, you can follow [this link](./Opencamlib_Installation.md).
|
||||
|
||||
[OpenCAMLib](https://github.com/aewallin/opencamlib) is an open source CAM library created by Anders Wallin. It offers high quality waterline generation and drop cutter sampling algorithms. For drop cutter algorithms it's more reliable than Bullet Physics (Blender's built-in collision detection library) and offers better performance (up to 30 times faster than regular algorithm on 24-core machine).
|
||||
|
||||
|
|
|
@ -0,0 +1,142 @@
|
|||
|
||||
<center>
|
||||
|
||||

|
||||
|
||||
- - -
|
||||
|
||||
|
||||
### An open source solution for artistic CAM with Blender 3D
|
||||
|
||||
<p align="center">
|
||||
|
||||
[](https://riot.im/app/#/room/#blendercam:matrix.org)
|
||||
[](http://webchat.freenode.net/?channels=%23blendercam)
|
||||
[](https://github.com/vilemduha/blendercam)
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
</p>
|
||||
<br>
|
||||
<p align="center">
|
||||
|
||||
[About](#About) • [How to use](#How-to-use-(Wiki)) • [Features](#Features) • [Post-Processors](#Post-processors) • [Contributing](#Contributing) • [License](#Disclaimer)
|
||||
</p>
|
||||
|
||||
<br>
|
||||
|
||||

|
||||
|
||||
|
||||
</center>
|
||||
|
||||
## 👁️ About
|
||||
Blender CAM is an open source solution for artistic CAM - Computer aided machining - a g-code generation tool.
|
||||
|
||||
Blender CAM is an add-on for the free open-source [Blender 3d package](https://www.blender.org/).
|
||||
|
||||
It has been used for many milling projects, and is actively developed. If you are a developer who would like to help, don't hesistate to fork the project and start generating pull requests.
|
||||
|
||||
## 👨🎓 How to use (Wiki)
|
||||
|
||||

|
||||
|
||||
BlenderCam is recommended with Linux. BlenderCam can work on Windows but the installation of a dependency (OpenCamlib) is tricky.
|
||||
|
||||
* [BlenderCam Installation](./Blendercam_installation.md)
|
||||
* [Getting started](./Getting_started.md)
|
||||
* [Panel descriptions](./Blendercam-Panel-Descriptions.md)
|
||||
* [Tools](./Blendercam-Tools.md)
|
||||
* [Example of using Profile and Pocket operations](./Profile_and_Pocket_operations.md)
|
||||
|
||||
|
||||
## 👌 Features
|
||||
|
||||
| | Blender 2.92 and 2.80
|
||||
| -------------------------- | :----------------: |
|
||||
| Several milling strategies for 2D and 3D | ✔️ |
|
||||
| Cutter types: ball, flat, v-carve with various angles, user definable | ✔️ |
|
||||
| work with 3d data or depth images | ✔️ |
|
||||
| Layers and skin for roughing. | ✔️ |
|
||||
| Inverse milling | ✔️ |
|
||||
| Various options for ambient around model | ✔️ |
|
||||
| protection of vertical surfaces | ✔️ |
|
||||
| Stay low - option for movement | ✔️ |
|
||||
| Material size setup | ✔️ |
|
||||
| Simulation of 3d operations | ✔️ |
|
||||
| Helix entry, arc retract, ramp down for some of the strategies. | ✔️ |
|
||||
| Automatic bridges for cutout operation | ✔️ |
|
||||
| Chain export and simulation | ✔️ |
|
||||
| Background computing of the operations, so you can continue working | ✔️ |
|
||||
|
||||
|
||||
|
||||
## 💻 Post-processors
|
||||
* GRBL
|
||||
* Iso
|
||||
* LinuxCNC - EMC2
|
||||
* Fadal
|
||||
* Heidenhain
|
||||
* Sieg KX1
|
||||
* Hafco HM-50
|
||||
* Centroïd M40
|
||||
* Anilam Crusader M
|
||||
* Gravos
|
||||
* WinPC-NC
|
||||
* ShopBot MTC
|
||||
* Lynx Otter o
|
||||
* ...
|
||||
|
||||
|
||||
## 🔬 Pending features
|
||||
* motion direction - classic, conventional, meander, are only partially supported
|
||||
* 4 and 5 axis milling
|
||||
|
||||
## 📒 Files organisation
|
||||
|
||||
```
|
||||
.
|
||||
├── config
|
||||
├── scripts
|
||||
│ ├── addons
|
||||
│ │ ├── cam
|
||||
│ │ │ ├── nc
|
||||
│ │ │ └── opencamlib
|
||||
│ │ ├── GPack
|
||||
│ │ └── print_3d
|
||||
│ │ ├── ini
|
||||
│ │ └── machine_profiles
|
||||
│ └── presets
|
||||
│ ├── cam_cutters
|
||||
│ ├── cam_machines
|
||||
│ └── cam_operations
|
||||
└── static
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
## 🤝 Contributing
|
||||
BlenderCAM has been used for many milling projects, and is actively developed.
|
||||
|
||||
If you are a developer who would like to help, fork and open pull requests
|
||||
|
||||
|
||||
## 🤕 DISCLAIMER
|
||||
|
||||
THE AUTHORS OF THIS SOFTWARE ACCEPT ABSOLUTELY NO LIABILITY FOR
|
||||
ANY HARM OR LOSS RESULTING FROM ITS USE. IT IS _EXTREMELY_ UNWISE
|
||||
TO RELY ON SOFTWARE ALONE FOR SAFETY. Any machinery capable of
|
||||
harming persons must have provisions for completely removing power
|
||||
from all motors, etc, before persons enter any danger area. All
|
||||
machinery must be designed to comply with local and national safety
|
||||
codes, and the authors of this software can not, and do not, take
|
||||
any responsibility for such compliance.
|
||||
|
||||
This software is released under the GPLv2.
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,124 @@
|
|||
# Installation
|
||||
|
||||
## Obtaining Blender
|
||||
Download portable version for linux64 2.83 or 2.92
|
||||
from a command line as user to download and extract blender
|
||||
|
||||
```
|
||||
$ cd ~/
|
||||
$ mkdir Apps
|
||||
$ cd Apps
|
||||
$ wget https://ftp.nluug.nl/pub/graphics/blender/release/Blender2.92/blender-2.92.0-linux64.tar.xz
|
||||
$ tar xf blender-2.92.0-linux64.tar.xz
|
||||
$ cd blender-2.92.0-linux64/2.92/python/bin
|
||||
$ ./python3.7m -m ensurepip
|
||||
$ ./pip3 install shapely
|
||||
$ ./pip3 install vtk
|
||||
$ ./pip3 install Equation
|
||||
```
|
||||
|
||||
## Obtaining OpenCamLib
|
||||
|
||||
installing python and libboost-python headers
|
||||
|
||||
|
||||
```
|
||||
$ sudo apt install python3-dev libboost-python-dev
|
||||
```
|
||||
|
||||
get the latest aewallin opencamlib sources
|
||||
|
||||
```
|
||||
$ cd ~/Apps
|
||||
$ git clone https://github.com/aewallin/opencamlib.git
|
||||
$ cd opencamlib
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake -DBUILD_PY_LIB=ON -DBUILD_CXX_LIB=ON -DUSE_PY_3=ON ..
|
||||
$ make
|
||||
```
|
||||
this is optional
|
||||
```
|
||||
$ sudo make install
|
||||
```
|
||||
at this point opencamlib is compiled
|
||||
if you ran ```make install```the terminal may show messages similar to this
|
||||
|
||||
```
|
||||
[0/1] Install the project...
|
||||
-- Install configuration: ""
|
||||
-- Installing: /usr/lib/python3.8/site-packages/ocl.so
|
||||
-- Up-to-date: /usr/lib/python3.8/site-packages
|
||||
-- Up-to-date: /usr/lib/python3.8/site-packages/STLTools.py
|
||||
-- Up-to-date: /usr/lib/python3.8/site-packages/procmemory.py
|
||||
-- Up-to-date: /usr/lib/python3.8/site-packages/camvtk.py
|
||||
-- Up-to-date: /usr/lib/python3.8/site-packages/pyocl.py
|
||||
```
|
||||
|
||||
the python 3 version may depend on your system
|
||||
|
||||
|
||||
## Installing OpenCamLib in Blender
|
||||
|
||||
now we need to link some files to the blender python3.7 interpreter
|
||||
|
||||
|
||||
Depending on your base system python files may be in other place
|
||||
|
||||
|
||||
from system if ran ```make install``` files should be here
|
||||
|
||||
```
|
||||
/usr/lib/python3/dist-packages/ocl.so
|
||||
```
|
||||
|
||||
or from opencamlib src dir
|
||||
|
||||
```
|
||||
opencamlib/build/src/ocl.so
|
||||
opencamlib/src/lib/STLTools.py
|
||||
opencamlib/src/lib/procmemory.py
|
||||
opencamlib/src/lib/camvtk.py
|
||||
opencamlib/src/lib/pyocl.py
|
||||
```
|
||||
|
||||
please change the following instrutions to macth
|
||||
|
||||
```
|
||||
$ ln -s /usr/lib/python3.8/site-packages/ocl.so ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /usr/lib/python3.8/site-packages/STLTools.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /usr/lib/python3.8/site-packages/procmemory.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /usr/lib/python3.8/site-packages/camvtk.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /usr/lib/python3.8/site-packages/pyocl.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
```
|
||||
or
|
||||
|
||||
|
||||
```
|
||||
$ ln -s /home/blendercam/projects/opencamlib/build/src/ocl.so ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /home/blendercam/projects/opencamlib/src/lib/STLTools.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /home/blendercam/projects/opencamlib/src/lib/procmemory.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /home/blendercam/projects/opencamlib/src/lib/camvtk.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
$ ln -s /home/blendercam/projects/opencamlib/src/lib/pyocl.py ~/Apps/blender-2.92.0-linux64/2.92/python/lib/python3.7/site-packages/
|
||||
```
|
||||
## next steps can be found in this link
|
||||
https://github.com/vilemduha/blendercam/wiki/Using-Blendercam-from-github
|
||||
|
||||
## Tips
|
||||
### OpenSuSE 15.1
|
||||
I got an python error, because print was used without () in the cmake file. I changed in the file ~/Apps/opencamlib/src/pythonlib/pythonlib.cmake in line 51 and 57 the python print command:
|
||||
* old line 51 and 57
|
||||
|
||||
```
|
||||
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(0,0,\"/usr/local\")"
|
||||
..
|
||||
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(plat_specific=1,standard_lib=0,prefix=\"/usr/local\")"
|
||||
```
|
||||
|
||||
* new
|
||||
|
||||
```
|
||||
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print( get_python_lib(0,0,\"/usr/local\"))"
|
||||
..
|
||||
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print( get_python_lib(plat_specific=1,standard_lib=0,prefix=\"/usr/local\"))"
|
||||
```
|
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 65 KiB |
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 724 KiB |
Ładowanie…
Reference in New Issue