<kintel>
guso78 Re. TBB: Interesting. That explains why it didn't work for you. Now, how do we make this work for everyone? :/
TheAssassin has joined #openscad
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
<kintel>
polygon() in OpenSCAD has an interesting feature: If you specify a polygon with multiple holes, and the holes overlap, the overlapping area becomes an island.
<kintel>
..and furthermore, subsequent overlaps become holes vs. islands following an even/odd overlap rule.
<kintel>
I wonder to what degree people are exploiting this feature..
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
<peepsalot>
kintel: i made a ticket about that a while ago
<peepsalot>
it is sort of documented, just incorrectly...
<peepsalot>
i'm pretty sure changing the behavior is as simple as changing the FillType (or whatever its called) enum in a Clipper call
snaked has joined #openscad
<peepsalot>
if we wanted to change it
<linext>
i think cube should be centered by default
snaked has quit [Remote host closed the connection]
J24k99 has joined #openscad
<kintel>
peepsalot thx, this is why I ask first :)
<kintel>
I guess the big question is whether people exploit this in the wild.
snaked has joined #openscad
<kintel>
..and secondary if our own internal code (like font rendering) will even have correct behavior if we change the clipper winding rule.
J24k3 has quit [Ping timeout: 250 seconds]
<kintel>
context: I'm considering updating to Clipper2, and wanted to clean up some stuff and potentially add more tests first, then stumbled across this.
<kintel>
There's also SVG import which probably has the same behavior for overlapping shapes
<kintel>
linext "should have been" - it's a bit late to change it now : (
<peepsalot>
i have a feeling the general feature of secondary paths = holes is probably commonly used, but the overlapping holes even/odd is probably much more rare in practice
<peepsalot>
though i wouldn't be surprised if there were one or two noisy individuals that would complain if it changed
<kintel>
haha, yeah
<kintel>
I wonder if holes+islands are more common than overlapping xor though
<kintel>
I'll play around a bit, and at some point write up a Clipper2 ticket where we can document this and how it affects various 2D paths.
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kintel has joined #openscad
LordOfBikes has quit [Ping timeout: 255 seconds]
LordOfBikes has joined #openscad
omegatron has quit [Quit: Power is a curious thing. It can be contained, hidden, locked away, and yet it always breaks free.]
<kintel>
-> yields two non-overlapping polygons, although, according to the docs, I think the second one should have been considered a hole, but ignored since it's fully outside the main contour
<peepsalot>
ah, yeah that's an odd case i didn't think about. multiple disjoint outlines
<kintel>
if anything, that's probably one which _is_ being exploited in the wild..
<InPhase>
I noticed a long time ago that polygon did XOR, but I assumed this was best considered an undocumented feature to not be relied upon.
<InPhase>
There is a certain elegance to the logic, but it seems like the sort of thing that might not play well with 3D anyway.
ferdna has joined #openscad
<InPhase>
On extrusion, you'd end up with non-connected volumes sharing an edge. This does not sound very manifoldy.
<kintel>
If done right, it will probably work when using Manifold. ..but will probably fail today
<InPhase>
By that I mean for any scenario where polygons partially overlap, crossing each other at an edge.
epony has quit [Remote host closed the connection]
<kintel>
yeah, it's the classic OpenSCAD "death test" :)
epony has joined #openscad
<kintel>
The problem with keeping the current implementation it is that the fill() module gets it wrong
<kintel>
..but that hasn't been part of an official release yet, so technically we can still try to fix it
<peepsalot>
InPhase: yep that's the first example I show in the issue above polygon(points=[ [-1,-1],[-1,1],[1,1],[1,-1], [0,-2],[0,2],[2,2],[2,-2] ], paths=[[0,1,2,3],[4,5,6,7]]);
<kintel>
^ yeah, fill() completely botches that example too
<kintel>
easiest way out would be to deprecate using polygon() to describe multiple polygons. I really wonder how many people use that in practice
<InPhase>
I bet that's used a lot.
<InPhase>
It works in a way that makes it look like it's on purpose, if they are distinct.
<kintel>
yeah, 2D triangle meshes come to mind, but I wonder if they would eventually break due to floating point issues
<kintel>
we could of course try to be smart, and detect non-overlapping contours as separate positive contours, and any attempt to intersect a positive contour would be considered a hole. Feels brittle though.
mmu_man has quit [Ping timeout: 246 seconds]
epony has quit [Remote host closed the connection]
ferdna has quit [Quit: Leaving]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ccox has quit [Read error: Connection reset by peer]
ccox has joined #openscad
R2robot has quit [Read error: Connection reset by peer]
R2robot has joined #openscad
guso78k has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
guso78k has quit [Quit: Client closed]
cart_ has joined #openscad
peeps[zen] has joined #openscad
peepsalot has quit [Remote host closed the connection]
snaked has quit [Ping timeout: 272 seconds]
J24k99 has quit [Quit: Client closed]
J24k99 has joined #openscad
epony has joined #openscad
snaked has joined #openscad
mmu_man has joined #openscad
guso78k has joined #openscad
mmu_man has quit [Ping timeout: 256 seconds]
guso78k has quit [Quit: Client closed]
mmu_man has joined #openscad
mmu_man has quit [Ping timeout: 272 seconds]
mmu_man has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
teepee has quit [Remote host closed the connection]
Non-ICE has quit [Quit: Screw you guys, im going home!]
<hello31>
hello teepee, I tried this library, but if you check the nuts that it creates, you can find that the threading crooked.
<pca006132>
kintel: yeah there were some changes after Nov
<teepee>
hello31: I never had issues, but I don't need spec compliant stuff
hello31 has left #openscad [#openscad]
Non-ICE has joined #openscad
ferdna has joined #openscad
snaked has quit [Quit: Leaving]
Guest0 has joined #openscad
Guest0 has quit [Client Quit]
J24k99 has quit [Quit: Client closed]
J24k99 has joined #openscad
Non-ICE has quit [Quit: Screw you guys, im going home!]
Guest87 has joined #openscad
<Guest87>
hello
<Guest87>
hello
<Guest87>
I need some help to install openscad to my macbook
<Guest87>
its the one with the m2 chip
<teepee>
I assume the recommendation is: use the dev smapshot version
<teepee>
*snapshot
Non-ICE has joined #openscad
Guest87 has quit [Quit: Client closed]
kintel has joined #openscad
<kintel>
teepee Any comments/wishes/concerns about the polygon() issues that were discussed last night? I feel we should do _something_, just need more ideas for what..
moonlight has joined #openscad
mmu_man has quit [Ping timeout: 252 seconds]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kintel has joined #openscad
mmu_man has joined #openscad
crazy_imp has quit [Ping timeout: 264 seconds]
mmu_man has quit [Ping timeout: 255 seconds]
crazy_imp has joined #openscad
L29Ah has left #openscad [#openscad]
epony has quit [Remote host closed the connection]
<moonlight>
Output file is generated and looks good
<moonlight>
Is the error relevant ?
berndj has quit [Read error: Connection reset by peer]
berndj has joined #openscad
mmu_man has quit [Ping timeout: 252 seconds]
mmu_man has joined #openscad
<teepee>
moonlight: that looks like a bug in the output code adding that "Error: " does not seem to meke sense at this point
guso78k has quit [Ping timeout: 250 seconds]
<kintel>
moonlight I suspect the "Error:" string comes from whomever is calling OpenSCAD.
<teepee>
oh, good point, showing stderr output
<moonlight>
Aaaah thank you !! you are totally right
<moonlight>
It's just the stderr pipe
guso78k has joined #openscad
guso78k has quit [Ping timeout: 250 seconds]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #openscad
califax has quit [Ping timeout: 255 seconds]
califax has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
moonlight has quit [Quit: Connection closed]
aiyion2 has quit [Remote host closed the connection]
aiyion2 has joined #openscad
cart_ has quit [Ping timeout: 264 seconds]
<InPhase>
teepee: Almost a full 2 months after opening my ticket about the S key falling off of my Tuxedo laptop, I finally got the "solution" in the mail. Because there is apparently no way to repair the keyboard, the only solution their tech support could figure out after multiple backs and forths was for me to buy a whole new upper for the laptop for 114 euros ($124 USD) to repair the missing S key. This
<InPhase>
really should have been a $15 to $20 problem and 15 minutes to fix with 2 days shipping and 1-2 cycles with tech support. But... it wasn't anything close to that. I think I'll wait for the weekend to even try to repair this thing, as I think I will have to remove the entire motherboard and everything inside the computer just to replace this.
<teepee>
yeah, in most designs you only get to the keyboard after removing everything coming from the other side
<teepee>
I've seen that the dell guy doing, unscrewing about 50 tiny screws
<InPhase>
I've replaced a lot of laptop keyboards, and nearly all of them were 1-3 screws to remove and then you can just slide the keyboard right out.
<teepee>
hm, so that's a dell speciality then
<teepee>
argh, f*ing Apple
<InPhase>
I haven't had a Dell laptop in 20 years, thanks to a tech support fiasco around that time period. I looked a few times to see if they got better, but never saw a reason to go back to them and try again.
<teepee>
with the support included, they were great
snaked has joined #openscad
<InPhase>
My last conversation with Dell tech support, which granted was a long time ago as mentioned, involved a protracted argument in which they were trying to insist the only solution to my entire audio jack disconnecting from the motherboard and falling out of the laptop was to reinstall Windows.
<InPhase>
Some levels of stupid responses go too far. :)
<dTal>
oh I have some good Dell tech support stories
<InPhase>
I'll grant that Tuxedo at least did not tell me anything stupid. They were painfully slow on responses, and they have a shockingly low repairability to this laptop, but at least they didn't make up nonsense. I'll still look for a different provider for the next one, but I won't completely cross them off.
<dTal>
I remember this one time I was trying to upgrade a Dell Optiplex with a second P3 "coppermine" processor, identical to the first, and the machine would not boot with both units installed. It would boot with either CPU, in either slot. I called up Dell tech support and spent like an hour going in circles trying to persuade them that it was in fact a second processor I was installing, not RAM or anything else, and that I wasn't a complete moron
<dTal>
eventually they finally got fed up and escalated me to the real tech support, who listened to me speak for about 30 seconds and said "you need a voltage regulator module, part no. VRM blah blah blah, is there anything else I can help you with"
<dTal>
and I was thinking holy crap could we not have done this to begin with and saved everyone a lot of time
<InPhase>
dTal: Yeah. A lot of the problem is just that attempt to put cheap uninformed tech support as a front-line in the way of qualified tech support people.
<dTal>
I was like 14 at the time which probably didn't help
<teepee>
laptop with service tag does simplify things
<InPhase>
I'm not sure how much money those practices actually save. They can pay them less, but they must spend a much longer time with each customer not solving their problems.
<dTal>
I remember them asking me to physically describe the thing I was fitting, and I said very sarcastically "It's about 5 inches by 3 inch by 1 inch with "Pentium 3" written on it and it's a processor"
<InPhase>
dTal: That probably wasn't on the responses flow chart.
<InPhase>
dTal: I sincerely think AI could do a better job than most of those front line support people. And in fact, that's probably what we'll be dealing with very soon.
<InPhase>
The hallucinations won't even be a new problem. We already get those from support personnel.