<InPhase>
kintel: I have many open source projects with no users! I can teach you the ways of this mysterious art.
<juri_>
lf94: we did something like that at fosdem, .. 3 years ago.
<lf94>
nice :)
<lf94>
are there videos? :o
<teepee>
not from the meetup, the talk is linked in the channel topic
<lf94>
oh nice
<juri_>
i was kindof embarassed when kliment said "the implicitcad developer is right here!"
<teepee>
:)
<lf94>
lol
<teepee>
the world definitely needs more kliments
<lf94>
I love to see us apply our code cad knowledge to a real industry problem and get paid for it
<juri_>
indeed! :)
<lf94>
I would love*
<juri_>
lf94: i'm trying. today was not a good day, toward that effort.
<lf94>
like design a whole f'ing skyscaper
qeed_ has quit [Quit: qeed_]
<lf94>
in record time
<juri_>
there's kittycad. they're.. something. locking up whatever code they can, sticking an API in front of it, and charging for access.
<lf94>
lol
<lf94>
are you in their discord? im the only one talking in #discussion.
<lf94>
not gonna lie kittycad looks pretty grim
<juri_>
nope. i watch from a distance.
<lf94>
like... i dont know how this is a product
<juri_>
they had the opportunity to hire me, and passed. i think they didn't like my softare politics.. or my HASKELL!. ;P
<lf94>
irevdev asked me if i was looking , but i was already employed
<juri_>
their backer, jordan noone definately knows his stuff, tho.
<lf94>
it wouldve fit my skillset (webdev, typescript, rust)
<lf94>
lmfao
<lf94>
is that sarcasm or?..
<juri_>
well, he knows the pain of going it alone on slicing algorithms. ;)
<lf94>
oh did he make slic3r or something
<juri_>
no, but he's had to do some gcode-by-hand in interesting situations. building space rockets.
<teepee>
not slic3r
<lf94>
sounds like normal CNC stuff
<teepee>
alessandro is Arduino now I believe
<lf94>
a guy i know with zero software experience did gcode for his CNC job
qeed has joined #openscad
<lf94>
not all gcode is equal B)
<teepee>
"Leading products & strategy @ Arduino for the maker community"
<lf94>
The original CEO also ditched ship
<lf94>
from kittycad
<kintel>
I once tried to bootstrap a startup based on OpenSCAD tech, but I learned the hard way that writing software is easy, making people part with cash is hard. Next time I start from the other end (hire a CEO first) :)
<teepee>
well, what I heard author of good old skeinforge never really saw an actual machine
<lf94>
kintel: yea man you gotta have the money plan first :D XD
<juri_>
kintel: i wonder if you'd like my HASKELL! any more than kittycad did. :P
<lf94>
also kintel, i think in a situation with a new tech, helps to be like "yo, ive got a team of guys who love this shit"
<lf94>
*arms crossed chest puffed out energy*
<lf94>
i wouldnt mind working at an openscad startup for part time to say it has a team
<lf94>
fun side money
<juri_>
gathering a team is easy. putting together a business plan is difficult. proving the plan will work to an investor? that's hard.
<lf94>
no investors. just clients.
<lf94>
i swear i bet it could work if you poke some big people
<lf94>
and then the ycould say
<lf94>
"made with code and ai"
<lf94>
(we can pretend to be ai)
<kintel>
teepee The skeinforge author got really into bitcoin in 2010, and kind of disappeared after that. I assume he lives on a yacht now ;)
<juri_>
lf94: actually, i'm making my software work especially for AI...
<juri_>
i found out that i can productively use chatGPT halucination to imagine what slicing-in-scad would look like, and have been using that to write a SCAD derivitive for my slicer.
<teepee>
kintel: I hope he is, seems not a good plan nowadays anymore, even with twitter pushing dogecoin
<lf94>
CCC - "Code CAD Corporation"
<lf94>
C^3
<lf94>
etc
<juri_>
CCC is taken. :D
<teepee>
that's taken
<teepee>
:)
<lf94>
yeah yeeah
<lf94>
chaos communication congress
<lf94>
i know
<lf94>
the fun -> destroyed
<juri_>
lf94: don't you have more implicitcad to rip off? :P
<lf94>
i dont think implemented anything close to implicitcad have i? xp
<lf94>
ive just taken libfive and smashed it into everything
<juri_>
functionally, you've done basically the same thing as implicitcad's haskell interface, but.. :D
<InPhase>
juri_: Now I'm curious about the benchmark comparison between this sdf-in-openscad and implicitcad. My bet is implicitcad wins because it was built around this and optimized for it, whereas this was a quick hack calling interpreted functions. But it would still be interesting to see numbers.
<juri_>
*bookmarks*
<juri_>
InPhase: we'd completely cheat, too. we parallelize.
<lf94>
Yes, implicitcad is most likely faster. Because GHC > OpenSCAD interpreter speed.
<lf94>
Honestly GHC is pretty damn fast.
<lf94>
juri_: you've never seen this??
* lf94
squints hard while saying it
<juri_>
nope!
<lf94>
whaaaaaaaaaat
<lf94>
this is *the* resource for this stuff
<InPhase>
lf94: I'd seen that before but forgot about it. Scrolling through I see several of these are more compact than the first drafts in my head.
<lf94>
iq is a legend, he made the space
<juri_>
i'm going to have to check my implementations.
<InPhase>
lf94: He is certainly a rare genius within the field.
<lf94>
juri_: dont tell me you don't know about shadertoy.com
<lf94>
FULL of people using SDFs.
<lf94>
and there's this secret discord full of 16 year olds creating insane shaders
<juri_>
lf94: re: GHC speed: remember, implicitcad has two modes: CSG + raw SDF in haskell, and CSG in OpenScad(ish).
<lf94>
it's like illumanti training level shit
<InPhase>
juri_: Hopefully you've seen some of Inigo Quilez's videos.
<juri_>
lf94: so, when speed testing implicitcad vs openscad, there's lots of angles, and only some of them make sense.
<lf94>
nah, you test the best implicitcad configuration with the best openscad one
<lf94>
tackling the same problem using the same method (csg or sdf, whatever)
<juri_>
i mean, do you test the scad engines? mine will probably win, but is *basic*. do you test the SDF engine? mine will win, but that's because ghc rocks.
<lf94>
easy peasy
<InPhase>
lf94: And quickly skimming through, I see this video of his explains the normal vector calculations that would help with a good sdf knurling algorithm. https://www.youtube.com/watch?v=BFld4EBO2RE
<juri_>
my brain was already recently cooked by charles gunn. ;)
<juri_>
hense, hslice using projective geometric algebra.
<lf94>
InPhase: yee
<juri_>
watch t he 2019 projective geometric algebra talk at siggraph. it'll change your mind about linear algebra, and make you forget quaternions were a thing. ;)
<lf94>
InPhase: I think general knurling is easy, but how do you be specific?
<lf94>
like "only knurl this section"
<lf94>
eh.
<lf94>
answered my own question
<lf94>
-> bezier patch
<Lagopus>
appreciated the answer, thanks
fedorafan has quit [Ping timeout: 248 seconds]
alexmaass has joined #openscad
<alexmaass>
Hey, I just installed OpenScad and BOSL, I tried to open an existing scad file but it has some errors, "Can't open library 'external/BOSL/threading.scad'." and "Can't open library 'external/BOSL/shapes.scad'."
fedorafan has joined #openscad
<InPhase>
alexmaass: Sounds like it is expecting to find that library in ~/.local/share/OpenSCAD/libraries/external/BOSL/threading.scad
<InPhase>
alexmaass: Is that where it is located?
<InPhase>
alexmaass: I typically like to use symlinks inside of that libraries directory to accommodate expected locations, while still keeping the libraries located at the place of my preference.
<alexmaass>
InPhase uhh im trying to check there, isn't it supposed to start with something like C:\ for file addresses?
<InPhase>
Oh, this is Windows?
<alexmaass>
yeah
<InPhase>
Yeah, there's a spot for that. I have to look it up.
<InPhase>
My Documents\OpenSCAD\libraries
<alexmaass>
huh there's nothing in my documents
<InPhase>
You can make it.
<alexmaass>
ive been in the libraries folder tho but it's in program files
<InPhase>
See here, there's an "installation" libraries, anda "built-in" libraries location.
<alexmaass>
that was weird
<alexmaass>
C:\Program Files\OpenSCAD\libraries was where I installed it
<InPhase>
Also you can define your own third library location, but on Windows messing with the environment is a pain, so that's probably not idea.
<InPhase>
s/not idea/not ideal/
<alexmaass>
so I just copy it to there then, ill copy the mcad library that was included there to be safe
<InPhase>
It'll read from both locations.
<InPhase>
You won't need two copies.
<alexmaass>
but I already had the BOSL library there in program files and it didnt work so thats why i sought help
<InPhase>
Was it under an "external" directory?
<InPhase>
That's not normal, but your script seems to expect it.
<alexmaass>
nope, just in libraries it seems
<InPhase>
You can also just edit that file and remove "external".
<alexmaass>
yeah so this is the scripts fault then
<alexmaass>
oh ill remove that then that's way easier
<InPhase>
Maybe the script intended it to be in the local directory of the script under an external subdirectory there.
<InPhase>
That would also work, but typically you want one installation of each library.
<alexmaass>
actually wait this is a lot of code I'll just make a folder with the library
<alexmaass>
so where should the whole location be? just to be 100% safe and thorough
<InPhase>
For that particular script, given what you said, I think: My Documents\OpenSCAD\libraries\external\BOSL\threading.scad
<alexmaass>
perfect time to see if it works
<InPhase>
If you go to use BOSL again with another script later, you might need to move it or create a second copy.
<InPhase>
Standard would be to have "BOSL" right under "libraries".
<alexmaass>
I think it crashed lmao
<InPhase>
Is this a large design on a system with low RAM?
<alexmaass>
nvm, I did something really stupid
<InPhase>
Ok. :)
<alexmaass>
ignore that last message
<alexmaass>
there is one problem though, it is running really slow all of a sudden
<alexmaass>
I guess because it's actually doing work now instead of failing to execute code
<alexmaass>
what is the easiest way to make it run not like a potato? bc my computer is actually pretty good
<alexmaass>
thanks so much for your help though this pretty much fixed the problem I was having, I will tell the person who wrote this script that having it be set to external is kinda problematic bc it is uncommon
<InPhase>
alexmaass: Well, the primary way to make things run faster is with better model design.
<alexmaass>
lmaooo that's not an option here
<InPhase>
However there is also the Nightly release, which has some major performance improvements over the last stable release.
<InPhase>
But you have to turn on the experimental performance improvements in the preferences, with the first two options marked "fast-csg".
<InPhase>
These are still technically experimental, but I think we're pretty close to removing that experimental flag on those.
<InPhase>
They will probably go into the next stable release and default to on.
<alexmaass>
interesting, I might do that in the future but this does run and it's pretty variable place this program
<InPhase>
If you pick up working with the scad language in the future, there are many different ways to make things, some of which end up radically faster than others. Many of my fancier designs took 30 minutes to render when I started. Now most of them are seconds up to a minute.
LordOfBikes has quit [Ping timeout: 255 seconds]
<InPhase>
Although fast-csg makes this even easier, giving 5-10x improvement for a lot of models. Upcoming work with the Manifold library looks like it's potentially giving another 5-10x improvement, but this is still in an unstable state.
<InPhase>
lf94: I watched through that Inigo Quilez landscape video, expecting it to be a bit boring as it's just a landscape. But he sure illustrates a lot of impressive techniques for fine tuning.
LordOfBikes has joined #openscad
<alexmaass>
is there a way to set the viewport size?
<alexmaass>
I can just crop it actually with window stuff, don't think it's called crop though that gui function of windows
J2384 has joined #openscad
J23 has quit [Ping timeout: 260 seconds]
<InPhase>
alexmaass: Yeah, under Window, Viewport Control. But only in the Nightly release.
<InPhase>
Prior to this we just adjusted the window size. You can also adjust the sizes of the elements inside the program with gripping and changing their relative size, such as making the Viewport bigger and the console smaller, or going to Window, Hide Editor.
<InPhase>
The gripping for relative sizes is always near the edges between what you want to adjust.
<InPhase>
lf94: Oh. I forgot the sdf wasn't supposed to work with the gui and accidentally opened the gui tonight, and it worked in the gui.
<InPhase>
lf94: I feel like something is a bit amiss there in that preview result. But that's a blend.
<InPhase>
lf94: I made one mistake in transcribing the example from the libfive page, and there also appears to be a math error on the example on the libfive page causing it to fail for spheres of any size other than 1. :)
<InPhase>
But I slapped in a signed squaring to resolve that part.
<InPhase>
Or at least approximately resolve.
<InPhase>
I was expecting a smoother result than that though. Something must be going wrong at the transition.
alexmaass has quit [Quit: Client closed]
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #openscad
<kintel>
guso78[m] If you're still struggling with GL issues, I found that apitrace works quite well with OpenSCAD, also in offscreen mode: https://github.com/apitrace/apitrace
<lf94>
InPhase: are you using inigo's smooth blends
<lf94>
also lol
<lf94>
@ the gui randomly working
<lf94>
InPhase: it may be an error from not using a perfectly square bounding box.
<lf94>
kintel: I feel in your talk you couldve shown more pictures!
<lf94>
Great talk anyway :)
fling_ has joined #openscad
fling has quit [Ping timeout: 255 seconds]
ur5us has quit [Ping timeout: 252 seconds]
fling_ is now known as fling
<kintel>
lf94 Thx. It's surprisingly time consuming to come up with good pictures, and I tend to lose patience as I don't give talk too often..
<lf94>
I think just submitted user pictures couldve been nice to see demo openscad's abilities
<lf94>
i understand every bit. but imagine the work inigo had to do beforehand to explain it this simply.
eponym has joined #openscad
epony has quit [Ping timeout: 268 seconds]
eponym has quit [Remote host closed the connection]
epony has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
J2384 has quit [Quit: Client closed]
J2384 has joined #openscad
epony has quit [Ping timeout: 268 seconds]
epony has joined #openscad
ur5us has joined #openscad
castaway has joined #openscad
rawgreaze has quit [Ping timeout: 250 seconds]
rawgreaze has joined #openscad
ur5us has quit [Ping timeout: 260 seconds]
guso78 has joined #openscad
guso78 has quit [Ping timeout: 260 seconds]
snaked has quit [Quit: Leaving]
TheAssassin has quit [Ping timeout: 255 seconds]
TheAssassin has joined #openscad
peeps has joined #openscad
peeps[zen] has quit [Ping timeout: 268 seconds]
guso78 has joined #openscad
<guso78>
teepee, all the "odds" of python you are afraid off are coming from Modules/posixmodule.c . If we manage to statically link python with these OS related functions disabled, the danger is gone.
kintel has joined #openscad
guso78 has quit [Quit: Client closed]
gknux has quit [Quit: ....and i am outta here....]
<guso78>
i am not focusing on textures right now, but this tool is still interesting. maybe i peek into that
teepee_ has joined #openscad
<kintel>
guso78 At least it will record every GL call made, so with a small example, you may be able to spot problems
<guso78>
this is exactly what i need.
<kintel>
I'm just using it to trace OpenCSG. I'm very tempted to just rewrite the whole thing right now, but perhaps I'll wait for GSoC :)
<guso78>
first attampt was: i added a printf next to each gl call, collected the output and used the output to form a new c++ file.
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
TheAssassin has quit [Remote host closed the connection]
<guso78>
but it became very complicated especially with the VBO's ...
<guso78>
can this tool also track other things than gl, maybe File I/O e.g. ?
<kintel>
The VBO code is crazy complicated right now due to all the variations. I'm sure it can be rewritten into something a bit more streamlined soon
TheAssassin has joined #openscad
<kintel>
I think it only does GL calls. There are other tools available for tracking system calls
<guso78>
yes, i have watched openscad to assemble a 16 KB VBO buffer by adding portions of 8 Byte and 24 Byte each, but i dont know the exact numbers anymnore admittedly ...
<guso78>
but apitrace is definitely worth looking into it. thx !
<guso78>
today a the parcel with my "new computer" with a native OpenGL 4.4 support on motherboard was delivered. its likely that the issue resolves without any further action ....
<kintel>
nice, but keep the old computer around. Making stuff work on older hardware is always good, since OpenSCAD users don't always have new stuff either
<buZz>
if there's any gles2 tests needed on my >10yo armv7 phone, lemme know
<buZz>
:P
<kintel>
(we still have OpenGL 2.0 as the minimum requirement :))
<buZz>
sure, for -now- ;)
<buZz>
its kinda funny how opengl 3 is so much more 'gles-alike'
<kintel>
buZz it will take a while, but things are in motion
<buZz>
<3 until then, gl4es works pretty fine for it
<buZz>
or even just mesa gl
J2384 has quit [Quit: Client closed]
J2384 has joined #openscad
guso78 has quit [Ping timeout: 260 seconds]
TheAssassin has quit [Quit: No Ping reply in 180 seconds.]
TheAssassin has joined #openscad
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
Guest66 has joined #openscad
qeed_ has joined #openscad
<JakeSays>
hey do any of you know anything about 'welding' plastic?
<L29Ah>
yes, but you'd better ask in #reprap
qeed has quit [Ping timeout: 255 seconds]
<kintel>
Does anyone know of good diagrams that illustrate state and/or dataflow of modern OpenGL, e.g. what's left of the fixed-function pipeline if we're using GLES/WebGL/Core profiles?
<lf94>
kintel: I thought modern has no fixed pipeline or something
<lf94>
you setup fragment, vertex, shaders, and then load the mesh and data into it?
<kintel>
there's a ton of fixed functions left
<lf94>
That was my experience with WebGL at least
<kintel>
e.g depth test
<lf94>
Erm, no - WebGPU.
<lf94>
Ah ok
<kintel>
alpha blending
<kintel>
clipping
<kintel>
etc..
<kintel>
too much to keep in mind basically, hence the need for a diagram :)
<lf94>
I'm not too familiar with graphics in general, I thought the "pipeline" was what I described x)
<kintel>
devil is in the details
<lf94>
Surely there's such a diagram
<lf94>
I'll try to look too
<kintel>
There are tons of shitty diagrams, just vaguely describing the pipeline
<lf94>
You off today / this week or something? You're active a lot during the day lately :p
<kintel>
Parental leave, I hack while the baby sleeps :)
<lf94>
hell yea
<lf94>
have more babies so openscad can keep moving forward B)
<lf94>
I decided to take today off - was up late
<lf94>
Also, that freezing rain
<kintel>
Bit I'm finally doing graphics at work, so I can double-dip a bit on the theory
<JakeSays>
L29Ah: done :)
<lf94>
On a tangent: have you seen MagicaCSG?
<lf94>
I've seen this program before about a year ago, but holy shit... it's nuts
<kintel>
I haven'
<kintel>
..but: Requirement: Win64 : (
<kintel>
Living in screen space must be so much fun. I used to code demos on the Amiga; was a different reality than having to deal with concrete geometry
greenbigfrog has quit [Ping timeout: 276 seconds]
greenbigfrog has joined #openscad
<lf94>
kintel: yeah.
<lf94>
also jesus. giant flash of colors outside then the power went out
<lf94>
mustve been a giant arc
<lf94>
so my plan for my viewer: gradual increase in mesh resolution
<lf94>
you specify a range, and then whenever there's a valid js AST, it runs the mesher
<lf94>
I should also maybe try meshing "inside out"
<lf94>
actually, eh, libfive does "intervals" so maybe not necessary
<lf94>
(no idea what it actually means, other than skips over large spaces i think)
J2384 has quit [Quit: Client closed]
J2384 has joined #openscad
<kintel>
Do you know what algorithm libfive uses for meshing?
<lf94>
yes, it has 3
<lf94>
isosurface something, marching cubes, and "hybrid"
<juri_>
interesting. we're just using marching cubes.
<lf94>
marching cubes is just fast and efficient
<lf94>
and "simple"
<lf94>
really checks off all the boxes.
<juri_>
trust me, it has its corner cases.
<juri_>
generating leaky geometry being one of its failures.
<lf94>
is there something as good as it?
<juri_>
not yet, that i'm aware of.
<juri_>
i'm pretty deep in 'maintainer, distracted looking elsewhere' mode, tho.
<juri_>
so if anything popped up in the last 3 years, i would probably have missed it.
J2384 has quit [Quit: Client closed]
J2384 has joined #openscad
<kintel>
marching cubes is just pure quantization isn't it? ..if it's the good old algo from the 80s
<lf94>
kintel: wouldnt any algorithm be that
<juri_>
i'm pretty sure we're using a modified marching cubes. we evaluate F at the four corners of a square, and the center point to know where to place the edge.
<lf94>
it's just trying to find the "best fit triangle" for some points that intersect a cube
<kintel>
I guess any algo would have an element of quantization, in the same way ray marching would, but a great algo would be able to output a cube as 12 tris. Developing a great algo is kind of the holy grail in this domain :)
<lf94>
something is arcing so hardcore outside
<lf94>
like every 30 seconds
<juri_>
kintel: patches welcome? :P
* juri_
giggles to herself. :)
<lf94>
kintel: libfive can do this iirc
<lf94>
i swear ive done it...
<lf94>
maybe it was a dream
<kintel>
heh, one day I'll look into it :)
<lf94>
does anyone know of an stl viewer that reloads on file change?
<juri_>
i think in theory its possible.. but you'd need your cube to be near to (0,0,0), because the further you are from origin, the more floating point is demons.
<lf94>
im learning quickly to spend my time writing a viewer may be a waste of my day
<kintel>
lf94 doesn't OpenSCAD do that?
<lf94>
im looking for something that's very focused on being an stl viewer :p
<lf94>
I guess I should just modify one to do this
<juri_>
there is a dedicated geometry viewer for implicitcad. that's fun.
<kintel>
OpenSCAD, but close the editor and log panes :)
<juri_>
openscad, but close opencad. :)
<lf94>
This is what I'd like to do: type some stuff. editor detects no typing for 3 seconds -> calls a simple shell script that 1. checks if there's a valid js AST 2. runs the script 3. pipes the stl to the stl viewer
<lf94>
but it all has to happen very fast
<juri_>
getting geometry very fast is hard.
<juri_>
i mean, you could modify the implicitcad.org editor..
Guest66 has quit [Quit: Client closed]
Guest66 has joined #openscad
<juri_>
but i think that'd only work because i put a big computer behind the website.
<Guest66>
Hi there. I got into openscad a bit recently, and had the need for a pipe-drawing-by-config utility. Could not find the one I had in mind, so made the one I wanted, https://github.com/fresidue/compound-extrude . Seems like it ought to be redundant, but you never know..
<InPhase>
Looks like a good clean usage interface.
<InPhase>
Guest66: I bet the next thing users would ask for is a way to make it hollow.
<InPhase>
Although maybe that already works if you feed it a loop instead of a circle?
<Guest66>
it takes any 2D geometry and extrudes it
<InPhase>
Sounds good. :)
<InPhase>
I actually did something conceptually similar, but also not similar, because what such a thing really comes down to is the usage API for defining the thing. And yours is direct to the point of pipes. The thing I did is in the top middle of the calendar here, in the Happy Grass design: https://openscad.org/advent-calendar-2022/
<InPhase>
Mine, if you'll note, does not achieve a watertight goal because it is too flexible in what it allows.
<kintel>
lf94 Point3: Write the STL to disk. An existing OpenSCAD instance with import("file.stl") should be able to auto-refresh
<kintel>
..but I haven't imported stls in a while so I don't know if that's still working : /
<InPhase>
Guest66: Also I'm not doing any rotate extruding, which is what is giving you those clean curves.
<Guest66>
yep, that's right :)
<Guest66>
didn't want to have to get down into the mesh. Wasn't sure how to really
<InPhase>
Although for pipes that fit into the normal bending structure of commercial pipes, the approach you are using is superior because it's simpler for that sort of thing.
<Guest66>
nice! Thanks for the tip. I pretty much just made it how I wanted to use it, adding segment by segment in the viewer
<Guest66>
but am not really sure what if anything to do with it now..
<InPhase>
Well, thingiverse used to be the place to release these things. You still can, although thingiverse has declined notably as a site, and is used a lot less now. github is currently a popular place to put OpenSCAD libraries. Printables is also rising in popularity, although it seems to be more often for printable end products rather than libraries.
<InPhase>
I've personally been migrating all my stuff I'm actively maintaining to github, although my older stuff is still on thingiverse.
<InPhase>
There are still people regularly finding my stuff on thingiverse. I get emails about people forking off customized designs from mine once in a while still, for the more popular stuff.
epony has quit [Remote host closed the connection]
epony has joined #openscad
<lf94>
I feel like we need to come up with a measurement format
<lf94>
then these can be rendered efficiently across code cad programs
RichardPotthoff has joined #openscad
<lf94>
this would also help facilitate creating blueprints
<Guest66>
Well that's a bit sad that thingiverse is fading. I will post it there, although I wasn't sure it was appropriate since it was just a util lib and not a specific Thing as such..
<Guest66>
by the way, is there a reason why there is no fileIO in openscad?
<lf94>
security
<juri_>
file IO in a functional system gets complicated... and end users already have a lot to learn with functional geometry.
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #openscad
<Guest66>
but e.g. outputting variables in, say, strictly a JSON format could be really really useful
<juri_>
you can pass those in on the command line, i think.
<Guest66>
I was thinking along the lines of saving transformation matrices for relevant geometric features on an as-needed and ongoing basis. Save all the builtin geometry logic.
guso78 has joined #openscad
<rvt>
If you ask chatGPT what the following does How would you describe the following object when generated in OpenSCAD?
<rvt>
difference() {
<rvt>
cylinder(d=10,h=100);
<rvt>
cylinder(d=5,h=100);
<rvt>
}
<rvt>
It will end with : In other words, the resulting object is a "pipe" or "tube" with a diameter of 10 units and a thickness of 2.5 units (since the radius of the hole is 2.5 units).
<lf94>
ok
guso78 has quit [Ping timeout: 260 seconds]
guso78 has joined #openscad
ur5us has joined #openscad
guso78 has quit [Quit: Client closed]
castaway has quit [Ping timeout: 252 seconds]
aiyion has quit [Ping timeout: 255 seconds]
<InPhase>
rvt: I would define it, correctly, as an undefined behavior because it is not a manifold design.
<InPhase>
rvt: But I happen to know it is a particular arrangement of a non-manifold design that will come out as a manifold result by current CGAL versions anyway.
aiyion has joined #openscad
<InPhase>
rvt: If I ignore the overlap issue with it, then I would accept calling it a pipe or a hollow cylinder. Although it is thicker walled than I would usually use the word pipe for.
teepee_ has joined #openscad
<InPhase>
rvt: Also admittedly the term "hollow cylinder" can be ambiguous because that is also the appropriate term for a cylinder which is hollow inside but closed on the top and bottom.
<InPhase>
rvt: You could also call it a cylinder with a centered bore through-hole.
<InPhase>
"bore" can be omitted as that's by analogy to the machining world, but it invokes a visual imagery of a rounded hole, which helps.
<InPhase>
rvt: There, did I overthink the question sufficiently? ;)
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
<InPhase>
Guest66: So we have no intention of adding file writing. But there have been discussions about formatted printing to replace echo. That would be something we can consider for generating reports as console output, and it could include json. With the recent experimental object work, this might get much easier to do.
<InPhase>
One thing I would also consider is a special $json variable to which an object could be assigned, which would facilitate a json output via the console or command line analogous to features for exporting an stl after render.
<InPhase>
It is just important that exporting a file be an explicit act of the user running the script.
peepsalot has quit [Quit: Leaving]
snaked has joined #openscad
<lf94>
so sad my laptop is gonna die
<lf94>
been without power now since noon
<lf94>
probably no power until the weekend
<lf94>
ive just found my motivation to add piping to erizo...
<InPhase>
lf94: Your electricity is out?
<lf94>
yeah
<InPhase>
Storms?
<lf94>
im running off my phone data and the rest of this laptop battery
<lf94>
yeah, really bad freezing rain
<lf94>
like terrible terrible, tons of tree branches snapped everywhere
<lf94>
ive got my wood stove going and candles lit up
<lf94>
gonna be reading tonight I guess
<InPhase>
lf94: Ah. Well, I keep a car-powered universal laptop charger around for just such a scenario.
<InPhase>
lf94: Maybe go back in time to last week and order one of those.
<lf94>
ah yes
<lf94>
I was thinking maybe my subaru has an outlet
<lf94>
but nope
<lf94>
send me some wireless electricity
<lf94>
put your microwave on your roof and ill put mine up there too to receive
<lf94>
also funny joke i thought about today
* lf94
puts on george carlin voice changer
<lf94>
people are always talking about source code.
<lf94>
how come no one talks about where the code's going? what happened to destination code?
<InPhase>
Maybe if you practice your George Carlin voice a little more. ;)
<lf94>
i suppose "open destination software" wouldnt sit right with everyone.
<lf94>
all those binaries would be free as in pizza. it's what everyone wanted from the free software movement. real free software!
<lf94>
and that's it, i'm sure there's some better stuff to write around that :) XD
<lf94>
also some joke about "the door ajar" source code. not quite open. not quite closed.
<InPhase>
Open destination software would be bytecode, so it makes sense that the door would be a jar.
<lf94>
BA DUM TSSS
<lf94>
that was fucking great
<lf94>
i was going to add: it's the perfect trap for all those FOSS fans. microsoft is ready to slam the door shut on their fingers any day now
<lf94>
im just reading over and over what you wrote
<lf94>
that was gold
<lf94>
im building up a long file of software related jokes like this
<lf94>
then once a year, release it
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]