mirror of
https://github.com/Doodle3D/Doodle3D-Slicer.git
synced 2024-07-01 08:31:22 +02:00
# Conflicts: # example/save.js # example/viewer.js # jspm.config.js # package.json # src/GCode.js # src/Slicer.js # src/index.js # src/sliceActions/addBrim.js # src/sliceActions/calculateLayersIntersections.js # src/sliceActions/createLines.js # src/sliceActions/detectOpenClosed.js # src/sliceActions/generateInfills.js # src/sliceActions/generateInnerLines.js # src/sliceActions/generateSupport.js # src/sliceActions/intersectionsToShapes.js # src/sliceActions/removePrecision.js # src/sliceActions/slice.js
28 lines
859 B
JavaScript
28 lines
859 B
JavaScript
import 'three.js';
|
|
import { Settings, defaultSettings, Slicer } from 'src/index.js';
|
|
import { saveAs } from 'file-saver';
|
|
|
|
console.log('defaultSettings: ', defaultSettings);
|
|
|
|
const settings = {
|
|
...defaultSettings.base,
|
|
...defaultSettings.material.pla,
|
|
...defaultSettings.printer.ultimaker2go,
|
|
...defaultSettings.quality.high,
|
|
startCode: '',
|
|
endCode: ''
|
|
};
|
|
|
|
const jsonLoader = new THREE.JSONLoader();
|
|
jsonLoader.load('models/airplane.json', async geometry => {
|
|
geometry.applyMatrix(new THREE.Matrix4().makeRotationX(Math.PI / -2));
|
|
geometry.applyMatrix(new THREE.Matrix4().setPosition(new THREE.Vector3(50, 0.1, 50)));
|
|
geometry.computeFaceNormals();
|
|
|
|
const slicer = new Slicer().setGeometry(geometry);
|
|
const gcode = slicer.sliceSync(settings);
|
|
|
|
const file = new File([gcode], 'gcode.gcode', { type: 'text/plain' });
|
|
saveAs(file);
|
|
});
|