<InPhase>
linext: Then branch() branch() branch() s(); becomes branch(3) s();
<JordanBrown[m]>
testing... are these messages getting out?
<InPhase>
linext: Oh, and I see your s is the bar, so maybe work it in there so you don't need branch(1), branch(2), and so on, but it's all done recursively in one go.
<InPhase>
linext: It can then be simplified to branch(d) { if (d>0) { translate... rotate... { children(); branch(d-1); } } }
<linext>
i don't see any output 3d object
<linext>
oh, it's 2d square
<JordanBrown>
Mine is 2D because your original was 2D.
<linext>
i see
<JordanBrown>
The same scheme would apply to 3D.
<JordanBrown>
but of course the rotation is all different.
<linext>
i started this morning trying to do a 3d tree and the trigonometry was confusing
<InPhase>
J2235: lol. I just realized that because my bubble trap comes after your eyes design on the calendar, it looks like a deformed eye at first glance. :) It didn't look like that before it was in the calendar.
<JordanBrown>
Here's a variation that will put a desired "leaf" at the end of the smallest branches: https://bpa.st/E7GQ
<JordanBrown>
Having the branch itself be supplied as a child is a little trickier, mostly because there's no direct way to tell how tall it is; you'd have to supply that as an argument.
<InPhase>
I totally failed at what I was trying to do with the tree, but it is accidentally pretty. :) https://bpa.st/HZZA
<InPhase>
linext: Did you see my line above? That will modify your existing design to recursive.
<JordanBrown[m]>
Ah, but now I see that we are looking down on the model.
linext has quit [Read error: Connection reset by peer]
<JordanBrown[m]>
Are you sure that you know what you are doing with that for() loop? I would remove it until you are sure that you understand what's going on with the recursion. It's not clearly wrong, but it will certainly make things more complicated.
linext has joined #openscad
<linext>
my pc almost crashed
<linext>
i put 100 in for the number of branches
<JordanBrown[m]>
Exponential recursion will do that to you.
<JordanBrown[m]>
Exponential anything will do that to you.
<linext>
17GB later, hexchat closes by itself, explorer.exe restarts, windows reports running very low on memory
<linext>
i have 32GB in this machine and openscad used 17gb
<JordanBrown[m]>
But you don't actually have any branches in this model. You only have leaves.
<linext>
yes, that's true
<JordanBrown[m]>
I need to go off and pretend to work for a while.
TheAssassin has quit [Quit: No Ping reply in 180 seconds.]
TheAssassin has joined #openscad
Guest5990 is now known as buZz
<linext>
if openscad exports 3MF is the color info included?
<linext>
if so, maybe 3dcustomizer.net could display 3MF using three.js and have a JS function to convert from 3MF to STL
<JordanBrown[m]>
no
<JordanBrown[m]>
Only preview understands color. Color is lost on render. And preview doesn't produce a 3D model.
<linext>
yea, i exported and got that result
<JordanBrown[m]>
I have some ideas for color support but I doubt that I will get to them any time soon, and they may well involve undesirable costs.
<JordanBrown[m]>
and I have never touched that end of the program and ...
<linext>
i suppose there's always exporting separate STL files with some position and color data
<JordanBrown[m]>
Right, you generate N properly aligned models, one for each color.
<JordanBrown[m]>
Probably you generate them from one file, telling it which color to generate in this run.
<JordanBrown[m]>
But you will have to be careful with your design.
<JordanBrown[m]>
You should not need out-of-band position data, because STLs are in a particular position.
<linext>
ah, when i load STLs using the view STL plugin, it always puts them centered
<linext>
which is annoying
<JordanBrown[m]>
That is, if you generate a cube with its origin at [10,10,10], then the cube in the STL has its origin at [10,10,10]. You will need to ensure that your slicer doesn't drop it to the bed.
<JordanBrown[m]>
But one assumes that multicolor-capable slicers will let you do that sort of thing easily.
Joel has joined #openscad
LordOfBikes has quit [Ping timeout: 272 seconds]
<InPhase>
teepee: That's better than the tree chatgpt made for me.
<InPhase>
linext: I don't know what you did in 601R6PD, but it looks awesome. :)
<InPhase>
JordanBrown[m]: Are you still doing a Life for the calendar?
<InPhase>
I'm about to start working again on the caterpillar.
<JordanBrown[m]>
yes, but haven't done much work recently.
<JordanBrown[m]>
Not tonight, but I should be able to put it at the top of the list for a couple of hours this week.
<InPhase>
We have 4 slots yet.
<InPhase>
So 21, 22, 23, 24.
<JordanBrown[m]>
Is 24 the last, or 25? Should have something extra-special for the last.
<InPhase>
24 is last.
LordOfBikes has joined #openscad
<InPhase>
Well, I note that I've been in 24 for every calendar so far, so I'm perfectly content with someone else filling it. And I think Life is a pretty compelling one for it.
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
ur5us_ has joined #openscad
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
L29Ah has quit [Ping timeout: 248 seconds]
<Scopeuk>
InPhase I've tried to program it in 3d on an led cube before now. might not definitively get get that it is con-ways game of life but it's recognizable as cellular automatator
ur5us_ has quit [Ping timeout: 272 seconds]
use-value has quit [Remote host closed the connection]
use-value has joined #openscad
<teepee>
Scopeuk: oh, 3d Game of Life?
epony has quit [Quit: QUIT]
use-value has quit [Ping timeout: 246 seconds]
use-value has joined #openscad
extor has quit [Read error: Connection reset by peer]
<InPhase>
teepee: Although we'd probably need someone with both Safari and some web knowledge to figure out what is going wrong there.
x__ has joined #openscad
<teepee>
last year it worked :)
<teepee>
works fine on ipad
<InPhase>
Might be user error, like no javascript.
L29Ah has joined #openscad
<teepee>
or apple decided to make funny changes in a recent release of Safari
<teepee>
but yes, no javascript means, no doors opening
<teepee>
as that's how it's checking data and decide which doors can be opened
aiyion1 has quit [Write error: Connection reset by peer]
teepee has quit [Write error: Connection reset by peer]
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
aiyion1 has joined #openscad
teepee has joined #openscad
TheAssassin has quit [Remote host closed the connection]
teepee has quit [Remote host closed the connection]
TheAssassin has joined #openscad
Guest39 has joined #openscad
teepee has joined #openscad
Guest39 has quit [Client Quit]
Lagopus has joined #openscad
<Scopeuk>
teepee I tried to adapt the rules, as it was a small 3d grid with clear columns/rows/layers I was having each node consider it's immediate neighbors only (up/down/left/right/forwards/baclwards) and then apply similar rules, I never got any good results out of it (partially because the cube was likely too small)
<teepee>
with openscad and cubes it will just get slow :)
<teepee>
no cables needed
aiyion1 has quit [Ping timeout: 255 seconds]
<teepee>
but I suppose a 2d version is much more recognizable
<Scopeuk>
yeh, that was done because I had the cube "lying around" playing hand coded animations
aiyion1 has joined #openscad
DigitaltNoget has quit [Quit: Leaving]
NogetDigitalt has quit [Quit: Leaving]
TheAssass1n has joined #openscad
TheAssassin has quit [Ping timeout: 255 seconds]
teepee_ has joined #openscad
teepee has quit [Remote host closed the connection]
teepee_ is now known as teepee
L29Ah has left #openscad [#openscad]
aiyion1 has quit [Remote host closed the connection]
aiyion1 has joined #openscad
J223589 has quit [Quit: Client closed]
J223589 has joined #openscad
othx has quit [Ping timeout: 252 seconds]
fling has joined #openscad
othx has joined #openscad
aiyion1 has quit [Remote host closed the connection]
<JordanBrown[m]>
There has been some work done on 3D cellular automata using Life-like rules.
<Scopeuk>
generally on bigger than a 4x4x4 grid I had to work with
<JordanBrown[m]>
I found a paper on it a few weeks back, characterizing potential rules and which ones worked well, and how they behaved.
<JordanBrown[m]>
yes, bigger than that :-)
<JordanBrown[m]>
I don't know about 3D, but a 4x4 grid is only barely big enough to run a blinker in.
<JordanBrown[m]>
Eh, I suppose it depends on whether the edges wrap.
<JordanBrown[m]>
3x3 isn't big enough if the edges wrap, but is big enough if they don't.
aiyion1 has joined #openscad
<Scopeuk>
I mean 4x4x4 is effectivly 8x8
<Scopeuk>
the "naive" approach would be to treat it as one large 2d grid grid
<JordanBrown[m]>
Well, yeah, but that isn't really 3D.
<Scopeuk>
true, would still likely look pretty
ur5us_ has joined #openscad
JordanBrown has quit [Ping timeout: 252 seconds]
JordanBrown has joined #openscad
aiyion1 is now known as aiyion
L29Ah has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
castaway has quit [Ping timeout: 272 seconds]
use-value has quit [Remote host closed the connection]