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
buZz has quit [Ping timeout: 265 seconds]
buZz has joined #openscad
buZz is now known as Guest1824
<gbruno> [github] kintel closed pull request #5789 (MouseSelection fix: Make context current, manage state) https://github.com/openscad/openscad/pull/5789
<gbruno> [github] kintel pushed 2 modifications (MouseSelection fix: Make context current, manage state (#5789)) https://github.com/openscad/openscad/commit/52d9d990d94adff38edffe876d31ca1b02ca2bce
<gbruno> [github] kintel closed issue #5784 (MouseSelector picking doesn't work for certain types of CSG trees) https://github.com/openscad/openscad/issues/5784
guerd has joined #openscad
<gbruno> [github] kintel pushed 9 modifications (Merge branch 'master' into kintel-issue5135) https://github.com/openscad/openscad/commit/8531ded51be94cb74bfa41ccf17fcdae70084f7f
<gbruno> [github] kintel synchronize pull request #5765 (Use Manifold's Merge() function if initial mesh creation fails) https://github.com/openscad/openscad/pull/5765
teepee_ has joined #openscad
teepee has quit [Ping timeout: 264 seconds]
teepee_ is now known as teepee
<gbruno> [github] kintel closed pull request #5807 (brew untap won't work if any formulas are installed) https://github.com/openscad/openscad/pull/5807
<gbruno> [github] kintel pushed 1 modifications (brew untap won't work if any formulas are installed (#5807)) https://github.com/openscad/openscad/commit/5eb4272963a80fd913ecb9c11663ebbc4a93d79d
mmu_man has quit [Ping timeout: 252 seconds]
bitbasher has quit [Ping timeout: 240 seconds]
J25k59 has joined #openscad
J25k has quit [Ping timeout: 240 seconds]
snaked has quit [Ping timeout: 268 seconds]
snaked has joined #openscad
TheAssassin has quit [Ping timeout: 264 seconds]
TheAssassin has joined #openscad
sparsh-n has joined #openscad
<sparsh-n> Hi, I'm wondering if anyones been able to locally build OpenSCAD on windows with MSYS2 using Qt6? I've looked through the logs and cant find much, but from the workflow I was able to get the flag -DUSE_QT6='ON' added, which uses Qt6 instead of 5, which I was previously building on without flags. When running make (the final step basically), I see
<sparsh-n> it reaches almost 95-96% done and then throws make: Error 1/2. Most of the warnings/issues have to do with it being deprecated, is there a specific branch which changes src/gui to work better with Qt6? thanks
<sparsh-n> This is the PR I saw which adds Msys2 for the ci workflow https://github.com/openscad/openscad/pull/5156/files
<InPhase> sparsh-n: It seems like it's close at least, but even the snapshots are not working yet.
<sparsh-n> Thanks
<InPhase> sparsh-n: I'd say choices are: 1. Struggle and try to push it to work. 2. Jump in and help with the effort to get it working in that PR. or, 3. Try Qt5. :)
Guest49 has joined #openscad
Guest49 has quit [Quit: Client closed]
drfff has joined #openscad
<sparsh-n> I guess 2 is my main goal, I was trying to make a fix for a different issue, but forgot that I should test both Qt5 and Qt6 for building. Qt5 seems to work pretty easily for me, build is very quick with msys2
sparsh-n has quit [Quit: Client closed]
aiyion has quit [Read error: Connection reset by peer]
aiyion has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
feep has quit [Ping timeout: 268 seconds]
halloy7308 has joined #openscad
dingodoppelt has quit [Read error: Connection reset by peer]
<halloy7308> hmm
<halloy7308> https://bpa.st/MDAQ I'm curious how I can make what I did here faster to render out. What's the main performance problem with how I made this?
dingodoppelt has joined #openscad
<J25k59> SLA print can't have voids without drainage
<J25k59> so guess it is not a bug but a feature
<J25k59> halloy7308 looks fine so far in render - for preview you need some overlap or use a 2D difference
<J25k59> using linear_extrude to make it 3D as a last step
<J25k59> halloy7308 did you use manifold (active)?
<J25k59> edit↦preferences↦advance⇒3D render
<J25k59> also using $fs,$fa instead of $fn can help to reduce vertices
guso78k has joined #openscad
<guso78k> kintel, i believe your procedure will not work as expected.  with this, transparent objects behind an opaque object will still appear transparent instead of invisible.
<guso78k> Unless there is a groundbreaking concept for that(like z buffer) i think such issues are best handled on the application level rathner than in OpenGL.
<guso78k> But as this change requires adding a parameter the the viewing call, there are now 13 files in one  shot ;)
cyrille3 has joined #openscad
<cyrille3> Hello, sorry to bother you guys. I am sorry I do not know what the etiquette is for this channel...
<cyrille3> I have an issue as I try to "remove a stl from another" and I keep getting errors...
<cyrille3> I tried to "fix" my STL using various software, and they all claim that the STL are ok... But openSCad still does not want to "substract" them..
<cyrille3> Can anyone help me..
<cyrille3> Thanks in advance! and have a good day
<halloy7308> J25k59: doing a 2d difference for these actually sounds way less computationally expensive, right?
<cyrille3> Hello. I do not know, I honestly am not a 3D person, which is why I am strugling... I mean I was able to create the files, using various tools, I have much more 2.5d experience...
<cyrille3> What do you mean by 2d difference?
<cyrille3> Computational time is not my main issue as this is an operation that I only need to perform one...
<J25k59> halloy7308 you need only ⅔ to compute but as this is handled differently. Would be more if the 3D shape is more complex not just planar
<halloy7308> sorry about that, cyrille3. i was speaking about something that happened before you joined.
<halloy7308> J25k59: aye, these are luckily just made out of fixed-width sheets of acrylic, so it seems easier to go about my design in the 2d and extrude
<cyrille3> oups, sorry for barging in :)
<J25k59> halloy7308 you also can use the 2D for  svg/dxf export for a laser cutter.
<halloy7308> yeee. i needed the 3d to reason about where to cut off material, which i'll still need to do, but i think i'll rewrite this in 2d to get some ideas
<halloy7308> i also need to start thinking about how to tesselate them for best usage, and i think i have to pick some constraints first (i know my laser cutter isn't level across the whole bed, so i can't use the full spread)
<J25k59> cyrille3 there are lots of bad triangles https://imgur.com/a/2Iaqbqy
<J25k59> the ring looks mostly ok, one small edge is wrong.
<halloy7308> How does the Manifold rendering backend work? I am really surprised to hear it doesn't use CGAL
<halloy7308> that you can CHOOSE not to**
<cyrille3> j25k59: How do I fix them? I have passed that file through at least 3 or 4 "stl fix softwares", and they all said that it was ok :-(
<cyrille3> What program can you advise to fix it?
<hramrach> loading it in meshlab it's possible to see the holes but fixing them is better at the origin where this came from
<cyrille3> I do not think that the soft (VCarve) that I used to create the file will be able to do it as it's a 2.5d file with basic 3D functions...
<J25k59> cyrille3 i used meshmixer and the result works https://imgur.com/a/MBe7QEc
<cyrille3> I mean I understand that it's better "not to make the mistake" than to "fix it later"... but in this case I am afraid that the soft is not able to do better :-(
<cyrille3> Strange, I tried to use meshmixer, but did not manage to make it work... But I Am FAR from being a good user of meshmixer (probably have openned it 3 times to fix other stl)..
<cyrille3> Would you be kind enough to send me back the "fixed" crown file?
<J25k59> cyrille3 here the file https://gofile.io/d/KJSPBs
<J25k59> in meshmixer you go to "analyse" and fix
<hramrach> maybe try complaining to VCarve support that your meshes have holes after using their software. They cannot fix it when they don't know it's broken
<J25k59> cyrille3 what version openSCAD do you use.. try with 2025 version (snapshot)
<J25k59> halloy7308 manifold is https://github.com/elalish/manifold  pca006132 can tell you more
<cyrille3> I use openSDAC 2021.01 which is strange as I my PC was reinstalled less than 3 month ago, so it should be the latest version available online.. Where do I get 2025?
<J25k59> snapshot!
<cyrille3> I use openSCAD through FreeCad...
<J25k59> download!
<cyrille3> ok, let me try to find it :-)
<J25k59> sorry thought the bot catch that
<J25k59> i think 3mf import  is not working with the last official release
<J25k59> !download
<J25k59> hmm
<cyrille3> ok, I did download/install 2025, I did "fix" the stl using meshmixer, but I am still getting errors on "difference"... Telling me that the "given mesh is not closed" :-(
<cyrille3> I am calling openSCAD through FreeCad, so I only probably get partial error text...
<cyrille3> How do you perform a substraction directly using OpenSCad?
guerd has quit [Remote host closed the connection]
guerd has joined #openscad
J25k59 has quit [Quit: Client closed]
J25k59 has joined #openscad
<J25k59> cyrille3  with difference
<J25k59> cheatsheet!
<othx> cheatsheet is https://www.openscad.org/cheatsheet/ for the release version and https://www.openscad.org/cheatsheet/snapshot.html for the development snapshot versions
<halloy7308> Whoops, OpenSCAD has frozen, lmao
halloy7308 has quit [Quit: halloy7308]
halloy7308 has joined #openscad
<halloy7308> HWOOPS
<halloy7308> let's see how much we lost
<halloy7308> awwww, the whole thing. remember to save, everyone
<guso78k> there are openscad regulator backups
<guso78k> one idea would be to offer them in a menu ?
<halloy7308> oh, interesting. this will be quick to rewrite, but that's good to know
<halloy7308> where do they go?
<guso78k> depends in your os ? what is it ?
<guso78k> https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/FAQ#:~:text=Before%20starting%20a%20preview%20or,share%2FOpenSCAD%2Fbackups%20).
<halloy7308> Windows. Good ot know
<halloy7308> Found it. Thank you, guso78k
cyrille3 has quit [Quit: Client closed]
L29Ah has joined #openscad
guso78k has quit [Quit: Client closed]
PaulWay[w] has joined #openscad
PaulWay[w] has quit [Remote host closed the connection]
J25k59 has quit [Quit: Client closed]
J25k59 has joined #openscad
PaulWay has quit [Ping timeout: 260 seconds]
guso78k has joined #openscad
mmu_man has joined #openscad
<halloy7308> https://bpa.st/J6KQ I think I like this code a lot more. My question, though, is what you guys think I should do: The TOTAL height actually needs to be box_height, so I need to trim sheet_thickness from each object in a specific way. Do you guys just trim your objects by subtracting small sections from them using difference()?
guerd has quit [Read error: Connection reset by peer]
mmu_man has quit [Ping timeout: 268 seconds]
mmu_man has joined #openscad
<hramrach> ypu can make them smaller to start with, no need to trim then :)
<halloy7308> Was thinking about that, but mostly wanted to encode them from the idea of being boxed out so that my translates at the end might not matter so much, but you're probably right
<halloy7308> It's probably just me hacking it on after knowing I've based things like the hole spacing on the total height
val has quit [Ping timeout: 248 seconds]
<halloy7308> has anyone reported any glitches with switching to cgal and back and then getting weird missing geometry
val has joined #openscad
<InPhase> halloy7308: You mean on the next render? Is it reproducible? And also does it fix if you run Design, Flush Caches?
Guest1824 is now known as buZz
<InPhase> halloy7308: And yeah, the right strategy is to start with your constraint variabble, e.g. box_height, and then do math on your variables so that other values are derived from that in a way that produces your constraint in a way you are confident in.
<InPhase> halloy7308: Also, your design is pretty. :) I often run people's models before reading the rest of the text of what they're doing, for visual grounding. And yours was aesthetically quite pleasant.
mmu_man has quit [Ping timeout: 248 seconds]
snaked has quit [Remote host closed the connection]
<J25k59> halloy7308 https://bpa.st/JNXA
<halloy7308> InPhase: i actually went back to run it and the cgal backend took 15 minutes before i gave up, lmao
<halloy7308> J25k59: that looks a lot like how my friend did it in onshape, actually.
<halloy7308> the reason i went about it my way was specifically because i need to fabricate these out of 1/8" acrylic sheets, so i can lay those flat and export them for the laser cutter
<J25k59> https://bpa.st/FLKQ  some corrections
<halloy7308> though i guess some projections could theoretically work for cutting up yours
<InPhase> halloy7308: Yeah. There were a lot of design approaches we just wouldn't bother trying to do in the cgal-only days. :)
<halloy7308> Now that I think about it, I like the look of hexagons more than circles. I could theoretically change the design and see what the client likes
mmu_man has joined #openscad
<J25k59> use offset(1) circle(5-1,$fn=6); for a nice rounded hexagon
<halloy7308> I'm trying to wrap my head around how you made the rounded bit for the sides--that's interesting
<halloy7308> are hull ops less intensive than boolean cuts like I'm doing?
<InPhase> J25k59: for(x=[0:h/7],y=[0:b/6-x/15])
<J25k59> halloy7308 https://bpa.st/LLZQ  this give you the 2D for a laser cutter
<J25k59> InPhase yep looks better
<J25k59> but changing the parameters is not calculated
<J25k59> halloy7308 here with the other panels to cut https://bpa.st/2ZRA
<J25k59> using a polygon is probably not much faster if even, but would allow more freedom.
<J25k59> i think the hull is not needed as the squares cover the area already - so a simple union () would do
<halloy7308> what does the 30deg rotation do in the for loop?
<halloy7308> oh, i see
mmu_man has quit [Ping timeout: 244 seconds]
mmu_man has joined #openscad
Ckat has quit [Ping timeout: 260 seconds]
guso78k has quit [Quit: Client closed]
guso78k has joined #openscad
<othx> guso78k linked to YouTube video "Benchy in a Bottle" => 1 IRC mentions
Ckat has joined #openscad
mmu_man has quit [Ping timeout: 252 seconds]
Ckat has quit [Quit: this shouldn't be happening]
Ckat has joined #openscad
mmu_man has joined #openscad
<hramrach> from some past discussions hull is very expensive computationally, and you should use it only when really needed.
Arty is now known as Artea
TheCoffeMaker_ has joined #openscad
TheCoffeMaker has quit [Ping timeout: 260 seconds]
mmu_man has quit [Ping timeout: 248 seconds]
<InPhase> hramrach: Yeah. It has good utility in some specific cases. There is a lot of hull that I use in these smooth primitives, and with their controlled facet counts, it works just fine: https://github.com/rcolyer/smooth-prim It's just easy for hull to get out of hand with more involved objects.
kintel has joined #openscad
<InPhase> hramrach: 2D hull though is super fast, and there is no reason to avoid it.
<kintel> guso78k When I said turn off z _writes_, we still need z _tests_ to be on. That should give the correct result: Hide object behind existing objects, but not write a new depth value.
<kintel> sparsh-n: Qt6 for msys2 should work in the master branch. Proof: https://github.com/openscad/openscad/actions/runs/14256526473/job/39960087721
<guso78k> kintel, yeah, i  can try, if that removes the need to do triangle sort
<kintel> If you have build issues, please post exact errors somewhere. Alternatively, try to re-create the CI environment, look at the CI scripts etc.
<kintel> guso78k I cannot promise anything, but I think it might take us 80% there; a lot nicer than today. The key challenge is to defer rendering transparent objects until all opaque objects are rendered.
<hramrach> Qt6 \o/
<guso78k> i think it makes a big  difference if we draw an 20% transparent  triangle first , than an 80% transparent triangle next, or visa verce. I feel adding a comparison to  an alpha threshold introduces something which sholud not be there, but lets see.
guso78k has quit [Ping timeout: 240 seconds]
kintel has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
L29Ah has quit [Ping timeout: 252 seconds]
halloy7308 has quit [Ping timeout: 252 seconds]
L29Ah has joined #openscad
kintel has joined #openscad
<kintel> guso78k Yeah, if a single object has multiple different levels of transparency in it, that will make things hard. This is likely where triangle sorting would be needed. ..but that's likely a very small corner case
kintel has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
mmu_man has joined #openscad
Guest49 has joined #openscad
Guest49 has quit [Client Quit]
Jerr has joined #openscad
rogeliodh has quit [Quit: The Lounge - https://thelounge.chat]
rogeliodh has joined #openscad
Jerr1 has quit [Ping timeout: 248 seconds]
fling has quit [Ping timeout: 264 seconds]
guso78k has joined #openscad
<guso78k> kintel, triangle sort is already important with one level of transparancy. my benchy boat has a green glass bottle and a blue glass boat. without trianlge sort it would look like a mess. my branch does triangle resort when the viewing angle changes more than 60 deg, but i did not demonstrate it because of big rerendering time.
<guso78k> different transparent materials could be important when somebody wants to showcase his model. its not a small corner case.
feep has joined #openscad
halloy7308 has joined #openscad
mmu_man has quit [Ping timeout: 265 seconds]
Guest49 has joined #openscad
mmu_man has joined #openscad
muesli has quit [Quit: NO CARRIER]
Guest49 has quit [Quit: Client closed]
muesli has joined #openscad
halloy7308 has quit [Quit: halloy7308]
<guso78k> kintel I understand you want to have opaque triangles drawn first and in a second run, render the transparent stuff with z-writes turned off.
<guso78k> Issue with that is that it requires 2 runs and there is just setup for one yet. is there a good point in program where i can create 2 gl programs of is it possible to  inject this z-write command right into the middle of the given program ?
<gbruno> [github] cjmayo closed issue #5298 (rightClick menu does not appear on Linux with Qt 6) https://github.com/openscad/openscad/issues/5298
mmu_man has quit [Ping timeout: 268 seconds]
J25k59 has quit [Quit: Client closed]
J25k59 has joined #openscad
mmu_man has joined #openscad
kintel has joined #openscad
<kintel> guso78k Separating out into two passes will likely require some refactoring, and will be different for preview vs. render
<kintel> For preview, we already render highlighted objects separately, but custom-colored CSG objects would need some care
<kintel> For render, we may want to split PolySets into opaque + transparent if we want to avoid sorting
<kintel> It's not a trivial problem
fling has joined #openscad
kintel has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
<guso78k> the sorting  can be a quicksort and probbaly accounts for a fraction of the total render time, but apparantly this is not the desired way
fling_ has joined #openscad
fling has quit [Read error: Connection reset by peer]
teepee_ has joined #openscad
teepee has quit [Quit: bye...]
TheAssassin has quit [Quit: No Ping reply in 180 seconds.]
teepee_ is now known as teepee
TheAssass1n has joined #openscad
fling_ is now known as fling
<guso78k> suppose you are interested in an one-time render solution which aims to be >80% perfect in most cases
teepee_ has joined #openscad
teepee has quit [Ping timeout: 264 seconds]
teepee_ is now known as teepee
J25k59 has quit [Quit: Client closed]
J25k59 has joined #openscad
<teepee> what would be the point of a different render code that's not better than currently?
sparsh-n has joined #openscad
feep has quit [Ping timeout: 252 seconds]
feep has joined #openscad
guso78k has quit [Quit: Client closed]
sparsh-n has quit [Quit: Client closed]