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
kwikius has joined #openscad
<linext> i made some updates to the customizer demo you may want to check out: https://3dcustomizer.net/generate-html-from-params/
<linext> intercepted console.*() functions, made a cancel render button, put a timer on rendering
<linext> keep in mind you can paste any openscad code on the left
J1A84746449 has joined #openscad
J1A847464 has quit [Ping timeout: 252 seconds]
kwikius has quit [Ping timeout: 252 seconds]
<InPhase> linext: "Info: wasm streaming compile failed: TypeError: Failed to execute 'compile' on 'WebAssembly': Incorrect response MIME type. Expected 'application/wasm'."
<InPhase> linext: The console is a nice boost. Although now I have this new error message to share with you. :)
<linext> yea, i don't know what causes that
<InPhase> The cancel render button is much more effective than attempts to cancel rendering in the normal program.
<linext> lol
<linext> it's like ctrl + c if you were running it via command-line
<InPhase> Yeah. But just from a UX perspective it seems like a clean cancel that leaves the interface working.
<InPhase> A side advantage of them being separated out.
tachoknight has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
LordOfBikes has quit [Ping timeout: 250 seconds]
LordOfBikes has joined #openscad
ur5us has quit [Ping timeout: 248 seconds]
ur5us has joined #openscad
pbsds has quit [Ping timeout: 260 seconds]
aiyion has quit [Remote host closed the connection]
aiyion has joined #openscad
ur5us has quit [Ping timeout: 250 seconds]
ur5us has joined #openscad
aiyion has quit [Remote host closed the connection]
aiyion has joined #openscad
GNUmoon has quit [Ping timeout: 258 seconds]
GNUmoon has joined #openscad
ur5us has quit [Ping timeout: 264 seconds]
aiyion has quit [Remote host closed the connection]
aiyion has joined #openscad
ur5us has joined #openscad
<gbruno> [github] kwikius synchronize pull request #4367 (ModuleLiterals: making openSCAD modules first class.) https://github.com/openscad/openscad/pull/4367
kwikius has joined #openscad
pbsds has joined #openscad
ur5us has quit [Ping timeout: 248 seconds]
ur5us has joined #openscad
epony has joined #openscad
ur5us has quit [Ping timeout: 248 seconds]
kwikius has quit [Quit: Client closed]
paddymahoney has quit [Remote host closed the connection]
aiyion has quit [Ping timeout: 258 seconds]
ccox_ has joined #openscad
ccox has quit [Ping timeout: 244 seconds]
aiyion has joined #openscad
<Scopeuk> quick dirty magnetic cable holder for my desk https://paste.debian.net/1255833 http://scopeuk.mypicture.info/Magnet.JPG plus side only a 40 minute print even on my little printer
<Scopeuk> has two 10mm cube neodymium magnets pushed into the slots
paddymahoney has joined #openscad
paddymahoney has quit [Remote host closed the connection]
paddymahoney has joined #openscad
paddymahoney has quit [Read error: Connection reset by peer]
paddymahoney has joined #openscad
paddymahoney has quit [Remote host closed the connection]
peepsalot has quit [Quit: Connection reset by peep]
<InPhase> Scopeuk: I typically use velcro ties for that problem (with very similar desk legs). The question is, does accidentally yanking on the cable pop those magnets right off the leg?
<Scopeuk> not managed to yet, I've hung a 1/2 kg tape measure off it without issue
<InPhase> Scopeuk: A nice modification given the magnet feature though might be a C shape, with magnets above and below, and sort of "clamping" the wire into the hole. Then it won't go up over the edge. :)
<Scopeuk> yeh, this is very much a mk1
<Scopeuk> had idea this morning, knocked it up and printed it
<InPhase> It is, broadly speaking, a clever idea.
<Scopeuk> with how it currently is I can get the same effect just sliding it up to meet the plate holding the leg
<InPhase> Right.
snaked has quit [Quit: Leaving]
<Scopeuk> I don't have a luggage scale to hand otherwise I could find out how much force it takes to get it to let go, I am curious
<InPhase> I guess you'll end up with a sweet spot where the plastic is thin for good magnetic attraction, but thick enough that the magnet doesn't rip the plastic barrier surface off and keep it on the leg when you go to remove it. :)
<Scopeuk> yeh, I took a guess at about 2mm in the centre, closer to 3 at the edges
<Scopeuk> I am surprised how solid it feels, it is printed in tpu
<Scopeuk> I guess I shall run it for a while and see how it holds up
<InPhase> Ah. Interesting choice.
<InPhase> I was thinking rigid, but tpu is a better call. It's more likely to not rip, and will be less cable strain.
<Scopeuk> I also figured that the layer lines on tpu would liked help it grip the leg to stop it sliding down
<Scopeuk> s/liked/likely
<InPhase> On a version 2 maybe rounding all those edges, both the ones the cable rests on, and the pokey user-facing ones.
<Scopeuk> yeh, it took about 40 minutes to print so I have plenty of chance to fiddle with it and refine it, rounded edges are probably up there
<Scopeuk> I do like the c shape idea
<InPhase> Maybe a rotate extrude of a full circle of some rounded rectangle profile, then cut off to 1/3rd of the circle, and then insets for the magnets inserted into that.
<InPhase> That'd give vertical space for a few wires if needed, and not stick out too far, but be nicely smooth all over.
<InPhase> Basically like one of those 1/3rd circle cupboard handles.
kwikius has joined #openscad
<Scopeuk> yeh
<Scopeuk> having seen how well it holds onto the leg more experimentation is [erhaps warented
kwikius has quit [Quit: Client closed]
paddymahoney has joined #openscad
peepsalot has joined #openscad
<gbruno> [github] MarkusNaeher opened issue #4370 (Ctrl-Z sometimes undo'es multiple changes) https://github.com/openscad/openscad/issues/4370
teepee_ has joined #openscad
teepee has quit [Ping timeout: 258 seconds]
teepee_ is now known as teepee
paddymahoney has quit [Read error: Connection reset by peer]
aiyion has quit [Ping timeout: 258 seconds]
aiyion has joined #openscad
p3ck has quit [Quit: Leaving]
kwikius has joined #openscad
kwikius has quit [Client Quit]
<ABSHK> *enters the room in an undistinguishable guise after a whole year
<teepee> hi ABSHK :)
<ABSHK> Hi how are you :))
<ABSHK> Just saw the bounty mention so thought I would also catchup a bit
<ABSHK> Any pythonic development going on?
<teepee> fine, when I'm not too sleepy to notice :)
<teepee> python? at work, recently yes, here not so much
<ABSHK> Oh haha
<ABSHK> The placement season's started here so its DSA time again
<ABSHK> I guess the bounty will finally help me towards leetcode's premium
<ABSHK> But how do I go on to claim it :')
<teepee> bounty source needs to figure the issue was closed, sometimes that takes a while
<teepee> yeah, was still open, but there's a refresh issue that seems to have helped
<teepee> there should be a claim button now
<ABSHK> Let's goo, I have faith in bountysource 😤
<ABSHK> How's this year's GSoC project going on
<ABSHK> I can't seem to find any related chat in the log :')
<teepee> about to close down, not much discussions going on but there's https://github.com/openscad/openscad/pull/4330
<ABSHK> The number of commits compared to mine look scary x_x
<ABSHK> *thanks higher powers for making me choose python _/\_
<InPhase> Hi ABSHK. :)
<InPhase> teepee posted a link to the open bounties the other day and I was like, "Wait, that one was done already!" Enjoy your bonus. :)
<ABSHK> Heya!
<ABSHK> Hisashiburi
<ABSHK> And thank you :')
<InPhase> I hope things are going well for you?
<InPhase> Graduate yet?
<ABSHK> Nope
<ABSHK> 2 semesters left
<ABSHK> And yeah things are going pretty fine here
<ABSHK> I recently interned for a startup in a different state and it was an amazing experience!
<ABSHK> The job hunting phase is gonna start soon now
<InPhase> Yep, I was just about to ask if you were starting job hunting soon. (Then someone came to my office door.)
<gbruno> [github] kwikius synchronize pull request #4367 (ModuleLiterals: making openSCAD modules first class.) https://github.com/openscad/openscad/pull/4367
<InPhase> I'm sure that extra internship will help out a lot. Competence, accomplishments, and existing work experience like that are what it takes to put you over the top of that pool.
<ABSHK> Oh haha
<ABSHK> Its 1 AM here
<ABSHK> Just brushing up my DSA stuff
<ABSHK> Had my resume shortlisted at a few firms thanks to the GSoC project and the internship I did this summer
<ABSHK> Now waiting to hear more from them
<ABSHK> And applying to other places too
<InPhase> Excellent.
<InPhase> So the plan is, get a good job, buy a nice 3D printer, and then come back to us!
<ABSHK> Ahaha, sounds pretty fun to me! :D
<ABSHK> How about you, any new physics work going on under the hood?
<InPhase> We're in an interesting phase of development right now with some big changes, so there will be interesting problems waiting for you by then. :)
<ABSHK> Oh I'll be more than glad if I'm able to lend a hand
<InPhase> Well, I just solved an initialization issue with some brain signal recording hardware. The hardware is defective and fails at the first open after boot, so the "fix" is to detect this particular condition, close it, and reopen it. Skills.
kwikius has joined #openscad
<ABSHK> The only thing I understand here is "defective hardware" :')
<ABSHK> But nice
<ABSHK> I don't know what else to say :') :)
<InPhase> Got to run to a meeting.
<InPhase> Be well, stay or come back around. :)
<ABSHK> I'll too drop to sleep for a while
<ABSHK> Will be back for sure
<ABSHK> See ya :)
<ABSHK> Take care
kwikius has quit [Client Quit]
kwikius has joined #openscad
teepee has quit [Ping timeout: 258 seconds]
teepee has joined #openscad
<kwikius> Finally figured out how to pass default parameters. Course you eveluate, they turn from expressions to values, so I wrote a wrapper to turn them back into exxpresions https://github.com/openscad/openscad/blob/e1a721bf6ec29719b80481c6c20576d4178d435e/src/core/ValueWrapper.h
<kwikius> Course that may exist somewhere in the code bas,, but I couldnt find it!
teepee has quit [Ping timeout: 258 seconds]
J1A84746449 is now known as J1A84
<J1A84> peepsalot  is this normal that a subdivided linear_extrude due to asymetric scale  looses the subdivision if twisted by 1deg https://imgur.com/a/h4nUk0x
ur5us has joined #openscad
<peepsalot> J1A84: as usual i can't tell you anything from a picture without code
teepee has joined #openscad
<J1A84> linear_extrude(50,scale=[.3,1],twist=0.1)circle(10,$fn=4);
<J1A84> compare to twist =0
<J1A84> ok its the slices that are lost
<J1A84> still feels wrong
<peepsalot> J1A84: it is known behavior. see last bullet point here: https://github.com/openscad/openscad/pull/3351#issuecomment-643066866
<peepsalot> if you want to do the math to calculate the path length each vertex takes as it gets extruded, then that would be great :)
<J1A84> i would just use max (slicesTWIST,slicesScale)
<J1A84> so you don't loose any  and the higher count wins
<peepsalot> sounds reasonable, go ahead and make a PR
<J1A84> hmm do i only need to add max_delta_sqr  there  ( and does the calculation need to be moved above?)
<peepsalot> i think the conditional needs to be split up into separate terms
<peepsalot> but yeah you'd also need the max_delta_sqr value in that section
<J1A84> so better to add the max_delta_sqr   above  in the twist as non uniform condition or  add  node.twist in a twist condition in the non uniform scale
<peepsalot> ideally it should only calculate the max_r1_sqr and/or max_delta_sqr only specifically when needed. but the difference in computation time will likely never be noticeable, so *shrug*
<J1A84> isn't line 1042 only used if there is twist and non uniform scale ? .. so i can add the max_delta_sgr  and  slices=max(  sliceCalcTwist,slicesCalcNonUniform)
<peepsalot> 1042 is *uniform* scaling with twist, like the comment on the else says
<peepsalot> the conditional on 1039 would need to be split into an if ... else if, or similar
kwikius has quit [Quit: Client closed]
<J1A84> doesn't  "if ((node.scale_x == 1.0 && node.scale_y == 1.0) || node.scale_x != node.scale_y) "  will be  twisted and scale uniform aswell non-uniform and line 1042 only catches multiple uniform scale?
<J1A84> (and twist)
<peepsalot> (node.scale_x == 1.0 && node.scale_y == 1.0) is no scaling at all. and the second part of node.scale_x != node.scale_y is for non-uniform (only lumped together because I didn't know what else to do at the time)
<peepsalot> and the whole section is already inside a if(twist)
<J1A84> so i could replace this with https://bpa.st/SAGQ
<peepsalot> if (node.scale_x == 1.0 && node.scale_y == 1.0) { <line 4> } else if (node.scale_x != node.scale_y) { <your other code> } else { <original line 1042> }
<peepsalot> i mean your conditionaly technically work, but they are confusing
<peepsalot> *conditionals
<J1A84> ok . . what about the  naming of variables .. or  could i put the two calc directly into max() without assigning them new variables?
<peepsalot> also your line 13 should just be get_helix_slices, not conical (that's uniform scale with twist)
kwikius has joined #openscad
kwikius has quit [Client Quit]
<peepsalot> separate variables is more readable
<J1A84> is this ok?
<peepsalot> you haven't declared your new variables (no type given), and the comment in 1037-1038 should be removed.
<peepsalot> but looks good otherwise
castaway has quit [Ping timeout: 265 seconds]
<J1A84> 1045 and 1046 was meant with missing declaration of var  or ?
<peepsalot> haven't you submitted PRs before, do you build the code? i'd rather not be your personal human compiler over irc
<J1A84> these were PR  where i was told what to change by teepee or it was some html/json parts
<J1A84> and no i don't have the environment to build code
<peepsalot> well I see at least one typo in one of your var names
<J1A84> oh that is terrible ..  fixed now ..  I hope the automatic test will prevent any damage
<J1A84> should i try - or is it better if someone else copy this and submitting the PR?
<peepsalot> go ahead and submit a PR. sorry, I thought you had submitted c++ code before too
<J1A84> no  but i am trying Ü  thanks for your support and help!
<gbruno> [github] UBaer21 opened pull request #4371 (linear_extrude slices calculation) https://github.com/openscad/openscad/pull/4371
<J1A84> hmm seems to have issues  but  i didn't get any details
<J1A84> circleci wants a login
kwikius has joined #openscad
<peepsalot> J1A84: you should be able to see the github actions builds i think: https://github.com/UBaer21/openscad/actions/runs/3177895541/jobs/5178838133
<J1A84> yes   make file cant find the file  (error 2)   ..  this is all way over my head
kwikius has quit [Client Quit]
kwikius has joined #openscad
kwikius has quit [Client Quit]
<teepee> GeometryEvaluator.cc:1048:134: error: too many arguments to function ‘int Calc::get_helix_slices(double, double, double, double, double, double)’
<teepee> no worries, we'll get that sorted
<J1A84> i have just copied that line ..
<teepee> (not now though, 1am means already waaay too late again)
<teepee> then there's another version with different parameters, which would not be ideal. there's an extra node.scale_x
<J1A84> a found that error .. because i renamed it
<teepee> it also does not like the max()
<teepee> that may need std::max()
<teepee> at GeometryEvaluator.cc:1049:16: error: ‘max’ was not declared in this scope
<InPhase> double, double, double, double, double, double. Good thing there is so much type safety!
<gbruno> [github] UBaer21 synchronize pull request #4371 (linear_extrude slices calculation) https://github.com/openscad/openscad/pull/4371
teepee_ has joined #openscad
<gbruno> [github] UBaer21 synchronize pull request #4371 (linear_extrude slices calculation) https://github.com/openscad/openscad/pull/4371
<J1A84> oh this is automatically changing the PR .. thought the PR would be rendered void
teepee has quit [Ping timeout: 258 seconds]
teepee_ is now known as teepee
<J1A84> is this cost any computer resources  that actually need to be paid or is this all on githubs expenses?
<teepee> so far all free for open source projects
<teepee> talking the automatic builds
<teepee> now, 3d printing is cool, but at some point I do need to try building one of those https://twitter.com/MohitBhoite/status/1577024033937235968
<InPhase> J1A84: I left you two comments on the PR. Enjoy your comments. :)
<InPhase> J1A84: If you edit, add, commit, and push back to the same repository, it will update the PR.
kwikius has joined #openscad
<linext> so i got zipping and unzipping working in web assembly using JSZip: https://3dcustomizer.net/tests/zip-test.html
<linext> pick any zip file and it'll get unzipped into the console (F11)
<linext> so if a customizer requires more than one dependency, i'll send it as a .ZIP and unzip it into the Web Assembly FS
<InPhase> linext: So you can upload a whole project with libraries in one zip now?
<linext> well, it'll be stored on the server as a zip
<linext> the users can upload individual files
<linext> the dependencies will get loaded from a .ZIP for efficiency
<InPhase> Ok.
<teepee> indeed, it does. it's F12 though :P
<linext> lol
<teepee> it's even sending the file to the console, good thing I did only upload a 1 line text as zip :)
<InPhase> linext: Did we set you up with github.com/openscad/ space for this project? Because it's getting all fancy professional, so if you are interested in such a space, it's probably a good thing for you to get some. :)
<linext> it's pretty fast even with a lot of data
<linext> i was going to use this space: https://github.com/hackwin/3dcustomizer.net
<InPhase> Ok.
<linext> but i could see how my examples could be useful to other web assembly openscad users
<teepee> and it would be awesome to have a static copy for example / tutorial files for the main website
<teepee> e.g. no login or anything, just with the fixed files / projects to work and play with
<linext> yea, github.io
<InPhase> linext: If you want it in your own space for good control, I respect that. But it's looking like it could be a pretty sensible thing to stamp "official" as well if you prefer that.
<linext> sure, i wouldn't mind putting some code into the github repo, or openscad.org
<teepee> you can still have that repo in the openscad org if you want, I'm pretty sure you can be admin of that repo
kwikius has quit [Quit: Client closed]
<teepee> but you could not automatically deploy via github.io anymore, I think they only support one main deployment
<teepee> so if you want to use that, you may need that separate organisation
<linext> teepee: i did some work yesterday on improving the core demo: https://3dcustomizer.net/generate-html-from-params/
<InPhase> teepee: Really? I thought it was one per repository.
<linext> maybe something github.com/openscad/webassembly/examples
<teepee> InPhase: I think there's only one main deployment and that needs to be called <org>.github.io
<InPhase> Oh, right. I suppose that is the case.
<teepee> it seems to be possible to have other repos deploy too but those deploy as subfolders
<InPhase> Kind of restrictive there.
<teepee> the documentation was not really clear to me
<InPhase> Ah, right, at work we are in fact using subfolders matching the repository. I just haven't been paying attention to the urls. :)
<teepee> argh. must. go. to. bed. :)
<teepee> presentation meeting in 7 hours \o/
<InPhase> Good luck!
kwikius has joined #openscad
kwikius has quit [Quit: Client closed]
<gbruno> [github] UBaer21 synchronize pull request #4371 (linear_extrude slices calculation) https://github.com/openscad/openscad/pull/4371
<InPhase> *thumbsup*
<InPhase> lol.
<InPhase> A common sentiment.
<InPhase> See: http://www.catb.org/jargon/html/W/wave-a-dead-chicken.html and its related links. :)
rvt has quit [Ping timeout: 268 seconds]
* J1A84 is now looking for chicken bones