mirror of
https://github.com/Doodle3D/Doodle3D-Slicer.git
synced 2024-11-19 12:27:56 +01:00
made diagonal infill
This commit is contained in:
parent
6d69a9f306
commit
57f7ee62bc
2
.gitignore
vendored
2
.gitignore
vendored
@ -23,3 +23,5 @@ test.html
|
|||||||
print_manager.html
|
print_manager.html
|
||||||
|
|
||||||
testdata.json
|
testdata.json
|
||||||
|
|
||||||
|
test2.html
|
||||||
|
@ -23,12 +23,18 @@ D3D.Slicer.prototype.setMesh = function (geometry, matrix) {
|
|||||||
if (geometry instanceof THREE.BufferGeometry) {
|
if (geometry instanceof THREE.BufferGeometry) {
|
||||||
geometry = new THREE.Geometry().fromBufferGeometry(geometry);
|
geometry = new THREE.Geometry().fromBufferGeometry(geometry);
|
||||||
}
|
}
|
||||||
else {
|
else if (geometry instanceof THREE.Geometry) {
|
||||||
geometry = geometry.clone();
|
geometry = geometry.clone();
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
console.warn("Geometry is not an instance of BufferGeometry or Geometry");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
//apply mesh matrix on geometry;
|
//apply mesh matrix on geometry;
|
||||||
geometry.applyMatrix(matrix);
|
if (matrix instanceof THREE.Matrix4) {
|
||||||
|
geometry.applyMatrix(matrix);
|
||||||
|
}
|
||||||
geometry.computeBoundingBox();
|
geometry.computeBoundingBox();
|
||||||
geometry.computeFaceNormals();
|
geometry.computeFaceNormals();
|
||||||
geometry.mergeVertices();
|
geometry.mergeVertices();
|
||||||
@ -247,7 +253,7 @@ D3D.Slicer.prototype.slice = function (layerHeight, height) {
|
|||||||
|
|
||||||
slices.push(slice);
|
slices.push(slice);
|
||||||
|
|
||||||
if (layer === 222) {
|
if (layer === 218) {
|
||||||
testData.push({
|
testData.push({
|
||||||
testPoints: testPoints,
|
testPoints: testPoints,
|
||||||
pathData: slice.parts
|
pathData: slice.parts
|
||||||
@ -448,25 +454,28 @@ D3D.Slicer.prototype.getFillTemplate = function (bounds, size, even, uneven) {
|
|||||||
|
|
||||||
var paths = new D3D.Paths([], false);
|
var paths = new D3D.Paths([], false);
|
||||||
|
|
||||||
if (even) {
|
var left = Math.floor(bounds.left / size) * size;
|
||||||
var left = Math.floor(bounds.left / size) * size;
|
var right = Math.ceil(bounds.right / size) * size;
|
||||||
var right = Math.ceil(bounds.right / size) * size;
|
var top = Math.floor(bounds.top / size) * size;
|
||||||
|
var bottom = Math.floor(bounds.bottom / size) * size;
|
||||||
|
|
||||||
for (var length = left; length <= right; length += size) {
|
var width = right - left;
|
||||||
|
|
||||||
|
if (even) {
|
||||||
|
|
||||||
|
for (var y = top; y <= bottom + width; y += size) {
|
||||||
paths.push([
|
paths.push([
|
||||||
{X: length, Y: bounds.top},
|
{X: left, Y: y},
|
||||||
{X: length, Y: bounds.bottom}
|
{X: right, Y: y - width}
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (uneven) {
|
if (uneven) {
|
||||||
var top = Math.floor(bounds.top / size) * size;
|
|
||||||
var bottom = Math.floor(bounds.bottom / size) * size;
|
|
||||||
|
|
||||||
for (var length = top; length <= bottom; length += size) {
|
for (var y = top - width; y <= bottom; y += size) {
|
||||||
paths.push([
|
paths.push([
|
||||||
{X: bounds.left, Y: length},
|
{X: left, Y: y},
|
||||||
{X: bounds.right, Y: length}
|
{X: right, Y: y + width}
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,7 +47,7 @@ function init () {
|
|||||||
var scene = createScene();
|
var scene = createScene();
|
||||||
|
|
||||||
var localIp = location.hash.substring(1);
|
var localIp = location.hash.substring(1);
|
||||||
doodleBox = new D3D.Box(localIp).init();
|
/*doodleBox = new D3D.Box(localIp).init();
|
||||||
doodleBox.onupdate = function (data) {
|
doodleBox.onupdate = function (data) {
|
||||||
document.getElementById('state').innerHTML = data.state;
|
document.getElementById('state').innerHTML = data.state;
|
||||||
document.getElementById('bed_temp').innerHTML = data.bed;
|
document.getElementById('bed_temp').innerHTML = data.bed;
|
||||||
@ -58,7 +58,7 @@ function init () {
|
|||||||
document.getElementById('buffered_lines').innerHTML = data.buffered_lines;
|
document.getElementById('buffered_lines').innerHTML = data.buffered_lines;
|
||||||
document.getElementById('total_lines').innerHTML = data.total_lines;
|
document.getElementById('total_lines').innerHTML = data.total_lines;
|
||||||
document.getElementById('print_batches').innerHTML = doodleBox.printBatches.length;
|
document.getElementById('print_batches').innerHTML = doodleBox.printBatches.length;
|
||||||
};
|
};*/
|
||||||
|
|
||||||
printer = new D3D.Printer().updateConfig(USER_SETTINGS).updateConfig(PRINTER_SETTINGS['ultimaker2go']);
|
printer = new D3D.Printer().updateConfig(USER_SETTINGS).updateConfig(PRINTER_SETTINGS['ultimaker2go']);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user