commands: bin/vol_gif bin/vol_stl bin/gif_info bin/gif_png bin/gif_stl bin/stl_info bin/stl_png bin/stl_path bin/png_size bin/png_scale bin/png_distances bin/png_offset bin/png_grb bin/png_drl bin/png_path bin/png_halftone bin/svg_path bin/path_eps bin/path_dxf bin/path_png bin/path_rml bin/path_sbp bin/path_g bin/path_camm bin/path_epi bin/path_uni bin/path_oms bin/path_ord bin/path_join bin/path_array bin/path_info bin/path_time bin/math_png bin/math_dot bin/math_stl bin/math_svg bin/cad_png bin/cad_view bin/path_view bin/rml_move bin/fab_send bin/fab_update bin/cad_math bin/math_png_py bin/math_stl_py bin/png_tile bin/eagle_png bin/fab bin/fab.html bin/fabserver bin/make_cad_png bin/make_cad_eps bin/make_cad_stl bin/make_cad_camm bin/make_cad_rml bin/make_cad_epi bin/make_cad_uni bin/make_cad_sbp bin/make_cad_g bin/make_cad_ord bin/make_cad_grb bin/make_cad_drl bin/make_math_camm bin/make_math_epi bin/make_math_g bin/make_math_ord bin/make_math_eps bin/make_math_uni bin/make_math_rml bin/make_math_sbp bin/make_math_grb bin/make_math_drl bin/make_png_png bin/make_png_eps bin/make_png_epi bin/make_png_uni bin/make_png_grb bin/make_png_epi_halftone bin/make_png_uni_halftone bin/make_png_rml bin/make_png_sbp bin/make_png_ord bin/make_png_camm bin/make_png_plt bin/make_png_g bin/make_png_drl bin/make_png_oms bin/make_stl_png bin/make_stl_rml bin/make_stl_sbp bin/make_stl_g bin/make_svg_camm bin/make_svg_epi bin/make_svg_uni bin/make_svg_oms bin/make_svg_g bin/make_svg_rml bin/make_svg_sbp bin/make_svg_ord bin/make_png_snap bin/make_cad_snap bin/make_stl_snap bin/make_svg_snap bin/make_png_eps_halftone bin/make_cad_dxf bin/make_math_dxf bin/make_math_stl bin/make_png_dxf bin/make_gif_stl bin/cad_ui bin/rml_send_gui command line: vol_gif in.vol out.gif nx ny nz [format [type [arg [size [dx dy dz [x0 y0 z0 [rx ry rz]]]]]]] in.vol = input volume file out.gif = output GIF file nx,ny,nz = x,y,z input voxel number format = 'f' for float 32, 'i' for uint16_t (default 'f') type = 's' for section, 'h' for height (default 's') arg = gamma for 's', threshold for 'h' (default 1) size = mm per voxel (default 1) dx,dy,dz = x,y,z output voxel number (default all) x0,y0,z0 = x,y,z output voxel origin (default 0) to be implemented: rx,ry,rz = view rotation angles (degrees; default 0) command line: vol_stl in.vol out.stl nx ny nz [format [threshold [size [points [angle]]]]] in.vol = input VOL file out.stl = output STL file nx,ny,nz = x,y,z input voxel number format = 'f' for float 32, 'i' for uint16_t (default 'f') threshold: surface intensity threshold (0 = min, 1 = max, default 0.5)) size = voxel size (mm, default from file)) points = points to interpolate per point (default 0) to be implemented: angle = minimum relative face angle to decimate vertices (default 0) command line: gif_info in.gif in.gif = input GIF file command line: gif_png in.gif out.png [type [arg [points [size [rx ry rz]]]]] in.gif = input gif file out.png = output PNG file type = 'z' of density, 'h' for height (default z) arg = type argument 'z': gamma (default 1) 'h': threshold (0 = min, 1 = max, default 0.5) points = points to interpolate per point (linear, default 0) size = voxel size (mm, default from file)) to be implemented: rx,ry,rz = x,y,z rotation angles (degrees; default 0) command line: gif_stl in.gif out.stl [threshold [size [points [angle]]]] in.gif = input GIF section file out.stl = output STL file threshold: surface intensity threshold (0 = min, 1 = max, default 0.5)) size = voxel size (mm, default from file)) points = points to interpolate per point (default 0) to be implemented: angle = minimum relative face angle to decimate vertices (default 0) command line: stl_info in.stl in.stl = input binary STL file command line: stl_png in.stl out.png [units [resolution [axis]]] in.stl = input binary STL file out.png = output PNG file units = file units (optional, mm/unit, default 1) resolution = image resolution (optional, pixels/mm, default 10) axis = projection axis (optional, top or bottom, x|X|y|Y|z|Z, default z) command line: stl_path in.stl out.path [units [resolution]]] in.stl = input binary STL file out.png = output PNG file units = file units (optional, mm/unit, default 1) resolution = image resolution (optional, pixels/mm, default 10) command line: png_size in.png [dx [dy]] in.png = input PNG file dx = set width (optional, mm) dy = set height (optional, mm) command line: png_scale in.png out.png low high in.png = input PNG file out.png = output PNG file low = rescaled intensity minimum (0-1) high = rescaled intensity maximum (0-1) command line: png_distances in.png out.png [intensity [distances]] in.png = input PNG file out.png = input PNG file intensity = intensity level to slice (optional, 0-1, default 0.5) distances = show distances (optional, 0/1, default 1) command line: png_offset in.png out.png [intensity [distance]] in.png = input PNG file out.png = input PNG file intensity = intensity level to slice (optional, 0-1, default 0.5) distance = distance to offset (optional, mm, default 0) command line: png_grb in.png out.grb in.png = input PNG file out.grb = output Gerber (RS-274X) file command line: png_drl in.png out.drl in.png = input PNG file out.drl = output Excellon file command line: png_path in.png out.path [error [offset_diameter [offset_number [offset_overlap [intensity_top [intensity_bottom [z_top [z_bottom [z_thickness [xz [yz [xy [type [clearance_length clearance_diameter]]]]]]]]]]]]]] in.png = input PNG file out.path = output path file error = allowable vector fit deviation (optional, pixels, default 1.1) offset_diameter = diameter to offset (optional, mm, default 0) offset_number = number of contours to offset (optional, -1 to fill all, default 1) offset_overlap = tool offset overlap fraction (optional, 0 (no overlap) - 1 (complete overlap, default 0.5)) intensity_top = top slice intensity (optional, 0-1, default 0.5) intensity_bottom = bottom slice intensity (optional, 0-1, default intensity_top) z_top = top slice z value (optional, mm, default 0) z_bottom = bottom slice z value (optional, mm, default z_top) z_thickness = slice z thickness (optional, mm, default z_top-z_bottom) xz = xz finish (optional, 1=yes, default 0 yz = yz finish (optional, 1=yes, default 0 xy = xy path (optional, 1=yes, default 1 type = finish tool type (optional, f=flat end, b=ball end, default f clearance_length = finish tool clearance length (optional, mm, 0 = no limit, default 0 clearance_diameter = finish tool clearance diameter (optional, mm, default offset_diameter command line: png_halftone in.png out.path [threshold [points [size [spacing [offset [invert]]]]]] in.png = input PNG file out.path = output path file threshold = minimum spot radius (optional, pixels default 1) points = points per spot (optional, default 8) size = maximum spot size (optional, mm, default 1) spacing = spot spacing (optional, 1 = size, default 1) offset = row offset (optional, 1 = size, default 0.5) offset = row offset (optional, 1 = size, default 0.5) invert = invert image (0 = no (default), 1 = yes) command line: svg_path in.svg out.path [scale [points [resolution [zmin [zmax]]]]] in.svg = input binary SVG file out.path = output path file scale = scale factor (optional, default 1.0) points = points per curve segment (optional, default 25) resolution = path x resolution (optional, default 10000) zmin = path min intensity z (optional, mm, default 0) zmax = path max intensity z (optional, mm, default zmin) command line: path_eps in.path out.eps [view] in.path = input path file out.eps= output PostScript file view = view projection(s) (optional, z|3, default z) command line: path_dxf in.path out.dxf in.path = input path file out.dxf = output DXF file command line: path_png in.path out.png in.path = input path file out.png = output PNG file command line: path_rml in.path out.rml [speed [direction [jog [xmin ymin [zmin]]]]] in.path = input path file out.rml = output Roland Modela file speed = cutting speed (optional, mm/s, default 4) direction = machining direction (optional, 0 conventional/1 climb, default 1) jog = jog height (optional, mm, default 1) xmin = left position (optional, mm, default path value) ymin = front position (optional, mm, default path value) zmin = bottom position (optional, -mm, default path value) command line: path_sbp in.path out.sbp [direction [spindle_speed [xy_speed z_speed [xy_jog_speed z_jog_speed z_jog [units]]]]]] in.path = input path file out.sbp = output ShopBot file direction = machining direction (optional, 0 conventional/1 climb, default 0) spindle_speed = spindle speed (optional, if control installed, RPM, default 12000) xy_speed = xy cutting speed (optional, mm/s, default 30) z_speed = z cutting speed (optional, mm/s, default 30) xy_jog_speed = xy jog speed (optional, mm/s, default 150) z_jog_speed = z jog speed (optional, mm/s, default 150) z_jog = z jog height (optional, mm, default 25) units = mm per file unit (optional, default 25.4) command line: path_g in.path out.g [direction [z_jog [feed [z_feed [spindle [tool [coolant]]]]]] in.path = input path file out.g = output G-code file direction = machining direction (optional, 0 conventional/1 climb, default 0) z_jog = z jog height (optional, mm, default 25) feed = feed rate (optional, mm/s, default 100) z_feed = z plunge rate (optional, mm/s, default xy feed rate) spindle = spindle speed (optional, RPM, default 5000) tool = tool number (optional, default 1) coolant = coolant on/off (optional, 0=off/1=on, default 1) command line: path_camm in.path out.camm [force [velocity [x y [location]]]] in.path = input path file out.camm = output Roland vinylcutter file force = cutting force (optional, grams, default 45) velocity = cutting speed (optional, cm/s, default 2) x = origin x (optional, mm, default 0) y = origin y (optional, mm, default 0) location = origin location (optional, bottom left:l, bottom right:r, top left:L, top right:R, default l) command line: path_epi in.path out.epi [power [speed [focus [x y [ location [rate [max_power]]]]]]] in.path = input path file out.epi= output Epilog lasercutter file power = percent power, for minimum z value (optional, 0-100, default 50) speed = percent speed (optional, 0-100, default 50) focus = autofocus (optional, 0=off | 1=on, default on) x = origin x (optional, mm, default 0 = left side of bed) y = origin y (optional, mm, default 0 = back side of bed, front positive) location = origin location (optional, bottom left:l, bottom right:r, top left:L, top right:R, default l) rate = pulse rate (optional, frequency, default 2500) max_power = percent power, for maximum z value (optional, 0-100, default power) command line: path_uni in.path out.uni [power [speed [xmin ymin [rate [max_power]]]]] in.path = input path file out.uni= output Universal lasercutter file power = percent power (optional, 0-100, default 100) speed = percent speed (optional, 0-100, default 100) xmin = left position (optional, mm, default path, 0 = left side of bed) ymin = front position (optional, mm, default path, 0 = back, front positive) rate = pulse rate (optional, frequency, default 500) max_power = maximum power for maximum z value (optional, 0-100, default 100) command line: path_oms in.path out.oms [velocity [acceleration [period]]] in.path = input path file out.oms = output Resonetics excimer micromachining center file velocity (default 0.1) acceleration (default 5.0) period (usec, default 10000) command line: path_ord in.path out.ord [lead [quality [xstart ystart]]] in.path = input path file out.ord = output Omax waterjet file lead = lead in/out (optional, mm, default 2) quality = cut quality (optional, default -3) xstart,ystart = start position (optional, mm, default path start) command line: path_join in1.path in2.path out.path [dx [dy]] in1.path = first input path file in2.path = second input path file out.path = joined output path file dx = in1 horizontal offset (optional, mm, default 0) dy = in1 vertical offset (optional, mm, default dx) command line: path_array in.path out.path nx ny [dx [dy]] in.path = input path file out.path = output path file nx = number of horizonal array elements ny = number of vertical array elements dx = array element horizontal spacing (optional, mm, default 0) dy = array element vertical spacing (optional, mm, default dx) command line: path_info in.path in.path = input path file command line: path_time in.path move_speed [jog_height [jog_speed [plunge_speed]]] in.path = input path file move_speed = speed of path segments (mm/s) jog_height = height between path segments (mm, optional, default 0) jog_speed = speed between path segments (mm/s, optional, default move_speed) plunge_speed = speed from jog to move (mm/s, optional, default move_speed) command line: math_png in.math out.png [resolution [slices]] in.math = input math string file out.png = output PNG image resolution = pixels per mm (optional, default 10) slices = number of z slices (optional, default full) command line: math_dot in.math out.dot in.math = input math string file out.dot = output dot file command line: math_stl in.math out.stl [resolution [quality]] in.math = input math string file out.png = output PNG image resolution = voxels per mm (optional, default 10) quality = voxel interpolation level (default 8) command line: math_svg in.math out.svg [resolution [slices [error [quality]]]] in.math = input math string file out.png = output PNG image resolution = voxels per mm (default: 10) slices = z slices (defaults: 1 for 2D models, 10 for 3D models) error = maximum decimation error (in mm^2) quality = voxel interpolation level (default: 8) Note: output svgs are at 72 dpi. command line: cad_png in.cad [args] in.cad = input .cad file args = math_png arguments (optional) command line: cad_view in.cad [args] in.cad = input .cad file args = math_png arguments (optional) image viewer = eog command line: path_view in.path [view [viewer]] in.path = input path file view = view projection(s) (optional, z|3, default z) viewer = PostScript viewer [default evince] command line: rml_move x y x,y, = position to move to (mm) command line: fab_send [file] file = file to send file type commands: {'.eps': 'inkscape "$file"', '.drl': 'gerbv "$file"', '.camm': 'printer=vinyl; lpr -P$printer "$file"', '.uni': 'port=/dev/lp0; cat "$file" > $port', '.epi': 'printer=laser; lprm -P$printer -; lpr -P$printer "$file"', '.sbp': 'gedit "$file"', '.rml': 'port=/dev/ttyUSB0; rml_send_gui "$file" $port', '.g': 'gedit "$file"', '.oms': 'gedit "$file"', '.dxf': 'gedit "$file"', '.stl': 'meshlab "$file"', '.plt': 'gedit "$file"', '.ord': 'gedit "$file"', '.grb': 'gerbv "$file"'} command line: fab_update [check|install] check will inform you if a newer version of the fab modules is available. install will install a newer version of the fab modules, if applicable. command line: cad_math in.cad out.math [args] in.cad = input design file out.math = output math string file args = arguments to cad script (delivered in sys.argv) command line: math_png_py in.math out.png [resolution [number [view [rx ry rx]]]] in.math = input math string file out.png = output PNG image resolution = pixels per mm (optional, default 10) number = number of z slices to evaluate (optional, default 1) view = view projection(s) (optional, z|3, default z) rx ry rz = 3D view angle (optional, degrees, default 70 0 20) [This command is deprecated; use math_png instead.] command line: math_stl in.math out.stl [resolution] in.math = input math string file out.stl = output STL image resolution = pixels per mm (optional, default 1) command line: png_tile rows cols file1.png file2.png ... rows = number of horizontal copies cols = number of vertical copies file1.png to fileN.png = files to tile command line: eagle_png [options] target.brd target.brd = EAGLE brd file to render The board outline should be a solid polygon on the 'milling' layer Internal cutouts should be solid shapes on the 'holes' layer Valid options: --resolution NUM : sets output image resolution --doublesided : forces double-sided mode