<InPhase>
I think that project stalled out on development. They had a fixed timeline grant that they used to build it. But it was an impressive product, and is GPL'd so it exists now as a base for further stuff.
<InPhase>
Someone might need to fork it at some point if it's going to keep on working well.
<JakeSays>
yeah i see that it's pretty dead
<JakeSays>
interesting. the blockscad site is version 1.13 dated march of this year
<JakeSays>
but the repo is years old
<InPhase>
They might not even have access to their own github repos anymore. It was one person, and I suspect he doesn't work there anymore.
<InPhase>
It's not really their core business. :)
<JakeSays>
who, the blockscad company?
<InPhase>
It's actually Einstein's Workshop, basically a daycare/enrichment school for kids.
<JakeSays>
well, they should be keeping the repo current
<InPhase>
It looks like they got some additional funding 3 years ago, but it's not clear what they're using it for. But yeah, they should probably be keeping their repo current, but the law doesn't really require them to because of the GPL services loophole.
<InPhase>
I should sleep.
<JakeSays>
the fact that my tax dollars paid for it should be enough to keep the repo current
<InPhase>
JakeSays: Well, had they gone with AGPL in the initial release, that would have resulted. Maybe they had visions of a self-funding company to manage it though. They might be able to get funding selling lesson plans if they establish themselves as the one-true portal for it.
<teepee>
invultri: the n seems a bit lonely
<invultri>
testing it with: echo(filter([1,2,3])); which I would expect to be the identity
<teepee>
ahh, no found it :)
<invultri>
yer it is a bit silly now.. I created the tail and head after the fact to clean it up
<teepee>
tail fails on single element lists
<InPhase>
n > 1 should do it
<teepee>
force range step 1
<teepee>
or that :)
<teepee>
problem is range [1:0] for crazy legacy reasons goes [0, 1]
<teepee>
but [1:1:0] will result in empty range
<invultri>
ah yes, I can remember that now from the docs
<teepee>
but n > 1 is probable better
<teepee>
*probably
<InPhase>
teepee: Also, doesn't tail recursion prefer the recursive case to be the last one in the ?:, or does it work with both?
arebil has quit [Ping timeout: 240 seconds]
<invultri>
btw, the ui could definately use a watchdog timer + error
<teepee>
tail recursion should do both
<teepee>
no, we need to make it possible to cancel :)
<InPhase>
invultri: There is one, unless tail recursion optimization has kicked in and then it bypasses the counter check.
<InPhase>
But proper cancelation and proper threading would be the correct solution. Work-in-progress-without-progress.
<invultri>
InPhase: well.. that must have been it, luckily it loads in like 1sec and there is vim to add a quick //
<teepee>
I don't think there's much work in progress on that part, there's 2 PRs for the geometry stuff
<invultri>
btw, you guys nailed the sollution. Thanks
<teepee>
but not much to cover the evaluation
<teepee>
it should be slightly easier to solve than the geometry case I believe, but still quite some work
<invultri>
(btw, there is no 'filter' baked in right?)
<teepee>
filter?
<invultri>
yes, to filter a vector based on a predicate
<invultri>
echo(filter([1,2,3], function(x) x > 2)); <-- something like that
<teepee>
no, but it's possible to write a fold() function now
<teepee>
let me check the lib from peepsalot that might have this already
<InPhase>
I don't know what I'm looking at in that image...
<InPhase>
Is this some sort of polygonal abstract art?
<invultri>
indent it set to spaces
<invultri>
that would be my land with the correct allocations. red would be house, light red is other hardened area, gray is road, light green is 'farm land' and dark green would be public green space
<invultri>
well.. half of the road, the neighbours have the other half
<invultri>
is that indent using space part of the 2021.01 ?
<teepee>
I think that's quite a bit older, might be even 2015.03
<invultri>
then the config must have been updated when I started using it, the tabs are from 2 weeks ago with the old version (2019.05)
<InPhase>
invultri: Ah, that does make sense as a property outline. :)
<teepee>
I hope that's not with $fn = 200; or something like that ;-)
<invultri>
no, the default which is like 8 or so ?
<teepee>
$fn is undefined, so $fa / $fs control resolution
<invultri>
I just stuck in a if ($preview) and use a simple cube, fixed
<teepee>
rendering 2520 cylinders will still take some time :)
<invultri>
rendering is indeed a long process
<invultri>
and technically rendering holes.
<invultri>
or rather, does not seem to finish at all.
mhroncok has quit [Quit: Leaving.]
ran has joined #openscad
<InPhase>
Optimization? for (pos = ...) part(pos); with above, module part(pos) { translate(pos) basepart(); }
qeed_ has joined #openscad
<InPhase>
I hadn't thought about it before in my own designs, but I guess a superfluous module boundary facilitates more efficient cache utilization.
qeed has quit [Ping timeout: 246 seconds]
ran has quit [Remote host closed the connection]
ur5us has joined #openscad
<peeps[zen]>
invultri: in case you are using the cylinders as perpendicular holes in a flat object, its orders of magnitude faster to do csg on a 2D profile with circles, then linear_extrude
peeps[zen] is now known as peepsalot
noonien has joined #openscad
invultri has quit [Quit: Lost terminal]
Guest20 has joined #openscad
ur5us has quit [Remote host closed the connection]
<ianliu>
when I import a DXF drawing, the arcs from the drawing respect $fs variable, for instance, so I think there is an arc primitive, but I don't know how to use it when drawing a polygon, for example
<peepsalot>
ianliu: OpenSCAD currently only supports solid 2D and 3D primitives, so you'd have to build a polygon from a list of points.