You can convert from .STEP or .IGES to .STL, but you can't go the
other way around. This is why I really really recommend you do all of
your designing in CAD tools instead of meshers. You can always get a
mesh from a solid geometry model, and even run it through on a
makerbot, but when you only have a mesh, you limit the number of tools
the artifact can be made on. :-(
I suggest HeeksCAD for starters.
Neat, thanks. You might have to do it by hand, yeah. :-( I'd like to
hear of your progress or what steps you have to take, etc. You're my
hero!
Page 8 of this looks like they have some automation of defining simplest
(lowest number of tetrahedra used) 3D models from surface points...
http://www.cs.utexas.edu/users/amenta/pubs/sm.pdf
John
This looks like mesh/surface reconstruction. There's a lot of
literature about taking point clouds and creating meshes, I think this
might be part of it.
--
You received this message because you are subscribed to the Google Groups "Open Manufacturing" group.
To post to this group, send email to openmanu...@googlegroups.com.
To unsubscribe from this group, send email to openmanufactur...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/openmanufacturing?hl=en.
Welcome Sam. :-)
> Here's a course syllabus on just this topic (point clouds --> meshes) I
> found the other day: http://www.eecs.berkeley.edu/~jrs/mesh/ Not only are
> there links to fulltext papers, but it's good as a list of algorithms to
> research further.
Neat. But we _do not_ want meshes. That's the whole point.
>
> Neat. But we _do not_ want meshes. That's the whole point.
I had thought you wanted to go from surfaces to 3D meshes.
If you have CAD output of rectangular solids with few rounded of corners
in the form of a water tight 3D mesh to start from, deleting vertices
would give you the nice slabs with holes in them of a CAD generated
object you can cut with a milling machine.
You still don't have circle centers and radius centers.
That would be yet another curve fitting step.
A program that uses 3D views and human input to decide on matchup of
approximate planes and cylindric holes and hole centers
would be the thing for reusing incomplete CAD output
or point clouds from scanners.
I think that describes parametric 3D CAD plus some kind of comparison
indicator for closeness of surfaces -- color would be good.
Then the task would be, "Stretch on this until you get a green
closeness tolerance, then lock that plane and stretch on
the rest of it to get green."
John
>
> Neat. But we _do not_ want meshes. That's the whole point.
I tried googling this word set and got some interesting results.
Rhino3D is proprietary-inexpensive as they go these days.
Google(mesh translate "solid geometry")
===============================================
Mesh To Solid for Rhino is a plug-in for Rhino 2.0 and 3.0. This plug-in
gives Rhino to ability to convert a mesh into a solid.
Home page Buy ($250)
Floating Point Solutions Private Limited info
India, Panaji, L-54, Housing Board Colony
<info at fpsols dot com>
Contact person: Deelip Menezes
Mesh To Solid 1.0 by SYCODE
Mesh To Solid is a software to convert a mesh into a solid. Mesh To Solid is
designed to be extremely user friendly and easy to understand. Its as easy
as opening a mesh file using the Open command and saving it as a solid
using the Save As command.
Mesh To Solid, mesh, polygon mesh
10 / 10 Buy ($195
India, Panaji, S1/116, Nova Cidade Complex
<info at sycode dot com>
Contact person: Deelip Menezes
two prices, two locations, one sales agent?
Maybe he would sell some open source of it.
-----------
Mesh4CAD 2007 - Mesh to solid is an AutoCAD 2007, 2008 and 2009 application to convert AutoCAD drawing entities. It can convert
mesh to solid or solid to mesh and create points, polyface meshes, faces, lines and 3d solids from other drawing entities.
mesh4cad, mesh to solid, solid to mesh
7 / 10 Buy ($99.50)
POLAND, LODZ
<contact at stefisko dot com>
Contact person: contact stefisko.com
And Polish is cheaper than Indian.
Seems to prove this is possible, so what's stopping us?
Me? I've got a roof to fix!
John
The algorithms are hidden somewhere in the literature. The surface
reconstruction papers aren't quite the same thing. Anyway, if you have
any good papers- that are not about surface reconstruction- I'd be
happy to implement the algorithms. I'd rather not pay for proprietary
software.
As you can tell I am kind of burned out in this area because of all
the false-positives.
http://scholar.google.com/scholar?q=IGES+OR+STEP+STL+reconstruction
Sorry I've been so pissy lately. Let me do a brief overview of what I know.
==== Main themes ====
http://en.wikipedia.org/wiki/Solid_modeling
http://en.wikipedia.org/wiki/Constructive_solid_geometry
http://en.wikipedia.org/wiki/Boundary_representation
Solid models are not "surface (mesh) models" or "wireframe" models,
although they can contain (as subcomponents) that type of data.
meshes: http://en.wikipedia.org/wiki/Freeform_surface
==== STL file format ====
solid blah
facet normal n1 n2 n3
outer loop
vertex v11 v12 v13
vertex v21 v22 v23
vertex v31 v32 v33
endloop
endfacet
endsolid blah
It describes a list of triangles that make up the surface. If you look
at the surface as a collection of triangles, it looks like and is
called a "mesh".
==== IGES file format ====
"Here is a very small IGES file from 1987, containing only two POINT
(Type 116), two CIRCULAR ARC (Type 100), and two LINE (Type 110)
entities. It represents a slot, with the points at the centers of the
two half-circles that form the ends of the slot, and the two lines
that form the sides."
http://www.wiz-worx.com/products/misc/slot.shtml
So, there are certain parametric entities. Plus support for other
types of objects.
==== STEP file format ====
example of ISO 10303-21 (which isn't the actual juicy tidbits on modeling)
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(
/* description */ ('A minimal AP214 example with a single part'),
/* implementation_level */ '2;1');
FILE_NAME(
/* name */ 'demo',
/* time_stamp */ '2003-12-27T11:57:53',
/* author */ ('Lothar Klein'),
/* organization */ ('LKSoft'),
/* preprocessor_version */ ' ',
/* originating_system */ 'IDA-STEP',
/* authorization */ ' ');
FILE_SCHEMA (('AUTOMOTIVE_DESIGN { 1 0 10303 214 2 1 1}'));
ENDSEC;
DATA;
#10=ORGANIZATION('O0001','LKSoft','company');
#11=PRODUCT_DEFINITION_CONTEXT('part definition',#12,'manufacturing');
#12=APPLICATION_CONTEXT('mechanical design');
#13=APPLICATION_PROTOCOL_DEFINITION('','automotive_design',2003,#12);
#14=PRODUCT_DEFINITION('0',$,#15,#11);
#15=PRODUCT_DEFINITION_FORMATION('1',$,#16);
#16=PRODUCT('A0001','Test Part 1','',(#18));
#17=PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#16));
#18=PRODUCT_CONTEXT('',#12,'');
#19=APPLIED_ORGANIZATION_ASSIGNMENT(#10,#20,(#16));
#20=ORGANIZATION_ROLE('id owner');
ENDSEC;
END-ISO-10303-21;
http://en.wikipedia.org/wiki/ISO_10303
So, IGES and STEP are commonly considered to be very similar because
they both have these entities or objects.
==== Triangle converters ====
The first type of STL->IGES/STEP converters that I found out about
were the ones that take the triangles and turn them into "solid
triangles" and then did surface stitching to combine all of the
triangles into a single surface. The disadvantages of this are that
there is no parametric CSG basis to any of this. No entities other
than a giant surface.
==== Algorithmic processing using GAs and other search methods ====
I haven't seen more than one or two papers on this concept. Here, you
start off with a blank palette, and have an algorithm try to use CSG
operations and boundary representation primitives to build up and back
to the original object. I tried implementing this once, although maybe
I should give it another shot. The drawback of this sort of algorithm
is that (1) it's untested, and (2) it will take a very long time to
run for any model that is more complicated than, say, a cube.
==== Off my horse ====
Because I'm so pissy I'm probably ignoring something that you're
trying to tell me, John. I don't mean to, really.
One other additional note. IGES/STEP and such can be converted to STL
and that's definitely a common operation.
two ways to go about it...
Option one...
good news is that the OpenSCAD source file is actually only text.
it defines various shapes for CSG.
just need to figure out the basic shapes and sizes and re-assemble
them in Rhino to get a perfect re-creation.
Option two.
this is cheating but...
turning on the mesh points and then snapping various shapes (cylinder,
box, etc)
and GSG the shapes out or together.
(it would create a pretty good replication, but may not be exact since
the mesh point may be off by a bit)
I'll see if I can hack on it later.
-L
> - Bryanhttp://heybryan.org/
> 1 512 203 0507
I guess if OpenSCAD is going to stay around for a while, someone
should buckle down and write an SCAD grammar parser and convert to
BRLCAD's CSG system, and then from there export to STEP or IGES.
An OpenSCAD example provided in the .tar.gz:
// example010.dat generated using octave:
// d = (sin(1:0.2:10)' * cos(1:0.2:10)) * 10;
// save("example010.dat", "d");
intersection()
{
surface(file = "example010.dat",
center = true, convexity = 5);
rotate(45, [0, 0, 1])
surface(file = "example010.dat",
center = true, convexity = 5);
}
> Option two.
> this is cheating but...
> turning on the mesh points and then snapping various shapes (cylinder,
> box, etc)
> and GSG the shapes out or together.
> (it would create a pretty good replication, but may not be exact since
> the mesh point may be off by a bit)
This sounds very manual-labor intensive.
> I'll see if I can hack on it later.
What were your results?
- Bryan