<InPhase>
Still takes a lot longer to do in the browser than locally, but it's down to 38 seconds for me, and comes out reasonable smooth in the browser as well with that.
<linext>
strange
<InPhase>
The back kind of has a weird moire effect going on in browser.
<linext>
your code breaks Pacifico and RubikBubbles
<linext>
Error: ERROR: all points for rotate_extrude() must have the same X coordinate sign (range is -0.38 -> 0.02)
<linext>
?
<InPhase>
Oh. Blame JordanBrown[m].
<InPhase>
Maybe.
<InPhase>
I was trying to use those position values, and they didn't work so I swapped them. Maybe that was nonsense to do.
<InPhase>
JordanBrown[m] is hereby absolved of blame.
<InPhase>
(I had swapped them because I had a rotate, but I was doing the translate before the rotate, and wasn't paying attention.)
<linext>
yep, works fine
<linext>
i need to get around to adding a pastebin to 3dcustomizer.net
LordOfBikes has joined #openscad
<InPhase>
And maybe a fork button.
<InPhase>
Well RubikBubbles sure slows down the display. :)
<InPhase>
But it works.
<InPhase>
I suppose the z-offset needs tweaking as well, as now that they have the right offset, they're wedged into that platform.
<InPhase>
linext: Bug report: Every time I edit the code, the parameters reset.
foul_owl has quit [Ping timeout: 248 seconds]
epony has quit [Remote host closed the connection]
<InPhase>
linext: I'd think some persistence would be more often desired. Perhaps a more clever method can be used to pick up when parameters themselves are changed in the code.
<InPhase>
It's particularly discernible here when I do something like change an offset, and the font alters. :)
epony has joined #openscad
<InPhase>
linext: This gives a more nicely aligned result. translate([-tm.position[0],-tm.position[1]+0.99,0])
<InPhase>
Oh, but then it's intersecting the bottom of the platform...
TheCoffeMaker has quit [Ping timeout: 268 seconds]
foul_owl has joined #openscad
<InPhase>
linext: I have officially obsessed over the details enough. Now it sweeps back with an arc for a more aesthetically pleasing side-view, adjusts off of the bottom, and auto-adjusts the platform to account for the longer arc. :) https://bpa.st/PKXA
<InPhase>
The subtlety of the effect is that it feels like it comes out of the platform with this approach, rather than like it's resting on top.
<InPhase>
I bet this would make a nice desk nameplate.
<InPhase>
:( The whole thing failed when I used a name with a y in it.
<InPhase>
I mean, technically it works just fine... but it's floatin gin the air held up by the y.
<InPhase>
Which is "correct" but less appealing.
<InPhase>
I guess I just need to change the family last name. That's all.
Friithian has quit [Ping timeout: 268 seconds]
Friithian has joined #openscad
TheCoffeMaker has joined #openscad
TheCoffeMaker has quit [Ping timeout: 260 seconds]
<JordanBrown[m]>
better is translate(-tm.position + [0.99,0]) or translate([0.99,0]-tm.position)
<JordanBrown[m]>
We've got this fancy matrix arithmetic stuff, might as well use it.
<JordanBrown[m]>
InPhase
ur5us has quit [Ping timeout: 256 seconds]
<InPhase>
I cannot bring myself to leave the z coordinate implicit.
<JordanBrown[m]>
At that point you're in 2D; there is no spoon. Er, z coordinate.
<InPhase>
Oh right.
<InPhase>
Well, I can bring myself to omit the z coordinate for 2D. :) And should have.
<InPhase>
But I have closed that file because I was messing with it too much. :)
<JordanBrown[m]>
If we decide that you should always use 3D coords, textmetrics should return the z=0.
krab_mozga has joined #openscad
<JordanBrown[m]>
But I don't think I would like that.
<JordanBrown[m]>
Even if we didn't have a special 2D mode, I would be OK with the notion of omitting the z coordinate when *I'm* thinking in 2D.
<JordanBrown[m]>
Or even omitting the y and z when I'm thinking in 1D :-)
<JordanBrown[m]>
That does look cool. Looks like a bear to print, though.
<JordanBrown[m]>
But maybe not if you drop it to 45° - then, I think, the max overhang is 45°
<JordanBrown[m]>
It's a little low; the bottom of the characters is embedded in the surface.
krab_mozga has quit [Ping timeout: 260 seconds]
<JordanBrown[m]>
You had a small bug. You translated the text by -tm.position to bring it down to the X and Y axes, but then you *also* translated the cube by tm.position. You double compensated.
<krab_mozga>
Seems not so hard to implement given there's plenty of thread code out there
<JordanBrown[m]>
Depending on what you need, I did something of a plumbing library a few years ago. My focus was not on making something printable, but rather on mocking up some sprinkler plumbing to make sure that I'd remembered all of the parts.
<krab_mozga>
i want printable. An adapter, parametric. Inner/outer thread, from diameter, to diameter.
<JordanBrown[m]>
I would also not be too optimistic about 3D printed stuff being able to hold much pressure.
<krab_mozga>
Seen it few minutes ago. You're on top for "openscad plumbing" in google
<JordanBrown[m]>
which is exactly how I found it :-)
<krab_mozga>
Regarding pressure and leaks that's expected
<krab_mozga>
Just hold two things together would be ok
<krab_mozga>
And there's printers that print metal I heard
<JordanBrown[m]>
I haven't done anything with threading myself, but I know there are threading libraries. The rest seems like simple geometry.
<krab_mozga>
:)
<JordanBrown[m]>
well, yeah, but I've got to believe that getting something printed in metal is going to be more expensive than buying the adaptor, unless it's an adaptor that simply doesn't exist.
<JordanBrown[m]>
Ah, but the margin wasn't parameterized, and I didn't see the need for your magic height*0.8 adjustment to the Y size of the platform, and I was able to simplify the rotates a bit... https://bpa.st/LB6A
<JordanBrown[m]>
OK, you're right, time to close that file :-)
<InPhase>
See?!
<JordanBrown[m]>
OCD R Us
<JordanBrown[m]>
OCD ᴙ Us
foul_owl has quit [Ping timeout: 240 seconds]
ur5us has joined #openscad
krab_mozga has quit [Ping timeout: 260 seconds]
foul_owl has joined #openscad
GNUmoon has quit [Remote host closed the connection]
teepee has quit [Remote host closed the connection]
GNUmoon has joined #openscad
teepee has joined #openscad
ur5us has quit [Ping timeout: 260 seconds]
<JordanBrown[m]>
Artemis I launch T-7m.
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #openscad
<J1A848188>
hm i have this "plumbing" adapter in my librarie "Anschluss"
ur5us has joined #openscad
<Junxter>
Artemis succesful !
TheCoffeMaker has quit [Ping timeout: 260 seconds]
TheCoffeMaker has joined #openscad
ur5us has quit [Ping timeout: 260 seconds]
lastrodamo has joined #openscad
foul_owl has quit [Ping timeout: 260 seconds]
foul_owl has joined #openscad
use-value has quit [Ping timeout: 256 seconds]
J1A848188 has quit [Quit: Client closed]
J1A848188 has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee has joined #openscad
snaked has quit [Ping timeout: 240 seconds]
buZz has quit [Ping timeout: 246 seconds]
J1A84818870 has joined #openscad
qeed has quit [Quit: qeed]
J1A848188 has quit [Quit: Client closed]
qeed has joined #openscad
Guest57 has joined #openscad
Guest57 has quit [Client Quit]
use-value has joined #openscad
use-value1 has joined #openscad
use-value has quit [Ping timeout: 252 seconds]
use-value1 is now known as use-value
buZz has joined #openscad
buZz is now known as Guest645
Guest645 is now known as buZz
qeed has quit [Read error: Connection reset by peer]
qeed has joined #openscad
Guest86 has joined #openscad
Guest86 has quit [Client Quit]
J1A84818870 has quit [Quit: Client closed]
J1A84818870 has joined #openscad
fling 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
<linext>
why does openscad print to stderr instead of stdout for Geometries in cache: 1, Geometry cache size in bytes: 2416, ..., Total rendering time: 0:00:00.014
<linext>
is it to hide it from the command-line user?
<InPhase>
I'm not sure it has been reasoned out too deeply, but there has been some division to facilitate better extraction of data for processing.
califax has quit [Remote host closed the connection]
teepee has quit [Ping timeout: 255 seconds]
<peepsalot>
hot take: there should be an unlimited number of user defined streams beyond stderr
califax has joined #openscad
<Friithian>
you can convince everyone to change :P
teepee has joined #openscad
<InPhase>
peepsalot: I think they're called "log files". :)
<InPhase>
But yeah, more structured streams could have merit. I've thought a bit about the notion of a vector of streams, or a dictionary of streams.
<InPhase>
And not just for processes, but also in language design.
<Friithian>
a vector of streams?
<Friithian>
interesting
<Friithian>
just write your own singleton class that mirrors std::cwhatever that outputs to a file :P
teepee has quit [Ping timeout: 255 seconds]
<JordanBrown[m]>
Log files are easy. The problem is when you have N distinct streams that you want to present to the human *if* it's a human, but that the caller may want to divert in different directions.
califax has quit [Remote host closed the connection]
<JordanBrown[m]>
You can do it with options, of course, but it would be nice to have a consistent mechanism like the stdout/stderr distinction.
<Friithian>
you could do some hacky thing with a wrapper class that takes some option
<Friithian>
but unless how processes work fundementally changes idk what can be done
teepee has joined #openscad
<JordanBrown[m]>
Yes, too many programs have hardwired into them the notion that 0,1,2 are reserved and 3+ are open.
califax has joined #openscad
<JordanBrown[m]>
The one I keep finding a need for is a "progress reporting" stream. Standard out is the data you want to process, standard error is, well, errors, and what do you do with "xx% complete" and "now doing this step" and things like that that are neither?
<Friithian>
isn't it built into the kernel that processes automatically have fd 0 1 and 2 being in, out, and err?
<JordanBrown[m]>
no
<JordanBrown[m]>
Purely user-mode convention.
<Friithian>
my systems programming prof is disapointed in my memory
<Friithian>
disappointed
<JordanBrown[m]>
I mean, who knows what assumptions people have put into various kernels over the years, but in the original stuff no, those streams are set up by the very first components in user-mode startup, and also by things like per-terminal login infrastructure and sshd that need to reassign them to different terminals, and of course the shells manipulate them.
<JordanBrown[m]>
But for us probably the answer is options. In particular, the "-out foo.echo" mechanism should capture *only* echo output. (I might be misremembering the exact option; I'm not checking.)
<JordanBrown[m]>
But we should also be careful that errors, and only errors, go to stderr. I think we get that wrong.
<Friithian>
yeah stderr is used too much for non-errors
<JordanBrown[m]>
and stdout is used too much for errors :-)
<Friithian>
so, what you're saying is we need a new standard…
<Friithian>
927
<JordanBrown[m]>
Yes, 927.
<JordanBrown[m]>
I've occasionally thought about what it would take to add a fourth reserved file descriptor, and I think it ends up being that all programs everywhere have to change at the same time.
<Friithian>
what's the max number for fds?
<JordanBrown[m]>
System-dependent
<Friithian>
heck
<JordanBrown[m]>
Traditional UNIX, 20. But basically everybody has increased that.
<Friithian>
yeah no real solution without a new standard that *everyone* will follow
<JordanBrown[m]>
I know that in Solaris for a long time we had a wall at 256, because the field in the FILE structure was one byte and the FILE structure is burned into practically every executable everywhere.
<JordanBrown[m]>
(because several of the important stdio functions are implemented as macros.)