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
ali1234 has joined #openscad
ali1234 has quit [Client Quit]
ali1234 has joined #openscad
ali1234 has quit [Client Quit]
ali1234 has joined #openscad
<peepsalot> othx
<peepsalot> othx?
<othx> othx is a bot run by gunnbr. othx supports factoids, seen, and tell. Email gunnbr@gthx.net if there are any problems.
<peepsalot> tell peepsalot test
<othx> peepsalot: Okay.
<peepsalot> hi
<othx> peepsalot: 6 seconds ago peepsalot tell peepsalot test
<gunnbr> status?
<othx> Gthx.NET version 2.23(beta) 2021-10-18: OK; Up for 9 days, 3 hours, 34 minutes, 21 seconds; mood: pretty good.
ferdna has joined #openscad
pah_ has joined #openscad
pah has quit [Ping timeout: 256 seconds]
<InPhase> peepsalot: // FIXME comments are like easter eggs left for future developers.
<gbruno> [github] kintel pushed 2 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/b9f1ac015ae31730febfaaa41b382877c6dec968
<InPhase> teepee: I have a fast and efficient plan for our seeds that will work for us covering all cases, so I'll do that. (Just been getting tired in the evenings for the past week after finishing up other stuff, so I didn't finish it yet.) But if ever you need reliable true entropy without depending on unreliable system guarantees, feel free to steal the GetEntropy() function I developed on line 238 here:
<InPhase> https://rcolyer.net/RCLib/docs/RND_8h_source.html I put a lot of work into reasoning that out and characterizing it carefully. It effectively dynamically adjusts its own parameters on the fly while it's running to pretty reliably extract true entropy, takes some conservative estimates on over-sampling estimates, and shuffles the results as it goes along with the same byte lookup hash table used in AES
<InPhase> and Whirlpool.
<InPhase> The vector and time-grabbing function are from elsewhere in the library, but those could trivially be swapped out without loss of the principle.
<InPhase> A program in use for one psych experiment at work uses that as part of its seed (which is massive overkill for that purpose). But, it was there, so I used it. :) I originally wrote it while working on some custom cryptography stuff that needed higher guarantees of true random values.
Jack21 has quit [Ping timeout: 256 seconds]
pah_ has quit [Ping timeout: 240 seconds]
pah has joined #openscad
pah has quit [Ping timeout: 256 seconds]
pah has joined #openscad
pah has quit [Ping timeout: 240 seconds]
pah has joined #openscad
arebil has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
ur5us has quit [Ping timeout: 264 seconds]
ferdna has quit [Quit: Leaving]
pah has quit [Ping timeout: 260 seconds]
pah has joined #openscad
<gbruno> [github] kintel pushed 2 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/0a03bd7959a710b2ece6d6f105485215d1fc14a4
pah_ has joined #openscad
pah has quit [Ping timeout: 250 seconds]
arebil has joined #openscad
<gbruno> [github] kintel pushed 2 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/0f4d75490fac6682068cd749235324d8bb4b5602
arebil has quit [Client Quit]
arebil has joined #openscad
GNUmoon has quit [Ping timeout: 276 seconds]
<gbruno> [github] kintel pushed 2 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/bb482fadce8a3a2bb1f7166d7028cabf477e65b1
PovilasCNC has joined #openscad
<gbruno> [github] kintel pushed 2 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/ff6a4a3cdd217832753cd9a9d9ed45d96913efcb
Jack21 has joined #openscad
GNUmoon has joined #openscad
ur5us has joined #openscad
Jack21 has quit [Ping timeout: 256 seconds]
default_ has joined #openscad
little_blossom has quit [Quit: little_blossom]
t-paul[m] has quit [Quit: Client limit exceeded: 20000]
little_blossom has joined #openscad
pah_ is now known as pa
pa has quit [Changing host]
pa has joined #openscad
ochafik has joined #openscad
ochafik has quit [Ping timeout: 256 seconds]
default_ has quit [Quit: Leaving]
Jack21 has joined #openscad
<Jack21> is there a reason why $fa can't be >72° ?  cylinder(10,d=10,$fa=90,$fn=undef);
t-paul[m] has joined #openscad
<Jack21> a max of 120 should work
furrymcgee has joined #openscad
mhroncok has joined #openscad
pa has quit [Ping timeout: 240 seconds]
lastrodamo has joined #openscad
pah has joined #openscad
pah has quit [Ping timeout: 245 seconds]
pah_ has joined #openscad
ur5us has quit [Ping timeout: 240 seconds]
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
pah_ has quit [Ping timeout: 240 seconds]
pah has joined #openscad
pah has quit [Ping timeout: 256 seconds]
ochafik has quit [Remote host closed the connection]
pah has joined #openscad
ochafik has joined #openscad
ochafik has quit [Read error: Connection reset by peer]
ochafik has joined #openscad
ochafik has quit [Remote host closed the connection]
pah is now known as pa
ochafik has joined #openscad
<gbruno> [github] UBaer21 opened issue #3972 (rotate_extrude misaligned for angle=360). https://github.com/openscad/openscad/issues/3972
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
<othx> teepee linked to YouTube video "Look Mum no wires! These wireless LEDs will blow your mind!" => 1 IRC mentions
arebil has joined #openscad
Jack21 has quit [Quit: Client closed]
Jack21 has joined #openscad
pa has quit [Ping timeout: 260 seconds]
<Jack21> teepee: throwies near broadcasting tower will never go out
linext__ has joined #openscad
linext_ has quit [Ping timeout: 240 seconds]
pah has joined #openscad
pah has quit [Ping timeout: 240 seconds]
pah has joined #openscad
<teepee> yeah, ancient news article of some hobby gardens being suspicously lit near a radio station ;-)
ochafik has quit [Remote host closed the connection]
ochafik has joined #openscad
<Jack21> i found a circuit plan for an old "radio in a soap box"  took me a while to figure that it was powered wireless
pah_ has joined #openscad
pah has quit [Ping timeout: 240 seconds]
ochafik has quit [Ping timeout: 250 seconds]
pah_ has quit [Ping timeout: 240 seconds]
pah has joined #openscad
ochafik has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
PovilasCNC has quit [Read error: Connection reset by peer]
<Joel> Ok, here's a gotchya
<Joel> echo((3 + 1/2) + (3 + 1/2)); - Why does this come back 7?
<Joel> version 2021.01
<Joel> oh, I can do math *facepalm*
pah is now known as pa
jonasbits has quit [Quit: No Ping reply in 180 seconds.]
Guest16 has joined #openscad
Guest16 has quit [Client Quit]
jonasbits has joined #openscad
arebil has joined #openscad
mhroncok has quit [Ping timeout: 264 seconds]
mhroncok has joined #openscad
ochafik has quit [Ping timeout: 256 seconds]
pah has joined #openscad
pa has quit [Ping timeout: 240 seconds]
pah has quit [Ping timeout: 240 seconds]
pah has joined #openscad
mhroncok has quit [Ping timeout: 240 seconds]
pah has quit [Ping timeout: 256 seconds]
mhroncok has joined #openscad
mhroncok has quit [Client Quit]
pah_ has joined #openscad
ochafik has joined #openscad
<InPhase> Joel: :)
<InPhase> include <caffeine>
ToAruShiroiNeko has quit []
<InPhase> Jack21: That inability to support $fa=90 is weird, yes. Especially since $fn=4 and $fn=3 are well defined.
<InPhase> Jack21: I'd call that a bug.
<InPhase> It's not really what $fa is intended for conceptually, but it should still work.
<Jack21> it is used if fn is not defined and so small circles are pentagons if you didn't define $fn
teepee has quit [Remote host closed the connection]
ToAruShiroiNeko has joined #openscad
<Jack21> and as some use scad with "inch" you end up with pentagons very often - instead of triangles - as  $fa define a limit and not a max  - so i assume someone defined a max so you didn't end with squares when calling circle();  which might confuse new user
PovilasCNC has joined #openscad
<Jack21> how ever it should be done differently
teepee has joined #openscad
<teepee> hm? $fa = angle, $fs = segment length
<InPhase> return static_cast<int>(ceil(fmax(fmin(360.0 / fa, r*2*M_PI / fs), 5)));
<teepee> but yeah, it sounds like a bug
<InPhase> This is the broken line, calc.cc get_fragments_from_r on line 45.
<teepee> oh, it limits to 5, right
<InPhase> The two lines right above limit to 3.
<InPhase> I think that 5 should simply be a 3.
<InPhase> The question is, is there someplace else that depends unwisely on that being a 5?
<teepee> but then... why not just use $fn in those cases?
ali1234 has quit [Remote host closed the connection]
<InPhase> I mean, depends on it never being less than 5 if $fn is not set.
ali1234 has joined #openscad
<InPhase> Probably not. It would be a weird assumption.
<InPhase> Jack21: I need to get back to some work stuff as I have a meeting coming up soon. I remember you have a github account now. Can you PR that change?
<Jack21> you mean issue or?
furrymcgee has quit [Quit: leaving]
<teepee> creating a PR for this change would be trivial via the github web gui, not even need for cloning the repo
<teepee> I don't see a huge need to change it, but I guess it should be ok to do it anyway :)
<Jack21> didn't i need to have the code line for a PR .. (remember iam new to git)
<teepee> InPhase: mentioned the file name calc.cc
<teepee> so in the github web gui you can just do "find file"
<teepee> sorry "Go to file"
<teepee> click the file and then the edit button
<Jack21> ah ok .. (on pull request new i only get to compare branches)
<teepee> yep, as that's based on a dedicated branch
<teepee> but they have that nice feature to do tiny edits on files directly and that will do all the stuff for creating the PR automatically
<Jack21> so hope this is correct .. seems i now also have a fork
<Jack21> if you have an arc with a fix fn and different angles - the $fa can be used to match the fn number (as $fn is not constant on rotate_extrude with different angles)
<teepee> cool, lets see if the test suite picks it up, but I would assume that's not the case
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
<Jack21> now got several mails that PR run failed
<teepee> yeah, I did not expect that, looks like it might not be that easy a change
<InPhase> lol. Well now I'm suspicious about what wonky tests were being run.
<Jack21> maybe as the rotate_extrude with angle<360 can have cases were some 2D like is created with $fn=3
<Jack21> although rendering didn't gave any error
<InPhase> That's a lot of tests... I guess someone went wild with creating tests with tiny circles and now they have a different geometry?
<Jack21> did the test really run for ~40min
<Jack21> rotate_extrude(angle=180,$fn=3)square(50);   how can this be an 3D object?
<dalias> ?
<InPhase> Oh, I see the problem. circles of radius 1 become squares, because default $fs is a gigantic value of 2.
<InPhase> Which is because default $fs is unreasonably large.
<InPhase> So someone patched that by forcing circles to be pentagons so they aren't mistaken for squares when the common radius of 1.
<InPhase> The correct solution is probably to stop using silly values of $fs that are much larger than the common resolution scales desired.
<dalias> wha???
<dalias> default $fs is ?!
<InPhase> Defaults are $fa=12; $fs=2;
<dalias> i knew it was bad but wow
<InPhase> Yeah, those are some giant low-poly chunks.
<dalias> i always use 0.1 or lower
<InPhase> I think it's overall bad because it makes the program by default look like it can't do anything nice.
<dalias> yes
<InPhase> People will mistake it for a toy.
<Jack21> that was my assumption why someone did that ..
<dalias> :/
<Jack21> yeah without redefine these values - geometry look shit
<InPhase> I will advocate again, defaults should be $fa=1; $fs=0.4; and people should then optimize from there and raise them when they need faster performance for something low poly.
<Jack21> pupils say " i want't an cylinder not that "
<InPhase> With this setting, circles of radius 1 have 16 sides, and look like circles.
<Jack21> that would even be acceptable if the units are taken for inches
<Jack21> .oO and this was the point in time were suddenly a lot thingiverse uploads looked a lot nicer
<dalias> i kinda think the default for $fs should be 0 if allowed (fully scale-invariant)
<dalias> since it only makes sense with a particular unit in mind
<dalias> $fa=1 is unusably slow tho for anything beyond very simple projects :(
<Jack21> and for small circles you don't need that resolution (it also slow your slicer and depending on resolution settings slow down your printer)
<dalias> indeed, but 0.4 mm is way too large
<dalias> and rather than slowing down your printer, finer resolution speeds up your printer
<Jack21> a chord of .4 is not so bad depending the circle it is a very low diviation
<dalias> at $fs=0.4, a d=4mm circle is 31 segments, so >10° turn at each corner
<dalias> that means the speed will be limited to ~8*scv, so maybe 40-80 mm/s
<Jack21> finer resolution  can create very big gcode files and slow down 16bit/ Mhz boards
<dalias> with marlin :-p
<dalias> sucks to be using marlin :-p
<dalias> with angle down to 5° at each turn you can go a lot faster
<Jack21> didn't most of <400¥€$ printer use that
<Jack21> i think the turning speed is not limiting the printer it is the gcode lines per second
<dalias> if you're running marlin on slow microcontrollers then yes
<dalias> if you're running klipper, no. the number of lines of gcode doesn't matter at all
<Jack21> which was why the G2 G3 arc comands were needed in early CNC
<dalias> the microcontroller only processses step timings
<dalias> and anyone with a printer where this can matter is running klipper because you need input shaper to be able to go fast without serious ringing and vibrations that destroy your printer :-p
<Jack21> G5 can do bezier  and some formats also allow curves to reduce triangles  but that isn't something scad can handle
<dalias> the arc commands aren't really helpful imo
<Jack21> no slicer is using them - they were intended to get μm resolution on  a mill 40 years ago
<dalias> *nod*
<Jack21> btw: these old tech is the reason why most CAD can only fillet with a radius and not using  a hyp like in generative design
<Jack21> with 3Dprinting engineers/designer need a new set of rules for design
<dalias> i wish openscad could do it at all :-p
<Jack21> Ü
<Jack21> FreeCad is converting oSCAD objects into curves when importing scad code
<InPhase> teepee: When you requested our OSS allotment here, were you able to get a renewable allotment like per month?
<InPhase> teepee: If so, what process did you follow?
<InPhase> (I need to know for a work project.)
<teepee> InPhase: I don't remember doing that, I think kintel asked for that (we are talking CircleCI / MacOS?)
<teepee> Jack21: AMF is dead and the curved triangles are pretty useless in my totally personal opinion
<Jack21> 3mf can replace most of it - but if resolution is getting into μm  get really big files - i assume no program was using this but with a 5 level recursion you get 1000× better resolution
<Jack21> Think about printing a full detail  model  with two photon Polymerisation http://www.microlight.fr/TPP.html
<Jack21> at the moment this is only working for some mm height  - but maybe in future
Guest85 has joined #openscad
<Joel> Any way to trigger an exit/die/abort kind of behavior? I have a module where folks can pass values, I'd like to die if people pass in a bad value
<teepee> assert()
<Jack21> or replace them in case they are out of range
<Jack21> value=value<0?0:value;
<Jack21> or use min(max());
<InPhase> teepee: I'm referring to the struggle that occurred back some time ago when travis-ci.org shut down, projects were migrated to travis-ci.com, and the new OSS allotment system started up where you had to request them to be renewed.
<InPhase> teepee: I remember you had gone through some sort of support request process to get that.
<teepee> well, that's not resolved yet, they still seem to demand a credit card
<teepee> although the last email is a bit confusing, as it may indicate some other check for open source project might work
<InPhase> Stuff is building though, so we must have some sort of allotment. :)
<teepee> nope, not on travis
<InPhase> Oh.
* teepee goes checking to be sure...
<teepee> > "We are unable to start your build at this time. You exceeded the number of users allowed for your plan. Please review your plan details and follow the steps to resolution."
<InPhase> Okay. So basically you abandoned travis entirely after being unable to sort it out, and focused on circleci?
<Joel> teepee thanks! will play with assert, docs make it exactly what I need
<teepee> I'm not sure it's worth the discussion but I might try to continue on the support ticket
<teepee> but I don't have much hope that goes anywhere
<teepee> right now we build binaries on CircleCI and OBS and run most tests via Github-CI
<InPhase> teepee: Okay. Then I guess I'm a step ahead on the work project. I'll let you know if we get it working with travis.
<InPhase> We were trying to sort out how to construct the request to get something that would actually function.
<teepee> the travis.yaml probably still would work, it's likely only the missing "payment plan" selection
<teepee> coming from github?
<Joel> I'm hoping, perhaps naively, that at some point I can put github actions to work turning my code into images which I can then export a png and check back in
<Joel> Anyone else doing this, have a sample repo I can look at?
Jack21 has quit [Quit: Client closed]
ur5us has joined #openscad
<teepee> I think there's even a github action for that
<Joel> oh awesome, will google a bit
<teepee> oh, even 3, have not tried any though
<Joel> None of them seem to drop png's, so I'll have to look into stl -> png I guess
<teepee> not sure, default behavior is to use the extension to define what's generated
<teepee> so just giving *.png as target might work
<InPhase> teepee: Yeah, from github.
<Joel> hrm, yeah, I'll have to play
<teepee> this one even says as much in the docs https://github.com/marketplace/actions/openscad-build-action
<teepee> InPhase: then what I would expect is 1) installing the travis app on the repo 2) setting up travis.yaml
<InPhase> teepee: Yeah, we have all that. We got to: "Builds have been temporarily disabled for public repositories due to a negative credit balance. Please go to the Plan page to replenish your credit balance or alter your Consume paid credits for OSS setting."
<InPhase> Apparently we finally blew through the first 10,000 minute build credit.
<teepee> from what I've read they get added to monthly but the wording was confusing and different depending on which page it was explained on
<teepee> maybe it's one-time 10000 minutes and needs additional open source activation
<InPhase> Yeah, it seemed like they changed their mind after outcry and tried to pretend they were always at war with Eurasia.
<InPhase> But the resolution process is not clearly described anywhere.
<InPhase> But, we opened a support ticket and made our best case. We'll see.
<teepee> let me dig out that ticket
<InPhase> I guess we'll look into switching to circle-CI if this doesn't work.
Jack21 has joined #openscad
<teepee> github actions are currently very generous, with time limit of 6 hours and including macos
<teepee> I'm just not sure if that says that way
<teepee> ok, I think I clean out all names, also expires in 1 hour... https://pastebin.com/hfK0Ae2m
EkpyroticFrood has quit [Quit: So long, and thanks for all the fish.]
EkpyroticFrood has joined #openscad
Jack21 has quit [Quit: Client closed]
GNUmoon has quit [Ping timeout: 276 seconds]
<InPhase> teepee: Do the github actions do their own separate building in parallel with circle-ci?
<InPhase> teepee: It seems like this is a bit redundant.
<teepee> yes, they created their own full CI thing similar to CircleCI / Travis / Gitlab-CI / ...
<gbruno> [github] kintel pushed 2 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/039ac73e19a878d278abf3fd786caa2c59f8647c
<teepee> and obviously they do have some benefits in regard to easy integration
<InPhase> So it is conceivable to you that it could be a full replacement for CircleCI?
<teepee> yes
<InPhase> Ok.
<teepee> all eggs into one basket :)
<InPhase> I'll have my people do a comparison then. We're probably only going to want to maintain one at a time, for labor reasons.
<InPhase> (If Travis doesn't yield good support results on our request, since we already have that "setup".)
<teepee> yep, that makes sense, travis did work quite well, only a bit behind with the platform updates - not sure if that is better now
<InPhase> We're probably more on behind than them with platform updates, so that's fine. :) We have 3.5 full time programmers and 66 repositories, with maybe 9 actively undergoing significant development efforts.
<InPhase> So, triage happens a lot.
Guest85 has quit [Quit: Client closed]
<teepee> in that case the main effort is on the repo setup anyway, regardless of what CI it's going to be
<teepee> I have not checked if any support things like seed jobs on jenkins
<ali1234> Joel: i use github actions to build stls. i do it manually, as i have a makefile that exports all the individual parts: https://github.com/ali1234/32blit-case/blob/master/.github/workflows/build.yml
Guest85 has joined #openscad
<InPhase> teepee: Yep. Thanks for the tips. Now to go pick up my kid.
GNUmoon has joined #openscad
<gbruno> [github] kintel pushed 1 modifications (Build uuid before fontconfig as fontconfig wants to link to uuid). https://github.com/openscad/openscad/commit/2854b98ab8fa82aba7e049254c6d30a626a2bf9b
nspuma has joined #openscad
qeed_ has quit [Quit: qeed_]
qeed has joined #openscad
pah_ has quit [Ping timeout: 256 seconds]
pah has joined #openscad
gunnbr_ has joined #openscad
Guest85 has quit [Quit: Client closed]
gunnbr has quit [Ping timeout: 268 seconds]
ochafik has quit [Ping timeout: 260 seconds]
lastrodamo has quit [Quit: Leaving]
pah has quit [Ping timeout: 256 seconds]
pah has joined #openscad
johnstein has joined #openscad
<teepee> welcome on the other side :)
<johnstein> howdy.
johnstein has quit [Quit: Client closed]
johnstein has joined #openscad