How do I convert STL graphics to a solid model?
Hello every body.
I have the same problem. I have a STL file of a human body, contains million faceted surfaces, and I want to convert this to a unite surface inorder to use in ICEM ANSYS. I try so many things and now I am really tired of it!!
please some one help me to overcome this. how can I convert it to a solid body.
I also try solidwords. but it said: This STL model has two many surfaces.Try to opening with the graphics body option.
what should I do?
thanks in advance for your help.
Try this. Worked fine for me.
Answered with a tutorial: https://grabcad.com/tutorials/how-do-i-convert-stl-graphics-to-a-solid-model
Download FreeCad then import the stl file in the "mesh design" work space. At this point you can clean up your stl using the mesh design tools. Switch to the "part" work space click on the stl file in the left plane then click on the part menu, scroll down to "create part from mesh" then wait. If the mesh is very dense it may take a while. You can use other programs like MeshLab to reduce the mesh density to shorten the conversion time. Export the solid model as an stp file. Solidworks, Design Magic both will read in the file and allow its manipulation.
I know that SW users will angry with me but i should say it :) If you need it for reverse engineering first get rid of SW. Solidworks have very limited capabilities about working with STL mesh files and reverse engineering. If you want rapid solution Inus technologies can be effective(especially XOR series are very effective). However iam agree with STEF that they are not cheap solutions. If you have just single project that contain stl data and geometry isnt too complex,then Cemal's solution is enough. Also its freeware ( I mean MeshLab) Of course there are some other ways by business plan. For example if we consider you need that conversation ( STL => CAD Type) just for actual project. You can post it to some freelance sites as job posting. So Someone can do it for you with low prices. Just idea
There is no way to do it with quality. Best way is redrawing it.
Or you can just try this; (you will probably have empty faces)
Download MeshLab**. Drag drop the stl file through MeshLab, save as the file .dwg
Drag drop the .dwg file to Solidworks. The best way again is redrawing the stl file on solidworks.
If I recall correctly, Solidworks' STL import utility has a maximum of 20k facets. For objects with over 20k facets, I recommend opening the STL in MeshLab as Cemal recommends then exporting or saving as a .dwg file. in Solidworks you must got go file --> open and select the .dwg file extension in the drop down menu. opening will walk you through a wizard. be warned- using this utility to import files into SW is extremely processor and memory intensive. SW will create a plane and sketch for each facet of the dwg file in an attempt to make a part. There are often geometry errors that aren't always fixable within SW. Mine took overnight to import a file with ~40k fascets and i've got an intel i7 with 8Gb ram and a SSD drive. If possible, avoid importing large STL files into SW because it is extremely taxing on your system. SW will crash if you run out of RAM. It can be done, but i recommend using it as a last resort.
Basic considerations for the less experienced with cad files
A well constructed solid model, made up of the least complex geometric entities (lines arcs, surfaces defined by them) is ideal and stable and can be shared without degradation in a solid format (STEP, parasolid, SAT )
IGES and STL files do not contain the original reference geometry to reconstruct the solid and will at the very best result in an approximation.
What happens is the resulting surfaces have many control points (both along and across) that are exponetially more complex and degraded.
As a number of these poorly defined surfaces are used to construct your model process gets time consuming, inaccurate and unstable. As your human model as stl has far to many control points to process efficiently.
A client making breast implants, laser scanned the handmade model with many thousands of points and had a team trying to manipulate the meshes.
I digitized a 9 points around to generate the drive curve, 7 from the nipple down 7 from the nipple up made the along curves and swept a surface that
was the very natural looking and easy to manipulate.
Say the tibia, leg bone, the long section can be lofted with widely spaced simple splines made of a few points from the stl. with slices more closely
spaced as the rate of curvature increases. You have far to much data..
The moral of the story is STL is pretty much last choice for making a solid
and because it is a dense mesh of triangles some means of extracting the least complex geometry to generate a stable workable model will yield professional results.
My first comment is "STL is not a graphics file," it's a 3D data format.
My second comment is "STL is intended to be an output file, not an input file."
Your best bet, if you really want to use STL to do what you're suggesting, is to get access to software designed to convert "point cloud data" into a surface.
What is an STL file? It's basically a file which "slices" a 3D model into a series of very thin 2D "layers." This output is then used to drive a stereolithography (or similar) machine which produces physical prototypes through layer-by-layer deposition.
This file format is not a CAD format, nor is it a graphics format... it is merely the final step before making that physical part.
Each layer consists of a series of line segments, each of which consists of two end vertices. It is possible, with some data-import packages, to load up these vertex points as though they are laser-scanned "point cloud" data. In this case, the 3D software can convert this into an equivalent 3D surface set, which can then be transformed into a solid (if the data is complete).
That's your ONLY option, and it will not give you parametric, history-based models and assemblies. But it's enough to get you sufficient information to rebuild the part with a high degree of accuracy to the original design intent.
I've did somthing like that with a "text data text editor" which convert the coordonate of stl into a acis file (sat) The problem, after, is to find the software able to open it...
Inventor must open the .sat files.
The name of the converter i used is "reaconverter". It is not a freware but you can do 5 transformations.
I haven't done but you could try opening it in Rhyno changing it to nerbs which if you have less than a certain amount it will work then export it as IGES this then can be imported in solid works (but if it works then the file will be very heavy as each part of the mesh is the equiv. of a loft!!!)
It should be possible
The data structures of STL and solid model are so different that only simple STL models can be recognized and converted to a solid model by some feature detection technologies. One PhD student in our lab is working on it (for simple geometry like plain, sphere or fillet). But for some complex STL model like a human body someone mentioned above, it's impossible. If there is such method it would be a big thing in the computer graphics realm : )
Onur Aytekin is right. Solidworks software is very limited in translating STL files. Large amounts of facets in STL file and Soldworks software crashes.
True, STL files can be imported as Graphics body but who wants to spend endless hours creating sketches and solids from sketches of the picture?
It is shame that Solidworks makers are unwilling to make improvements in this area.
I am Solidworks user since year 2000 and I see not much improvement in this software from year to year.
I compared Solidworks vs Inventor.
Inventor is harder to sketch with when creating parts.
Parts library needs to be precisely located within a folder.
Inventor however has better gear design software and FEA simulation then Solidworks.
I work in the film industry and we've solved this issue using geomagic studio it's expensive but the only way to go from a sculpt in zbrush to an iges file ready for engineering in sw. Powershape can also be used but I don't know how effective it is. There's a few freelancers out there who offer to translatefrom stl to iges for a fee. As sw and other cad systems improve so will this issue.
I get it, my mesh files are too big for freecad, that it why it crashes all the time.
I've got an OBJ about 131kb and a stl of 60mb....
Is there anybody here with the expierence to open this size of files with his ''Scan to 3d'' option in Solidworks?
Please let me know or send my a private message
Thanks in advance
Maybe it's toi late but try Autodesk Inventor:
Free student version for 3 years are given
There is a plugin on Autodesk exchange too:
I am working in Solidworks with large scans, .stl imports (via scanto3d) of an ATV. A 4 wheeler kind of thing. There's actually two different/similar ATV models (we actually scanned two different bikes) overlaying each other.
For reference, SW takes about 20Gb of ram to get these fired up, part&assy files are in the 3gb range. SW is sluggish at best with files of this size even on a very fast machine.
So I get these scans into solidworks and they are a mesh. I refine them some with SW's mesh tools. End of the day I've got a big (2-5mil triangles) messy mesh, but lots of 3d points I can attach to.
sadly, this does not work in an assembly which is where I spent 99% of my time designing, I have to actually open each part, create a 3d sketch and drop a point where I want to attach to the mesh. Then back out, save, switch over to the assy and do design attaching to that sketch point.
slow and painful
There's no 'averaging' many points to account for error either. Like taking more than 3 points to define a circle.
I'm hoping someone will have some better tools to work with meshes than is built into solidworks
I have some experience with large complex STL graphics files (e.g. from micro-CT scans and laser topography) and successfully importing them into SOLIDWORKS automatically as a full solid model. Therefore I wanted to try and provide maybe a slightly more complete answer than most of the previous answers.
First of all, SOLIDWORKS needs your imported STL file to have a maximum of around 20 thousand facets if you wish to automatically represent the imported geometry as a solid body (through the method outlined previously by Sudhir Gill above).
If your STL file has more than 20 thousand facets but less than 100 thousand (I believe) then SOLIDWORKS can automatically represent it as surface entities (using the same method but choosing Surface Body in the import options).
My advice is to use a freely available mesh visualisation/analysis/repair/filtering software application such as MeshLab from SourceForge to open your STL file before attempting to import into SOLIDWORKS.
MeshLab will deal with multi-million facet STL files (if you have a reasonable spec PC) and will tell you at the bottom how many facets your STL file has.
MeshLab is also very useful in that it can rapidly cut the number of facets in an STL file to a given target number of facets (e.g. the 20 thousand or less required by SOLIDWORKS) although some geometrical accuracy is of course sacrificed.
If anyone would like some pointers on some of the tools in MeshLab which can be used for this job then please ask.
STL is a bunch of dumb triangles. Thats called "Discrete Geometry"
A CAD file is mathematically perfect Geometry, called "Continuous Geometry".
CAD interpolates points or triangles.
There is no possible conversion, but must be interpolation therefore.
Plenty of ways. Totally depends on the model and the needed output.
Do you need it for claiming the remaining space, does it have to be smooth or as close to the facets as possible? Is it organic or more cubes & cylinders like? Best use a demo download of some sophisticated software. Geomagic WRAP creates a spiderweb style network automatically, good for organic. The same functionality sits hidden in the cheap Geomagic Design (formerly Alibre). For more analytic forms better use a true reverse engineering solution. Spaceclaim is pretty good and affordable with redrawing profiles and easily drag them into the right space. For Solidworks, use the 3DSystems Plugin. Cutting lots of sections into the STL is a good start so your CAD can at least touch something in space rather than importing a dumb STL file and looking at it. ZW3D started also some Reverse Engineering. The big gun is Geomagic Design X which may even export the history tree (good luck), but expensive.
"Converting" is nonsense. That might only give you thousands of planes, killing the performance of any system with no possible downstream process.
You can also use FreeCAD, following this http://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=3&t=253&p=2766&hilit=mesh+to+solid#p2766
SolidWorks imports an STL file as either a Solid Body or a Graphical object. You cannot add features (Cut, extrude, etc...) to a graphics body. when opening an STL file and the STL extension is selected in the open window, click options* and select solid body.
You can find some videos about converting by these links:
Reference model link:
The real question is how to convert an STL file to a modifiable Solid Works file.
The reason for this that has not been mentioned here is sometimes you already have an STL file that was created or downloaded by someone else that you want to modify to change a few things. I have often needed this for 3D printing. I have downloaded files from thingiverse and wanted to make some minor changes to the part.
The person here that said download FreeCad and save the file out as a Step file was on the right track but there is no need to do that. Here is the correct method that works.
1) Open the STL file in Solid Works as a solid body.
To do this select the file type as STL and click the options button and select "SOLID BODY" from the radio buttons in the middle of the dialog.
2) After you open the file select "Save AS" from the file menu. Change the "Save As" file type to "STEP AP214" and save the file.
3) Now open the step file and you will be able to select any surface to sketch on.
When you are done editing simply save the file as a Solid Works part file. I think this is what everyone is really looking for here.