HP-Branded 3D Printers coming
-
Gotcha, John. I agree Shapeways has a great selection of materials and an attractive business model, it would be great if they opened an office here in the US...
+1 on the permanent 3D printing thread.
I checked out realize3D...they say they can take straight SU models and can print in full color, but I couldn't find what material they use.
-
@tig said:
http://www.shapeways.com/tutorials/sketchup_3d_printing_export_to_stl_tutorial ?
Accutrans doesn't run on a Mac, and it's still having to go through at least two other apps to get a watertight mesh, I've used VolumeCalculator v2 to show me if it's watertight, but it can take 2-3 hrs on some of my sub-components on there own. I've been waiting for you to finish the RRby.. series before harassing you about possibilities for VC
-
@driven said:
@tig said:
http://www.shapeways.com/tutorials/sketchup_3d_printing_export_to_stl_tutorial ?
Accutrans doesn't run on a Mac, and it's still having to go through at least two other apps to get a watertight mesh, I've used VolumeCalculator v2 to show me if it's watertight, but it can take 2-3 hrs on some of my sub-components on there own. I've been waiting for you to finish the RRby.. series before harassing you about possibilities for VC
A better Volume Calc is still on the list but not in the top ten right now !
-
Can the error detection be split out on it's own for a fast watertight check?
-
@driven said:
Can the error detection be split out on it's own for a fast watertight check?
Probably... why not give me a few ideas in a PM... Outline what you want to do and I might even be able to make a separate Watertightness checker more easily that update VolumeCalc'...
-
@unknownuser said:
What file formats does Shapeways accept?
You can upload STL, VRML2/97, COLLADA or X3D files to Shapeways.John, can't you just use Collada(native SU export since ver 7.1)?
-
Another process to achieve the 'walk around the model' experience can be via the use of Holograms. I have mentioned a company doing this here, http://forums.sketchucation.com/viewtopic.php?f=179&t=25397
Mike
-
@d12dozr said:
@unknownuser said:
What file formats does Shapeways accept?
You can upload STL, VRML2/97, COLLADA or X3D files to Shapeways.John, can't you just use Collada(native SU export since ver 7.1)?
-
@d12dozr said:
@unknownuser said:
What file formats does Shapeways accept?
You can upload STL, VRML2/97, COLLADA or X3D files to Shapeways.John, can't you just use Collada(native SU export since ver 7.1)?
they still have some issues with their .dae translator, but I hope that's sorted by the time I can produce a watertight SU model (without external apps)
the other thing I'm attempting is an accurate SU material to represent printed stainless steels texture
any ideas on how to get a side layered texture not to wrap an organic shape, whilst ignoring the underlying mesh. as if printed?
-
My company has worked very closely with Stratasys itself. In fact my son James wrote what seems to be the world's best export filter directly from SU to stl (Sorry, can't share). The process is still very tedious for models of any complexity. Making sure the model is watertight is bad enough...especially on anything organic (it has to be a single external skin with no internal geometry whatsoever), but having to adapt a model that has been built in SU...not with stl particularly in mind...can be something of a nightmare, as the rationale between the two is often diametrically opposed. Efficient, low-poly curved surfaces in SU have to be subdivided and smoothed...or the 3D model ends up facetted. At the same time, much of the finer detail needs to be exaggerated because of the resolution of the printer.
Here's a shot of a printed model soldier. It looks okay...except for the fact that it's about six inches high and has still lost the end of the gun barrel. It's a print of this one.
I've also got a 13" model of the Chrysler building. It looks very impressive but it took me hours to adapt the SU file. Not only did I have to get rid of all the window frames and the detail on the Art Deco doors and gargoyles, but I had to run two or three (in some cases four) windows together into a single recessed rectangle in order for them to print at all. When scaled up, they needed to be recessed almost 6ft into the building.
The results are impressive...in a novelty kind of way. But I'd think again, for the moment, if you have an idea of simply printing out the equivalent of a SU clay render...only in 3D.
You can pre-check any stl file using the Redeye (sub-division of Stratasys) Discover STL viewer...it's free. This will allow you to see any faults in the model and also determine the minimum size you'll need to print in order not to lose existing essential detail. http://eu.redeyeondemand.com/DiscoverSTL.aspx
-
@alan fraser said:
You can pre-check any stl file using the Redeye (sub-division of Stratasys) Discover STL viewer...it's free. This will allow you to see any faults in the model and also determine the minimum size you'll need to print in order not to lose existing essential detail.
Hi Allen,
thanks for the information, unfortunately this 3D print specific STL analiser tool (like any I've found) doesn't work on a Mac, also with this (like all mesh checkers) you need to go back and forth between any them and SU [or any other free or open-source app.] to carry out the repairs and then check them again.
The original mesh detail is the most critical component to successful printing and I believe with, mindful construction, SU + clever rubies it is possible to produce the quality needed for 1200 DPI wax printing (<320 DPI for most plasters,plastics&metals), but it takes time to move the files in and out, so I'm looking for ways of doing it all in-house SU.
Any chance of talking your son into having a look at the Shapeways API and advise what route would work from within SU (and could made be Mac friendly)?
shapeways_model_upload_interface___20091211_0_9.pdf
If we can knock SU into shape now, it and us will be ahead of the game when the >500ā¬ HP printers arrive... [we have a little time]
Cheers
john
-
Another company dealing with 3d printing:
-
Hi John,
I'll mention that to James next time I see him. Unfortunately, our experience was much like yours...back and forth between SU and the analyzer. There are other analysis programs that claim to do things automatically, but I tested all I could find and the results were not all that good. There was a Ruby (can't remember what it was called now) that claimed to perform the analysis within SU, but from what I could see, all it did was use a Style with a black background and red backface to make spotting errors easier. The STL exporter wasn't as good as the one James wrote.The analyzer produced by MiniMagics didn't seem to be as good as the Redeye one, in that it said that models were valid when they, in fact, weren't...leading to problems down the line. As you say, everything is PC based.
I guess what is really needed in SU is a Ruby that would effectively shrink-wrap any given SU model, sticking to existing vertices but bridging any voids. The tricky part of this is to write a program that can determine which voids you want bridged and which ones you want left alone bacause they're part of the model. Something like producing a spherical image map...only it's a mesh that's wrapped in 3D.
It's certainly the case that if you construct a model in SU that is specifically aimed at STL output, the job is a thousand times easier than adapting one that wasn't. At the moment though, we found that the most useful existing Rubies were Subdivide and Smooth...and anything that can detect and delete line stubs etc.
To those that haven't done this kind of thing yet, I can only emphasise that our experience is that your mesh needs to be 100% perfect. It's analagous to trying to get a supposed coplanar face to fill-in in SU...no fudging allowed...perfect or no cigar. -
Didier has a STL Ruby on his site http://www.crai.archi.fr/rubylibrarydepot/ruby/
Here's an example of the kind of resolution you'd need for a small part. This is actually modelled at 1000:1. It's an engine housing for a model aircraft, the main shaft of which was only 11mm dia at its widest. It was hell on earth tidying up the edges where the screw thread breaks through into the main housing. The smallest line stub or undeleted nano-face/nano-void will cause the entire process to fail.
-
Allen, a Ruby 'spec' is exactly what we need for the resident ruby masters, I know there is interest in 3D printing amongst them, so a clear 'spec' could lead to a wish-list request.
As you say just using a style (e.g.CadSpan style) doesn't do it, I often make a cube and instigate a mock BoolTools operation with the part I'm preparing, this tells me if I've got two solids at least, however it doesn't highlight the problems like VolumeCalculator will.As far as I'm aware there isn't a bomb-proof 3D design>3D print solution available for any platform at any price, I have friends who are buying a Zcorp machine and their having to have Catia 'optimised' for that, so even at the big buck end it's not fully resolved. Their all WRC technicians and can't believe that F1 would even contemplate 'track-side' 3D printed parts for next season, as reported in the press late last year)
just a thought, (that may just highlight my ignorance) can a UV map (effectively a 'shrinkwrap') be repurposed (with surface normals,etc...) as an export model?
Marian, thanks for the link, the PDF re: drawing prep is better written then a lot out there and well worth a look for anyone dipping in for the first time. Although it's basic at least they show SU examples. I'll email the company and see if they can contribute to a ruby 'spec'.
Modelhead it's amasing how much 'hidden even deeper' than 'hidden' geometry that turns up when you really need to get rid of it.
I've been using TT's 'EraseCoplanar' a lot lately and find it better than a couple of older ones I've used in the past, and the .stl converter you can't find is probably called skp_to_dxf.rb (stl is an option), I keep going back to this one for some reason. I'll attach it.
john
skp_to_dxf.rb -
I have a proto-watertightness_tester script growing in my head...
Please correct me if I'm wrong on any aspect or miss anything out...
Q: Will this mesh be a group ? It would make the testing easier to limit the entities set whilst ensuring all entities are tested...
The object's mesh must be only one 'surface' without 'holes' of any sort.
The mesh must be 'manifold' - i.e. it wraps round on itself to form a complete skin without perforations.
All edges in the mesh must have two faces -edge.faces.length==2
- no more, no less.
The mesh cannot have any loose 'flaps' - i.e. single faces,not edge.faces.length==1
The object cannot have any edges with no faces -not edge.faces.length==0
The object cannot contain internal faces - this can be found byedge.faces.length > 2
- but the finding of which face is which gets a bit convoluted...
We copy the group and we edit that as needed...
We look at the group's entities and take the first face we find and get itsall_connected
- if this list isn't equal in length to the group's entities list then we erase the difference [keeping a record of its details for use later] and continue to look at what's left...
We look at all remaining edges and if we get a fail and we erase this 'incorrect' edge [we make a running list of these with their vertex-points and faces as appropriate, for use later] - except those edges sharing multiple faces which are dealt with differently - see below...
Next we test progressive horizontal slices through the manifold - IF anyedge.faces.length > 2
.
We can start the first slice at the max end position found for any edges that failed - this will speed up the testing.
If these slices have any sub-dividing edges -edges.faces !=1
- then they're made by slicing through an inner face. Therefore we take the center-point on any sub-dividing edge and test for that on a face in the manifold faces. If it's a hit we erase that face [we make a running list of the face's edges, vertex-points and face as appropriate, for use later].
We continue with these 'slice' tests [c/c ? as the max height of the 3D-print is ~400mm [?] then we take the slices at the minimum part size of 0.5mm or 800 number proportioned to the groups real height BUT as we jump don when a face goes this should be far fewer] - we repeat the slicing until there are no internal faces left - to avoid excessive slicing we'll re-test the groups edges after each tidy up and only carry on slicing IFedge.faces.length>2
- i.e. there are still some internal faces AND jump down to that edge...
Next we have a 'dialog' Y/N - to erase all non-coplanar edges to simplify the manifold mesh; unless it has to be triangulated in which case we'll erase all non-coplanar then [re]triangulate any faces that aren't ?
If there were no changes made then the the copied group is erased.
However, if there were changes then the copied group with it's deletions/changes is move to the side of the original group and another group is made to the side of that containing a duplicate of the changed edges/faces for your information [these might be colored red?]
A report popup tells you what has been changed...This wouldn't be toooo difficult to code - any takers or anything else to consider ?
Haven't written a line of code yet - just the synopsis. -
TIG,
definitely a taker here, or is that defiantly...I'll go though your outline after dinner, first thoughts... fantastic
couple of things, bed dimensions are in the API PDF I posted above, there are others, but that covers most.
keep in mind however, I for one use meter's at 4 decimal places with units turned off and treat it as mm until final export, even then I'll scale up by 10 or 20 for detailed bits when editing.
some of the printers have build heights of .001mm for wax
are you highlight or repair, I think highlight all errors in one step, then let me fix them is what I'm after, but I'm not sure... may auto healing...
john
-
@tig said:
I have a proto-watertightness_tester script growing in my head...
Please correct me if I'm wrong on any aspect or miss anything out...
Q: Will this mesh be a group ? It would make the testing easier to limit the entities set whilst ensuring all entities are tested...##Grouping is easy, and needed by most the advanced rubies anyway... a 'not group/component' prompt wouldn't hurt. on script missing that I think "what's wrong now"
The object's mesh must be only one 'surface' without 'holes' of any sort.
The mesh must be 'manifold' - i.e. it wraps round on itself to form a complete skin without perforations.##I actually think it's 2 manifold that's required i.e. inner and outer face, because checking and orientating normals is all part of the prep,,, (I'll check my reference)
All edges in the mesh must have two faces -
edge.faces.length==2
- no more, no less.
The mesh cannot have any loose 'flaps' - i.e. single faces,not edge.faces.length==1
The object cannot have any edges with no faces -not edge.faces.length==0
The object cannot contain internal faces - this can be found byedge.faces.length > 2
- but the finding of which face is which gets a bit convoluted..33.
##no internal faces, but I pretty sure back faces are neededWe copy the group and we edit that as needed...
We look at the group's entities and take the first face we find##actually selecting a known GOOD face as a kick off is not a problem (Fredo's jointPP, etc...) and get itsall_connected
- if this list isn't equal in length to the group's entities list then we erase the difference [keeping a record of its details for use later] and continue to look at what's left...
We look at all remaining edges and if we get a fail and we eraseor just highlight, with an except changes option, maybe this 'incorrect' edge [we make a running list of these with their vertex-points and faces as appropriate, for use later] - except those edges sharing multiple faces which are dealt with differently - see below...
Next we test progressive horizontal slices through the manifold - IF anyedge.faces.length > 2
.
We can start the first slice at the max end position found for any edges that failed - this will speed up the testing.
If these slices have any sub-dividing edges -edges.faces !=1
- then they're made by slicing through an inner face. Therefore we take the center-point on any sub-dividing edge and test for that on a face in the manifold faces. If it's a hit we erase that face [we make a running list of the face's edges, vertex-points and face as appropriate, for use later].
We continue with these 'slice' tests [c/c ? as the max height of the 3D-print is ~400mm [?] then we take the slices at the minimum part size of 0.5mm or 800 number proportioned to the groups real height BUT as we jump don when a face goes this should be far fewer] - we repeat the slicing until there are no internal faces left - to avoid excessive slicing we'll re-test the groups edges after each tidy up and only carry on slicing IFedge.faces.length>2
- i.e. there are still some internal faces AND jump down to that edge...I'm not sure if a slice test is required at all, unless you incorporate a volume calc, If I was doing it manually and I knew the all external edges had a maximum of two connected faces, that implies any internal geometry is free floating, so I would do a select all then de-select the external shell, group any remaining and look at it separately, then attach or deleteNext we have a 'dialog' Y/N - to erase all non-coplanar edges to simplify the manifold mesh; unless it has to be triangulated in which case we'll erase all non-coplanar then [re]triangulate any faces that aren't ?the export file needs to be triangulated, either as a skp or on export by SU, personally I'd rather work with the triangles and move points about [That reminds, is there a PointsSlide Ruby??]
%(#000000)[If there were no changes made then the the copied group is erased.
However, if there were changes then the copied group with it's deletions/changes is move to the side of the original group and another group is made to the side of that containing a duplicate of the changed edges/faces for your information [these might be colored red?]]
A report popup tells you what has been changed...I Like your Alice Blue on another Layer myselfThis wouldn't be toooo difficult to code - any takers or anything else to consider ?
Haven't written a line of code yet - just the synopsis. 8-):ugeek:
-
Finally I the found a page I knew must exist,
whose ready to buy a desktop 3D metal printer? http://www.exone.com/eng/technology/x1-prometal/equipment_prometal.html
a bit of background how it works infohttp://www.bathsheba.com/sculpt/process/
and some mesh repair headers for a wishlist MeshRepair script (from a Mac only scientific mesh repairer/viewer)
ātopeScope Mesh repair:
ā¦ Uniquify vertices
ā¦ Flip all faces
ā¦ Orient faces consistently
ā¦ Vertex cluster analysis
ā¦ Remove degenerate or duplicate faces**#Mac users:**this actually a very good free viewer I forgot I had, the pay for version could be handy if you do a lot of file conversion involving point clouds and DXF
ātopeScopeĀ Base features:
ā¢ Read stl, dxf gts, nff, q3o, obj, off, ply, tri, uo
ā¢ Mesh coloring
ā¢ Copy image to clipboard
ā¢ Print image
'topeScope Plus additions:
Write stl,dxf, obj, ply, uo
Mesh information
Mesh morphing
Merge models
http://www.ripplon.com/topeScope/index.html -
Here's my first go at a 'manifold' fixer... http://forums.sketchucation.com/viewtopic.php?p=218691#p218691
Advertisement