123D Make can slice objects and these slices can be cut on a laser cutter and
glued together to form an object. Great, only the slices don't overlap so
the resulting object is not so strong, especially if you are using slices
that lock together to form an object bigger than you can cut in your cutter.
Here's what I need:
http://forum.openscad.org/file/n17332/block_work.png
Would it be possible, appropriate to commission someone here to make a
function to take an object and slices it according to how thick the material
is we are cutting, and according the the size limit of the laser cutter?
This would be really useful to be able to do. What would be a fair price for
this programming? Perhaps I could release it to everyone as I'd imagine it
would be useful for a lot of people? Or maybe it's already out there and I
just need to know the right words to search for?
Just to be clear again, here's the program that does it imperfectly:
www.123dapp.com/make
and some screenshots:
http://forum.openscad.org/file/n17332/google_images.png
As I say, I just want to be able to make something with OVERLAPPING slices
that can form an object bigger than the laser cutter bed strongly. I don't
even mind a bit of excess material as I can trim that off manually
--
View this message in context: http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Is this what you need?
r=50;
dr=4;
module my_object(){
sphere(r);
cube(r);
}
module slice(dr=dr){
for(i=[-r:dr:r]){
translate([0,0,i])linear_extrude(1)translate([0,0,i*r])projection(cut=true)translate([0,0,-i])children();
}
}
slice()my_object();
translate([2.5*r,0,0])my_object();
2016-05-17 14:45 GMT+02:00 Jago Jago25_98@hotmail.com:
123D Make can slice objects and these slices can be cut on a laser cutter
and
glued together to form an object. Great, only the slices don't overlap so
the resulting object is not so strong, especially if you are using slices
that lock together to form an object bigger than you can cut in your
cutter.
Here's what I need:
http://forum.openscad.org/file/n17332/block_work.png
Would it be possible, appropriate to commission someone here to make a
function to take an object and slices it according to how thick the
material
is we are cutting, and according the the size limit of the laser cutter?
This would be really useful to be able to do. What would be a fair price
for
this programming? Perhaps I could release it to everyone as I'd imagine it
would be useful for a lot of people? Or maybe it's already out there and I
just need to know the right words to search for?
Just to be clear again, here's the program that does it imperfectly:
www.123dapp.com/make
and some screenshots:
http://forum.openscad.org/file/n17332/google_images.png
As I say, I just want to be able to make something with OVERLAPPING slices
that can form an object bigger than the laser cutter bed strongly. I don't
even mind a bit of excess material as I can trim that off manually
--
View this message in context:
http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
No, you want to have every slice cut into smaler pieces.
How do you want them labeled to put them together in the right order?
And you need alignment tabs?
There are already soltions for a similar problem on thingiverse: Cut stl's
into smaller pieces to print them on smaller print beds of 3d-printers.
Does someone remember this? I cant find it t the moment.
2016-05-17 23:26 GMT+02:00 Peter Falke stempeldergeschichte@googlemail.com
:
Is this what you need?
r=50;
dr=4;
module my_object(){
sphere(r);
cube(r);
}
module slice(dr=dr){
for(i=[-r:dr:r]){
translate([0,0,i])linear_extrude(1)translate([0,0,i*r])projection(cut=true)translate([0,0,-i])children();
}
}
slice()my_object();
translate([2.5*r,0,0])my_object();
2016-05-17 14:45 GMT+02:00 Jago Jago25_98@hotmail.com:
123D Make can slice objects and these slices can be cut on a laser cutter
and
glued together to form an object. Great, only the slices don't overlap so
the resulting object is not so strong, especially if you are using slices
that lock together to form an object bigger than you can cut in your
cutter.
Here's what I need:
http://forum.openscad.org/file/n17332/block_work.png
Would it be possible, appropriate to commission someone here to make a
function to take an object and slices it according to how thick the
material
is we are cutting, and according the the size limit of the laser cutter?
This would be really useful to be able to do. What would be a fair price
for
this programming? Perhaps I could release it to everyone as I'd imagine it
would be useful for a lot of people? Or maybe it's already out there and I
just need to know the right words to search for?
Just to be clear again, here's the program that does it imperfectly:
www.123dapp.com/make
and some screenshots:
http://forum.openscad.org/file/n17332/google_images.png
As I say, I just want to be able to make something with OVERLAPPING slices
that can form an object bigger than the laser cutter bed strongly. I don't
even mind a bit of excess material as I can trim that off manually
--
View this message in context:
http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Jago,
slicing a 3D object into any pattern of pieces with free (or fixed) sizing
is a task OpenScad is equipped for. What about the data format and object
size you deliver and which formats can your laser cutter consume? OpenScad
can read STL and write DXF and SVG for this purpose.
If that is what you are seeking, a batch file with parametrized OpenScad
commandline calls generating a series of pieces with naming scheme would be
the preferable solution. So, what is your platform (Windows, Linux, MacOS)?
Rudolf
--
View this message in context: http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332p17340.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Also you can render OpenSCAD to STL and slice with Slic3r, which is
free/open source.
It can render to G-code or SVG.
On Tue, May 17, 2016 at 4:02 PM, Parkinbot rudolf@parkinbot.com wrote:
Jago,
slicing a 3D object into any pattern of pieces with free (or fixed) sizing
is a task OpenScad is equipped for. What about the data format and object
size you deliver and which formats can your laser cutter consume? OpenScad
can read STL and write DXF and SVG for this purpose.
If that is what you are seeking, a batch file with parametrized OpenScad
commandline calls generating a series of pieces with naming scheme would be
the preferable solution. So, what is your platform (Windows, Linux, MacOS)?
Rudolf
--
View this message in context: http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332p17340.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Best Regards.
This is unedited.
This message came out of me
via a suboptimal keyboard.
So here is one slice (z=0) tiled:
r=50;
dr=4;
xmax=30;
ymax=20;
module my_object(){
sphere(r);
cube(r);
}
module slice(dr=dr){
for(i=[-r:dr:r]){
translate([0,0,i])linear_extrude(1)translate([0,0,i*r])projection(cut=true)translate([0,0,-i])children();
}
}
//slice()my_object();
//translate([2.5*r,0,0])my_object();
module tile(i=0){
for(iy=[-r:ymax:r]){
for(ix=[-r-xmax:xmax:r+xmax]){
color([.5-(ix)/r/2,1-(.5-(ix)/r/2),.5-(iy)/r/2])
render()intersection(){
translate([0,0,ir])projection(cut=true)translate([0,0,-i])children();
translate([ix+xmax/2iy/ymax,iy])square([xmax,ymax]);
}
}
}
}
tile()my_object();
translate([2.5*r,0,0])projection(cut=true)my_object();
2016-05-18 1:53 GMT+02:00 Tony Godshall togo@of.net:
Also you can render OpenSCAD to STL and slice with Slic3r, which is
free/open source.
It can render to G-code or SVG.
On Tue, May 17, 2016 at 4:02 PM, Parkinbot rudolf@parkinbot.com wrote:
Jago,
slicing a 3D object into any pattern of pieces with free (or fixed)
sizing
is a task OpenScad is equipped for. What about the data format and object
size you deliver and which formats can your laser cutter consume?
OpenScad
can read STL and write DXF and SVG for this purpose.
If that is what you are seeking, a batch file with parametrized OpenScad
commandline calls generating a series of pieces with naming scheme would
be
the preferable solution. So, what is your platform (Windows, Linux,
MacOS)?
Rudolf
--
View this message in context:
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Best Regards.
This is unedited.
This message came out of me
via a suboptimal keyboard.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Almost there. The tiles of one slice should be offset relative to the
adjacent ones.
2016-05-18 16:44 GMT-03:00 Peter Falke stempeldergeschichte@googlemail.com
:
So here is one slice (z=0) tiled:
r=50;
dr=4;
xmax=30;
ymax=20;
module my_object(){
sphere(r);
cube(r);
}
module slice(dr=dr){
for(i=[-r:dr:r]){
translate([0,0,i])linear_extrude(1)translate([0,0,i*r])projection(cut=true)translate([0,0,-i])children();
}
}
//slice()my_object();
//translate([2.5*r,0,0])my_object();
module tile(i=0){
for(iy=[-r:ymax:r]){
for(ix=[-r-xmax:xmax:r+xmax]){
color([.5-(ix)/r/2,1-(.5-(ix)/r/2),.5-(iy)/r/2])
render()intersection(){
translate([0,0,ir])projection(cut=true)translate([0,0,-i])children();
translate([ix+xmax/2iy/ymax,iy])square([xmax,ymax]);
}
}
}
}
tile()my_object();
translate([2.5*r,0,0])projection(cut=true)my_object();
2016-05-18 1:53 GMT+02:00 Tony Godshall togo@of.net:
Also you can render OpenSCAD to STL and slice with Slic3r, which is
free/open source.
It can render to G-code or SVG.
On Tue, May 17, 2016 at 4:02 PM, Parkinbot rudolf@parkinbot.com wrote:
Jago,
slicing a 3D object into any pattern of pieces with free (or fixed)
sizing
is a task OpenScad is equipped for. What about the data format and
object
size you deliver and which formats can your laser cutter consume?
OpenScad
can read STL and write DXF and SVG for this purpose.
If that is what you are seeking, a batch file with parametrized OpenScad
commandline calls generating a series of pieces with naming scheme
would be
the preferable solution. So, what is your platform (Windows, Linux,
MacOS)?
Rudolf
--
View this message in context:
Sent from the OpenSCAD mailing list archive at Nabble.com.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Best Regards.
This is unedited.
This message came out of me
via a suboptimal keyboard.
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
That is what I meant:
http://forum.openscad.org/file/n17345/OffsetTilling.png
r=50;
dr=4;
xmax=30;
ymax=20;
sp = 1; // spacing between tiles in spreading
module my_object(){
sphere(r);
cube(r);
}
module slice(dr=dr){
for(i=[-r:dr:r]){
translate([0,0,i])linear_extrude(1)translate([0,0,i*r])projection(cut=true)translate([0,0,-i])children();
}
}
//slice()my_object();
//translate([2.5*r,0,0])my_object();
module tile(i=0,dx=0,dy=0){
for(iy=[-r-dyymax:ymax:r+dyymax]){
for(ix=[-r-xmax-dxxmax:xmax:r+xmax+dxxmax]){
translate([spix/xmax,spiy/ymax,0])
render()intersection(){
translate([0,0,i*r])projection(cut=true)translate([0,0,-i])children();
translate([ix+xmax/2*iy/ymax-(i%2)xmax3/4,iy-(i%2)*ymax/2])square([xmax,ymax]);
}
}
}
}
// three adjacent layers
tile(0)my_object();
translate([0,0,5]) tile(1) my_object();
translate([0,0,10]) tile(2) my_object();
translate([2.5*r,0,0])projection(cut=true)my_object();
The parameters dx and dy (between 0 and 1) of tile() allow for small tilling
displacement to avoid too small tilling pieces in a layer by layer basis.
--
View this message in context: http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332p17345.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Yes almost,
I'd say, the task is to slice a 3D-object first into slices as Peter
startet. As those slices are laser cut, each one has to be cut into the
cells size of an ordinary grid, with each piece fitting into the cutter's
bed.
Adjacent slices will be glued together. So, second, the grid of every second
slice needs an xy-offset of half of the bed size, as shown in the initial
drawing.
The problem is not the slicing. It is the output of, say, some hundreds of
DXF, one for each piece.
and of course finding a good global grid offset.
So the scad programm itself will be more or less a function taking some
parameters (bed size, material thickness, piece number) and will be called
by some (outer) script/program enumerating the pieces.
Indeed, I'd implement the full cutting logic with some programming language
that offers more interactiveness (and can also query the STL for a bounding
box), and call out to a 'dumb' .SCAD, more or less a three liner, that loads
the STL, intersects it with a cube(bed_x, bed_y, material_z) translated to
the mask position and project that down for DXF export.
Rudolf
--
View this message in context: http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332p17346.html
Sent from the OpenSCAD mailing list archive at Nabble.com.
Well done everyone :-) Thank you Peter and others for writing this code.
Yes this is true Rudolf, that labelling the parts for them to glue together
is another aspect, as is getting all the output into the right lasercutter
bed size in DXF. To this end this Slic3r is a really good head start but I
can't see it can make lager parts from smaller ones. The OpenSCAD code is
also great though and I can see many people using and finding this useful.
It might be better to have this function in Slic3r. hmm
--
View this message in context: http://forum.openscad.org/Slice-object-into-overlapping-slices-for-laser-cutter-like-123D-Make-but-better-tp17332p17347.html
Sent from the OpenSCAD mailing list archive at Nabble.com.