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
mtm has quit [Ping timeout: 252 seconds]
mtm has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
ccox has quit [Ping timeout: 248 seconds]
<gbruno> [github] kintel pushed 2 modifications (Only install needed Debian Boost packages (#5450)) https://github.com/openscad/openscad/commit/b550957ddac62e59428d08efa62e2f44c15a0b95
<gbruno> [github] kintel closed pull request #5450 (Only install needed Debian Boost packages) https://github.com/openscad/openscad/pull/5450
<gbruno> [github] sandofree opened issue #58 (Seemingly failed preview ) https://github.com/openscad/openscad-playground/issues/58
califax has quit [Remote host closed the connection]
califax has joined #openscad
ccox has joined #openscad
<gbruno> [github] sandofree edited issue #58 (Seemingly failed preview ) https://github.com/openscad/openscad-playground/issues/58
mmu_man has quit [Ping timeout: 264 seconds]
yogadude` has quit [Quit: ZNC 1.8.2 - https://znc.in]
yogadude has joined #openscad
muesli has quit [Ping timeout: 245 seconds]
UltimateCodeWarr has joined #openscad
muesli has joined #openscad
<UltimateCodeWarr> So imagine you had a straw up against the inside corner of the shoebox, in the V.     Imagine you wanted to 3d print a short section of that straw attached midway.    How would you taper it so that it 3D printed without support?
<UltimateCodeWarr> Green Straw in background, trying to make some screw sleves. https://imgur.com/a/BpfXFqn
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
aiyion has quit [Remote host closed the connection]
aiyion has joined #openscad
J24k96 has joined #openscad
J24k98 has quit [Ping timeout: 256 seconds]
kintel has joined #openscad
<JordanBrown> So you're printing the box, and you want to add a straw in the corner?
<JordanBrown> My go-to would be to fill in that corner and then taper the bottom at 45° diagonally.
<JordanBrown> I'd have to think a little about the exact fill, but just having the straw touch the two walls doesn't seem like enough.
<JordanBrown> Probably a triangular prism from one touch point to the other, plus a cylinder for the outside of the straw, minus the inside of the straw.
<JordanBrown> Or superglue a piece of straw into place after printing.
<InPhase> 45-degree taper could do it. Although it sure is a lot simpler to bring it all the way down, and design around that.
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
<UltimateCodeWarr> Thanks, will consider it.
hyperair has quit [Ping timeout: 252 seconds]
kintel has quit [Ping timeout: 265 seconds]
UltimateCodeWarr has quit [Quit: Client closed]
J24k96 has quit [Quit: Client closed]
J24k96 has joined #openscad
cart_ has joined #openscad
hyperair has joined #openscad
Reisga244 has quit [Quit: The Lounge - https://thelounge.chat]
Reisga244 has joined #openscad
mmu_man has joined #openscad
Reisga244 has quit [Quit: The Lounge - https://thelounge.chat]
Reisga244 has joined #openscad
<feep> teepee: InPhase: hey just to update you on what's come of it, after another few hours of staring at the code and trying to figure out what I'd have to refactor to make anchors work, I've given up and am reimplementing openscad from scratch instead, with a sdf backend so it can actually do smooth csg.
<feep> which I've wanted to do for a while anyway, so that works out~
<teepee> well, in my view, that's the worst choice, but it's your time, your decision
<feep> I know! I mostly think it's funny.
<feep> and it's christmas soon, so maybe I'll get it to a releasable shape in the holidays. the only big part that's necessary and not implemented currently is the mesh optimizer, it doesn't do adaptive subdivisions yet
<teepee> that's fine, I just think it's a bit sad
<feep> that's fair
<f0lkert> am (re-)working povray animation; want to integrate it in the existing animation-framework
<feep> I'm having fun at least~
<feep> (well, me and the ai who is doing all the actual work, seriously it is ridiculous that this works at all but can't argue with results)
<teepee> feep: that's nice, and I'm sure it will be a great way of learning new things
<teepee> I'm just sad seeing those projects on github years later with last change "7 years ago"
<teepee> f0lkert: oh, so it picks up the parameters given in the animation window?
<teepee> hmm, on reflection, it's not that simple
Reisga244 has quit [Quit: The Lounge - https://thelounge.chat]
<feep> teepee: oh yeah definitely, I know what you mean.
<feep> I haven't worked on my compiler either since I don't really have any projects that could need it atm
<feep> if you're just doing it for yourself, once you run out of interest it dies.
<feep> then again, if nobody else is interested, what can you do
<feep> just roll the dice again.
Reisga244 has joined #openscad
Reisga244 has quit [Read error: Connection reset by peer]
<f0lkert> teepee: yes
<f0lkert> teepee: am now figuring out how to force an update of the this->root_geom in MainWindow
<f0lkert> I thought I just invoke compileCSG(), but root_geom is then still null
<f0lkert> this->cgalworker->start(this->tree); and then wait for the signal?
<feep> unrelated, lol. I was just talking to sonnet like "why *does* this work" and it turns out my meshing algo is manifold mainly by coincidence XD
mtm has quit [Ping timeout: 252 seconds]
mtm has joined #openscad
Reisga244 has joined #openscad
<InPhase> feep: It might also be possible to start smelting rocks and construct your own DIY computers following a more convenient architecture to solve this 3D modeling problem. ;)
<feep> I wish that was possible in code alone XD
<InPhase> Buy a robot and script it to smelt rocks for you.
<feep> too hard ;_; the nice thing about programming is that to a first approximation you can attempt anything and get a project that does something.
<feep> physical systems have a lot more "you failed to achieve anything whatsoever".
<feep> you can't make a very bad cpu (100x slower than a modern cpu) in a week
<f0lkert> any QT experts here? I'm trying to trigger a render and then be notified if it finishes, but the instruction after waitLoop.exec is never reached? QEventLoop waitLoop; connect(this->cgalworker, SIGNAL(CGALWorker::done()), &waitLoop, SLOT(actionRenderDone())); this->cgalworker->start(this->tree); waitLoop.exec();
<feep> do you have a small repro?
<InPhase> feep: thatsthejoke.jpg
<feep> InPhase: I mean, I absolutely would if I could is the thing.
<InPhase> Yes, that's where the joke was. :)
<feep> right, I'm just saying, the joke is also an accurate description of my behavior :D
snaked has quit [Quit: Leaving]
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
adigitoleo has quit [Remote host closed the connection]
athenaeryma has quit [Remote host closed the connection]
athenaeryma has joined #openscad
adigitoleo has joined #openscad
aiyion has quit [Remote host closed the connection]
aiyion has joined #openscad
<muesli> I'm looking for a way to connect these two objects with something like a smooth hull: https://imgur.com/hEZ1NH1
<muesli> Any recommendations?
<InPhase> What do you define a smooth hull as?
<muesli> InPhase: something that doesn't create a straight line between the edges, but a bend curve
<muesli> InPhase: something like that: https://imgur.com/WFVgQAK
<InPhase> muesli: Well there are some infinite number of possible solutions that satisfy that loose description.
<InPhase> Which is enough flexibility that either almost any shape would do, in which case choose a way to make an easy one, or there is some specification not provided, in which case any solution provided would be very unlikely to meet it. :)
J24k96 has quit [Quit: Client closed]
J24k96 has joined #openscad
mmu_man has quit [Ping timeout: 248 seconds]
mmu_man has joined #openscad
Guest58 has joined #openscad
Guest58 has quit [Client Quit]
califax has quit [Ping timeout: 260 seconds]
califax has joined #openscad
Joel has quit [Ping timeout: 248 seconds]
Joel has joined #openscad
mmu_man has quit [Ping timeout: 252 seconds]
mmu_man has joined #openscad
UltimateCodeWarr has joined #openscad
noonien808310429 has quit [Ping timeout: 252 seconds]
J24k96 has quit [Quit: Client closed]
J24k96 has joined #openscad
ed_ has joined #openscad
<ed_> hey - openscad is fantastic. totally in love with it. just a question though, if i have a module, and set var = 1, then have an if statement, how can i change var's value to be visible outside the if statement's scope?
<teepee> you can't - the only way is as direct expression like var = is_true() ? "yes" : "no";
<ed_> modules can't return values either can they? is there an alternative to module that can?
<teepee> they do, they always return geometry
<teepee> functions can return data values, but no geometry (yet)
<J24k96> ed_ you can call the module recursively and so give  the new call a changed parameter
castaway has quit [Ping timeout: 252 seconds]
castaway has joined #openscad
<InPhase> ed_: A very helpful mindset is to think about pre-generating a list of what you want to use with either a list comprehension or a recursive function.
<ed_> thanks both for answering
<InPhase> ed_: And then you can snip values off of that in module calls, perhaps by index.
<ed_> i'll have to give that mindset a bit more thought
<InPhase> ed_: It just might mean flipping your thinking around to a different direction. But it almost always works.
<ed_> do you have an example of doing it that way?
<ed_> i'll go and take a look
<InPhase> ed_: If you want examples of recursive module calling, there are some in the Advent Calendar. My Happy Grass example is the first one I can think of.
<teepee> ahhhhhh, that word ;-)
<teepee> 5 days?
<InPhase> teepee: Yeah, we should get on that.
<teepee> declaring start in January?
<ed_> i've not seen the advent calendar
<InPhase> teepee: I'm actually sick today, and off work for a cold that's making it hard to do things like work. I wonder if I can still model.
<teepee> left side bar
<teepee> I'm still wondering if the way out is a "tutorial edition"
* teepee checks calendar
mtm has quit [Read error: Connection reset by peer]
<InPhase> ed_: Okay, Happy Grass (top middle) on 2022 has a list comprehension in MakeChain making some values, which are then used in the recursive module call in Link. It is a compact example, and might be a little hard to understand though. But it shows a potent technique compactly, if you can avoid getting tripped up by the trig functions that make all the swaying motions.
mtm has joined #openscad
<teepee> 16 lessons + 3 saturdays + 4 sundays
<InPhase> ed_: Now, function recursion example for you...
<InPhase> Or more specifically, a comprehendible function recursion example.
<ed_> sorry - i got distracted by the cookie cutter star
<InPhase> ed_: Context... Are you a programmer who has experience with recursive functions?
<ed_> stack over flow
<ed_> yeah, been programming
<InPhase> ed_: Then here's a pretty simple example of a recursive function: https://bpa.st/D5YQ
<InPhase> ed_: Bezier curve generations are typically most directly defined recursively, so this does the generation accordingly. With a list comprehension for the iteration over points, and a recursion for the Bezier value at each point.
<InPhase> ed_: And then you get a long list of points corresponding to the specified control points.
UltimateCodeWarr has quit [Quit: Client closed]
<ed_> i'll try and think more in this way, openscad is a wonderful tool, coupled with a printer it brings programs to life
<InPhase> There are many Bezier implementations out there, some with slightly better features, but this one is compact and reference quality.
<ed_> tahnks InPhase
<teepee> run ChatGPT code, lose $2500, that's the new world of programming
<InPhase> teepee: lol. In the grand scheme of things, that's probably a cheap price for that important lesson.
<teepee> true, there was potential for even more harm easily
J24k96 has quit [Quit: Client closed]
J24k96 has joined #openscad
<J24k96> never trust AI
<feep> never trust anyone
<feep> always remember: you run the code on your machine with your credit card.
cart_ has quit [Ping timeout: 248 seconds]
mmu_man has quit [Ping timeout: 255 seconds]
<gbruno> [github] dhyananbho opened issue #5451 (The OpenSCAD editors Find and Replace sometimes distinguishes between upper and lower case, sometimes not.) https://github.com/openscad/openscad/issues/5451
mmu_man has joined #openscad
mmu_man has quit [Ping timeout: 265 seconds]
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
mmu_man has joined #openscad
mmu_man has quit [Ping timeout: 248 seconds]
mmu_man has joined #openscad
califax has quit [Remote host closed the connection]
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
califax has joined #openscad
ali12341 has quit [Remote host closed the connection]
ali1234 has joined #openscad
noonien808310429 has joined #openscad
mmu_man has quit [Ping timeout: 265 seconds]
mmu_man has joined #openscad
noonien808310429 has quit [Ping timeout: 248 seconds]
UltimateCodeWarr has joined #openscad