blog post on using openscad for 2d machining

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

blog post on using openscad for 2d machining

matthew venn
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net
Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

Felipe Sanches
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566

Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

Peter Uithoven
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 

On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566

Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

matthew venn
I use 3d shapes so I can use them to cut out the right sized holes in the other shapes.
Could I use 2d shapes for that as well? Wouldn't that be confusing for arranging the parts in 3d though?
I'm a beginner with this really.
Matt

On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 


On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net
Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

Peter Uithoven
When you lasercut something everything is 2D, so I don't see why not. Also, somehow these parts are actually quite high (you see this using the #) so there is no problem with height differences when you remove one 2D shape from the other. Of course when you linear_extrude it, it will still have exactly the height you extrude it to. 

See for example how I do export vs assembly3D in this design: 


On Wed, Feb 20, 2013 at 12:22 AM, matthew venn <[hidden email]> wrote:
I use 3d shapes so I can use them to cut out the right sized holes in the other shapes.
Could I use 2d shapes for that as well? Wouldn't that be confusing for arranging the parts in 3d though?
I'm a beginner with this really.
Matt


On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 


On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566

Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

Jim MacArthur
Here's a blog post I wrote on generating lasercutter files from
OpenSCAD designs:
http://www.srimech.blogspot.co.uk/2012/03/automating-layout-of-laser-cut-models.html
(I've posted it before)

My approach is to use OpenSCAD's "Export as CSG" option then process
the resulting file looking for objects that are exactly 3mm or 5mm in
one dimension (those are common thicknesses of acrylic here). I then
use the Perl Clipper library to do the CSG in 2D and the necessary
inset/outset for the laser beam radius. I dumped the code at
https://github.com/jmacarthur/flatten; it is awful and probably won't
work, but I could improve it if there's any interest.

On 19 February 2013 23:31, Peter Uithoven <[hidden email]> wrote:

> When you lasercut something everything is 2D, so I don't see why not. Also,
> somehow these parts are actually quite high (you see this using the #) so
> there is no problem with height differences when you remove one 2D shape
> from the other. Of course when you linear_extrude it, it will still have
> exactly the height you extrude it to.
>
> See for example how I do export vs assembly3D in this design:
> http://www.thingiverse.com/thing:27452
>
>
> On Wed, Feb 20, 2013 at 12:22 AM, matthew venn <[hidden email]> wrote:
>>
>> I use 3d shapes so I can use them to cut out the right sized holes in the
>> other shapes.
>> Could I use 2d shapes for that as well? Wouldn't that be confusing for
>> arranging the parts in 3d though?
>> I'm a beginner with this really.
>> Matt
>>
>>
>> On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
>>>
>>> I'm pretty sure I've shared this already but:
>>> http://fablabamersfoort.nl/nl/book/designing-lasercutting-openscad
>>> ( http://fablabamersfoort.nl/nl/book/openscad )
>>>
>>> Matt, I also see you project() 3D shapes like cube etc. Why not just use
>>> 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I
>>> could also recommend the 2shapes I contributed to MCAD.
>>>
>>> Best regards,
>>> Peter Uithoven
>>>
>>>
>>> On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]>
>>> wrote:
>>>>
>>>> I've been doing heavy work on openscad for 2d lasercutting also!
>>>>
>>>> Check this out:
>>>> https://github.com/Metamaquina/Metamaquina2Beta
>>>>
>>>> happy hacking,
>>>> Felipe Sanches
>>>>
>>>>
>>>> On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]>
>>>> wrote:
>>>>>
>>>>> Thought I'd share this,
>>>>> hope someone finds it useful. Thanks for openscad!
>>>>> http://www.mattvenn.net/2013/02/17/using-openscad-for-2d-machining/
>>>>>
>>>>> Matt
>>>>>
>>>>> --
>>>>> Matthew Venn
>>>>> mattvenn.net
>>>>>
>>>>> _______________________________________________
>>>>> OpenSCAD mailing list
>>>>> [hidden email]
>>>>> http://rocklinux.net/mailman/listinfo/openscad
>>>>> http://openscad.org - https://flattr.com/thing/121566
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> OpenSCAD mailing list
>>>> [hidden email]
>>>> http://rocklinux.net/mailman/listinfo/openscad
>>>> http://openscad.org - https://flattr.com/thing/121566
>>>
>>>
>>>
>>> _______________________________________________
>>> OpenSCAD mailing list
>>> [hidden email]
>>> http://rocklinux.net/mailman/listinfo/openscad
>>> http://openscad.org - https://flattr.com/thing/121566
>>
>>
>>
>>
>> --
>> Matthew Venn
>> mattvenn.net
>>
>> _______________________________________________
>> OpenSCAD mailing list
>> [hidden email]
>> http://rocklinux.net/mailman/listinfo/openscad
>> http://openscad.org - https://flattr.com/thing/121566
>
>
>
> _______________________________________________
> OpenSCAD mailing list
> [hidden email]
> http://rocklinux.net/mailman/listinfo/openscad
> http://openscad.org - https://flattr.com/thing/121566

Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

matthew venn
In reply to this post by Peter Uithoven
Peter I had a look at your file but I couldn't quite work it out.
It seems the assembly3d uses the wood() function to linear extrude parts.
But when you make the parts they are 3d parts anyway. I didn't know you could linear extrude a 3d object.

And I don't see how this solves the 'adjacent faces' problem where if I use one shape to difference a hole out of another that is the right size, I get an adjacent face. So I have 2 objects, or a parameter I can set to increase the tab lengths for the difference, then back to normal for making the cut.

Matt

On 19 February 2013 23:31, Peter Uithoven <[hidden email]> wrote:
When you lasercut something everything is 2D, so I don't see why not. Also, somehow these parts are actually quite high (you see this using the #) so there is no problem with height differences when you remove one 2D shape from the other. Of course when you linear_extrude it, it will still have exactly the height you extrude it to. 

See for example how I do export vs assembly3D in this design: 


On Wed, Feb 20, 2013 at 12:22 AM, matthew venn <[hidden email]> wrote:
I use 3d shapes so I can use them to cut out the right sized holes in the other shapes.
Could I use 2d shapes for that as well? Wouldn't that be confusing for arranging the parts in 3d though?
I'm a beginner with this really.
Matt


On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 


On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net
Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

matthew venn
Jim,
I use a shell script to set an export parameter each time and then run the openscad file, this exports each DXF into a separate file. Not optimal either but very easy! The laser cutter I use you can import multiple DXF files and arrange them how you want.
Matt

On 20 February 2013 09:44, matthew venn <[hidden email]> wrote:
Peter I had a look at your file but I couldn't quite work it out.
It seems the assembly3d uses the wood() function to linear extrude parts.
But when you make the parts they are 3d parts anyway. I didn't know you could linear extrude a 3d object.

And I don't see how this solves the 'adjacent faces' problem where if I use one shape to difference a hole out of another that is the right size, I get an adjacent face. So I have 2 objects, or a parameter I can set to increase the tab lengths for the difference, then back to normal for making the cut.

Matt

On 19 February 2013 23:31, Peter Uithoven <[hidden email]> wrote:
When you lasercut something everything is 2D, so I don't see why not. Also, somehow these parts are actually quite high (you see this using the #) so there is no problem with height differences when you remove one 2D shape from the other. Of course when you linear_extrude it, it will still have exactly the height you extrude it to. 

See for example how I do export vs assembly3D in this design: 


On Wed, Feb 20, 2013 at 12:22 AM, matthew venn <[hidden email]> wrote:
I use 3d shapes so I can use them to cut out the right sized holes in the other shapes.
Could I use 2d shapes for that as well? Wouldn't that be confusing for arranging the parts in 3d though?
I'm a beginner with this really.
Matt


On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 


On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net



--
Matthew Venn
mattvenn.net
Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

Peter Uithoven
In reply to this post by matthew venn
Hi Matthew, 

Yes wood() is just a another module, usually because I lasercut in wood. 
It might look 3D when you Compile (F5), when you do a Compile and render (F6) you'll probably see it's 2D. 

I'm afraid I can't make sense of your other explanation about the adjacent faces problem. You could have a look at my simple hook design, this should be a smaller example. 

Best regards,
Peter


On Wed, Feb 20, 2013 at 10:44 AM, matthew venn <[hidden email]> wrote:
Peter I had a look at your file but I couldn't quite work it out.
It seems the assembly3d uses the wood() function to linear extrude parts.
But when you make the parts they are 3d parts anyway. I didn't know you could linear extrude a 3d object.

And I don't see how this solves the 'adjacent faces' problem where if I use one shape to difference a hole out of another that is the right size, I get an adjacent face. So I have 2 objects, or a parameter I can set to increase the tab lengths for the difference, then back to normal for making the cut.

Matt

On 19 February 2013 23:31, Peter Uithoven <[hidden email]> wrote:
When you lasercut something everything is 2D, so I don't see why not. Also, somehow these parts are actually quite high (you see this using the #) so there is no problem with height differences when you remove one 2D shape from the other. Of course when you linear_extrude it, it will still have exactly the height you extrude it to. 

See for example how I do export vs assembly3D in this design: 


On Wed, Feb 20, 2013 at 12:22 AM, matthew venn <[hidden email]> wrote:
I use 3d shapes so I can use them to cut out the right sized holes in the other shapes.
Could I use 2d shapes for that as well? Wouldn't that be confusing for arranging the parts in 3d though?
I'm a beginner with this really.
Matt


On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 


On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566

Reply | Threaded
Open this post in threaded view
|

Re: blog post on using openscad for 2d machining

matthew venn
Thanks Peter, I'll have a look.
Matt

On 21 February 2013 02:45, Peter Uithoven <[hidden email]> wrote:
Hi Matthew, 

Yes wood() is just a another module, usually because I lasercut in wood. 
It might look 3D when you Compile (F5), when you do a Compile and render (F6) you'll probably see it's 2D. 

I'm afraid I can't make sense of your other explanation about the adjacent faces problem. You could have a look at my simple hook design, this should be a smaller example. 

Best regards,
Peter


On Wed, Feb 20, 2013 at 10:44 AM, matthew venn <[hidden email]> wrote:
Peter I had a look at your file but I couldn't quite work it out.
It seems the assembly3d uses the wood() function to linear extrude parts.
But when you make the parts they are 3d parts anyway. I didn't know you could linear extrude a 3d object.

And I don't see how this solves the 'adjacent faces' problem where if I use one shape to difference a hole out of another that is the right size, I get an adjacent face. So I have 2 objects, or a parameter I can set to increase the tab lengths for the difference, then back to normal for making the cut.

Matt

On 19 February 2013 23:31, Peter Uithoven <[hidden email]> wrote:
When you lasercut something everything is 2D, so I don't see why not. Also, somehow these parts are actually quite high (you see this using the #) so there is no problem with height differences when you remove one 2D shape from the other. Of course when you linear_extrude it, it will still have exactly the height you extrude it to. 

See for example how I do export vs assembly3D in this design: 


On Wed, Feb 20, 2013 at 12:22 AM, matthew venn <[hidden email]> wrote:
I use 3d shapes so I can use them to cut out the right sized holes in the other shapes.
Could I use 2d shapes for that as well? Wouldn't that be confusing for arranging the parts in 3d though?
I'm a beginner with this really.
Matt


On 19 February 2013 22:50, Peter Uithoven <[hidden email]> wrote:
I'm pretty sure I've shared this already but:

Matt, I also see you project() 3D shapes like cube etc. Why not just use 2D shapes? Then you only need to do a linear_extrude for a 3D preview. I could also recommend the 2shapes I contributed to MCAD. 

Best regards, 
Peter Uithoven 


On Tue, Feb 19, 2013 at 5:01 PM, Felipe Sanches <[hidden email]> wrote:
I've been doing heavy work on openscad for 2d lasercutting also!

Check this out:
https://github.com/Metamaquina/Metamaquina2Beta

happy hacking,
Felipe Sanches


On Tue, Feb 19, 2013 at 12:48 PM, matthew venn <[hidden email]> wrote:
Thought I'd share this,
hope someone finds it useful. Thanks for openscad!

Matt

--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566


_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad
http://openscad.org - https://flattr.com/thing/121566



--
Matthew Venn
mattvenn.net