Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. Be respectful, on topic and if you see a problem, Flag it.

If you would like to contact our Community Manager personally, feel free to send a private message or an email.

how to import stl files

13

Answers

  • michael3424michael3424 Member Posts: 606 ✭✭✭
    I would like the ability to import STL files also
    What would you do with the STL files once they are in Onshape?  
  • neobobkrauseneobobkrause Member Posts: 103 EDU
    The design process has changed since Solidworks was first released. Fabrication is no longer limited to milling machines and die extrusion. Tool and die shops are disappearing as prototyping and even production move increasingly toward low cost, rapid turnaround, custom fabrication. AR, VR and interactive VR are almost upon us. Design tools must respond to these shifts or risk becoming irrelevant. Sampled data from 3D scanners, CGI and sculpting tools must be editable, first-class data types in these new tools. Mesh formats such as STL, OBJ, VRML, and soon 3MF are already more important to a vast number of designers than are DWX formats. This shift is accelerating daily.
    - Bob
  • basil_johnbasil_john Member Posts: 1
    As someone who uses 3D printing extensively, I did quite a lot of research on this topic and clearly, there is no direct way to import STL files to OnShape. However; I use a program called InStep which converts STL files to STEP files. Although I get the odd file I might have to do some work on, in 99.9% of cases, the converted file imports without any problems and can then be easily modified.

    The program is inexpensive and can be downloaded directly from the net for 25$ and you can try before you buy. I highly recommend it.
  • neobobkrauseneobobkrause Member Posts: 103 EDU
    edited January 2016
    michael3424 said:
    What would you do with the STL files once they are in Onshape?  
    OnShape must interpret imported mesh data to identify surfaces, edges, vertices and volumes. These properties must be addressable and accessible via direct manipulation.

    What would I do with these objects once they're in OnShape? Everything I can do with "native" data types -- and more. My design tools must support my design intent. -- whether I'm working off a change list for an updated engine block, remixing a sampled door knob, adding flair to a piece of furniture or injecting personality into a mythical 3D creature.

    - Bob
  • neobobkrauseneobobkrause Member Posts: 103 EDU
    edited January 2016
    As someone who uses 3D printing extensively, I did quite a lot of research on this topic and clearly, there is no direct way to import STL files to OnShape.
    I've come to the same conclusion. 

    Flatly: I believe OnShape is using the wrong geometry kernel to address the current and long-term needs of makers, artists and even mechanical engineers. Scoff at my saying this if you must. It’s based on the fact that the BREP engine doesn’t allow users to easily accept and manipulate scanned volumes, imported meshes, nor scale to meet today's real-world requirements, and certainly not those evolving requirements that I just mentioned. I understand that the founders are coming from the Solidworks experience. But it’s my sense as an experienced “maker” that choosing BREP will ultimately relegate OnShape to forever remain a niche product — even if the niche is large enough to survive and even perhaps prosper. 


    - Bob

  • øyvind_kaurstadøyvind_kaurstad Member Posts: 234 ✭✭✭
    @neobobkrause That's a bit discouraging to hear. I haven't really made an effort to dig into geometry engines/kernels and their strengths and weaknesses, but if you are saying that Onshape has positioned themselves (by choice of engine) so that their users will not be able to work/utilize meshes and scanned volumes, then that's a bit disconcerting. Especially as I personally think that some time down the road Onshape will realize that there are a lot of hobbyists and makers out there that are willing to pay money (just not Pro money) for Onshape, and even more so if capabilities to work with imported meshes were added.


  • neobobkrauseneobobkrause Member Posts: 103 EDU
    I'd be interested in hearing OnShape's architects' perspectives on these questions. I'll start another discussion to solicit their input.

    - Bob
  • henry_feldmanhenry_feldman Member Posts: 126 EDU
    I don't need the mesh based objects to be editable (in the sense of MeshMixer type editing) but basic ability to specify scale and maybe place a plane off some specific geometry of the mesh to be able to add/remove objects would be nice. My personal use case in medical device design is taking imaging data (CT, MRI, etc) and doing 3D reconstruction (either surface or volumetric) and using that as a basis for a medical device design. I won't manipulate the mesh inside OS as there are already very sophisticated programs to do this. However once imported I need to be able to give scale to the object (in the case of a CT/MRI since they were imaged in a known space they are already dimensioned precisely) with world coordinates, so need to be translated into local coordinates. I expect them to come in as a part?
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    edited January 2016
    Part of this post is personal opinion and partly a setting of expectations.

    The STL format is a very low level, imprecise (faceted) format consisting of many small triangles that (hopefully) define an enclosed volume.
    The primary use of an STL file is a transportable definition of a solid model for use in 3D printing applications

    A professional designer/engineer has in general very little need to read and reference STL files (the one exception i usually cite is very high end reverse engineering). There are many fine utilities out there for viewing, evaluating and fixing bad STL files

    There are a couple of potential scenarios we can look at.

    First, imagine that it were possible to form a b-rep (solid) model from an STL file. The model will be made of a (potentially) very large number of flat faces - the performance would be significantly degraded over that of the same geometry formed as a b-rep. The representation would also be imprecise due to the faceted nature of the model. That said, once imported, it would be possible to treat and manipulate the body as a native Onshape part. As a reward for actually reading this - there is a partner in the app store (Instep) that can take an STL file and make a STEP (b-rep) file from it for upload to Onshape.

    A second scenario exists where it may be technically possible to read an STL file into Onshape and use it as a reference for solid modeling operations. An example would be to extrude a profile up-to an STL vertex. This provides some utility and we are always looking at tools that may help Onshape users.

    Pursuing the goal of setting expectations, i hope that no one here is looking to import a scanned action figure and re-pose the arms and legs - it's simply not going to happen. That said, there are free tools out there that do do this.

    I hope this sheds some light on some of the technical considerations and hope that the net result is people modeling in Onshape and exporting to STL :)


    Philip Thomas - Onshape
  • michael3424michael3424 Member Posts: 606 ✭✭✭
    I use Onshape to design things to be made by machine tools and, on occasion, 3D-printed.  So far, I've seen very little need to revise an STL file in Onshape, though I do use the STL export often for 3D-printed parts.  As Philip says, there already seem to be a quite a few low cost tools out there for editing STL files and InStep seems like a good approach when that is needed in Onshape.

    Speaking as one user, there are quite a few improvements I'd like to see in Onshape and the ability to revise a native STL file is very far down the list for me.
  • neobobkrauseneobobkrause Member Posts: 103 EDU
    My comments over here address some of these issues.
  • henry_feldmanhenry_feldman Member Posts: 126 EDU
    InStep seems like a good approach when that is needed in Onshape.

    I am less worried about "STL" than meshes in general. InStep puked as my mesh had more than 30,000 polygons (with enormous effort in MeshLab and MeshMixer managed to get the model down to 1.5m which got a lot chunkier than I was expecting). A 30,000poly mesh is pretty small in the scheme of things. That shape above may be more than that alone.
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    Henry - in the spirit of openness, the model above was part of the testing I did to determine just how many faces we would allow to be imported.
    The model above has a shade over 30,000 faces and the performance of other operations (eg cutting a profile through the part) was really starting to degrade. Just to put this into perspective, the most complex b-rep castings i could find maxed out at a few hundred faces. Because of this we decided to cap the number of imported faces to 30,000 until we understood more about what professional users wanted to be able to do.
    I want to stay open minded - convince me that to get your job done that you need to be able to import STL files and what you need to be able to do with them once they are in?
    Philip Thomas - Onshape
  • thomas_kozakthomas_kozak Member Posts: 38 ✭✭
    I've also done some testing of exporting a finished part from OnShape, turning the STL mesh into a STEP file (in FreeCad) and re-importing, all of which worked fine.  However even what OnShape would consider a very simple part (L-bracket with some holes and fillets) is ungainly to work with due to the number of polygons generated by any curved surface. I was able to do some editing (moving faces etc) but the performance definitely takes a hit.

    I have a bit of trouble seeing why anyone would need/want to edit a mesh within OnShape (there are much better tools for that).  Probably there are cases for that, but I think the key is to have tools that make it easy to reverse-engineer a mesh or point cloud.  In other words, the imported part doesn't need to be recognized for operations like filleting, sketch point coincidence, etc.  It would be enough for the part to be visible so that sketches and features can be matched up against the existing dimensions. To my mind the task is to get rid of the messy mesh geometry and convert it over to a feature-based part.  Having edges be recognized for the purpose of taking measurements would be great but IMO not vital.
  • neobobkrauseneobobkrause Member Posts: 103 EDU
    Is there any agreement that we should at least be able to see a mesh together with editable solid models, even if the mesh can't be edited in OnShape?
  • thomas_kozakthomas_kozak Member Posts: 38 ✭✭
    Absolutely agree with that.  Having a visible mesh would be 90% of the way towards reverse engineering it.
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    Ok - I am warming to Thomas and Neo. Yes we are thinking along similar lines - the ability to import stl (and maybe point cloud) and reference the vertices/points in order to create b-rep geom. I like the 90% quote. Let's see what we can do for you . . .    :)

    Philip Thomas - Onshape
  • neobobkrauseneobobkrause Member Posts: 103 EDU
    Thanks Philip. That's exciting.
  • michael3424michael3424 Member Posts: 606 ✭✭✭
    Yes we are thinking along similar lines - the ability to import stl (and maybe point cloud) and reference the vertices/points in order to create b-rep geom. 

    That would fit my infrequent needs for STLs as well - if I need to work with them at all it is to reverse engineer someone else's design when their design is only available as an STL. 
  • _Ðave__Ðave_ Member, Developers Posts: 712 ✭✭✭✭
    edited January 2016
    @philip_thomas as long as you will be looking into this please consider my use case in the mix.

      In a cnc job shop environment (assumed target customers) We generally receive a completed part model from the customer.
    We then create process sheets complete with dimensioned drawings of the part at each operation for the machinist and inspection. These drawings require us to create a model at that stage of the process to be dimensionally correct.
     
     It would be an extreme advantage if we didn't have to create a model for each operation in the process.
    This could be achieved if an stl file could be converted to use in a drawing and get dimensions from. These dimensions can even be from the vertexes of the triangles (which is what Spaceclaim does).

     If Onshape can accomplish this then The cam software (mastercam or any highend cam product) can run a simulation of the operation and export it as an stl. Now we just import it into Onshape create a drawing and done, no modeling required. Of course the drawing would need to mask all the triangles and create graphical part edges as in spaceclaim.

    _Dave_
     
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    Dave - sounds very reasonable. To paraphrase - the ability to read in an STL file into Onshape and measure vertex to vertex to compare a WIP state with model or drawing dimensions.
    Philip Thomas - Onshape
  • _Ðave__Ðave_ Member, Developers Posts: 712 ✭✭✭✭
    @philip_thomas your paraphrase appears to miss that my final objective is to create a drawing using the stl file which was exported from the cam simulation.
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    Dave - i imagine that creating a drawing of the imported STL may be problematic due to the fact that the drawing algorithms work on b-rep edges only and that even if we did, the performance of such a drawing would be very bad. That said, most modern CAM systems allow for the saving of a WIP state to compare with another (including boolean operations) - you may well find that performing these between-manufacturing-step checks in your CAM system is not only better, but available now.
    Philip Thomas - Onshape
  • henry_feldmanhenry_feldman Member Posts: 126 EDU
    Henry - in the spirit of openness, the model above was part of the testing I did to determine just how many faces we would allow to be imported.
    The model above has a shade over 30,000 faces and the performance of other operations (eg cutting a profile through the part) was really starting to degrade. Just to put this into perspective, the most complex b-rep castings i could find maxed out at a few hundred faces. Because of this we decided to cap the number of imported faces to 30,000 until we understood more about what professional users wanted to be able to do.
    I want to stay open minded - convince me that to get your job done that you need to be able to import STL files and what you need to be able to do with them once they are in?

    @philip_thomasLike others I just want to reference it. I don't need to edit or operate against it (like booleans or whatever, I'd use meshlab or meshmixer or maya as needed). I only need to assign a scale (like this bounding box is Xmm * Ymm * Zmm and then make objects against those measurements/faces. My objects are not STLs (although I could of course turn them into a STL) but yeah, polymesh data.
  • teddy_pessagnoteddy_pessagno Member Posts: 38 ✭✭
    My son just showed me how he downloads .stl files off www.thingiverse.com  then takes it into www.tinkercad.com to resize it if he wants to change more then just the scale.

    Don't know if that helps anyone but I thought I would through it out there.

    Teddy_P
  • james_38james_38 Member Posts: 2
    True, but even if it is imported without converting (feature recognition) it can be handy to use so snap a new design to the existing geometry to remake the new part.
  • philip_thomasphilip_thomas Member, Moderator, Onshape Employees, Developers Posts: 1,381
    Yup - referencing an imported STL file (eg 'Extrude up to this vertex) seems to be a useful capability.
    Adding mate connectors to STL vertices would also seem to be handy.
    Philip Thomas - Onshape
  • labernlabern Member Posts: 33 ✭✭✭
    Although stl is currently widely used it would be nice to have the ability to import and edit. I would be more interested in 3MF as it holds a lot more important data then STL, more and more companies are jumping aboard the 3MF band Wagon and would be great if onshape can be one of those.
  • GWS50GWS50 Member Posts: 211 PRO

    Those who have imported a complex STL file into Solidworks will probably recall just how frustrating and unproductive the result can be.
    That was certainly my experience working with STLs from the maker community in GeoMagic Design.  In the end, it was easier to recreate the model from scratch in GMD than to work with the STL file.
    ...unless it's an STL file form scan data.
  • OpenR2OpenR2 OS Professional Posts: 188 ✭✭✭
    Any news on STL import?
Sign In or Register to comment.