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 or report bugs: https://goo.gl/lj0JRI | Tutorial: https://bit.ly/37P6z0B | Books: https://bit.ly/3xlLcQq | FOSDEM 2020: https://bit.ly/35xZGy6 | Logs: https://libera.irclog.whitequark.org/openscad | don't ask to ask
aiyion has quit [Remote host closed the connection]
aiyion has joined #openscad
josephl has quit [Ping timeout: 240 seconds]
<InPhase> teepee: From which service?
josephl has joined #openscad
<InPhase> teepee: Ok.
<teepee> trying the bigger machines now, but I don't think that's enough of a difference
<InPhase> teepee: I don't remember if I updated you, but we did get a large block of open source credits on Travis for the work projects I mentioned, enough to easily run us through a year. But they do not seem ready to grant renewable credits yet. They seem to want to turn it into a continuous begging strategy, presumably to discourage open source usage over time.
<teepee> right, so that's goodbye travis then
<teepee> well, it's not running for month anyway
peepsalot has joined #openscad
<teepee> aaaand timeout again
<peepsalot> hello teepee. I just got back!
<peepsalot> docker build problems?
<InPhase> peepsalot: teepee is struggling with CircleCI timing out after 1 hour.
<teepee> sort-of, I tried rebuilding the MXE stuff with a patch to force lib3mf static build
<teepee> but they decided to introduce a 1h timeout and some of the builds were about 2:30h
<teepee> so even going to the bigger machines is not fast enough without changes
<InPhase> Is it attempting to do the lib3mf build each time? Or is this separated off as a build-once that gets reused?
<teepee> it's a separate repo to build the base docker images with the full MXE environment
<teepee> the actual openscad builds are pretty quick, like 10 minutes or so
<teepee> the docker stuff is only needed once after changes to mxe or so
<InPhase> Ok, good. So can the docker stuff be nested into subparts in some manner?
<teepee> yes, and I think I have an idea how to get one of the builds much quicker
<teepee> the 64bit build is using the 32bit installer for some reason
<teepee> which causes it to build gcc 2 times
<teepee> it should be possible to just base it on the 32bit gcc image instead
<peepsalot> teepee: i think maybe nsis only comes in 32bit version or something?
<teepee> not sure, the comment says "it's not compatible"
<teepee> which might mean that nsis only supports 32bit as that's probably fine for an installer
<teepee> well a windows installer :)
<peepsalot> boo, no SIMD-enabled file extraction?
<peepsalot> :P
<teepee> no? even pentium had MMX?
<peepsalot> ok, well no SSE though
<teepee> yep, pentium 4, SSE2 SIMD Extensions
ur5us_ has joined #openscad
<teepee> looks like SSE3 came with the 64bit version
<peepsalot> hmm, i thought SSE was strictly "AMD64"/x86-64
LordOfBikes has quit [Ping timeout: 245 seconds]
ur5us_ has quit [Remote host closed the connection]
ur5us has joined #openscad
LordOfBikes has joined #openscad
ur5us has quit [Ping timeout: 245 seconds]
TheAssass1n has joined #openscad
TheAssassin has quit [Ping timeout: 276 seconds]
ferdna has joined #openscad
<LeviHarris-Brown> I am using rotate_extrude here to create a circle with an equilateral triangle pointing inwards. It works fine with no resize, but when I resize it, it starts to distort the larger the scale, making the two sides pointing in slightly longer than the outer? E.g. here's some code with visible distortion `rotate_extrude() translate([13.1, 34, 0]) resize(newsize=[2.5, 2.5, 2.5]) polygon( points=[[0,0.5],[0,-0.5],[-0.866025404,0]]);`
Jack21 has quit [Ping timeout: 256 seconds]
<peepsalot> LeviHarris-Brown: are you sure you want resize, and not just scale?
<peepsalot> also resize of a polygon should only take 2 components, no Z
<peepsalot> not sure what you mean about distortion, but maybe you just need more segments? try adding $fs=0.5; $fa=1; to the top of the script
<LeviHarris-Brown> peepsalot: oh thank you! That fixed it. Brand new to the program, I googled resize and found that function. What's the difference, and why was resize causing the distortion?
<peepsalot> scale multiplies the coordinates by the scale factor, resize makes the bounding box of the geometry fit into "newsize"
<LeviHarris-Brown> oh right, yeah I think I can see the issue. Thanks again
<InPhase> LeviHarris-Brown: You can remove the resize by instead using: polygon([[0,1.25],[0,-1.25],[-2.5,0]]);
ferdna has quit [Quit: Leaving]
JoelJoel has joined #openscad
Joel has quit [Ping timeout: 256 seconds]
ccox has quit [Ping timeout: 260 seconds]
ccox has joined #openscad
<InPhase> Well... I thought hard about ways to make a good advent calendar entry that would only be elegant with function literals, but I came up with nothing.
Jack21 has joined #openscad
<Jack21> may i ask about the scADVENT website status?
<teepee> unfortunately it's still in nonexistent status due to me being distracted by a bad tooth :/
<teepee> so the big question is what the chances are that we are getting the other slots filled
<teepee> I'm not sure how much I can help this time :(
<teepee> the design I wanted to have ready as multi-day thing is still very much unfinished
<teepee> I would be a bid sad to skip this year, but having a not fully filled calender would be even worse I think
<Jack21>  maybe we get some help from others  -  but we could go to solstice date which is 21  so  we only need to fill 11 more
<Jack21> And if we don't have enough - lets make  day%2
<teepee> haha, big 2 day doors :)
<Jack21> not ideal but better than nothing i think
<teepee> well, medication done, lets prepare the website at least, I suppose
<teepee> I'll ask https://twitter.com/gurkan_sahin69 if they would share a couple of those fun visual designs
<teepee> oh, there's even a mail address given, so hmm... twitter or mail...
<Jack21> thought your dentist fixed it.   did you take ibuprofen ?  not against pain but because it is an anti-inflammatory and so can help a lot (2400mg/day)
<teepee> well, he "fixed" it which worked for 2 days
<teepee> yeah got the ibuprofen suggestion from a friend (his wife is a dental surgeon) and that again "fixed" it for 2 or 3 days
<Jack21> damn
<teepee> so now I have the big stuff
<teepee> 6 days antibiotica
<teepee> very annoying and for good timing in the middle of the biggest local corona spike ever
<Jack21> should be possible to take ibu additionally  ( i also had that and fixed a brocken tooth myself )
<teepee> yeah, not needed so far
<teepee> boring topic :)
<teepee> sent out mail to the address in the twitter posts
<teepee> with some luck that should cover at least 4 maybe more designs
<Jack21> i ll make another animation with this https://joindiaspora.com/posts/20332471
<teepee> cool
lagash has quit [Ping timeout: 268 seconds]
lagash has joined #openscad
<gbruno> [github] GloinTheDark opened issue #3987 (Add support for vectors in math functions). https://github.com/openscad/openscad/issues/3987
<gbruno> [github] GloinTheDark edited issue #3987 (Add support for vectors in math functions). https://github.com/openscad/openscad/issues/3987
la1yv_a has quit [Read error: Connection reset by peer]
la1yv_a has joined #openscad
<InPhase> Jack21: Opportunity... https://joindiaspora.com/posts/20232151 but instead of an image from many random seeds, take each random value, and give it some sort of complicated oscillatory behavior which will eventually loop around, to try to make a single pair of eyes cycle through a full range of emotive behaviors.
<InPhase> Jack21: The trick will be in properly choosing and tweaking these functional forms to make the transitions seem "natural". But this should be totally possible.
<InPhase> Jack21: A single pair of eyes in 2D would compress very well, so this could be an extremely long animation and still be a small file size.
<InPhase> Jack21: Maybe keep the eye color fixed rather than random, but alter all the ones involving size/shape.
<Jack21> a 3D pair of eyes wouldn't need so much more -  i just think for the scadvent  this would be a bit much
<InPhase> 2D would be better because you could make the animation longer. :)
<InPhase> I think there's a LOT of expressiveness possible with that approach.
<Jack21> 3D and 2D both result in 2D images or?  why could one be longer
<InPhase> If you define a reasonable animation output file size, 2D will run for a lot longer before reaching that size.
<InPhase> Also it will generate much faster.
<InPhase> It will compress better just because of the flatter colors.
<Jack21> the .gif or .mpg  depends on the color used - so you talking about shading from 3D objects?
<InPhase> Yes, the shading will just take more space when compressed.
<Jack21> yeah well ..  if we use mpg instead of gif  we gain some additional  minutes
<InPhase> One pair of eyes, and you could probably run this thing for an hour. :)
<InPhase> You just need the right functional forms so that it's not oscillating blandly, but sampling new variation combinations in an instinctively interesting manner.
<Jack21> maybe with a recursion to change just one random parameter and run again
<InPhase> Well you can't store the old values, but you can back-calculate the old $t values if you parameterize the FPS parameter and keep these as rounded integers to avoid floating points. Then you could seed on the current and past time steps to create a continuity without using any sort of underlying functional form.
<InPhase> Although there are also some very wobbly semi-chaotic functions you can choose from.
<Jack21> i can set the FPS via a variable?
<Jack21> or the number of frames?
<teepee> no
<InPhase> For future reference, we probably should have $fps as a variable just like $t is... But I don't think we have that yet. This is an oversight.
<InPhase> Until then you could just set it manually as a variable.
<teepee> the feature yes, but I don't think we should have more $ variables
<InPhase> Or, not fps. The step count.
<teepee> for animation we could have an animation object with all the values, maybe also total time
<InPhase> We might as well throw fps in there too in case someone wants it for something else, but step count is the value needed for this purpose.
<teepee> yes
<InPhase> teepee: A reasonable solution to the problem.
<teepee> it would hopefully also indicate it's not writeable
<InPhase> This is what I like about these advent calendars. In trying to push boundaries we spot things that should be updated but are usually overlooked. :)
<teepee> :)
<teepee> basically the animation object could setup an environment similar to shadertoy ;-)
<InPhase> Jack21: Here's my thinking... For each of 50 timesteps into the past, done with modulo so that it wraps around from $t = 1 to $t = 0 (so like (step_N + total_steps - 50) % total_steps), generate for each parameter a value to multiply preceding values by from 0.1 to 1, perhaps done as the sqrt of a random from 0.01 to 1 so that it is non-linear mostly favoring slow transitions but occasionally fast one,
<InPhase> then a value to add for each time step from 0 to some value, and then process these in sequence for each parameter to get the value for each timestep.
submariner has joined #openscad
<InPhase> Jack21: That will give you truly random values with a sort of lifelike persistence, but having a randomly varying rate of change for each value as time progresses.
<InPhase> Jack21: If my explanation is completely confusing, perhaps we could collaborate on this entry. :)
<Jack21> InPhase: feel free to take this ..  still have another 5 to do Ü
<InPhase> Jack21: While I did that paint brush also last time, this was my last attempt at life-like animation of a living object. https://bpa.st/QEQA
<InPhase> Animation parameters in the comments.
<InPhase> This one animates efficiently in realtime, which I expect the eyes will as well.
<Jack21> i made some "scene" animations in the past, but i am sure not that elegant - irc i created an $t array so each scene had 0:1
<Jack21> what -- when closing SCAD while an animation is running the window freezes and stay open ..   pfffff
<InPhase> What we're also seeing is that OpenSCAD would benefit from some sort of animation-persistent values.
<InPhase> The quickest way to stop an animation is to append "x" or some character to the step count.
<InPhase> The x is a stupid hack, but works. :)
<InPhase> Also, these hoops we jump through to track state values between frames are probably also stupid hacks. It would require an entirely different variable type for things to persist though.
<InPhase> Nice. :)
<InPhase> I bet you could also do an iris like that. Maybe a stargate that opens up revealing Santa. ;)
<Jack21> you can take $t and each scene will use min(max())  to cut that time slot it wants - so you can move a animation in the timeline
<Jack21> .oO(so many possibilities so little time)
<InPhase> The last one needs to be done by at least Dec. 23rd. :)
<InPhase> Although best not to cut it too close.
<InPhase> The Dec. 24th one should be something epic, so if you can put extra effort into one extra epic, maybe you can take that slot this year. We have 4 weeks to adjust the orderings yet.
<InPhase> I will work on an Eyes/Eyes.scad entry later (probably this evening), starting from your eyes module.
<InPhase> s/eyes module/eyes file/
<InPhase> Those are almost flapping angel wings. :)
<Jack21> still searching for one in particular  ( and i can't post the mp4 or big sized gifs ) - Ü
<InPhase> That last one would go Christmas if you steal teepee's train from 2019, put it on a trivial track, and suddenly it looks like a north pole workshop.
<InPhase> I've enjoyed stealing teepee's train and putting it random places. :)
<InPhase> That one is very pretty. :)
submariner has quit [Remote host closed the connection]
<InPhase> A cool animation effect on top of that would be to have $t=0 and $t=1 be a slowly rotating cube, which spins apart into three of those sheets and then comes back together.
<InPhase> s/three of those sheets/six of those sheets/
<Jack21> here a nicer version (imgur let me upload bigger sizes) https://imgur.com/a/RIcKAyx
<InPhase> That last one doesn't load. imgur might still be processing.
<InPhase> What I like about the idea of taking those sheets and animating them out from a cube is that it artistically subverts expectations about solidity.
<InPhase> You should just need the wobbliness to depend on $t.
<InPhase> Perhaps with some protracted period of cubeness like $t < 0.1
<InPhase> I need to go get ready for a family gathering. I should be back in 6-7 hours.
<Jack21> i getting the imgur one displayed .. it is extra 3D due to the out of frame illusion
<teepee> that looks very cool
<InPhase> Yes, that displayed now. It took a few reloads.
submariner has joined #openscad
<Jack21> last two https://pasteboard.co/a76qKhvZFmq4.gif  (promise)
<InPhase> I will abandon my function literals thing unless inspiration strikes later, and go back to art. :) I'll start with the eyes thing, because that's an inspiring starting point.
<Jack21> always follow your heart - Ü
<InPhase> Hahah. Well that last one nauseates me a bit. :)
<teepee> heh, it's a bit wobbly indeed
<Jack21> yes right on bigger screen more extreme .. not sure if the vibrant pink contrast, frequency or pattern is causing that
<InPhase> I'd be willing to work later on that cube idea with the three sheets xNnDUS one as well if you don't have fixed plans for that. I think that has nice artistic expression potential. Subverting notions of solidness and surface is sort of one of the core motifs of OpenSCAD, so that would be nice to poke at.
<InPhase> For collabs we just drop dual credits in the comments.
<teepee> yep, no issue there
<Jack21> ah found the one i was looking for https://imgur.com/a/TIHWBRI
<teepee> I like collaboration :-) - and try to stay away from this "competitive coding" idea which I think is silly for the most part
<InPhase> lol, nice.
<InPhase> Jack21: That last one should take my meatballs code and turn them from meatballs into snowballs. Then it will be a snowball fight machine.
<teepee> ouch right after the russians killing a satellite ;-)
<InPhase> Oh wait, meatballs used plot_function.scad.
<teepee> oh, yes, snowball cannon \o/
<Jack21> brrrrrrrrrrrrrrrrrr
<InPhase> Maybe some simpler snowball render that doesn't use a library.
<Jack21> CIWS phalanx snowball turret
<InPhase> I forget who it was who challenged me to make a meatball generator, but someone did. This was the result: https://i.imgur.com/QLNy2N1.png
<Jack21> impressiv
<Jack21> now i am hungry
<InPhase> Alright. Family. I'll be back later. :)
<Jack21> cu
othx has quit [Ping timeout: 265 seconds]
othx has joined #openscad
ali1234 has quit [Remote host closed the connection]
ali1234 has joined #openscad
<teepee> argh, so who broke github?
<Jack21> just wondered ..
<teepee> lol, it's even getting worse. I was hoping they start fixing stuff :)
<teepee> heh, good job, now everything is red or yellow https://www.githubstatus.com/ - that's really trending into the wrong direction
ur5us has joined #openscad
<Jack21> the angry unicorn is nice though
snakedGT is now known as snaked
ur5us has quit [Ping timeout: 240 seconds]