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
califax has quit [Remote host closed the connection]
dalias has quit [Ping timeout: 276 seconds]
retrosenator has joined #openscad
<retrosenator> how to get opposite of "difference" in a single operation?
<peepsalot> swap the inputs?
dalias has joined #openscad
<retrosenator> no I mean this: union() { intersect(A, B); difference(B, A); }
<retrosenator> it's technically possible to compute that in single operation
ur5us has quit [Ping timeout: 272 seconds]
<retrosenator> can openscad "compile" the above automatically into a more efficient underlying operation?
dalias has quit [Ping timeout: 260 seconds]
<peepsalot> no, there's no "implies" operator https://en.wikipedia.org/wiki/Material_conditional
<retrosenator> exactly what I was looking for
<retrosenator> maybe it's wrong to say difference is opposite of imply
<retrosenator> imply() { A(); B(); C(); } ?
<retrosenator> can it be implemented?
<peepsalot> i don't know what it would do for more than 2 operands. only ever seen it as a binary operator
<retrosenator> well I have to figure that out
<retrosenator> i'm not quite sure either
<retrosenator> but it needs to be "right"
<retrosenator> another operator missing is opposite of intersect
<retrosenator> i mean exclusive union
<retrosenator> but.. if openscad can somehow automatically "optimize" the code once parsed to use these operators in an underlying way I guess they dont need to be exposed to the user?
<peepsalot> the underlying geometry engines only typically support standard union, difference, and intersection. so you have to convert to composition of those ops at some level
<retrosenator> or at least I could just define exclusive union as a difference of union and intersection
<retrosenator> oh
<retrosenator> so by augmenting this library it can be done in a single pass heh
<retrosenator> actually maybe not but, perhaps 2 passes instead of 3?
J221 has joined #openscad
J22 has quit [Ping timeout: 252 seconds]
<peepsalot> hmm, actually, implies is not the right thing, that includes the universe outside of A and B in the result.
<retrosenator> i wanted that lol
<retrosenator> is that also impossible?
<peepsalot> the result of: union() { intersection() { A(); B(); } difference() { B(); A(); } } ==> B();
<retrosenator> yeah sorry
<retrosenator> "inverted" objects are useful for subtraction
<retrosenator> ok that is a whole other thing.. would need another operator to invert (make it the universe minus that)
<retrosenator> using 3 and more arguments also more combinations arise
<peepsalot> not sure what you're after anymore
<retrosenator> I want to take an object and cut away a certain depth from the surface everywhere...
<peepsalot> so, offset(r=-x) but i'm guessing you mean in 3D?
<retrosenator> yes
<retrosenator> i tried making a "negative" by subtracting from a cube, then minkowski, then subtract the cube from that...
<retrosenator> the minkowski is with a sphere to cut away that depth
<retrosenator> but anyway.. the minkowski operation is very slow
<dTal> I think offset() is supposd to be faster than minkowski
dalias has joined #openscad
<retrosenator> does it work in 3d?
dalias has quit [Ping timeout: 260 seconds]
LordOfBikes has quit [Ping timeout: 246 seconds]
dalias has joined #openscad
ur5us has joined #openscad
LordOfBikes has joined #openscad
lostapathy has quit [Quit: WeeChat 2.8]
qeed has joined #openscad
qeed_ has quit [Ping timeout: 260 seconds]
dalias has quit [Ping timeout: 260 seconds]
dalias has joined #openscad
snakedGT is now known as snaked
dalias has quit [Ping timeout: 240 seconds]
dalias has joined #openscad
dalias has quit [Ping timeout: 240 seconds]
lostapathy has joined #openscad
dalias has joined #openscad
dalias has quit [Ping timeout: 260 seconds]
dalias has joined #openscad
dalias has quit [Ping timeout: 240 seconds]
dalias has joined #openscad
dalias has quit [Ping timeout: 260 seconds]
dalias has joined #openscad
dalias has quit [Ping timeout: 260 seconds]
Virindi has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
Virindi has joined #openscad
dalias has joined #openscad
dalias has quit [Ping timeout: 240 seconds]
dalias has joined #openscad
ur5us has quit [Ping timeout: 272 seconds]
ricekot has left #openscad [#openscad]
dalias has quit [Ping timeout: 240 seconds]
Junxter has joined #openscad
dalias has joined #openscad
retrosenator has quit [Read error: Connection reset by peer]
dalias has quit [Ping timeout: 240 seconds]
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
dalias has joined #openscad
dalias has quit [Ping timeout: 260 seconds]
lastrodamo has joined #openscad
dalias has joined #openscad
dalias has quit [Ping timeout: 240 seconds]
dalias has joined #openscad
ur5us has joined #openscad
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
ur5us has quit [Ping timeout: 272 seconds]
retrosenator has joined #openscad
dalias has quit [Quit: Reconnecting]
dalias has joined #openscad
dalias has quit [Client Quit]
dalias has joined #openscad
dalias has quit [Client Quit]
dalias has joined #openscad
retrosenator has quit [Read error: Connection reset by peer]
aiyion has quit [Ping timeout: 240 seconds]
nedko has quit [Ping timeout: 240 seconds]
fling has quit [Ping timeout: 240 seconds]
TheAssassin has quit [Ping timeout: 240 seconds]
GNUmoon2 has quit [Ping timeout: 240 seconds]
teepee has quit [Remote host closed the connection]
juri__ has quit [Read error: Connection reset by peer]
juri_ has joined #openscad
fling has joined #openscad
teepee has joined #openscad
GNUmoon2 has joined #openscad
nedko has joined #openscad
aiyion has joined #openscad
juri_ has quit [Read error: Connection reset by peer]
juri_ has joined #openscad
sinned69150 has joined #openscad
raboof_ has joined #openscad
xtor has joined #openscad
mlaga97_ has joined #openscad
gwillen1 has joined #openscad
InPhase_ has joined #openscad
kanzure_ has joined #openscad
mlaga97 has quit [*.net *.split]
mikolajw has quit [*.net *.split]
Cadair has quit [*.net *.split]
sinned6915 has quit [*.net *.split]
kanzure has quit [*.net *.split]
raboof has quit [*.net *.split]
extor has quit [*.net *.split]
gwillen has quit [*.net *.split]
InPhase has quit [*.net *.split]
sinned69150 is now known as sinned6915
raboof_ is now known as raboof
TheAssassin has joined #openscad
Cadair has joined #openscad
mikolajw has joined #openscad
J221 has quit [Quit: Client closed]
J221 has joined #openscad
kanzure_ is now known as kanzure
GNUmoon2 has quit [Ping timeout: 240 seconds]
GNUmoon2 has joined #openscad
Junxter has quit [Read error: Connection reset by peer]
linext__ has joined #openscad
mlaga97_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
linext_ has quit [Ping timeout: 240 seconds]
mlaga97 has joined #openscad
j1mu5 has joined #openscad
peeps[zen] has joined #openscad
peepsalot has quit [Ping timeout: 248 seconds]
InPhase_ is now known as InPhase
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
dalias has quit [Ping timeout: 276 seconds]
dalias has joined #openscad
dalias has quit [Ping timeout: 260 seconds]
dalias has joined #openscad
j1mu5 has quit [Quit: Client closed]
ur5us has joined #openscad
lastrodamo has quit [Quit: Leaving]
ur5us has quit [Quit: Leaving]
ur5us has joined #openscad