GithubHelp home page GithubHelp logo

djy1989 / nc_tools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mythagel/nc_tools

0.0 0.0 0.0 755 KB

A collection of composable CNC/CAM GCode tools

Home Page: http://mythagel.github.io/nc_tools/

License: GNU General Public License v3.0

C++ 90.40% CMake 9.60%

nc_tools's Introduction

nc_tools

A collection of composable CNC/CAM GCode tools.

$ cat robot2.ngc | nc_backplot

robot backplot

Implemented utilities

  • nc_backplot
    • display a backplot of the incoming gcode
  • nc_model
    • generate a 3d model of the incoming gcode, given tools and stock
  • nc_rename_axis
    • rename an axis, a=> is delete, a=>b is rename, a<=>b is swap
  • nc_bounds
    • bounding box of gcode or .off model
  • nc_transform
    • transform / rotate stock for next operation
    • nc_transform -a 45 -b 45 -x -30 # rotate 45 deg around x, 45 around y, translate -30 on x
  • nc_tooltable
    • generate linuxcnc tool table from nc_tools.conf
  • nc_contour_pocket
    • Generate contour parallel toolpath from gcode path
  • nc_stock
    • Generate .off stock models
  • nc_svgpath
    • SVG path data -> gcode converter
  • nc_identity
    • gcode identity transformation - base for new tools
  • nc_arcfit
    • recover G2/G3 arcs from linear paths
  • nc_delay
    • delay the output of the gcode based on the machining time option 1x 2x, etc
  • nc_shortlines
    • split incoming gcode into short line segments
    • cli option --arc-only
  • nc_slice
    • Segments a 3d model into 2d slices for further processing
  • nc_contour_drill
    • Generate a drill pattern bounded by the input gcode path
  • nc_contour_offset
    • Generate contour parallel offsets from gcode path
  • nc_linear_ramp
    • Convert plunge into linear ramp along path

not implemented / not complete

  • nc_fold_moves
    • fold adajacent G00 moves
  • nc_pick
    • nc_stop --at-comment blah --at-line 205 --at-tool 3
    • selectively pick gcode from file
    • e.g. within bounding box
  • nc_inspect
    • allow playback of the gcode
    • feed rate override + pause
    • seek forward and backward
    • zoom to section of timeline
  • nc_scale
    • scale gcode axes up or down
  • nc_offset_rotational_origin
    • translate to/from tool local (canonical) rotations to world rotation (e.g. rotary tables)
  • nc_feedrate
    • analyse / optimise feedrate of provided gcode
  • nc_lathe_roughing
    • G70/G71 canned cycle style lathe roughing generator
  • nc_blueprint
    • Generate SVG blueprint with 3 ortho + perspective view of gcode / model.
  • nc_annotate
    • Analyses and adds annotations to input gcode, e.g. path continuity
  • nc_contour_spiral
    • Generate spiral toolpaths from gcode path

Generators

  • lathe_path
    • generate lathe operations for svg path
    • TODO determine machining strategy for lathe operations based on different tools and back faces
  • mill_path
    • generate profile operation for svg path
    • pick from SVG file with xpath pattern
    • opt. scale / transform
    • profile / pocket

nc_tools's People

Contributors

mythagel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.