天天看點

開源項目推薦:CNC+CRC/SoftPLC/OpenCASCADE/CAD/CAM(一)

尊重作者,支援原創,如需轉載,請附上原位址:

https://blog.csdn.net/libaineu2004/article/details/89053246

先來看看B站的視訊

https://www.bilibili.com/video/BV1Bt4y1y74P

CRC/CNC

Cutter Radius Compensation for Milling machines.

cutter radius compensation

cutter comp

https://github.com/shooter64738/CRC https://github.com/grbl

-- rs274/ngc parser,不支援G40/G41/G42

https://github.com/synthetos/g2 https://github.com/modmaker/BeBoPr http://gerbv.geda-project.org/ https://github.com/eduard-x/cnc-qt https://github.com/vlachoudis/bCNC https://github.com/Smoothieware/Smoothieware

++

http://smoothieware.org/ https://github.com/OpenBuilds https://github.com/winder/Universal-G-Code-Sender https://github.com/arkypita/LaserGRBL https://github.com/svenhb/GRBL-Plotter https://github.com/cncjs/cncjs

LinuxCNC

http://www.linuxcnc.org/

-- Supports rigid tapping, cutter compensation, and many other advanced control features.

https://github.com/LinuxCNC/linuxcnc https://github.com/LinuxCNC/linuxcnc/tree/master/src/emc https://github.com/LinuxCNC/linuxcnc/blob/master/src/emc/rs274ngc/interp_convert.cc

-- 刀具補償

https://github.com/LinuxCNC/simple-gcode-generators http://linuxcnc.org/dists/lucid/emc2.4/

linuxcnc老版本名稱叫EMC2,Enhanced Machine Controller (EMC2)

Open CASCADE Technology(簡稱OCCT)

opengl是基礎圖形庫,open cascade是一個進階的CAD開發庫,OCC基礎就是OpenGL。

https://www.opencascade.com/

官網

https://www.opencascade.com/content/download-center

下載下傳中心

https://www.opencascade.com/content/latest-release

 最新版本下載下傳,隻提供x64版本的庫,不提供x86

https://www.opencascade.com/content/previous-releases

 曆史版本下載下傳

https://www.opencascade.com/content/3rd-party-components

第三方依賴庫,其中Freetype和Tcl/Tk是必須的

https://dev.opencascade.org/

開發者平台

https://dev.opencascade.org/doc/overview/html/index.html

開發文檔

https://dev.opencascade.org/doc/overview/html/occt_dev_guides__building.html

環境搭建

https://github.com/topics/opencascade

github相關

重量級應用:

1、FreeCAD是一個基于OpenCASCADE的開源CAD/CAE工具。 OpenCASCADE是一套開源的CAD/CAM/CAE幾何模型核心,來自法國Matra Datavision公司,是著名的CAD軟體EUCLID的開發平台。

https://github.com/FreeCAD/FreeCAD https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Import/App/ImpExpDxf.cpp

Dxf檔案解析

https://www.freecadweb.org/ https://www.freecadweb.org/wiki/CompileOnWindows

源碼編譯說明

https://github.com/FreeCAD/FreeCAD-ports-cache/releases

依賴庫官方釋出

https://github.com/apeltauer/FreeCAD/releases

依賴庫非官方純私人釋出,版本比較新

https://github.com/FreeCAD/FreeCAD_Conda

依賴庫新方式

2、heekscad

HeekCAD是一個免費,開源CAD應用程式,作者是Dan Heeks,[email protected]

https://www.opencascade.com/content/heekscad https://github.com/Heeks/heekscad https://github.com/Heeks/heekscad/blob/master/src/HDxf.cpp https://github.com/Heeks/heekscnc https://github.com/danheeks/dxfconv

dxf檔案讀寫

https://github.com/danheeks/HeeksCAM https://github.com/danheeks/PyCAD https://github.com/danheeks/PyCAM https://code.google.com/archive/p/heekscad/downloads https://code.google.com/archive/p/heekscnc/downloads https://sites.google.com/site/heekscad/

3、PythonOCC

Python wrapper for Open CASCADE Technology.

http://www.pythonocc.org/

4、cadquery

CadQuery2.0是pythonocc的進階封裝庫,使用了Qt語言作為界面語言,是一款正在起步的指令行模組化軟體,由于pythonocc的使命在于封裝opencascade而非關注界面,那麼對于有界面需求的開發人員,便可以好好關注一下cadquery。

https://github.com/CadQuery/cadquery

5、OpenShapefactory

OpenShapefactory is a Qt-based Geometry Factory that provides a single-point of entry to the most of OCCT geometrical operations.It is a Middle-Man between you, OpenCascade and QT, it serves as a Geometry Factory wrapping OpenCascade, and providing a single-point of entry to the creation of most geometrical operations.

http://code.google.com/p/openshapefactory

6、declaracad

https://github.com/codelv/declaracad

7、mayo

https://github.com/fougue/mayo

-- 3D viewer based on OpenCascade,Support of STEP/IGES assemblies (colors and tree structure)

https://github.com/cbernardo/libIGES

-- IGES解析

編譯源碼之前,需要在mayo源工程的opencascade.pri檔案手動添加OpenCascade路徑:

# Declare pure QMake variables out of OCC envvars

COMMON_PATH = "D:/My Resources/OpenCASCADE-7.5.0-vc14-64/opencascade-7.5.0"#注意斜杆的方向;引号;

CASCADE_INC_DIR = $${COMMON_PATH}/inc

CASCADE_LIB_DIR = $${COMMON_PATH}/win64/vc14/lib

CASCADE_BIN_DIR = $${COMMON_PATH}/win64/vc14/bin

CASCADE_SRC_DIR = $${COMMON_PATH}/src

開源項目推薦:CNC+CRC/SoftPLC/OpenCASCADE/CAD/CAM(一)

8、eryar

https://github.com/eryar/occQt

Qt demo

http://www.cppblog.com/eryar/

OCCT精品部落格,[email protected]

https://www.cnblogs.com/opencascade/

同上

x、其他相關的部落格和輕量級應用:

https://github.com/miho/OCC-CSG

-- Simple but powerful CSG tool based on OpenCascade

https://github.com/lvk88/OccTutorial https://github.com/tpaviot/oce

OCE,在OCC基礎上擴充

https://github.com/tianxiao/occsamplemfc

MFC demo

http://www.zyh1690.org/cadcg/

部落格

https://blog.csdn.net/augusdi/article/category/695059