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
<gbruno> [github] thehans synchronize pull request #4067 (Use cmake for install and packaging across more platforms) https://github.com/openscad/openscad/pull/4067
tcurdt has quit [Read error: Software caused connection abort]
tcurdt has joined #openscad
J1A8427 has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
J1A84 has quit [Ping timeout: 260 seconds]
teepee has joined #openscad
Guest48 has joined #openscad
Guest48 has quit [Quit: Ping timeout (120 seconds)]
<linext> is the list of experimental command-line arguments on https://ochafik.com/openscad/ a complete set?
<linext> fast-csgfast, fast-csgfast-csg-trust-corefinement, ...
<linext> also, a question...
<linext> if it possible to do something like > openscad source.scad -p output.param -P Default -o output.scad
<linext> where the detected parameters would be used to replace the variables in the source .scad file
<linext> the answer to my first question is in Preferences -> Features
<InPhase> linext: openscad --help under "--enable" shoudl list them all.
<InPhase> linext: If any are missing, that's a bug.
<linext> have you ever used textmetrics() or fontmetrics()
<linext> might be useful for making a customizable pen
<InPhase> I bet JordanBrown[m] has.
<linext> with text on it
<InPhase> (Because he wrote it.)
<InPhase> I've so far only needed text metrics before it was written. Irony.
<linext> i think what i'm going to start doing is browsing thingiverse with the newest things, and rewrite any customizers i see
<linext> the desk name plate is pretty easy
<InPhase> Are you trying to build up a pile of useful content?
<linext> a library
<linext> a web ide, library of customizers, rendering system peer-to-peer
califax has quit [Ping timeout: 255 seconds]
<InPhase> linext: I had 184 derivatives of this, with 59 posted publicly as remixes: https://www.thingiverse.com/thing:1689741 People sure liked customizing it, although pretty much all they ever change is the text.
<othx> InPhase linked to "Ergonomic Hair Comb With Personalized Text by rcolyer" on thingiverse => 4 IRC mentions
<InPhase> Perhaps the simplicity of what they can change is the source of its popularity.
<InPhase> The second most popular of mine for customization is the baby version of the same, with 125 derivatives and 46 posted remixes: https://www.thingiverse.com/thing:3025280
<othx> InPhase linked to "Baby Hair Comb with Personalized Text by rcolyer" on thingiverse => 1 IRC mentions
<InPhase> There's some message in that about human behavior. :)
<InPhase> https://www.thingiverse.com/thing:2191927 This one had 65 derivatives, with people customizing it to different holes in their walls.
<othx> InPhase linked to "Customizable Drywall Anchors, Auger-Style by rcolyer" on thingiverse => 3 IRC mentions
califax has joined #openscad
<InPhase> And I tell you, some people out there are making some really big anchors...
<linext> here are a few that were made from my customizers on thingiverse: https://www.thingiverse.com/thing:739927/remixes
<othx> linext linked to "Customizable Archimedes' Spiral by jesse" on thingiverse => 1 IRC mentions
<othx> linext linked to "Customizable Logarithmic Spiral by jesse" on thingiverse => 1 IRC mentions
<InPhase> People mostly like the ones with really obvious stuff to tweak. My upright battery holder where you just change how many batteries it will fit got a lot of customization too.
<othx> linext linked to "Customizable Fermat spiral by jesse" on thingiverse => 1 IRC mentions
<linext> your comb takes forever to render on wasm
<InPhase> :) It looks like most of the people are just playing with spirals there and enjoying the view.
rawgreaze has quit [Quit: ZNC 1.8.2 - https://znc.in]
<linext> so far more than 200 seconds
<InPhase> Yeah, that comb is fairly heavy duty.
<linext> i'll let it run overnight and see
<InPhase> It was 25 minutes when I made it, but computers got a little faster since then...
rawgreaze has joined #openscad
<InPhase> I could probably make a much faster version these days, but I lost interest in combs I guess.
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
<InPhase> Also there's the option of importing the text-free stl and having the customizer only put on the text. That's all people seem to customize anyway.
fling has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
ur5us has quit [Ping timeout: 252 seconds]
LordOfBikes has quit [Ping timeout: 252 seconds]
LordOfBikes has joined #openscad
epony has quit [Ping timeout: 246 seconds]
fling has quit [Remote host closed the connection]
fling has joined #openscad
aiyion1 has quit [Ping timeout: 255 seconds]
aiyion1 has joined #openscad
epony has joined #openscad
Junxter has joined #openscad
epony has quit [Remote host closed the connection]
epony has joined #openscad
<JordanBrown[m]> linext Perversely, I am in much the same situation as InPhase: I had a project where text metrics would have been useful, which prompted me to do the work… and after that, as it happens, I haven’t needed it since. But I am familiar with it if you have questions.
<InPhase> lol
snaked has quit [Ping timeout: 252 seconds]
snaked has joined #openscad
gunnbr has quit [Read error: Connection reset by peer]
<J1A8427> it get really useful when you use different fonts  but you also can use resize to make something fit
lastrodamo has joined #openscad
KimK_ has joined #openscad
KimK has quit [Ping timeout: 246 seconds]
teepee has quit [Ping timeout: 255 seconds]
teepee has joined #openscad
qeed_ has joined #openscad
qeed has quit [Ping timeout: 252 seconds]
<gbruno> [github] minad opened issue #4413 (Export image from precomputed geometry) https://github.com/openscad/openscad/issues/4413
<gbruno> [github] t-paul opened pull request #4414 (Emacs SCAD mode moved to separate repository.) https://github.com/openscad/openscad/pull/4414
_xxoxx has joined #openscad
qeed__ has joined #openscad
qeed_ has quit [Ping timeout: 252 seconds]
Junxter has quit [Ping timeout: 268 seconds]
J1A8427 has quit [Quit: Client closed]
J1A8427 has joined #openscad
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
epony has quit [Remote host closed the connection]
epony has joined #openscad
J1A8427 has quit [Quit: Client closed]
J1A8427 has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
fling has quit [Remote host closed the connection]
califax has quit [Remote host closed the connection]
aiyion1 has quit [Remote host closed the connection]
teepee has quit [Remote host closed the connection]
califax has joined #openscad
aiyion1 has joined #openscad
teepee has joined #openscad
fling has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee has joined #openscad
<J1A8427> 11.11.22    19 days left for SCADvent!
<teepee> aaaaaaah....
califax has quit [Ping timeout: 255 seconds]
califax has joined #openscad
teepee has quit [Remote host closed the connection]
teepee_ has joined #openscad
teepee_ is now known as teepee
Guest15 has joined #openscad
Guest15 has quit [Client Quit]
teepee has quit [Ping timeout: 255 seconds]
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
teepee has joined #openscad
TheAssassin has quit [Remote host closed the connection]
TheAssassin 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
fling has quit [Remote host closed the connection]
fling has joined #openscad
califax has quit [Remote host closed the connection]
califax has joined #openscad
aiyion1 has quit [Remote host closed the connection]
aiyion1 has joined #openscad
aiyion1 has quit [Remote host closed the connection]
aiyion1 has joined #openscad
teepee has quit [Quit: bye...]
teepee has joined #openscad
aiyion1 has quit [Remote host closed the connection]
aiyion1 has joined #openscad
J1A8427 has quit [Quit: Client closed]
J1A8427 has joined #openscad
drkow has quit [Ping timeout: 268 seconds]
_xxoxx has quit [Ping timeout: 268 seconds]
<linext> the comb took about 30 minutes to render on wasm, which is about the same as the regular app
<linext> good idea with importing the comb and then rendering the text
fling has quit [Remote host closed the connection]
fling has joined #openscad
drfff has joined #openscad
drkow has joined #openscad
drfff has quit [Ping timeout: 248 seconds]
califax has quit [Ping timeout: 255 seconds]
califax has joined #openscad
<JordanBrown[m]> teepee with respect to advent, do you want to discuss here or would you prefer somewhere private to help preserve surprise?
<JordanBrown[m]> I threw together something that InPhase thought might be appropriate.
<InPhase> Yes, I like it. :)
<InPhase> Solidly on the list of "you did WHAT?" calendar entries.
<Friithian> I'm scared about what this may be :P
<InPhase> Family friendly at least. ;)
<JordanBrown[m]> Oh, yeah.
<JordanBrown[m]> It's a ... non-traditonal ... use of OpenSCAD.
<Friithian> whose family?
<InPhase> Well I know their last name, but that would spoil the surprise.
<Friithian> what day will I get to find out whatever this may be?
<JordanBrown[m]> The family patriarch's name is John.
<teepee> JordanBrown[m]: I don't think we need to be super secret about it, a little bit of talk may even get some extra entries :)
<Friithian> tbh I dont even know what htis is so :P
<InPhase> calendar?
<Friithian> wait what year is it?
<InPhase> One more than the last one.
<Friithian> makes sense
<InPhase> Years do that some years.
<Friithian> so most of the time currentYear = LastYear + 1; cool
lastrodamo has quit [Quit: Leaving]
<JordanBrown[m]> https://bpa.st/7S4Q animate this with 100 steps, your choice of FPS. (The 100 steps part is important.)
<JordanBrown[m]> teepee
<JordanBrown[m]> You can turn on the customizer and play with some of the parameters.
<gbruno> [github] thehans synchronize pull request #4067 (Use cmake for install and packaging across more platforms) https://github.com/openscad/openscad/pull/4067
<teepee> neat
<JordanBrown[m]> You know what it is?
<teepee> look like game of life to me
<JordanBrown[m]> Yes. (Not everybody knows about it.)
<teepee> even with some "standard" shapes
<JordanBrown[m]> yes
<JordanBrown[m]> rpentomino is cool, but very slow.
<JordanBrown[m]> As you can see from the comment, I do have a glider gun, but I wanted to keep it in one paste.
<JordanBrown[m]> I also have a Python program that reads a "standard" file format for Life patterns and writes an OpenSCAD array, which is how I transcribed the glider gun.
<teepee> cool stuff, now we need to make an openscad compiler :)
<JordanBrown[m]> More important is to have a way to generate animation frame N+1 with the data from N as the base.
<JordanBrown[m]> The most expensive part is that for each frame, it has to calculate all previous generations.
<teepee> yeah, no way to transfer calculated state
<J1A8427> recursion might speed this up .. you need to calculate for each frame all statii  till that or?
<JordanBrown[m]> It's already recursive.
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
<JordanBrown[m]> but to calculate the state for generation 5, you have to start with 0, calculate 1, calculate 2, calculate 3, calculate 5, calculate 5, then display 5.
castaway has quit [Ping timeout: 246 seconds]
teepee_ is now known as teepee
<JordanBrown[m]> There's no way to go directly from 0 to N.
<JordanBrown[m]> And since each animation frame is totally independent of the next...
<J1A8427> if a recursive module is used it may cache the states
<JordanBrown[m]> The problem is not the geometry. The geometry is easy.
<JordanBrown[m]> Or do you mean that we're smart enough to cache calculation results?
<JordanBrown[m]> ... figuring out when something is a pure function and so if you have the inputs you can calculate the outputs?
<J1A8427> if the array state n=1 is  fed  into the recursive call for n=2  it may be possible that this is cached
<J1A8427> not sure for a function
<teepee> each animation is a totally separate calculation
<teepee> only the geometry cache survives
<JordanBrown[m]> Hypothetically, we could cache the results of execution of pure functions.
<JordanBrown[m]> But I didn't think that we did.
<J1A8427> well don't build this https://www.youtube.com/watch?v=xP5-iIeKXE8
<othx> J1A8427 linked to YouTube video "Life in life" => 1 IRC mentions
<teepee> crazy
<teepee> is there some HDL to build chips from that?
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
teepee has quit [Quit: bye...]
fling has quit [Remote host closed the connection]
fling has joined #openscad
teepee has joined #openscad
Friithian has quit [*.net *.split]
crazy_imp has quit [*.net *.split]
crazy_imp has joined #openscad
crazy_imp has quit [Changing host]
crazy_imp has joined #openscad
fling has quit [Remote host closed the connection]
Friithian has joined #openscad
<JordanBrown[m]> So I have a random question... what is the simplest f(x) that maps 0..1 to 0..1..0?
<JordanBrown[m]> I have 1-abs(1-x*2) but that seems like it's more complex than required.
fling has joined #openscad
<J1A8427> sin()+1 could work
<JordanBrown[m]> OK, additional constraint... linearly.
<J1A8427> x>.5?1-(.5-x)*2:x*2
<J1A8427> probably not less complex
<InPhase> JordanBrown[m]: I've tried to come up with one at least a hundred times in the past, but I don't think I ever got better than the various abs solutions like that one.
<teepee> lookup(x, [[0, 0], [0.5, 1], [1, 0]])
<InPhase> lol
<JordanBrown[m]> teepee, yes, that's a good one.
<JordanBrown[m]> Did we ever get the vector-capable lookup integrated?
<InPhase> teepee: And while it is humorous and feels like cheating, that is probably better for most animation purposes because it is more generalizable for other patterns.
<JordanBrown[m]> yes, absolutely
<teepee> it might even be faster as it's just 1 user space call
<InPhase> What a strange language we have here. :)
<teepee> but then the interpolation still could be slow, no idea
<InPhase> That'll be native code and should be pretty fast.
<teepee> no blame on the language
<JordanBrown[m]> does it do a linear search, or binary?
<InPhase> Wouldn't matter even in C++ directly until you got somewhere probably over 10 entries.
<teepee> I never looked at how it works