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
teepee_ has joined #openscad
teepee has quit [Ping timeout: 240 seconds]
teepee_ is now known as teepee
pca006132 has quit [Quit: pca006132]
<teepee> whoops
<InPhase> J23k40: Nice. The Worley Noise looks like cells.
<InPhase> Somehow I missed seeing that one in the repository. :)
<teepee> nobody saw the glitch with the Twist images
<InPhase> teepee: The current version of the web layout is very aspect ratio unfriendly.
<InPhase> teepee: Your lamp text does not display on my browser window unless I horizontally shrink my window.
<teepee> you just need the correct ratio :)
<InPhase> I would tell you how to fix it, but this is not my forte... So... I'm just pointing it out. :)
<InPhase> Hopefully we have some of them smart web people lurking around.
<teepee> yup, hoping the discussion on the mailing list pokes someone hard enough, no takers yet though
<teepee> if we do that for 5 more years, I might dive into CSS at some point ;-)
<teepee> I wonder if we can get that snub thingy printable
<J23k40> InPhase  first i thought i need the voronoi pattern - in the end you don't  but it is there too
<InPhase> teepee: Well, guso78k88 correctly noted it shrinks a lot if you do $fn=15. But it looks less smooth.
<InPhase> Really it just needs the redundancy removed.
<J23k40> and it works without Delaunay triangulation
<InPhase> Oh wow, did I guess right?
<InPhase> I think I fixed the sphere overlap in SnubDodecahedron by trying random crap without understanding what I'm doing.
<InPhase> I mean... Typo. I completely understood the design and had a brilliant insight.
<J23k40> hehe
<teepee> so sphere overlap seems simple, use only the faces with 5 vertices
<J23k40> sometimes the genius is just unconscious aware of the situation and nudges you
<InPhase> Gah. Almost got it. 5 balls are missing, 5 are overlapped.
<InPhase> teepee: Yeah, but that's buried in a nightmarish recursion obfuscation. :-P
<teepee> if(r_corner > 0 && len(pts) == 5)
<teepee> nope
<teepee> 755k 3mf
<InPhase> That worked?
<teepee> and $fa = 2; $fs=1;
<InPhase> Well, good. :) It WAS buried, but I guess inspecting the data at the tail was a good move.
<InPhase> The cylinders are also weirdly redundant. But that's not as critical for the overhead.
<teepee> yeah, they look ok, at $fs = 0.5 but render goes crazy at that point too
<teepee> math checks out, 12 pentagons, 60 vertices
fling has quit [Remote host closed the connection]
<teepee> no, prusa slicer does not like it at all
fling has joined #openscad
LordOfBikes has quit [Ping timeout: 256 seconds]
<teepee> lol, 9h with tree support
<teepee> and that thing is a jungle inside :)
LordOfBikes has joined #openscad
mmu_man has quit [Ping timeout: 255 seconds]
snaked has joined #openscad
fling has quit [Ping timeout: 240 seconds]
fling has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
fling has quit [Remote host closed the connection]
guso78k88 has quit [Quit: Client closed]
fling has joined #openscad
<InPhase> teepee: It might print without supports if a sphere were diffed out of the cente to get rid of the dipping down parts.
<InPhase> center
<InPhase> I've printed hollow spheres before.
J23k40 has quit [Quit: Client closed]
J23k40 has joined #openscad
guso78k has quit [Quit: Client closed]
J23k40 has quit [Quit: Client closed]
J23k40 has joined #openscad
<InPhase> teepee: The SnubDodecahedron.3mf is still missing from index.js. (I'd do it myself, but don't want to clobber into you if you're doing the same at the moment.)
<teepee> indeed, updated now
J23k63 has joined #openscad
J23k40 has quit [Ping timeout: 250 seconds]
J23k63 has quit [Quit: Client closed]
J23k63 has joined #openscad
J23k63 has quit [Quit: Client closed]
J23k63 has joined #openscad
bozo16 has quit [Quit: Leaving]
J23k63 has quit [Quit: Client closed]
J23k63 has joined #openscad
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
othx has quit [Remote host closed the connection]
othx has joined #openscad
guso78k has joined #openscad
misterfish has joined #openscad
guso78k has quit [Quit: Client closed]
<JordanBrown1> teepee, InPhase: note that git won't let you clobber somebody else's work, at least not easily. Your push attempt will fail, and you'll have to pull, and that'll show the conflict. (But probably push -f will clobber, so don't do that unless you know what you're doing.)
misterfish has quit [Ping timeout: 252 seconds]
misterfish has joined #openscad
arebil has quit [Quit: arebil]
cart_ has joined #openscad
pca006132 has joined #openscad
pca006132 has quit [Remote host closed the connection]
pca006132 has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
<InPhase> JordanBrown1: By clobber I meant more "annoy you with an unnecessary merge conflict".
<InPhase> It's best to avoid two people editing the same lines concurrently. :)
cart_ has quit [Ping timeout: 268 seconds]
greenbigfrog has quit [Ping timeout: 260 seconds]
greenbigfrog has joined #openscad
mmu_man has joined #openscad
<Scopeuk> the best conflict resolution is to avoid creating conflicts
misterfish has quit [Ping timeout: 268 seconds]
snaked has quit [Quit: Leaving]
cart_ has joined #openscad
J23k63 has quit [Quit: Client closed]
J23k63 has joined #openscad
<pca006132> writing the simple parser for my refactor, tried using idiomatic c++ everywhere
<pca006132> far from complete but I think it already looks cleaner
<pca006132> it currently supports include already, with good source location tracking (filesystem stuff is decoupled as well)
mmu_man has quit [Ping timeout: 264 seconds]
<pca006132> the plan is to construct the AST, do something on the AST, construct the bytecode and run it
mmu_man has joined #openscad
mmu_man has quit [Ping timeout: 276 seconds]
arebil has joined #openscad
mmu_man has joined #openscad
ril3y has joined #openscad
<ril3y> Hi all,  I created this volume knob (with lots of help from chatgpt :) and it looks right,  However when I go to render it it removes all my knurling and is just a cylinder.  I am really new to this not sure what I am doing wrong.
<ril3y> https://pastebin.com/raw/uMcLeciX this is my code if anyone has a minute to take a look.  Thanks!
<InPhase> You're saying ChatGPT actually give you anything close to a valid result on OpenSCAD code?
<InPhase> All previous attempts I've seen of ChatGPT creating OpenSCAD code have been an abject disaster.
<ril3y> THis was made with chatgpt in 30 mins
<ril3y> Using 4.0
<pca006132> it rendered correctly here
<ril3y> hit f6
<InPhase> The primary issue is that [1, 2, 3, 4] is backwards, and should be [4, 3, 2, 1]
<pca006132> are you using render or preview?
<pca006132> and which version are you using?
<ril3y> InPhase i had to go back and forth with it to work.
<InPhase> I think there are other issues lurking though due to the series of warnings.
<InPhase> But it renders F6 style when I fix that winding order on the back of the pyramids.
<ril3y> OpenSCAD version 2021.01
<ril3y> InPhase you had to fix something?
<InPhase> Yes, just that one thing I mentioned.
<ril3y> Oh sorry i missed that
<pca006132> somehow it just works with manifold enabled, it did not catch the issue for some reason
<InPhase> I was able to spot the problem quickly because the knurling defectively sticks out through the bottom, so I could use thrown-together mode to spot the issue.
<pca006132> oh
<pca006132> yeah it sticks out as well
<InPhase> But you can probably tweak that easily enough.
<ril3y> still rendering.. takes a minute huh
<InPhase> I'll try it in 2021.01 as well.
<ril3y> what version are you using?
<InPhase> Well, the master branch.
<pca006132> you should try the latest snapshot
<pca006132> and enable manifold
<InPhase> It's so much faster that I only go back to the last release when helping out people with issues with it, or comparing functionality.
<InPhase> We are about due for a release. The difference is night and day. :)
<InPhase> ril3y: Yeah, rendered fine in 2021.01 with that fix.
<pca006132> do you guys know some scripts with slow minkowski sum? manifold may get minkowski sum added and we want something to benchmark it
<ril3y> woah this is much different :)
<InPhase> pca006132: I used to just minkowski large spheres when I wanted to show how slow OpenSCAD got with it. :)
rawgreaze has quit [Ping timeout: 260 seconds]
<pca006132> tbh I am always amazed how patient openscad users are...
<InPhase> pca006132: $fn high, translate one sphere on 1-3 axes, and run with it.
rawgreaze has joined #openscad
<pca006132> hmm, I want some more diverse set of models
<pca006132> not just hypothetical examples
<pca006132> we know that convex decomposition does not scale in general anyway
<ril3y> InPhase its stuck on 999/1000 for a few mins.  Did it do that for you?
<ril3y> pca006132 where do i enable manifold?
<InPhase> ril3y: 999 is always the slowest bit, doing the top level union.
<ril3y> oh ok.  I am still new to this.  Thanks!
<pca006132> Edit -> Preferences -> Features
<ril3y> oh this is single threaded rendering right/
<pca006132> check the checkbox with the name "manifold"
<InPhase> pca006132: My old hair comb is an actually popular model that wildly underperformed, since I wrote it amidst my ignorance of 2016, and used minkowski of minkowski.
<pca006132> manifold will do parallel rendering internally, if your model is sufficiently complex
<pca006132> nice
<pca006132> do you have the link?
<InPhase> pca006132: It got many thousands of downloads from thingiverse.
<pca006132> will add to my cherry-picked benchmark set
<InPhase> pca006132: Let me pastebin, because I think the thingiverse version is a little out of date with some sort of bug fix.
<pca006132> ok
<InPhase> pca006132: https://bpa.st/6QAA
<InPhase> pca006132: CC0, feel free to use and abuse as a benchmark as desired. :)
<pca006132> thanks
<InPhase> Just please don't judge. It was like my 4th or 5th scad file ever. ;)
<InPhase> I'm getting 1 minute 42 seconds in the master branch. I used to get 30 minutes for a render in 2016.
<InPhase> Minkowski was used heavily just to make it smooth to the touch all over.
<InPhase> Like, the letters on it are rounded.
<InPhase> So it is an authentically justified use of minkowski, and not contrived.
<pca006132> yeah, this is what I am looking for
<pca006132> btw I got it finished in 21.4s, not exactly master branch but close (tracy branch)
<pca006132> wonder why the timing is so different...
<InPhase> Don't know who tracy is, but that sounds good. :)
<pca006132> oh, tracy is a profiler
<InPhase> Ah.
<InPhase> Could be a machine difference, but I don't usually see people getting 5 times faster than me.
<InPhase> I'm not exactly running on a pocket calculator.
mmu_man has quit [Ping timeout: 268 seconds]
<InPhase> Oh, wow. I must have left fast-csg on and manifold off after some testing.
<ril3y> FYI switching to maifold with this https://pastebin.com/raw/uqDmTx5U code crashes my openscad
<InPhase> pca006132: So, that's why. I wasn't even using manifold...
<pca006132> oh
<InPhase> Uh, right.
<pca006132> ril3y: cannot reproduce
<InPhase> This design fails on Manifold still.
<InPhase> pca006132: I submitted this once as a Manifold bug, but I guess it wasn't resolved.
<pca006132> ? which one?
<InPhase> The comb.
<ril3y> weird.  Just gonna use fast csg
<pca006132> are you sure your submodule is updated?
<pca006132> I checked the stl output from manifold, it looks fine
<InPhase> pca006132: https://i.imgur.com/IWvZ0EA.png
<pca006132> ril3y: do you have the commit hash for your snapshot build? and are you on windows?
<ril3y> yes on windows, version 2023.12.09 (git 3d094bf87)
<InPhase> pca006132: Actually, I'm not sure. Let me try again.
<InPhase> pca006132: I do find it frustrating that the submodules do not automatically stay synchronized. I created a shell script to pull on OpenSCAD to resolve this, but I probably forgot to run it the last time or two that I built.
<pca006132> ril3y: will try to reproduce the issue later, I need to get the minkowski benchmark working first
<InPhase> ril3y: And yeah, when I said that code worked on the master branch, turned out I was accidentally running it with fast-csg instead of manifold.
<ril3y> no worries.  you guys helped me a ton.  Printing on bambu now.  This is for an encoder I had lying around.  Installed KMK on a rpi 2040 and circuit python.  Now i have a volume level controller for the desktop.
<ril3y> InPhase haha makes more sense
<InPhase> ril3y: But I DID get a bunch of fast-csg errors, so there is probably something wrong with the code. If your goal is just a printable result though, it will get you there. If you want correct code, it requires more digging for the problem.
J23k63 has quit [Quit: Client closed]
J23k63 has joined #openscad
<ril3y> InPhase i got 0 errors
<InPhase> pca006132: After a fresh submodule update and pull and rebuilt, manifold still does not render the comb.
<InPhase> pca006132: And I did a clean build.
<pca006132> interesting, will check
<InPhase> Oddly, ERROR: Rendering cancelled by exception CGAL ERROR: assertion violation!
<pca006132> weird
<InPhase> https://bpa.st/AD4Q full output
<pca006132> btw can you try it with command line and send me the exact cmd?
<InPhase> Sure.
<pca006132> I think this is converting manifold output into something for cgal
<pca006132> no idea why this happens though
<InPhase> Works on the command line?
<InPhase> I'm not sure what to investigate for the difference between the two.
<pca006132> yeah I suspect it is faulting on some conversion
<pca006132> probably related to the polyset refactoring we did previously
<pca006132> maybe just file an issue, will look at it deeply later
teepee_ has joined #openscad
teepee has quit [Ping timeout: 240 seconds]
teepee_ is now known as teepee
<pca006132> btw, ril3y is it directly crashing or report errors?
<ril3y> crashes without any error
<pca006132> it is pretty serious
<pca006132> can you try command line? e.g. openscad --enable=manifold --export-format binstl file.scad -o test.stl
<ril3y> C:\Program Files (x86)\Openscad>openscad --enable=manifold --export-format binstl "e:\volume knob.scad" -o e:\test.stl
<ril3y> terminate called after throwing an instance of 'std::out_of_range'
<ril3y>   what(): Vec out of range
<pca006132> this is really interesting
<pca006132> I thought we will not encounter this anymore
<pca006132> should open another issue for this I guess
mmu_man has joined #openscad
<pca006132> I am building the latest master now, need some time...
<pca006132> cannot reproduce both cases... I guess I need a windows vm to debug the crash
<ril3y> so this my env issue then/
<pca006132> InPhase: what is your system? and do you have any experimental flags other than manifold enabled?
<pca006132> no, probably something more general
<ril3y> my system is unique to be sure
<pca006132> oh wait
<pca006132> are you using 32 bit?
<pca006132> or maybe you can tell me more about your system so I can have some clues
<ril3y> System Information:
<ril3y> Computer Name: BEAST
<ril3y> Operating System: Microsoft Windows 11 Pro, Version 10.0.22631, Service Pack 0
<ril3y> CPU: AMD Ryzen Threadripper 3990X 64-Core Processor , Cores: 64, Logical Processors: 128
<ril3y> Total Physical Memory: 255.89GB
<pca006132> (thought about 32bit because of the prefix x86)
<pca006132> wow
<ril3y> C:\Program Files (x86)\Openscad
<ril3y> was the installer path
<teepee> could still be a 32 bit binary
<ril3y> pretty sure it is
<teepee> help->library info should show that
<pca006132> maybe try x86 (64-bit)?
<pca006132> we never test 32 bit builds for manifold...
<InPhase> pca006132: My experimental feature settings: https://i.imgur.com/nhmpFBk.png
<InPhase> pca006132: Also, I do have it preview by default on load, so it has been doing a preview before render each time.
<ril3y> C:\Program Files\Openscad>openscad --enable=manifold --export-format binstl "e:\volume knob.scad" -o e:\test.stl
<ril3y> Geometries in cache: 1703
<ril3y> Geometry cache size in bytes: 1044120
<ril3y> CGAL Polyhedrons in cache: 0
<ril3y> CGAL cache size in bytes: 0
<ril3y> Total rendering time: 0:00:01.019
<ril3y> Top level object is a 3D object:
<ril3y>    Facets: 17814
<ril3y> C:\Program Files\Openscad>
<ril3y> Worked.
<pca006132> nice
<pca006132> InPhase: ah, I never tested that
<InPhase> pca006132: Turning off VBO did not make a difference.
<InPhase> pca006132: Ah hah! But turning off preview before rendering fixed it...
<InPhase> Let me test a couple times as a reproducibility check.
<pca006132> very likely related...
<InPhase> Yes, very reproducible. Clicking preview then render breaks it reliably, render without preview and it works.
<pca006132> good
L29Ah has quit [Read error: Connection reset by peer]
<pca006132> btw, regarding machines with NUMA CPU configuration, I always wondered if it makes sense to pin the CPUs manifold uses to a single NUMA group
<pca006132> access across NUMA nodes have performance implications iirc
<InPhase> pca006132: Preview, Design/Flush Cache, Render, works fine.
<InPhase> pca006132: So just a cache issue with Manifold.
<InPhase> I feel like we already had some issue about a cache issue with Manifold though.
<pca006132> and manifold can't really use everything, because we are bounded by the single threaded part and is usually limited to ~5x scaling over single thread, except for some really crazy models
<pca006132> yes, 4732 I mentioned above
<InPhase> Oh, right.
<InPhase> Although that's the backwards case, where cache helps. :)
<pca006132> oh
<pca006132> 4753 then
<InPhase> Yeah, looks related.
<pca006132> ril3y: btw I wonder if building with hwloc can help the performance on your machine
<pca006132> are you willing to test this? I only know how to compile manifold with hwloc, because mxe does not provide hwloc and I only know how to build manifold with msvc
<ril3y> yah i can test it.
<ril3y> I have visual studio 2022 installed.  I have never build openscad, (let alone on windows)
<pca006132> you can try building manifold
<pca006132> it is much simpler
<pca006132> basically, cmake . -DCMAKE_BUILD_TYPE=Release -B build -DMANIFOLD_DEBUG=OFF -DMANIFOLD_PAR=TBB -A x64
<pca006132> cd into build directory, and cmake --build . --target ALL_BUILD --config Release
<pca006132> and then try the manifold_test.exe as in the CI
<pca006132> for hwloc build, you need https://www.open-mpi.org/software/hwloc/v2.10/, although I am not entirely sure how cmake can detect hwloc on windows
<pca006132> the timing for Samples test is what I am most interested in
<pca006132> teepee: btw how should we handle the 32 bit binary bug? I am not entirely sure if manifold wants to support this at all
<pca006132> maybe we can just disable it?
<pca006132> just a bit too niche
<teepee> maybe I'll take them down and add a note to vote in a github ticket for that
<pca006132> or disable manifold on the 32 bit will work as well
<InPhase> Where did a 32-bit binary for OpenSCAD come from?
<InPhase> Are we building 32-bit for Windows?
<teepee> yes, since forever :)
<InPhase> Well forever ago made sense!
<InPhase> Maybe the next release is the time to drop support for that.
<InPhase> There can't be many systems still requiring it. That would have to be REALLY old.
<teepee> there's still people asking for win95 support ;-)
<pca006132> and probably does not benefit much from the optimizations anyway...
<teepee> yeah, it might be a point in testing that now
<pca006132> ah, remembering I was saying something will not work on windows 2000
<ril3y> pca006132 installing some stuff needed to build.
<ril3y> Check out the print:
<pca006132> this print is fast
<pca006132> btw amazed by you being able to make chatgpt generate this model
<pca006132> I feel that this is harder comparing to writing it directly, at least harder for me
<ril3y> yah, i mean I am a developer/re so I had to play around
<ril3y> I tried openscad about 10+ years ago and just couldnt get my head to wrap aroud it
<ril3y> now cgpt gets me 80% then i can figure out the rest
<InPhase> ril3y: Declarative functional, not imperative.
<pca006132> should help a bit if you try haskell
<pca006132> but I do agree the language itself is weird...
<ril3y> Daily driver is python, for pretty much everything minus embedded C
<ril3y> but this "keyboard" is running on circuit python now.  So thats pretty cool
<pca006132> guso78 is working on python integration with openscad
<pca006132> so you will be able to use openscad libraries with python later
<pca006132> anyway, time for me to sleep. let me know if you got any issue compiling/running the test
misterfish has joined #openscad
L29Ah has joined #openscad
<ril3y> pca006132 got some actual work to do.  Will try  to swing back by later.
J23k63 has quit [Quit: Client closed]
J23k63 has joined #openscad
nickmcski has joined #openscad
ril3y has quit [Quit: Client closed]
ril3y has joined #openscad
misterfish has quit [Ping timeout: 255 seconds]
RichardPotthoff has quit [Read error: Connection reset by peer]
RichardPotthoff has joined #openscad
pbsds has quit [Quit: Ping timeout (120 seconds)]
pbsds has joined #openscad
lf94 has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
t4nk_fn has quit [Quit: ZNC 1.8.2 - https://znc.in]
extor has quit [Remote host closed the connection]
lf94- has joined #openscad
t4nk_freenode has joined #openscad
xtore has joined #openscad
splud has quit [Ping timeout: 245 seconds]
splud has joined #openscad
<gbruno> [github] Nikorasu opened issue #4900 (We NEED a manual Dark Mode option, regardless of OS setting, please!) https://github.com/openscad/openscad/issues/4900
mmu_man has quit [Ping timeout: 260 seconds]
<gbruno> [github] t-paul edited issue #4900 (Support Dark Mode option on Linux, including manual regardless of OS setting) https://github.com/openscad/openscad/issues/4900
misterfish has joined #openscad
mmu_man has joined #openscad
cart_ has quit [Ping timeout: 255 seconds]
erectus has quit [Remote host closed the connection]
erectus has joined #openscad
RoyK^ has joined #openscad
misterfish has quit [Ping timeout: 268 seconds]
RoyK has quit [Ping timeout: 256 seconds]
epony has quit [Remote host closed the connection]
misterfish has joined #openscad
misterfish has quit [Ping timeout: 245 seconds]
foul_owl has quit [Ping timeout: 256 seconds]
t4nk_freenode is now known as t4nk_fn
foul_owl has joined #openscad
snaked has joined #openscad