re-enabled ease-down. added keyboard shortcuts to help
This commit is contained in:
parent
9f819e8398
commit
be8bc1f9ff
8 changed files with 136 additions and 37 deletions
|
|
@ -936,7 +936,7 @@ var gs_kiri_cam = exports;
|
|||
output = print.output,
|
||||
modes = CPRO,
|
||||
depthFirst = process.camDepthFirst,
|
||||
easeDown = false && process.camEaseDown,
|
||||
easeDown = process.camEaseDown,
|
||||
tolerance = process.camTolerance,
|
||||
drillDown = process.drillDown,
|
||||
drillLift = process.drillLift,
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ var gs_kiri_fdm = exports;
|
|||
vaseMode = spro.sliceFillType === 'vase',
|
||||
doSolidLayers = solidLayers && !vaseMode,
|
||||
firstOffset = sdev.nozzleSize / 2,
|
||||
shellOffset = sdev.nozzleSize * spro.sliceShellSpacing,
|
||||
shellOffset = sdev.nozzleSize,
|
||||
fillOffset = sdev.nozzleSize * settings.synth.fillOffsetMult,
|
||||
fillSpacing = sdev.nozzleSize,
|
||||
sliceFillAngle = spro.sliceFillAngle,
|
||||
|
|
|
|||
|
|
@ -55,7 +55,6 @@ self.kiri.license = exports.LICENSE;
|
|||
processName: 1,
|
||||
sliceHeight: 1,
|
||||
sliceShells: 1,
|
||||
sliceShellSpacing: 1,
|
||||
sliceFillAngle: 1,
|
||||
sliceFillOverlap: 1,
|
||||
sliceFillSparse: 1,
|
||||
|
|
@ -277,7 +276,6 @@ self.kiri.license = exports.LICENSE;
|
|||
|
||||
sliceHeight: 0.25,
|
||||
sliceShells: 3,
|
||||
sliceShellSpacing: 1.0,
|
||||
sliceFillAngle: 45,
|
||||
sliceFillOverlap: 0.3,
|
||||
sliceFillSparse: 0.5,
|
||||
|
|
@ -2244,7 +2242,7 @@ self.kiri.license = exports.LICENSE;
|
|||
}
|
||||
|
||||
function showHelpLocal() {
|
||||
showHelp("/kiri/help-kiri.html");
|
||||
showHelp("/kiri/help.html");
|
||||
}
|
||||
|
||||
function showHelp(local) {
|
||||
|
|
@ -2677,6 +2675,7 @@ self.kiri.license = exports.LICENSE;
|
|||
roughingSpeed: UC.newInput("feed rate", {title:"max speed while cutting\nmillimeters / minute", convert:UC.toInt, modes:CAM}),
|
||||
roughingPlunge: UC.newInput("plunge rate", {title:"max speed on z axis\nmillimeters / minute", convert:UC.toInt, modes:CAM}),
|
||||
roughingStock: UC.newInput("leave stock", {title:"horizontal offset from vertical faces\nstock to leave for finishing pass\nin millimeters", convert:UC.toFloat, modes:CAM}),
|
||||
camEaseDown: UC.newBoolean("ease down", onBooleanClick, {title:"plunge cuts will\nspiral down or ease\nalong a linear path\nas they cut downward", modes:CAM}),
|
||||
roughingOn: UC.newBoolean("enable", onBooleanClick, {modes:CAM}),
|
||||
|
||||
finishing: UC.newGroup("finishing", null, {modes:CAM}),
|
||||
|
|
@ -2732,7 +2731,6 @@ self.kiri.license = exports.LICENSE;
|
|||
camZBottom: UC.newInput("z bottom", {title:"offset from part bottom\nto limit cutting depth\nin millimeters", convert:UC.toFloat, modes:CAM}),
|
||||
camZClearance: UC.newInput("z clearance", {title:"travel offset from z top\nin millimeters", convert:UC.toFloat, bound:UC.bound(1,100), modes:CAM}),
|
||||
camPocketOnly: UC.newBoolean("pocket only", onBooleanClick, {title:"constrain to\npart boundaries", modes:CAM}),
|
||||
// camEaseDown: UC.newBoolean("ease down", onBooleanClick, {title:"rough plunge cuts\nwill spiral down", modes:CAM}),
|
||||
camDepthFirst: UC.newBoolean("depth first", onBooleanClick, {title:"optimize pocket cuts\nwith depth priority", modes:CAM}),
|
||||
outputClockwise: UC.newBoolean("clockwise", onBooleanClick, {title:"waterline milling direction", modes:CAM}),
|
||||
|
||||
|
|
@ -2747,7 +2745,6 @@ self.kiri.license = exports.LICENSE;
|
|||
outputRetractDist: UC.newInput("retract dist", {title:"amount to retract filament\nfor long moves. in millimeters", convert:UC.toFloat, modes:FDM}),
|
||||
outputRetractSpeed: UC.newInput("retract rate", {title:"speed of filament\nretraction in mm/s", convert:UC.toInt, modes:FDM}),
|
||||
outputRetractDwell: UC.newInput("engage dwell", {title:"time between re-engaging\nfilament and movement\nin milliseconds", convert:UC.toInt, modes:FDM}),
|
||||
sliceShellSpacing: UC.newInput("shell spacing", {title:"as a percentage of nozzle width\n< 1.0 causes shell overlap\nrecommended 0.85 - 1.0", convert:UC.toFloat, bound:UC.bound(0.5,1.0), modes:FDM}),
|
||||
outputCoastDist: UC.newInput("shell coast", {title:"non-printing end\nof perimeter shells\nin millimeters", bound:UC.bound(0.0,10), convert:UC.toFloat, modes:FDM}),
|
||||
// outputWipeDistance: UC.newInput("wipe", {title:"non-printing move at\close of polygon\nin millimeters", bound:UC.bound(0.0,10), convert:UC.toFloat, modes:FDM}),
|
||||
sliceSolidMinArea: UC.newInput("min solid", {title:"minimum area (mm^2)\nrequired to keep solid\nmust be > 0.1", convert:UC.toFloat, modes:FDM}),
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
var exports = {
|
||||
COPYRIGHT:"Copyright (C) 2014-2019 Stewart Allen <sa@grid.space> - All Rights Reserved",
|
||||
LICENSE:"See the license.md file included with the source distribution",
|
||||
VERSION:"1.5.5"
|
||||
VERSION:"1.5.6"
|
||||
};
|
||||
if (!module) var module = {};
|
||||
module.exports = exports;
|
||||
|
|
|
|||
2
notes.md
2
notes.md
|
|
@ -17,10 +17,8 @@
|
|||
* first layer segment large flat areas for better fill reliability
|
||||
* adaptive column to compensate for fine or layers that finish too quickly and melt
|
||||
* apply finish speed to exposed top and underside flat areas
|
||||
* store/recover grid:print target against printer selected in device
|
||||
* expand internal supporting flats
|
||||
* first layer support speed should be same as shell speed
|
||||
* use fill spacing for top raft fill spacing
|
||||
* add lay-flat auto-rotation or from selected face
|
||||
* refactor thin fill to use outline and inside poly normal dist to self
|
||||
* check for support / brim intersections on first layer
|
||||
|
|
|
|||
|
|
@ -1,27 +0,0 @@
|
|||
<button id="help-close" class="modal-x">X</button>
|
||||
|
||||
<center><b>Quick Start</b></center>
|
||||
|
||||
<p>
|
||||
<a href="#" title="Kiri-e is the Japanese art of papercutting"><b>Kiri:Moto</b></a>
|
||||
is an extensible, multi-purpose slicing<br>and visualization engine that produces output for:
|
||||
|
||||
<li><label>CAM</label> : 3 axis CNC toolpaths
|
||||
<li><label>FDM</label> : GCode for 3D printers
|
||||
<li><label>LASER</label> : DXG / SVG cut paths
|
||||
<li><label><a target="_onshape" href="https://appstore.onshape.com/apps/CAM/EAAEWYIOMQKBENEMYW2N7MF253CT4WYL6SUJGEY=/description">Onshape</a></label> : Directly Integrated
|
||||
<li><label><a target="_thingiverse" href="http://www.thingiverse.com/apps/kirimoto/">Thingiverse</a></label> : Thing App
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b><a>Files</a></b> are loaded via drag/drop or 'load' menu
|
||||
<li>Loaded files are cached in the lower-left menu
|
||||
<li>Check device mode (FDM, CAM, Laser)
|
||||
<li>Select a GCode profile for your device
|
||||
<li>Check slicing parameters in right menu
|
||||
<li>Slice can be found under 'function'
|
||||
</p>
|
||||
|
||||
<p>Refer to the <a target="_help" href="https://wiki.grid.space/wiki/Kiri:Moto">Grid.Space Wiki</a> for more information</p>
|
||||
|
||||
<p id="kiri-version"></p>
|
||||
102
web/kiri/help.html
Normal file
102
web/kiri/help.html
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
<button id="help-close" class="modal-x">X</button>
|
||||
|
||||
<div id="help-body" class="flex frow">
|
||||
|
||||
<div id="help-left">
|
||||
<p>
|
||||
<a href="#" title="Kiri-e is the Japanese art of papercutting"><b>Kiri:Moto</b></a>
|
||||
is an extensible, multi-purpose slicing and visualization engine that produces output for:
|
||||
|
||||
<li><label>CAM</label> : 3 axis CNC toolpaths
|
||||
<li><label>FDM</label> : GCode for 3D printers
|
||||
<li><label>LASER</label> : DXG / SVG cut paths
|
||||
|
||||
<p>
|
||||
<b>Application access</b>
|
||||
|
||||
<li><label><a href="https://grid.space/kiri">Direct</a></label> -- Native web app
|
||||
<li><label><a target="_onshape" href="https://appstore.onshape.com/apps/CAM/EAAEWYIOMQKBENEMYW2N7MF253CT4WYL6SUJGEY=/description">Onshape</a></label> -- in Onshape App Store
|
||||
<li><label><a target="_thingiverse" href="http://www.thingiverse.com/apps/kirimoto/">Thingiverse</a></label> -- as a Thing App
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>File Load and Import</b>
|
||||
|
||||
<li>Drag and drop onto the build grid
|
||||
<li>Or load with Function [Import]
|
||||
<li>Cached file access with Function [+]
|
||||
|
||||
<p>
|
||||
<b>Start Slicing</b>
|
||||
<li>Select device mode (FDM, CAM, Laser)
|
||||
<li>Select device profile under Devices
|
||||
<li>Set slicing parameters in right menu
|
||||
<li>Test slicing settings with Function [Slice]
|
||||
<li>Preview slicing output with Function [Preview]
|
||||
<li>Export gcode with Function [Export]
|
||||
|
||||
<p>Refer to the <a target="_help" href="https://wiki.grid.space/wiki/Kiri:Moto">Grid.Space Wiki</a> for more information</p>
|
||||
|
||||
<p id="kiri-version"></p>
|
||||
</div>
|
||||
|
||||
<div id="help-right">
|
||||
<p><center><b>Keyboard & Mouse Shortcuts</b></center>
|
||||
<p>
|
||||
<div class="flex frow">
|
||||
<table>
|
||||
<tr><th colspan=2 class="grouphead">Mode</th></tr>
|
||||
<tr><td><label>a</label></td><td>Arrange</td></tr>
|
||||
<tr><td><label>s</label></td><td>Slice</td></tr>
|
||||
<tr><td><label>p</label></td><td>Preview</td></tr>
|
||||
<tr><td><label>x</label></td><td>Export</td></tr>
|
||||
<tr><td></td></tr>
|
||||
<tr><th colspan=2 class="grouphead">View</th></tr>
|
||||
<tr><td><label>h</label></td><td>Home</td></tr>
|
||||
<tr><td><label>t</label></td><td>Top</td></tr>
|
||||
<tr><td><label>l</label></td><td>Left</td></tr>
|
||||
<tr><td><label>r</label></td><td>Right</td></tr>
|
||||
<tr><td><label>b</label></td><td>Back</td></tr>
|
||||
<tr><td><label>z</label></td><td>Reset</td></tr>
|
||||
<tr><td><label>v</label></td><td>Layer</td></tr>
|
||||
<tr><td></td></tr>
|
||||
<tr><td><label>shift</label> wheel</td><td>Change Layer</td></tr>
|
||||
<tr><td><label>meta</label> drag</td><td>Pan</td></tr>
|
||||
<tr><td>right-drag</td><td>Pan</td></tr>
|
||||
<tr><td>3-touch-drag</td><td>Pan</td></tr>
|
||||
<tr><td>left-drag</td><td>Rotate</td></tr>
|
||||
<tr><td>mouse-wheel</td><td>Zoom</td></tr>
|
||||
<tr><td>middle-drag</td><td>Zoom</td></tr>
|
||||
<tr><td>2-touch-pinch</td><td>Zoom</td></tr>
|
||||
</table>
|
||||
<table>
|
||||
<tr><th colspan=2 class="grouphead">Config</th></tr>
|
||||
<tr><td><label>d</label></td><td>Select Device Dialog</td></tr>
|
||||
<tr><td><label>o</label></td><td>Select Tool Dialog</td></tr>
|
||||
<tr><td><label>c</label></td><td>Local Grid Devices</td></tr>
|
||||
<tr><th colspan=2 class="grouphead">Object</th></tr>
|
||||
<tr><td><label>d</label></td><td>Duplicate</td></tr>
|
||||
<tr><td><label>m</label></td><td>Mirror</td></tr>
|
||||
<tr><td><label>w</label></td><td>Wireframe</td></tr>
|
||||
<tr><td><label>delete</label></td><td>Delete</td></tr>
|
||||
<tr><td></td></tr>
|
||||
<tr><td><label>arrow-left</label></td><td>Z Rotate CCW 90°</td></tr>
|
||||
<tr><td><label>arrow-right</label></td><td>Z Rotate CW 90°</td></tr>
|
||||
<tr><td><label>shift-arrow-left</label></td><td>Z Rotate CCW 5°</td></tr>
|
||||
<tr><td><label>shift-arrow-right</label></td><td>Z Rotate CW 5°</td></tr>
|
||||
<tr><td></td></tr>
|
||||
<tr><td><label>arrow-up</label></td><td>X Rotate CCW 90°</td></tr>
|
||||
<tr><td><label>arrow-down</label></td><td>X Rotate CW 90°</td></tr>
|
||||
<tr><td><label>shift-arrow-up</label></td><td>X Rotate CCW 5°</td></tr>
|
||||
<tr><td><label>shift-arrow-down</label></td><td>X Rotate CW 5°</td></tr>
|
||||
<tr><td></td></tr>
|
||||
<tr><td><label>option-arrow-up</label></td><td>Move Up 5mm</td></tr>
|
||||
<tr><td><label>option-arrow-down</label></td><td>Move Down 5mm</td></tr>
|
||||
<tr><td><label>option-arrow-left</label></td><td>Move Left 5mm</td></tr>
|
||||
<tr><td><label>option-arrow-right</label></td><td>Move Right 5mm</td></tr>
|
||||
<tr><td></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
@ -287,6 +287,7 @@ select {
|
|||
}
|
||||
#help a {
|
||||
color: #68d;
|
||||
font-size: smaller;
|
||||
}
|
||||
#help a:hover {
|
||||
color: #46a;
|
||||
|
|
@ -298,6 +299,34 @@ select {
|
|||
button.selected {
|
||||
background-color: white;
|
||||
}
|
||||
#help-left {
|
||||
border-right: 1px dashed #aaa;
|
||||
padding-right: 10px;
|
||||
}
|
||||
#help-right {
|
||||
padding-left: 10px;
|
||||
}
|
||||
#help-body .grouphead {
|
||||
padding: 3px !important;
|
||||
}
|
||||
#help-body table label {
|
||||
font-family: monospace;
|
||||
border-radius: 3px;
|
||||
margin: 5px 1px 5px 1px !important;
|
||||
padding: 1px 3px 1px 3px;
|
||||
background-color: #ddd;
|
||||
}
|
||||
#help-body td {
|
||||
margin: 5px;
|
||||
padding: 2px;
|
||||
font-family: monospace;
|
||||
}
|
||||
#help-body th,td {
|
||||
white-space: nowrap;
|
||||
}
|
||||
#help-body li {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/** tool dialog */
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue