TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

OpenSCAD - The Programmers Solid 3D CAD Modeller

175 点作者 MrsPeaches超过 4 年前

21 条评论

rm445超过 4 年前
I&#x27;ve been using OpenSCAD for personal projects for a couple of months, generally preparing models for 3D FDM printing. I&#x27;m a mechanical engineer by profession and a certified Solidworks professional. I&#x27;d estimate that designing in OpenSCAD - as in, modelling something up and iterating on the design as my understanding of the application develops and prototypes are trialled - takes me four to fives times as long as using commercial parametric 3D CAD that I&#x27;m already familiar with.<p>That&#x27;s not a damning critique, but it is something I&#x27;d advise a friend or colleague who had a project to get on with. I&#x27;m still highly positive about OpenSCAD, because of its openness, its versatility, and the potential for using great programmers&#x27; tools (library code, scripting languages and version control) to make it much more powerful.<p>I&#x27;ve been working with vanilla OpenSCAD, downloading a few functions from people, and building little libraries of helper functions. Getting more familiar all along, figuring out the right way to do things. Some people have got a little further with creating scaffolding for mechanical design - projects like MCAD and OMDL. Of course, OpenSCAD is very versatile and people have many other uses for it. But I think when someone comes along and creates some really great libraries and frameworks on top of OpenSCAD - like LaTeX on top of TeX or Jupyter on top of iPython on top of Python - it would be suitable for any kind of design, competitive with the best GUI-based packages.
评论 #24515755 未加载
评论 #24518491 未加载
riverdroid超过 4 年前
Years ago, I worked at a factory that had thousands of variations of a large, heavy product, some dating back to the 60s. This product has multiple units packed for shipping on pallets and random scrap pieces of wood and then strapped down like some sort of Jenga puzzle.<p>I created a generic OpenSCAD model for the product, and fed in parameters derrived from more than a dozen data sources to generate a model for every variation. Then, took the 90th percentile by production numbers, and overlaid the models to show the boundaries of the variations as one model. That shape was then used to generate stack-able, vacuum-formed trays to hold the product.<p>I had a couple of expensive 3D CAD products at my disposal there, but OpenSCAD was the solution I needed to programatically crank out models. That&#x27;s how my foray into programming started and my career shifted from Manufacturing Engineering to Software. Thanks OpenSCAD team!
pi-rat超过 4 年前
I keep finding myself falling back on OpenSCAD when trying to 3D model after getting frustrated with steep learning curve advanced CAD programs.<p>Even if you don&#x27;t like the OpenSCAD DSL (it got it&#x27;s quirks..) there are usually other options in more familiar languages. I use it via Clojure[1]. It&#x27;s pretty fun, even for small stupid things like coding up a rolling oloid[2].<p>[1]: <a href="https:&#x2F;&#x2F;github.com&#x2F;farrellm&#x2F;scad-clj" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;farrellm&#x2F;scad-clj</a><p>[2]: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=wXE3L8EU5U4" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=wXE3L8EU5U4</a>
评论 #24515539 未加载
评论 #24516717 未加载
评论 #24515307 未加载
Robotbeat超过 4 年前
I love OpenSCAD. I use it for all personal projects in 3D printing at home.<p>I use SolidWorks for work. The contrast between these two is incredibly striking. OpenSCAD is like a bicycle in comparison to an automobile.<p>It would provide literally billions (maybe tens or hundreds of billions) of dollars of value to the world if a few million dollars was spent developing an open source CAD&#x2F;CAM package that was more than a mere bicycle and that wasn&#x27;t terrible (sorry, FreeCAD, but we both know it&#x27;s true). There needs to be an indiegogo campaign or something.
评论 #24520484 未加载
anoonmoose超过 4 年前
It ain&#x27;t perfect, but as a software guy with a 3D printer and almost no mechanical knowledge whatsoever, it has allowed me to make some things I&#x27;m really happy with, including this project I completed fairly recently:<p><a href="https:&#x2F;&#x2F;imgur.com&#x2F;gallery&#x2F;RpY5WEe" rel="nofollow">https:&#x2F;&#x2F;imgur.com&#x2F;gallery&#x2F;RpY5WEe</a>
评论 #24520312 未加载
trepetti超过 4 年前
CadQuery is another good options to do parametric CAD from Python without using a DSL:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;CadQuery&#x2F;cadquery" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;CadQuery&#x2F;cadquery</a>
tomash超过 4 年前
Worth mentioning is also OpenJSCAD, a SCAD-like but with code written in JavaScript and entire environment running in browser: <a href="https:&#x2F;&#x2F;openjscad.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;openjscad.org&#x2F;</a>
评论 #24515390 未加载
willis936超过 4 年前
I think OpenSCAD is great compared to other options I&#x27;ve tried. My primary issue with OpenSCAD is that everything is a set of 4 sided polygons. If I want a sphere with decent resolution I need an absurd number of faces. It&#x27;s slow to process&#x2F;render, makes a large output file, and doesn&#x27;t result in resolution I&#x27;m that happy with.
05超过 4 年前
Before I moved on to Fusion 360, I remember the only sane way to fillet the edges in OpenSCAD was to apply the Minkowski function. Of course, that has to be the absolutely last thing that you do with the model, because the perf after minkowski was truly horrifying, n many cases taking more time than the subsequent 3D printing. Has anything changed since?
评论 #24516021 未加载
at_a_remove超过 4 年前
I have used OpenSCAD for a while. I should write a more thoughtful critique but ... dang, it is often hard to know which approach will just dramatically consume <i>days</i> of CPU time and which will not. I suppose one gets a feel for it eventually.<p>Modeling objects in my head parametrically is a snap.<p>The language is a bit clunky and counter-intuitive but I have gotten used to it. I do not mind its imperative nature; adding and subtracting material is imperative at its heart. Still, it makes more abstract reference points more difficult.<p>I found myself resorting to hacks like moving one object .001 into another object just to make sure they would meld smoothly.<p>The underlying library, last I checked, did not support multi-threading so the aforementioned CPU consumption is especially painful.<p>Exporting to giant .STL files is a little annoying. Sometimes the .STL files are &quot;broken&quot; according to Shapeways, so that is also bothersome.
评论 #24518283 未加载
droro超过 4 年前
When I played around with 3d printers a number of years back, I tried a few free programs such as Blender, FreeCAD and Sketchup, but I found OpenSCAD for modeling and Meshlab for post-processing to be the best pipeline for my needs. OpenSCAD is particularly effective for making replacement parts where precision is more important than aesthetics. However I did find ways to have fun with it, such as building a printable dragon fractal: <a href="https:&#x2F;&#x2F;s3.amazonaws.com&#x2F;www.subalpinetech.com&#x2F;images&#x2F;dragon.png" rel="nofollow">https:&#x2F;&#x2F;s3.amazonaws.com&#x2F;www.subalpinetech.com&#x2F;images&#x2F;dragon...</a> <a href="https:&#x2F;&#x2F;s3.amazonaws.com&#x2F;www.subalpinetech.com&#x2F;images&#x2F;dragon_fractal.scad" rel="nofollow">https:&#x2F;&#x2F;s3.amazonaws.com&#x2F;www.subalpinetech.com&#x2F;images&#x2F;dragon...</a>
maxbond超过 4 年前
OpenSCAD is my favourite programming language. I love the visual feedback, the quirky bugs, and the strict, functional nature of it. Learning OpenSCAD helped me really understand functional programming.<p>The documentation is also great. Once you have a basic grasp, this page is basically all you need.<p><a href="https:&#x2F;&#x2F;www.openscad.org&#x2F;cheatsheet&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.openscad.org&#x2F;cheatsheet&#x2F;</a><p>Edit: Psych, you also need this:<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;List_of_trigonometric_identities" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;List_of_trigonometric_identiti...</a><p>I&#x27;ve neglected this project, but I&#x27;m working on a library to make one&#x27;s reasoning more explicit by providing math utilities.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;MaxBondABE&#x2F;batteries" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;MaxBondABE&#x2F;batteries</a>
tsmarsh超过 4 年前
I started modeling in OpenSCAD. It fit really well with my programmer mentality. The language is small, the concepts simple and you can do some really amazing things with it, far more than might be obvious from the primitives... except filleting and chamfering.<p>The limitations caught up really quickly after that.<p>I echo what the other folks are saying. Its great, but there is no &quot;I knocked this out in 10 minutes in OpenSCAD&quot; for any part that couldn&#x27;t be done in less time in TinkerCAD.<p>Its difficult to imagine how you could fix this elegantly. &quot;Pick a path that follows the intersection of these two solids&quot; is difficult to express in code, and easy to express by clicking on the vectors that represent the path.
iamwil超过 4 年前
If you like openSCAD, you can join the subreddit: <a href="https:&#x2F;&#x2F;www.reddit.com&#x2F;r&#x2F;openscad" rel="nofollow">https:&#x2F;&#x2F;www.reddit.com&#x2F;r&#x2F;openscad</a><p>It&#x27;s been growing steadily in the last 7 to 8 years.
chutsu超过 4 年前
IMO, I think if OpenSCAD somehow had an assembly feature it would really make it more attractive for users who are programmers to switch from the likes of Fusion360 etc.
评论 #24518357 未加载
评论 #24517847 未加载
londons_explore超过 4 年前
Years ago I kept having trouble with openscad - even relatively simple loops would seemingly hang or use massive amounts of memory or give wired errors. Changing some tiny thing in the file would suddenly fix it, only for it to break again with a totally unrelated change.<p>It was as if it uses some stochastic algorithm that sometimes doesn&#x27;t converge...
alpineidyll3超过 4 年前
OpenSCAD is really cool, but sadly very poorly implemented and very very slow. One can bring modern machine to it&#x27;s knees for minutes rendering 10 cylinders in 10 cylinders in 10 cylinders. It&#x27;s basically only appropriate for making a single parametric shape, but it&#x27;s great for that job.
bfieidhbrjr超过 4 年前
If you use openSCAD for 3d printing then you&#x27;ll love hob3l<p>It takes OpenSCAD files and generates meshes vastly faster for complex models.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;moehriegitt&#x2F;hob3l" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;moehriegitt&#x2F;hob3l</a>
评论 #24518667 未加载
throw0101a超过 4 年前
There was a presentation at SCALE 18x earlier this year (pre-shutdown):<p>* <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=G39tJdmLuAI" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=G39tJdmLuAI</a>
bartwe超过 4 年前
Used a whole lot of openscad to design and print my own version of the mpcnc, but recently i switched to the much simpler tinkercad because openscad was just not productive enough.
rspeele超过 4 年前
I do a bunch of random little things on my CNC router -- mostly I make and sell wood handgun grips.<p>I used 4 open-source CAD programs before finally just concluding I need SolidWorks to do serious modeling. But I do still use one of the open source alternatives sometimes.<p>* Blender<p>OK, technically I didn&#x27;t really give this a try for CAD. I had used it in the past for scene modeling and I knew it was extremely powerful for that but a huge pain for doing CAD-type work. Doing CAD with triangle meshes is total madness, CSG is the only way to go.<p>* OpenSCAD<p>I&#x27;ll write the most about this because it&#x27;s the subject of the article. If you come into this from a Blender background, it is awesome: finally I can define my model with a few key parameters, and have the program generate all the other dimensions from there! And CSG makes way more sense than meshes -- I can make a box, then put a hole through that box, then cut a countersink on that hole. Awesome.<p>But all the other parametric CAD programs have that stuff too. You&#x27;ve got constraints in sketches, support for formulas in equations, and templating features like linear patterns. So you can typically get the same level of flexibility where if you want to change your model in a big way, you just edit the few dimensions from which all else is derived. There are cases where you can&#x27;t &quot;program&quot; your model in terms of those 3 common CAD features, while you can in an OpenSCAD file. But they are few and far between.<p>And the way the other programs do it is not only easier to &quot;write&quot; by clicking buttons on a UI, but much, much easier to &quot;read&quot; by viewing the sketch drawing. You can see how a sketch is defined a lot faster than you can understand the OpenSCAD code that does the same thing. Trying to revisit an old OpenSCAD project has a steep learning curve.<p>I really did fall in love with this way of defining models for a short time, but I realized that I was making more work for myself when the models I get out of other parametric CAD tools are equally &quot;programmable&quot; for practical purposes.<p>* FreeCAD<p>First thoughts: Wow! This thing is pretty cool! I found the default controls for moving the view a little &quot;off&quot; based on my past experience but that&#x27;s easy to adjust to. And at first, FreeCAD is really impressive because it brings complex features to the table like &quot;loft&quot;, which is something I really missed from SolidWorks. It&#x27;s almost a must-have for my grip designs.<p>The main problem I had with FreeCAD is that it just breaks too often. When I started making complex designs using those features I loved so much, FreeCAD would get unstable. It&#x27;s very frustrating to work on parts when the editor keeps crashing, sometimes mid-save corrupting the current file. I would have to go back to the drawing board and try another way of defining the same shape in hopes that FreeCAD liked the new way better. Ultimately I just got too annoyed by it. Also, I really wished that I could use guide curves for lofts -- but here I am asking them both to make a complex feature MORE complex AND to fix the existing bugs with it, which is a really tall order.<p>FreeCAD is an amazing achievement for volunteer work but it&#x27;s not useful to me.<p>* SolveSpace<p>With its unconventional looking UI, this seemed like it was going to be one of those idiosyncratic open source programs like Blender or GIMP where you spend half the time just cursing them out for doing things a weird way and making you learn it.<p>On the contrary, once I worked through the first tutorial on their official website, I felt like I had a pretty good understanding of the program. Some stuff like defining new workplanes was still a bit confusing, but I got the hang of it. The shortcut keys are super handy and easy to learn by hovering the buttons. Best of all, SolveSpace is fast and <i>usually</i> stable -- though you can get it to stack overflow, sometimes on save, by turning up the modeling resolution too far.<p>This lacks advanced features like the aforementioned loft, and sadly lacks a quick fillet&#x2F;chamfer tool too. The modeling resolution thing can be a little bit of a pain (OpenSCAD has this problem even worse) coming from a commercial tool like SolidWorks where you don&#x27;t even think about it until it&#x27;s time to export to STL.<p>But overall, SolveSpace is a good example of keeping it simple, constraining the feature set to something manageable and then just doing that <i>well</i>. So I still use it now and then for quick stuff where I know I&#x27;m not going to need flowing 3d surfaces, just boxy extruded things with a few curved edges. It feels a lot more responsive than SolidWorks -- it&#x27;s like using a text editor vs. using MS Word.