teepee changed the topic of #openscad to: OpenSCAD - The Programmers Solid 3D CAD Modeller | This channel is logged! | Website: http://www.openscad.org/ | FAQ: https://goo.gl/pcT7y3 | Request features / report bugs: https://goo.gl/lj0JRI | Tutorial: https://bit.ly/37P6z0B | Books: https://bit.ly/3xlLcQq | FOSDEM 2020: https://bit.ly/35xZGy6 | Logs: https://bit.ly/32MfbH5
califax has quit [Remote host closed the connection]
califax has joined #openscad
<InPhase> Joel: I like one file and different settings in it to select parts, or to show things assembled, just so that I have a nicely contained place to tweak parameters. I usually default render each part in its preferred print orientation, because printability is a big part of how I design things. I always look for (and almost always find) opportunities to print with no supports when I start this at the
<InPhase> design stage. I also pay close attention to the orientation of layers because this significantly impacts part strength.
<InPhase> Joel: This one is a really good example of how I go about that. Thingiverse shows the scad file as the first blue one, which has both pieces in it. Then I produced separate stl's for the two parts by just uncommenting the selected part at the bottom.
<InPhase> Joel: Also, notice how choosing the print orientation impacted the design of both parts. The round wire-wrap has a truncated bottom so that it will come off of the build plate at the appropriate angle. The mounting plate also ends up rounded on one end but angled on the bottom edge, again so that it will print without any layers hanging down. The insert point for the mounting bracket them matches
<InPhase> this geometry, all following from what will print nicely.
<InPhase> Joel: Also the inner part of the wire wrap is positioned such that the bottom touches the build plate, so that this also does not require any bridging.
LordOfBikes has quit [Ping timeout: 264 seconds]
J23k84 has quit [Quit: Client closed]
J23k84 has joined #openscad
J23k84 has quit [Client Quit]
J23k84 has joined #openscad
LordOfBikes has joined #openscad
J23k84 has quit [Quit: Client closed]
J23k84 has joined #openscad
J23k84 has quit [Client Quit]
J23k84 has joined #openscad
J23k64 has joined #openscad
J23k84 has quit [Ping timeout: 245 seconds]
guso78k has joined #openscad
e2k has quit [Ping timeout: 246 seconds]
e2k has joined #openscad
guso78k has quit [Quit: Client closed]
mmu_man has joined #openscad
mmu_man has quit [Ping timeout: 240 seconds]
hyvoid has joined #openscad
invultri has joined #openscad
<invultri> good morning; you might want to add echo([each undef]); //prints: [] to the wiki
mmu_man has joined #openscad
<InPhase> invultri: Not so sure about that. "each undef" sounds like something that was probably largely not thought about, that probably shouldn't be used, and that could be a candidate to become a warning someday if someone thinks hard enough about it comes up with a reason to make it be one.
<invultri> well it does that, as one of the few functions that does not throw a warning if it does something with undef. It got me confused at least.
<InPhase> for (a=undef) { echo(a); } I see this also does not warn.
<invultri> function waWalk(S,C,enter,ix,toggle=true) =
<invultri> curr=S[ix],
<invultri> next=next(S,ix),
<invultri> )
<invultri> let(N=len(S),
<invultri> echo(first(enter),curr,next,toggle,curr[0][0]=="i"&&curr[1][1]>0&&len(search([curr[0]],enter,0,0)[0])==0)
<invultri> curr[0][0]=="i"&&curr[1][1]>0&&len(search([curr[0]],enter,0,0)[0])==0
<invultri> ? undef
<invultri> : next[0][0]=="i" && first(enter)[0][1]==next[0][1]
<invultri> ? [curr]
<InPhase> paste?
<othx> paste is https://www.3dcustomizer.net/paste for .scad files, https://bpa.st for text, https://pasteboard.co/ or https://imgur.com/ for images
<invultri> : curr[0][0]=="i" && toggle==(curr[1][1]<0)
<invultri> ? [each waWalk(C,S,enter,search([["i",curr[0][1]]],C)[0],!toggle)]
<invultri> : [curr, each waWalk(S,C,enter,(ix+1)%N,toggle)]
<invultri> and then you wonder where the undef went
hyvoid has quit [Quit: WeeChat 4.0.4]
<invultri> If care is taken in placement of
<invultri> contours are identical in the x-y plane, no
<invultri> degenerate polygons will be produced by the
<invultri> intersections where the subject and clip polygon
<invultri> gah... wrong place
RichardPotthoff has quit [Read error: Connection reset by peer]
RichardPotthoff has joined #openscad
L29Ah has quit [Ping timeout: 255 seconds]
L29Ah has joined #openscad
guso78k has joined #openscad
invultri has quit [Quit: leaving]
mmu_man has quit [Ping timeout: 244 seconds]
mavavilj has joined #openscad
<mavavilj> anyone think that GPL license is a lackluster?
<mavavilj> I was interested in becoming a dev eventually, but with GPL I find that I would not want to make contributions that are $$$ worthy
<mavavilj> yes, some others are LGPL
<J23k64> GPL is the only ones to be worth to work for
<mavavilj> lets not start a war, but I think GPL will limit the amount of stuff, because I think no-one who could get hired to AutoDesk or something will bother make such additions to free software
<mavavilj> but they could sell a module for it
mmu_man has joined #openscad
<mavavilj> I don't think LGPL prohibits essential parts of GPL, but it allows commercial users to work in tandem
<mavavilj> I'm certain that I won't be using this due to the license
<J23k64> Proprietary software is just a bottleneck for development and security - and everything gets more expensive.
<mavavilj> no but if it's linked in a smart way, then it doesn't change the GPL part at all
<J23k64> And it is the other way around - the very good developer are the ones writing GPL and don't want to get hired by autodesk
<mavavilj> I still don't understand how they're supposed to make their living then
<J23k64> You can get paid for your job but still do the right thing with your private time..  Lots of people doing volunteer work
<J23k64> Also  companies can profit from free software as you get more people to work on it without paying them.
<mavavilj> anyways
<J23k64> There are a lot FOSS that was paid from companies
<mavavilj> I'm also finding conflicting interest between this, FreeCAD and BRL-CAD
<J23k64> besides this is openSCAD  -  why conflicting?
<mavavilj> because they're all CADs, FreeCAD also had an openSCAD workbench in the works
<mavavilj> so might be an interesting compromise
<mavavilj> but as with proprietary CADs, I am not sure if people like to use multiple programs with overlapping features
<mavavilj> the average CAD user will probably be a migrator from Inventor or SolidWorks
<J23k64> If you work with CATIA this is for sure an own universe but you exchange date with others that use AutoCAD
<mavavilj> I was initially very interested in the no-mouse workflow of OpenSCAD
<mavavilj> but the initial impression is that it lags grossly behind FreeCAD
<mavavilj> now just struggling to find how to deal with both of these
<J23k64> It is a question of what you want and how your mind/workflow is trained
<mavavilj> well I want both, the draft table feel of SolidWorks and the programmatic aspect of OpenSCAD
<J23k64> there is a python integration in the works for openSCAD that will make things easier for  some people
<mavavilj> but OpenSCAD initially felt like no-one has used it for anything serious
<mavavilj> like a prototype
<J23k64> I would agree that it lack some functionality for big projects like a plane or a skyscraper
<mavavilj> there's also a mention of using FreeCAD for FEM etc. in https://en.wikipedia.org/wiki/OpenSCAD
<mavavilj> so maybe these are a bit meant to interoperate
<J23k64> FreeCAD is doing a translation of SCAD code afaik not everything works smooth
<mavavilj> maybe that's overkill
<mavavilj> I'd just use an intermediate format
<mavavilj> that both can R/W
<J23k64> openSCAD works differently to other CAD software as it is CSG what you can't find there
<mavavilj> CSG?
peeps[work] has joined #openscad
peeps[win] has joined #openscad
<mavavilj> not sure if that's good or bad vs parametric
<J23k64> that has nothing to do with parametric
<mavavilj> but that's what I thought the others are
peepsalot has quit [Ping timeout: 252 seconds]
<mavavilj> anyways I am currently struggling with whether to focus on this or FreeCAD
<J23k64> so you think openSCAD is not parametric?
<mavavilj> I just wanted to know how it interops with FreeCAD possibly
<J23k64> I would recommend to try both software to understand the differences.  Or Blender which can also be used with scripts
<mavavilj> oh well but then there was the GPL thing too
<J23k64> Why would your workflow need both?
<mavavilj> no but I think one should not need two CAD programs
<mavavilj> but one with modules
<J23k64> openSCAD uses libraries
<J23k64> It seems you didn't really use CAD software
<peeps[win]> mavavilj, what do you want to design?
<mavavilj> no I just want to learn something that has some professional viability
clemens3 has quit [Server closed connection]
<J23k64> It will improve your mind, but you will not find any big company using openSCAD - simply because it is free and companies want to pay for software because the software companies have a good lobby within industry
clemens3 has joined #openscad
<peeps[win]> what profession?
<J23k64> I know that some starting to use KiCAD as alternative
<mavavilj> I also want to contribute to something that's serious alternative
<mavavilj> but I'm really bothered by GPL license
<mavavilj> I was interested in doing FEM models for example, and I am certain I would not GPL good FEM models
<peeps[win]> what? the license of models has nothing to do with the license of the tools used to create them
<mavavilj> no but I mean one cannot link such FEM code
<mavavilj> to GPL code
<mavavilj> but surely one could export to it
<mavavilj> maybe OpenSCAD never meant to serve such facilities?
peeps[win] has quit [Read error: Connection reset by peer]
califax has quit [Remote host closed the connection]
<J23k64> A software company has a sales force -  openSCAD does not  that is the reason.  If a company would pay 50k for feature X - you can be sure that feature would be in openSCAD
califax has joined #openscad
peepsalot has joined #openscad
<mavavilj> no I meant that surely one can only also build a model builder
<mavavilj> and then use something else for FEM etc.
<mavavilj> yes for example
<mavavilj> that's LGPL too
<J23k64> openFOAM is used widely in research
<peepsalot> openscad pretty much does modeling only. you can export to various formats, and depending on that format you can import into whatever FEM,FEA,CAM, etc.
<mavavilj> it even says here
<mavavilj> https://www.gnu.org/licenses/why-not-lgpl.html "After all, there are plenty of other C libraries; using the GPL for ours would have driven proprietary software developers to use another—no problem for them, only for us."
<mavavilj> so there are plenty of other CADs, so I would pick LGPL instead
<peepsalot> there's no point arguing about the license, it is what it is. astronomically slim chance that it would change considering it would likely need agreement from every contributor over the lifetime of the project
<J23k64> If you have contributed  code to a software - why would anyone care what license?
<peepsalot> but i'm not a lawyer
<mavavilj> I think it can work out if it never tries to add any highly technical features, but I'm not an openSCAD dev
<mavavilj> this one has gone through GPL -> LGPL btw http://www.elmerfem.org/blog/license/
<J23k64> they have a mix while the core is still GPL .. newer parts are LGPL
<dTal> OpenFOAM sucks
<peepsalot> you're upset because you want to develop and sell a closed source plugin for CAD software that you've never used but its license doesn't permit that? am I getting the gist? either way this entire conversation is exceedingly tiresome
<dTal> lol
<dTal> --> mavavilj (~mavavilj@88-112-189-242.elisa-laajakaista.fi) has joined #openscad
<dTal> <mavavilj> anyone think that GPL license is a lackluster?
<dTal> might as well be waving a flag with "troll" written on it
<J23k64> at least asking in a channel for a GPL software is a bit strange
<juri_> I do think it is lackluster. it's missing the protections of the AGPL.
<mavavilj> no but there are other similar software that are LGPL
<mavavilj> so I thought whether there's insight to why they're not GPL
<juri_> some projects want different levels of protection from commercial (ab)use, and different freedoms (or restrictions) they want for their users. *shrug*
Guest12 has joined #openscad
<Scopeuk> it's tricky. there are definitely points where if you have say a file format library, having that useable in commercial software can help drive open format adoption
<Scopeuk> that can be preferable to erecting a nice wall between commercial and os software
<teepee> yeah, it's not surprising LGPL at the beginning was spelled out "Library GPL"
<teepee> fwiw, having just googled lackluster, i'd agree GPL is that, but it's not bad either and if there's better options is still debatable
<teepee> in theory I like AGPL, but so far I think it's not proven and it would be hard to enforce all it's ideas
Guest12 has quit [Ping timeout: 245 seconds]
mavavilj has quit [Quit: Client closed]
kintel has joined #openscad
<kintel> Having an OpenSCAD import/export library under a commercially compatible license would be interesting though, in the interest of interoperability.
<teepee> true, plus the SVG import part is already MIT too
<teepee> that said it seems commercial use seems to go even more into exploitation mode instead of useful for everyone
<Joel> any tricks to be able to check measurements in 3d view yet?
<teepee> script based ruler is probably the best option
<teepee> even the bounty did not move an actual measurement tool yet unfortunately
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Joel> :\
<teepee> with a reasonable quick preview, moving a script ruler around via ALT+Cursor keys is not *that* bad
<J23k64> I even have a tool that let you set two points and it will tell the distance.
qeed has joined #openscad
<J23k64> But measure something is quite difficult if you don't have 3D
qeed_ has quit [Ping timeout: 240 seconds]
kintel has joined #openscad
<J23k64> You sure could get a bounding box  but for measurements like thickness you would need to select a face, using the normal until the next face or through until the last face of that object
<kintel> teepee: Fair, I guess the main goal would be for non-commercial actors to help other people get data in and out of commercial tools, or make it possible to interoperate with pure MIT tools. But yeah, if anyone big were to use it, it's pretty unlikely they'd contribute anything back : /
<J23k64> I would assume a meassurement tool needs a render before
<teepee> some limited support for preview seems possible according to the discussion in the github issue, but certainly actual mesh mesurements is easier
mmu_man has quit [Ping timeout: 244 seconds]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<J23k64> a mouse based ruler could work. So you just need a way to move the endpoints with a mouse
<teepee> if you train your fingers to do right mouse click + scroll wheel with the cursor on a number, you almost can :)
mmu_man has joined #openscad
<J23k64> right mouse and scroll doesn't work ..   alt + scroll does
<J23k64> but interestingly     it only counts up independent of the scroll direction
mmu_man has quit [Ping timeout: 240 seconds]
<teepee> ah, right, theres a preferences setting for that :)
<teepee> and it's left mouse button, not right one. it does go up and down for me though
<teepee> same with alt key
<J23k64> version 2023?
<Joel> https://gist.github.com/jjshoe/d91021bbdd0179f9e51cafc947e42604 - my first openscad in a while, thanks for all help everyone, especially teepee
<teepee> J23k64: yes, 2023.09.09
<teepee> Joel: project box!
<teepee> if you want to get rid of the flickering, make the cut-outs bit larger
<teepee> for bigger models that also safe-guards against random floating point errors
<Joel> gotchya
<J23k64> if using left mouse scroll works but with alt only up
<teepee> very strange, that'a on windowsß
<teepee> ?
<J23k64> yeah  :(
<teepee> maybe some different platform behavior
mmu_man has joined #openscad
cart_ has joined #openscad
* InPhase waves at cart_. :)
<InPhase> Joel: You'll probably also want to think about printability there.
<InPhase> Joel: Currently you have significant overhangs that won't print without supports in some awkard hard to remove locations.
<InPhase> Joel: If you flip it upside down, then one easy fix would be to run your screw supports all the way to what will become the new bottom.
<InPhase> Joel: I generally advise modeling in the orientation you think will be optimal for printing, because that helps you to keep a focus on printability during the early design stage.
<cart_> *InPhase wave
<cart_> Ahh Joel is here as well O.o
<InPhase> calendar?
<InPhase> cart_: ^ For your enjoyment and amusement.
<cart_> There is a bunch of very impressive stuff there O.o -> Mandelbrot.scad blew my mind. It might not be too hard to do but to me it seems pretty hard core
<InPhase> Mandelbrot was teepee's.
<cart_> Calendar is an awesome idea btw! Loads to learn form it also
<InPhase> They're all intended to be short self-contained examples, either of things that are just fun, or of trying to elegantly do things that seem like they shouldn't be possible. :)
<Joel> InPhase I didn't have any problems removing supports in a test print
<InPhase> Joel: Okay. :) Personally I hate struggling with supports and always design around them, but if it worked, it worked.
<Joel> InPhase also the slicer make it easy to flip the box :)
<Joel> I suspect I will have to get more fancy for more complex projects I have planned
<Joel> I picked up the new prusa, it's pretty nice
<InPhase> Aye. The only reason I model in the printing orientation is for the way that helps with thinking about the design problems.
<InPhase> Ah, well a prusa printer will ease some of that. They tend to be a pretty high quality.
<Joel> Yeah, I wanted to focus on knocking some projects out, one of which is NOT making a printer reliable :P
<InPhase> That's easier to do now than when I started. :)
<InPhase> My printer is a 7 year old one originally from a kit, and now I think it consists of more plastic parts I designed and printed than of plastic parts from the original kit. But it's about time to pick up one of the newer higher quality ones.
<Joel> My brain is failing on the name of it, but I get why people are swooning over that closed chinese one that prints 3x the speed a prusa does
<cart_> I recently built my Voron2.4 and I have to say I am very happy with it. Although I do also find myself designing around supports which is sometimes an Issue that I just can not solve by design
<Joel> it is frustrating how long things can take to print, a lot of that will just be me probably learning more about optimizing the slicers work
<cart_> InPhase: yea some of the examples are really neatly packed and things that makes my design capability look horribly primitive Lol
<InPhase> cart_: Well, sometimes that's solvable by giving yourself ways to connect multiple printed parts together.
<cart_> I still use things like difference() { cube() cube() } etc . They smash it out in one function with some maths O.o
<peepsalot> bambu labs
<cart_> InPhase: yea I am pretty good with that at this stage. Multiple parts to slide into each other
<cart_> Or make parts that can attach via screws and the little thread thigs you can smelt into the prints. Seem to work pretty well also
L29Ah has left #openscad [#openscad]
<InPhase> cart_: Yeah. One of the earliest things I decided I wanted to do with OpenSCAD was design a paper towel holder for above my laundry room sink: https://www.thingiverse.com/thing:1686846 But I went through a few designs and realized I needed good threads to do it, so that motivated my threading library: https://github.com/rcolyer/threads-scad (which then came out first, initially on thingiverse, may
<othx> InPhase linked to "Quick Change Filament Filter by rcolyer" on thingiverse => 6 IRC mentions
<InPhase> it rest in peace)
<InPhase> Quick change what?
<InPhase> How did I get the wrong link.
<InPhase> Okay, that one was also a threaded design. https://www.thingiverse.com/thing:1692539 This is what I meant to link.
<othx> InPhase linked to "Twist-on Paper Towel Holder with Rod by rcolyer" on thingiverse => 5 IRC mentions
<InPhase> Maybe the quick change one that fell in there by accident is a better example of avoiding supports with a choice of where to put threads though.
<cart_> InPhase: It actually printed the cork screw part O.o
<cart_> Btw there is an awesome OpenScad Library that works out all kinds of gears for you. I find that super useful and use it all the time
<cart_> I am not at my desktop now so I do not have the link for it
<InPhase> https://github.com/chrisspen/gears The last gears library mentioned in this channel.
<cart_> That is the one yea. Used the planetary gear one. Works really well!
teepee_ has joined #openscad
teepee has quit [Ping timeout: 246 seconds]
teepee_ is now known as teepee
<cart_> Anyway I am off for today. Chers and see you tomorrow
<InPhase> Later.
<J23k64> InPhase we have nearly the same Filamentfilter
cart_ has quit [Ping timeout: 245 seconds]
L29Ah has joined #openscad
L29Ah has left #openscad [#openscad]
L29Ah has joined #openscad
L29Ah has left #openscad [#openscad]
<InPhase> J23k64: Did you grab the other old one with the more asymmetric screw-in design?
L29Ah has joined #openscad
<InPhase> Oh. :)
<InPhase> Looks almost like a tiny little grenade.
<InPhase> Why no knurling on the outer part?
<InPhase> Oh... The holder.
<InPhase> I suddenly remember seeing this holder before in your stuff, so I must have seen this filament cleaner as well.
<J23k64> Ü
<linext_> a feature request
<linext_> if "manifest" crashes openscad, have a pop-up next time openscad runs asking to disable it
<linext_> manifold*
<teepee> what crashes?
<linext_> a script to generate a leatherman thumb bar
<linext_> i suppose i could try the new version and install the old versions
<linext_> it's version 2023.03.30
<InPhase> We usually wouldn't have any way of knowing manifold did it. :)
<linext_> isn't there a log which shows whatever cgal was doing?
<teepee> no
<teepee> I don't think there's a reasonable way of deciding that
<gbruno> [github] kintel opened issue #4744 (Remove GLEW support when building against OpenCSG >= 1.6.0) https://github.com/openscad/openscad/issues/4744
<gbruno> [github] kintel edited issue #4744 (Remove GLEW support when building against OpenCSG >= 1.6.0) https://github.com/openscad/openscad/issues/4744
<gbruno> [github] kintel edited issue #4744 (Default to GLAD when building against OpenCSG >= 1.6.0) https://github.com/openscad/openscad/issues/4744