Results 1 to 4 of 4
Thread: .SCAD format to .STL
-
01-09-2014, 09:10 AM #1
- Join Date
- Jan 2014
- Location
- Illinois
- Posts
- 14
.SCAD format to .STL
Anybody know of an open source tool to convert a .SCAD file to a .STL file?
-
01-09-2014, 06:49 PM #2
- Join Date
- Oct 2013
- Posts
- 67
I'm not sure if this helps. Do you have OpenSCAD?
I got thist at: http://en.wikibooks.org/wiki/OpenSCA...ort_and_Export
STL Export
To export your design, select "Export as STL..." from the "Design" menu, then enter a filename in the ensuing dialog box. Don't forget to add the ".stl" extension.Trouble shooting:After compile and render GCAL (F6), you may see that your design is simple: no. That's bad news.See line 8 in the following output from OpenSCAD 2010.02:Parsing design (AST generation)...
Compiling design (CSG Tree generation)...
Compilation finished.
Rendering Polygon Mesh using CGAL...
Number of vertices currently in CGAL cache: 732
Number of objects currently in CGAL cache: 12
Top level object is a 3D object:
Simple: no <*****************
Valid: yes
Vertices: 22
Halfedges: 70
Edges: 35
Halffacets: 32
Facets: 16
Volumes: 2
Total rendering time: 0 hours, 0 minutes, 0 seconds
Rendering finished.
When you try to export this to .STL you will get a message like:Object isn't a valid 2-manifold! Modify your design..
"Manifold" means that it is "water tight" and that there are no holes in the geometry. In a valid 2-manifold each edge must connect exactly two facets. That means that the program must be able to connect a face with an object. E.g. if you use a cube of height 10 to carve out something from a wider cube of height 10, it is not clear to which cube the top or the bottom belongs. So make the small extracting cube a bit "longer" (or "shorter"):difference() {
// original
cube (size = [2,2,2]);
// object that carves out
# translate ([0.5,0.5,-0.5]) {
cube (size = [1,1,3]);
}
}
Here is a more tricky little example taken from the OpenSCAD Forum (retrieved 15:13, 22 March 2010 (UTC)):module example1() {
cube([20, 20, 20]);
translate([-20, -20, 0]) cube([20, 20, 20]);
cube([50, 50, 5], center = true);
}
module example2() {
cube([20.1, 20.1, 20]);
translate([-20, -20, 0]) cube([20.1, 20.1, 20]);
cube([50, 50, 5], center = true);
}
Example1 would render like this:
The example1 module is not a valid 2-manifold because both cubes are sharing one edge. They touch each other but do not intersect.Example2 is a valid 2-manifold because there is an intersection. Now the construct meets the 2-manifold constraint stipulating that each edge must connect exactly two facets.Pieces you are subtracting must extend past the original part. (OpenSCAD Tip: Manifold Space and Time, retrieved 18:40, 22 March 2010 (UTC)).For reference, another situation that causes the design to be non-exportable is when two faces that are each the result of a subtraction touch. Then the error message comes up.difference () {
cube ([20,10,10]);
translate ([10,0,0]) cube (10);
}
difference () {
cube ([20,10,10]);
cube (10);
}
simply touching surfaces is correctly handled.translate ([10,0,0]) cube (10);
cube (10);
-
01-11-2014, 10:02 AM #3
- Join Date
- Jan 2014
- Location
- Illinois
- Posts
- 14
Cool, thanks!! Openscad did the trick for me. I had to plug in some variables for the .SCAD drawing which then rendered the models that I was after.
-
10-18-2014, 05:33 PM #4
- Join Date
- Oct 2014
- Posts
- 1
@sparkdaddychad
http://www.Libre3D.com converts SCAD (Solid CAD) files to STL when uploaded. Then anyone can download the SCAD or STL
Libre3D.com is for Open Source and Free 3D models
Ender 3v2 poor printing quality
10-28-2024, 09:08 AM in Tips, Tricks and Tech Help