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
J24k78 has joined #openscad
J24k96 has quit [Ping timeout: 256 seconds]
mmu_man has quit [Ping timeout: 260 seconds]
mmu_man has joined #openscad
snaked has joined #openscad
LordOfBikes has quit [Ping timeout: 244 seconds]
LordOfBikes has joined #openscad
lostapathy has quit [Quit: WeeChat 4.1.1]
mmu_man has quit [Ping timeout: 252 seconds]
lostapathy has joined #openscad
ali1234 has quit [Remote host closed the connection]
ali12341 has joined #openscad
TheCoffeMaker has quit [Ping timeout: 255 seconds]
<pca006132> JordonBrown maybe you can just open an issue/PR for BOSL2? iirc in openscad c++ code this is implemented as rounding + hashtable, which is O(n) as well
bambukah has joined #openscad
TheCoffeMaker has joined #openscad
<bambukah> Hello :)
<J24k78> bambukah?
peeps[zen] has quit [Ping timeout: 252 seconds]
peepsalot has joined #openscad
<JordanBrown> pca006132 it's a hashing scheme, which as best I can tell is impractical to implement in OpenSCAD-language.
<JordanBrown> But IIUC (without having looked at it) has bad behavior in a number of cases; I think I avoid them.
<JordanBrown> oops "the existing OpenSCAD dedup has bad behavior..."
<JordanBrown> Mine finds all points within a certain radius of each other point.
<JordanBrown> ... without having bad behavior when two points next to each other snap to different grid coordinates.
<JordanBrown> But I thought there was some reason why Manifold didn't use the existing OpenSCAD dedup scheme.
<pca006132> regardless, deduplication can break manifoldness
<pca006132> and in general two distinct vertices in a manifold (epsilon valid) can have the same coordinate, so deduplication is not really needed
<JordanBrown> I think you said that you were OK with duplicated points, and indeed that seemed to be the case.
<pca006132> yes
<JordanBrown> The problem is that if you calculate what should be the same point, but you calculate it twice in different ways, you can end up off by 1e-16 or so.
<pca006132> the answer is: you should not do that
<pca006132> in general this fp error can get pretty large
<JordanBrown> Certainly when you can avoid it you should not. But Adrian and Revar are not dummies and I believe them when they say it's sometimes hard to avoid.
<pca006132> yes, it can be hard
<pca006132> but the problem is if you don't avoid that, you cannot guarantee manifoldness
<pca006132> this is why manifoldness is hard
<JordanBrown> Large FP error? It seems like you'd have to grind on a point quite a bit to get it to propagate past the bottom few bits.
<pca006132> depends on operations
<JordanBrown> In the case I was looking at, it looked like the error was in the bottom bit or two.
<JordanBrown> Anyhow, if one was interested in deduping to a grid of, say, 10^-10, I think I have an efficient algorithm that avoids the "snap to different grid coords" problem.
<JordanBrown> Actually, I can describe it really quickly: snap to grid when creating the hash table, and then when looking up snap to grid and examine all neighbors too.
<pca006132> feel free to write it up as a draft and let us have a look at it
<JordanBrown> Bad stuff will happen if you have actual features down around the size of the grid, but that should be really really small.
<pca006132> yeah that can work I guess, but the order in which you process the points may produce different results
<JordanBrown> Shouldn't.
<JordanBrown> One thing that is a known theoretical problem that one would have to watch for is "clusters" that span too large a space.
<pca006132> what if you have some kind of a grid structure?
<pca006132> yeah
<JordanBrown> That is, A is close to B, and B is close to C, but A is not close to C.
<pca006132> anyway, too sleepy now, can discuss another day
<JordanBrown> A grid structure with steps down in the 10^-10 range?
<pca006132> was taking 13 hours of flight to LA
<JordanBrown> Later.
<pca006132> bye
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
<JordanBrown> pca006132 if you're in LA and want to do lunch or something, let me know.
bambukah has quit [Ping timeout: 256 seconds]
teepee has quit [Remote host closed the connection]
bambukah has joined #openscad
teepee has joined #openscad
SamantazFox has quit [Ping timeout: 260 seconds]
hyvoid has quit [Ping timeout: 244 seconds]
hyvoid has joined #openscad
bambukah has quit [Quit: Client closed]
abff has quit [Ping timeout: 265 seconds]
germ_ has quit [Ping timeout: 252 seconds]
cart_ has joined #openscad
abff has joined #openscad
germ has joined #openscad
guso81 has joined #openscad
<guso81> teepee, is there a reason,  why openscad does not use https://github.com/stepcode/stepcode to import step files ?
TheCoffeMaker has quit [Ping timeout: 252 seconds]
mmu_man has joined #openscad
L29Ah has quit [Ping timeout: 264 seconds]
guso81 has quit [Quit: Client closed]
guso69 has joined #openscad
guso69 has quit [Client Quit]
SamantazFox has joined #openscad
SamantazFox has quit [Killed (NickServ (GHOST command used by SamantazFox_))]
SamantazFox_ has joined #openscad
UltimateCodeWarr has quit [Quit: Client closed]
<teepee> guso78: I tried that quite some time ago and had massive trouble even building all the stuff so I aborted that effort
teepee_ has joined #openscad
cart_ has quit [Ping timeout: 252 seconds]
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
L29Ah has joined #openscad
<gbruno> [github] 3sv synchronize pull request #5314 (Change (auto)reload to use render instead of preview mode) https://github.com/openscad/openscad/pull/5314
Guest9 has joined #openscad
Guest9 has quit [Client Quit]
TheCoffeMaker has joined #openscad
cart_ has joined #openscad
TheCoffeMaker has quit [Ping timeout: 265 seconds]
snaked has quit [Quit: Leaving]
J24k78 has quit [Quit: Client closed]
J24k78 has joined #openscad
ubuntourist has joined #openscad
L29Ah has quit [Ping timeout: 244 seconds]
ubuntourist has quit [Quit: Leaving]
<pca006132> JordonBrown sure, I am in pasadena now, https://2024.splashcon.org/venue/splash-2024-venue
Guest6 has joined #openscad
Guest6 has quit [Client Quit]
Guest49 has joined #openscad
Guest49 has quit [Client Quit]
Transatlantic has joined #openscad
<Transatlantic> I have been using openSCAD with much success, afer a friend held my hand to start. Now I think I master 50 % of openSCAD capabilities (lots of fun still ahead!). But I always regret that to pierce a piece (something that turns up very often), or to remove some material, you have to go through a cumbersum "difference" function... Many other SCAD
<Transatlantic> systems offer much simpler solutions. Such a substracting material rather than adding. So to bore a hole, you simply substrat a cylinder from whatever the cylinder is placed. For instance, FreeCAD offer "create a hole" (a "negative" cylinder) or "create a pocket" (a negative cube" tools. What do you think?
<JordanBrown> I think you're talking about creating negative objects. People have talked about that, but it's not as simple as it might seem.
<JordanBrown> You still need some concept of the "scope" of the negative object. You want to be able to remove the negative object from some positive object, yes, but then you want to be able to drop a positive object *into* that space created, without subtracting from it.
<JordanBrown> That is, you want to be able to subtract a cylinder from a cube, but then you want to be able to put a sphere into the hole.
<JordanBrown> You need some way that marks that you *are* subtracting the cylinder from the cube, but you *are not* subtracting the cylinder from the sphere.
<Transatlantic> Hi, Jordan! I understand. that the "difference" function is very powerful and precise, and needed for those tricky situations that you mention. But for just boring a hole in a cube, I would welcome a "negative" cylinder function!
L29Ah has joined #openscad
<Transatlantic> And thinking about it, I spend lots of time just boring holes (cubes and cylinders). Other more complex situations amount at most to 10% of cases...
<JordanBrown> is difference() { a(); b(); } really that different from a(); negative() b();?
<JordanBrown> But you might look at BOSL2's diff() operation. It lets you take a bunch of objects and tag which ones to add and which to subtract.
<JordanBrown> And indeed sometimes that is more natural than structuring the program to separate the positive stuff from the negative stuff.
<Transatlantic> BOSL2's diff() operation  Nope, I don't know that one. Thanks for the tip!  I have just had a look. It looks promissing... I will give it a try.
<JordanBrown> BOSL2 has lots of very cool advanced capabilities.
<Transatlantic> I will definitely look and try. Thanks again, Jordan! from Patrick from Audierne, France.
<JordanBrown> Jordan from Los Angeles, California, USA
<pca006132> JordanBrown check your pm :)
<Transatlantic> Jordan, you must be very busy sorting out Donald's and Kamala's proposals! This side of the Atlantic, we are a bit afraid of Donald's "inconsistency" - no doubt he is a great golfer, but is that relevant in a dangerous world?
<Transatlantic> My PM shows 18h04, as does yours!
mmu_man has quit [Ping timeout: 255 seconds]
TheCoffeMaker has joined #openscad
<gbruno> [github] t-paul reopened issue #5387 (Can't set font size for font Noto Emoji) https://github.com/openscad/openscad/issues/5387
mmu_man has joined #openscad
teepee_ has joined #openscad
cart_ has quit [Ping timeout: 272 seconds]
Guest32 has joined #openscad
Guest32 has quit [Client Quit]
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee
J24k78 has quit [Ping timeout: 256 seconds]
J24k has joined #openscad
Transatlantic has quit [Quit: Client closed]
TheCoffeMaker has quit [Ping timeout: 276 seconds]
J24k has quit [Quit: Client closed]
TheCoffeMaker has joined #openscad
J24k has joined #openscad
TheCoffeMaker has quit [Ping timeout: 246 seconds]
mmu_man has quit [Ping timeout: 244 seconds]
mmu_man has joined #openscad
TheCoffeMaker has joined #openscad
guso87 has joined #openscad
<gbruno> [github] joeskeen opened issue #55 (🚨 Playground Broken) https://github.com/openscad/openscad-playground/issues/55
guso87 has quit [Quit: Client closed]
califax has quit [Ping timeout: 260 seconds]
califax has joined #openscad
J24k has quit [Quit: Client closed]
J24k has joined #openscad
Deneb has joined #openscad
Deneb has quit [Client Quit]
germ has quit [Ping timeout: 260 seconds]
abff has quit [Ping timeout: 276 seconds]
<gbruno> [github] t-paul closed issue #5382 ($fonts) https://github.com/openscad/openscad/issues/5382
abff has joined #openscad
germ has joined #openscad
snaked has joined #openscad
TylerTork has joined #openscad
<TylerTork> I'm probably making this more complex than I need to. Say I have a polygon of points in 3d space, and I want to turn it into an object with specified thickness -- i.e. extrude it by a specified amount tangent to its surface as opposed to in the z axis only. Is there something in a library to do that?
<TylerTork> perpendicular to its surface I mean
MatrixBot12 has joined #openscad
<teepee> and again... question: what is MatrixBot12 and where is it connected to?
teepee_ has joined #openscad
teepee has quit [Ping timeout: 260 seconds]
teepee_ is now known as teepee