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
admin__ has joined #openscad
actiondave has quit [Ping timeout: 268 seconds]
kintel has joined #openscad
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
Andy-pants has joined #openscad
J232456 has quit [Quit: Client closed]
J232456 has joined #openscad
J23245696 has joined #openscad
J232456 has quit [Quit: Client closed]
Andy-pants has quit [Ping timeout: 265 seconds]
Andy-pants has joined #openscad
Andy-pants has quit [Remote host closed the connection]
Andy-pants has joined #openscad
Andy-pants has quit [Ping timeout: 250 seconds]
Andy-pants has joined #openscad
<Andy-pants> Any chance that someone can point me in the right direction working through an issue? When trying to animate using the CLI I get errors saying "MS GDI - RegisterClass failed" and "Can't create OpenGL OffscreenView. Code: -1." Here's a paste with the .scad file and full console output including command executed - https://pastebin.com/wFZi5HmX
<Andy-pants> I'm on Windows 11, Running Openscad 2021.01 in Powershell.
<Andy-pants> It write's one png succesfully and appears to die on the 2nd, leaving a 0 KB file.
hrberg has quit [Ping timeout: 250 seconds]
hrberg has joined #openscad
kintel has joined #openscad
LordOfBikes has quit [Ping timeout: 265 seconds]
<kintel> Andy-Pants Can you paste the output of the successful run?
<Andy-pants> InPhase: Thanks! I'll give that a shot once I figure out how to extract .tar.zst files on windows XD
<InPhase> Oh. I missed the part about the successful run. That sounds extra weird. That shouldn't be intermittent.
<kintel> oh, wait, this is an animation
<kintel> I actually reviewed that code last week and I think it's a bug
<kintel> We try to register the Wnd Class every frame. Probably not a good idea
<kintel> I know nothing about win32, but this looks fishy :(
<InPhase> kintel: Off the top of my head, how about: static ATOM class_atom = RegisterClassW(&wc); ?
<Andy-pants> kintel: That is what I suspect. It gets registered, but doesn't unregister it. So, either 1) Check if already registered before attempting another registration or 2) unregister after each usage
<InPhase> And I suppose one can always do the old: static bool first_run = true; /* stuff */ first_run = false;
<kintel> static sounds like a good enough hack for now.
<kintel> Andy-Pants Are you able to build OpenSCAD yourself?
<Andy-pants> I haven't, but, should be able to do so.
<InPhase> Maybe static bool registered_class = false; so that it makes sense as a variable state if the error returns prematurely.
<Andy-pants> Though, setting up C/C++ dev environments tends to make me grumpy XD
<kintel> The other question is of course: Why do we create a new context per frame?
<InPhase> Or a singleton?
<InPhase> I don't know the underlying logic of this API. It just sounds from the "ERROR_CLASS_ALREADY_EXISTS" error like this API is expecting some sort of global state.
LordOfBikes has joined #openscad
<kintel> yeah, I think it's just an initial registration of the widget type, needing to run once at program startup
<InPhase> Ah.
<InPhase> Singleton would do it then!
<kintel> Andy-Pants: In the meantime, could you open a ticket, for tracking? I might try to reboot into Windows tomorrow to validate, now that I got VS Code + ssh working on Windows ;)
<kintel> ( but booting into Windows makes me grumpy, so no promises ;) )
<Andy-pants> haha
<InPhase> kintel: I eventually found a fix for booting into Windows making me grumpy.
<Andy-pants> Don't do it? XD
<InPhase> kintel: ... I stopped installing it.
<kintel> I had to bite the bullet this time, as I want to clean up offscreen context management, and I don't trust Wine
<InPhase> Right. I confess, I do keep a dusty unused virtual machine of Windows around for emergencies. But I try not to use that either.
<kintel> It's my first Windows install since I had Windows XP in a VM 10 years ago or so ;)
<InPhase> For something like opengl dev though, you're probably going to want to be native.
<Andy-pants> So, one thing I'm a bit fuzzy on is that the conditional is checking whether the last error isn't `ERROR_CLASS_ALREADY_EXISTS` before displaying that message. However, I'm getting an error 1410, which is literally a `ERROR_CLASS_ALREADY_EXISTS` error.
<InPhase> kintel: And my VM is Windows 7. Much more modern!
<Andy-pants> I shouldn't be seeing that error message, right?
<Andy-pants> ohh FFS, there was a PR to fix the exact issue I'm having - https://github.com/openscad/openscad/commit/02f35250448157fa6ebf82ffd8f5852adf1c523c
<kintel> heh, good catch!
<kintel> I totally overlooked what that check does as well :)
<InPhase> Oh, lol. Yeah.
<kintel> Lesson learned: Test the nightly first ;)
<kintel> Anyway, I still feel a static initialization is nicer, but I can cross that bridge later
<InPhase> So it's still doing a silly thing. But it's doing it correctly now, probably.
<kintel> An even better fix would be to reuse the context from the previous frame
<Andy-pants> I generally try to avoid nightlies. But in this case, it looks like I'm stuck.
<kintel> OpenSCAD nightlies are generally of high quality
<InPhase> Especially now.
<Andy-pants> Why such a large gap in time between the last stable release and now, though? The last stable was 2 years ago. There's been no shortage of development, and there have been bugfixes against the stable branch which seemed to have gotten rolled into the next major release instead of a patch release for the stable.
<InPhase> We're coming up on some really potent stuff for release, so the nightlies are doing spectacular.
<Andy-pants> I've see what
<Andy-pants> 's coming down the pipe, and I'm super excited for it. :)
<InPhase> Andy-Pants: Yeah, we're a little overdue, and maybe missed a good timepoint for it months back. But at this point now we should wait just a notch longer and see what of this high value active work is stable when.
<InPhase> We had a working theory that more regular releases would lure devs in. And then the devs appeared (perhaps in part coincidence, as 3D printers are rapidly growing in availability). And now stuff is just flooding in like crazy.
<InPhase> But we should probably keep on that regular releases theory.
<Andy-pants> Regular releases are good. But, only if they occur. :D
<Andy-pants> Is the desire to have releases occur at a regular tempo? (e.g. every 3,6,12 months?)
<Andy-pants> Hrmm. I installed the nightly and am just getting the usage text when using my previously valid command without a clear indicator what's wrong with it. Heck, even this relatively simple command is causing usgae screen display "C:\Program` Files\openSCAD\openscad.com -o test.png --preview=test.sca"
<Andy-pants> typo in the file extension should be .scad
<JordanBrown[m]> There's a certain argument that we are currently on a 24-hour release cadence :-)
<Andy-pants> Absolutely, nightlies are releases! But, they're not stable releases, though. :)
<JordanBrown[m]> stable-ish :-)
<Andy-pants> Undoubtedly. But, still not stable. :D
<Andy-pants> I'm hope it's obvious that I'm being flippant.
<Andy-pants> Wait, that's not the word I wanted to use. Pedantic is the word I wanted to use. I apologize.
<Andy-pants> I don't mean stable in a "free-of-bugs" way. But, from a "line-in-the-sand" "things aren't changing for now" perspective
<JordanBrown[m]> It's all about the cadence. They don't change for a whole 24 hours :-)
<Andy-pants> haha
J2324569667 has joined #openscad
<InPhase> Andy-Pants: We do a pretty good job of putting unstable stuff under "Experimental" features, and disabling them. That keeps the bug count in nightly releases pretty low unless you choose optional bugs.
<InPhase> A few things cannot be done this way, but they're usually not disruptive items.
<InPhase> Every once in a while something differs.
J23245696 has quit [Ping timeout: 260 seconds]
<JordanBrown[m]> I was thinking much the same thing, but we do have something of a question of when we de-experimental-ize something.
<JordanBrown[m]> I'm not immediately aware of anything that's been de-experimental-ized.
<InPhase> I think in fact there might be a stability bug in the current nightlies, which causes it to just go to 100% cpu once in a while for long stretches. But I can't pin down what's causing it.
<gbruno> [github] kintel pushed 15 modifications (Refactored all the various GL error checking macros into common macros in system-gl.h) https://github.com/openscad/openscad/commit/5c033a4df729309cf75b135c1cf00747ae8a37b6
<Andy-pants> InPhase: Fearture flagging is great way to keep the breaking changes tamped down
<InPhase> But these are reasonably rare.
<Andy-pants> Feature*
<InPhase> JordanBrown[m]: Well fast-csg might be a reasonable choice to remove from experimental for the next release.
<InPhase> JordanBrown[m]: Manifold might not make it. But we'll see.
<InPhase> I think fast-csg has been hammered pretty hard by now, and as long as you only click the first two options, it seems to handle everything.
<InPhase> We could leave the option for a little while, but just default it to on.
<JordanBrown[m]> Selfishly, I think that the textmetrics stuff could largely be de-experimental-ized. The only part of it that I have an uncertainty about is the string presentation of the objects.
<gbruno> [github] kintel opened pull request #4570 (Refactored all the various GL error checking macros) https://github.com/openscad/openscad/pull/4570
<kintel> Andy-Pants We do run all tests for the nightlies, even on Windows. The stuff you just experienced should perhaps be a test case if it doesn't behave as expected
<InPhase> JordanBrown[m]: I didn't even realize that was still experimental.
<JordanBrown[m]> Yep.
<InPhase> Maybe we want to actually at least have a solid game plan on the object stuff first, to make sure there are no conflicts there.
<InPhase> I guess it sort of wedged itself into that a little bit on the side.
<InPhase> Which, is my bad. I always remember to work on reviewing the object stuff when I reach the point of 50% asleep...
<JordanBrown[m]> Except for the string presentation aspect, I'm completely comfortable with the way that objects are presented so far - obj.name, obj["name"], and for(name=obj). I'm happy with declaring that part of the design "done".
<Andy-pants> kintel: that's the way I prefer to handle bugs; Write a test case which duplicates the issue, then resolve. If skill allows, it also allows the bug author to review the PR to ensure that the test case properly captures their failure scenrio.
<kintel> Andy-Pants Yep, and the good news is that our test suite is based on executing the actual OpenSCAD binary, so you could report a bug with a literal cmd-line and the expected and actual output, and it should be relatively straight-forward to write a test case based on that.
<JordanBrown[m]> InPhase the import function for JSON is in a similar state. I'm not deeply familiar with it, but I expect that I'd be completely happy with considering it "done".
<Andy-pants> InPhase: The nightly definitely fixes that animation issue! Unfortunately, the nightly is not happy with the command that `openscad_docsgen` uses to render examples. Something seems to have changed in how the `--preview` CLI option is parsed. 2021.01 seems to be happy to accept that option without an argument, whereas the current nightly needs an argument for that option.
<Andy-pants> So, I'm trying to figure out if that's in intended change, a regression, or a bugfix against 2021.01.
<InPhase> I don't know. The help is badly written for that argument.
<InPhase> I can't even deduce what it expects for the listed argument.
<Andy-pants> I believe `opencsg` and `throwntogether` are valid values
<InPhase> Well the help should certainly say that if so.
<InPhase> "[=throwntogether] -for ThrownTogether preview png" This reads like a jumble to me, and the "=" doesn't make sense with the syntax to the left of it.
<Andy-pants> Agreed
<InPhase> Looks from the code like the options are "throwntogether" or literally any other string you can type.
<InPhase> "--preview fishsticks" worked very well for me.
<InPhase> This is probably also silly.
<Andy-pants> InPhase: where are you looking at that in the code?
<InPhase> Line 1040, openscad.cc
<Andy-pants> Ahh, there it is, thank you :)
<InPhase> Most likely the UX experience of this was not carefully thought out. Looks like maybe it just sort of evolved.
<Andy-pants> There's a ternary that exists in 2021.01 that defaults it to "OPENCSG", that's gone in the nightly. https://github.com/openscad/openscad/blob/openscad-2021.01/src/openscad.cc#L1050
<Andy-pants> So, it was gracefully handling the empty string before, but not now
<Andy-pants> I'll dig into the source tomorrow to confirm that's actually true and see if I can track down where the change was introduced
<Andy-pants> Have a good night :)
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<gbruno> [github] ochafik opened pull request #4571 ([manifold] Nudge macos circleci towards python3) https://github.com/openscad/openscad/pull/4571
Andy-pants has quit [Ping timeout: 276 seconds]
<gbruno> [github] ochafik edited pull request #4571 ([manifold] Nudge macos circleci towards python3) https://github.com/openscad/openscad/pull/4571
foul_owl has quit [Quit: WeeChat 2.3]
kintel has joined #openscad
<gbruno> [github] kintel pushed 15 modifications (Refactored all the various GL error checking macros into common macros in system-gl.h) https://github.com/openscad/openscad/commit/b2e454797dbc5bb09fd0db0a03f55ee75ac0cd5a
<gbruno> [github] kintel synchronize pull request #4570 (Refactored all the various GL error checking macros) https://github.com/openscad/openscad/pull/4570
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
foul_owl has joined #openscad
Andy-pants has joined #openscad
Andy-pants has quit [Ping timeout: 252 seconds]
guso78 has joined #openscad
<guso78> MainWindow.cc initializes an instance of OpenCSGRenderer.cc and ThrowntogetherRenderer.cc which both derive from Renderer.cc, which initializes OpenGL shaders.
<guso78> So it appears opengl shaders are initialized twice. I am wondering if OpenCSGRenderer and ThrownToghetherRenderer use SAME or EQUAL shaders...
foul_owl has quit [Ping timeout: 255 seconds]
foul_owl has joined #openscad
<gbruno> [github] t-paul pushed 2 modifications (Merge branch 'mac-release' of https://github.com/ochafik/openscad into python3-macos) https://github.com/openscad/openscad/commit/bf53ac667897084de4f2a7b80174f50799fb7519
<guso78> teepee, the intel-tbb is not in the make list of the mingw-x-build-dependencies because it appears its not working.
<guso78> is there an easy fix ?
<teepee> add it to the script or use the docker build
<guso78> i am wondering, if its suppose to work, what is wrong and if there could be an easy fix
castaway has joined #openscad
<guso78> it appears that i got it resolved by downloading the missing package from MXE
<teepee> strange, the docker images did work without any issue
<teepee> they don't use this script but did build intel-tbb fine
<teepee> maybe that gcc11 plugin stuff?
<guso78> sorry. no personal experience with docker.i  just know its plug-and-play application running
<guso78> now my tbb libs are built but they are not found
<guso78> there is no FindTBB cmake script present
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
<guso78> after changeing tbb to intel-tbb TBB is found with the .pc file
<guso78> i am wondering if TBB actually comes with different package names
<Scopeuk> there was something in the work as it was setup initially that started with intel-tbb and changed over. I suspect it has different names in different package managers just for fun
<guso78> for mxe its definitely called intel-tbb
<guso78> so intel-tbb is old name and tbb new name ?
<guso78> i also had to remove libdouble-convert.a from the TARGET LINK list because it caused a linker error with many duplicate functions. its included in QT libs already
Av8r has quit [Remote host closed the connection]
<teepee> no idea what's going on then, while it's not using the build-dep script, the config should be essentially identical in the docker images and those are fine
<teepee> I also upgraded to latest MXE so it should not be caused by an old version or something like that
<guso78> teepee, is it possible to compare mxe versions ?
<guso78> how to check and how to upgrade ?
<teepee> not really, only git-hash, they don't seem to do releases anymore
banachtarski has quit [Remote host closed the connection]
banachtarski has joined #openscad
guso78 has quit [Ping timeout: 260 seconds]
guso78 has joined #openscad
guso78 has quit [Ping timeout: 260 seconds]
Andy-pants has joined #openscad
pah has quit [Ping timeout: 260 seconds]
banachtarski has quit [Quit: Leaving]
Andy-pants has quit [Ping timeout: 276 seconds]
L29Ah has quit [Read error: Connection reset by peer]
kintel has joined #openscad
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
kintel has joined #openscad
<kintel> guso78: Yeah, it's likely that duplicate shaders could be managed better between the renderers. I think there's a lot of GL-related resources which could benefit from better management..
<kintel> I'm currently looking into some of the GL stuff, but in a very bottom-up fashion right now, so I don't know if I'll realistically get to the rendering logic anytime soon..
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<gbruno> [github] kintel pushed 1 modifications (NULLGL fix) https://github.com/openscad/openscad/commit/80816a6f6a34cdf2e85c5fc7bab134b1d945f255
<gbruno> [github] kintel synchronize pull request #4570 (Refactored all the various GL error checking macros) https://github.com/openscad/openscad/pull/4570
pah has joined #openscad
snaked has quit [Quit: Leaving]
L29Ah has joined #openscad
spr has joined #openscad
Andy-pants has joined #openscad
spr has quit [Quit: Client closed]
<gbruno> [github] ochafik opened pull request #4572 (Enable Manifold in WASM builds) https://github.com/openscad/openscad/pull/4572
Andy-pants has quit [Remote host closed the connection]
Andy-pants has joined #openscad
<gbruno> [github] ochafik synchronize pull request #4572 (Enable Manifold in WASM builds) https://github.com/openscad/openscad/pull/4572
<gbruno> [github] kintel pushed 64 modifications (Expand short-form LOG() variant to allow specifying message_group) https://github.com/openscad/openscad/commit/574ff871e5dfb3e36364abbe69de4aad5617384b
<gbruno> [github] kintel synchronize pull request #4569 (Added a simplified LOG() function for a common logging case) https://github.com/openscad/openscad/pull/4569
<gbruno> [github] kintel edited pull request #4569 (Added a simplified LOG() function for a common logging cases) https://github.com/openscad/openscad/pull/4569
<gbruno> [github] kintel edited pull request #4569 (Added a simplified LOG() function for a common logging cases) https://github.com/openscad/openscad/pull/4569
Andy-pants has quit [Ping timeout: 265 seconds]
kintel has joined #openscad
<gbruno> [github] kintel pushed 15 modifications (Sweep up LOG stragglers) https://github.com/openscad/openscad/commit/813fef14143353a24e8080ab7224e5237b001dd3
<gbruno> [github] kintel synchronize pull request #4569 (Added a simplified LOG() function for a common logging cases) https://github.com/openscad/openscad/pull/4569
<gbruno> [github] kintel edited pull request #4569 (Added simplified LOG() overloads for a common logging cases) https://github.com/openscad/openscad/pull/4569
peeps[work] has quit [Quit: Leaving]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
peeps[work] has joined #openscad
J2324569667 has quit [Quit: Client closed]
J2324569667 has joined #openscad
J2324569667 has quit [Client Quit]
J2324569667 has joined #openscad
califax has quit [Remote host closed the connection]
califax has joined #openscad
<gbruno> [github] t-paul pushed 1 modifications (Don't pin specific python version.) https://github.com/openscad/openscad/commit/e31765c539a539dac3d7154cd2d1ff3437d2b77c
teepee_ has joined #openscad
teepee has quit [Ping timeout: 255 seconds]
teepee_ is now known as teepee
guso78 has joined #openscad
admin__ has quit [Ping timeout: 265 seconds]
actiondave has joined #openscad
kintel has joined #openscad
<gbruno> [github] t-paul pushed 1 modifications (Update python path.) https://github.com/openscad/openscad/commit/ef93b2f1d9a660e197681c6361b690032b21a02e
guso78 has quit [Ping timeout: 260 seconds]
<teepee> linext: new WASM build on the way
RichardP_ has joined #openscad
RichardPotthoff has quit [Ping timeout: 246 seconds]
<gbruno> [github] ochafik ready_for_review pull request #4572 (Enable Manifold in WASM builds) https://github.com/openscad/openscad/pull/4572
<gbruno> [github] ochafik edited pull request #4572 (Enable Manifold in WASM builds) https://github.com/openscad/openscad/pull/4572
<gbruno> [github] t-paul closed pull request #4572 (Enable Manifold in WASM builds) https://github.com/openscad/openscad/pull/4572
<gbruno> [github] t-paul pushed 3 modifications (Merge pull request #4572 from ochafik/manifold-wasm Enable Manifold in WASM builds) https://github.com/openscad/openscad/commit/f0e885e4f1dd3d863f62711ba636101a7c1c78f9
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<teepee> oof, my Wemos ESP32 box renders in WASM+Manifold in less than 2 seconds
<teepee> and that's on a throttled notebook
<teepee> 0.8 seconds on full 4ghz in chrome
J2324569667 is now known as J23
<J23> that is near preview
<J23> i assume preview is not affected from manifold
<J23> well WASM has no preview but  if we get colors in render - this sounds like a replacement
<teepee> 32 seconds with the "old" fast-csg
<teepee> yes, although there's maybe some preview stuff coming, I did not follow that development
<teepee> but with this speed a full render is possible in much more cases instead of preview
<teepee> hmm, interesting, normal CGAL is only 21 seconds
<gbruno> [github] ochafik edited pull request #4572 (Enable Manifold in WASM builds) https://github.com/openscad/openscad/pull/4572
kintel has joined #openscad
<kintel> teepee I can take a closer look at the macOS stuff. Is the overall goal to build nightlies with manifold?
<teepee> yes, they do already
<teepee> only the verification step failing, so maybe some setting in the TBB library build or in the full build with Manifold subproject
<kintel> right, those libs may not support building universal binaries with backwards comp.
<teepee> latest test is in the python-macos branch
<kintel> ah, the original PR got submitted because the macOS release build isn't blocking PRs?
J23 has quit [Quit: Client closed]
J23 has joined #openscad
<teepee> yes, worst case I'd disable it for now, but if we can get it working it's much better of course
<teepee> a number of the OBS builds also still fail, I'll have to go through the issues there, maybe disabling some older builds
<kintel> Adding new libs is always a bit of work. I'll see what I can do
ur5us has joined #openscad
<linext> teepee, ok
<linext> you're building it this time?
califax has quit [Remote host closed the connection]
califax has joined #openscad
<teepee> linext: we have an official build for long time, but it just got --enable=manifold
<teepee> which makes it like 50 times faster
<linext> faster to build, or faster to render?
<teepee> render
<linext> oh manifold from emmett
<linext> does that mean that the code needs to be javascript/typescript?
<teepee> nope, no changes to the scad scripts at all
<linext> where do i download the .wasm file?
<teepee> https://openscad.org/downloads.html#snapshots - just give me a minute to force the refresh
<linext> hmm...
<linext> https://ochafik.com/openscad/#%7B%22source%22%3A%7B%22name%22%3A%22input.stl%22%2C%22content%22%3A%22%2F%2F%20CSG-modules.scad%20-%20Basic%20usage%20of%20modules%2C%20if%2C%20color%2C%20%24fs%2F%24fa%5Cn%5Cn%2F%2F%20Change%20this%20to%20false%20to%20remove%20the%20helper%20geometry%5Cndebug%20%3D%20true%3B%5Cn%5Cn%2F%2F%20Global%20resolution%5Cn%24fs%20%3D%200.1%3B%20%20%2F%2F%20Don't%20generate%20smaller%20facets%20than%200.1%
<linext> 20mm%5Cn%24fa%20%3D%205%3B%20%20%20%20%2F%2F%20Don't%20generate%20larger%20angles%20than%205%20degrees%5Cn%5Cn%2F%2F%20Main%20geometry%5Cndifference()%20%7B%5Cn%20%20%20%20intersection()%20%7B%5Cn%20%20%20%20%20%20%20%20body()%3B%5Cn%20%20%20%20%20%20%20%20intersector()%3B%5Cn%20%20%20%20%7D%5Cn%20%20%20%20holes()%3B%5Cn%7D%5Cn%5Cn%2F%2F%20Helpers%5Cnif%20(debug)%20helpers()%3B%5Cn%5Cn%2F%2F%20Core%20geometric%20primitives.%5Cn
<linext> %2F%2F%20These%20can%20be%20modified%20to%20create%20variations%20of%20the%20final%20object%5Cn%5Cnmodule%20body()%20%7B%5Cn%20%20%20%20color(%5C%22Blue%5C%22)%20sphere(10)%3B%5Cn%7D%5Cn%5Cnmodule%20intersector()%20%7B%5Cn%20%20%20%20color(%5C%22Red%5C%22)%20cube(15%2C%20center%3Dtrue)%3B%5Cn%7D%5Cn%5Cnmodule%20holeObject()%20%7B%5Cn%20%20%20%20color(%5C%22Lime%5C%22)%20cylinder(h%3D20%2C%20r%3D5%2C%20center%3Dtrue)%3B%5Cn%7D%5
<linext> Cn%5Cn%2F%2F%20Various%20modules%20for%20visualizing%20intermediate%20components%5Cn%5Cnmodule%20intersected()%20%7B%5Cn%20%20%20%20intersection()%20%7B%5Cn%20%20%20%20%20%20%20%20body()%3B%5Cn%20%20%20%20%20%20%20%20intersector()%3B%5Cn%20%20%20%20%7D%5Cn%7D%5Cn%5Cnmodule%20holeA()%20rotate(%5B0%2C90%2C0%5D)%20holeObject()%3B%5Cnmodule%20holeB()%20rotate(%5B90%2C0%2C0%5D)%20holeObject()%3B%5Cnmodule%20holeC()%20holeObject()%3B
<linext> %5Cn%5Cnmodule%20holes()%20%7B%5Cn%20%20%20%20union()%20%7B%5Cn%20%20%20%20%20%20%20%20holeA()%3B%5Cn%20%20%20%20%20%20%20%20holeB()%3B%5Cn%20%20%20%20%20%20%20%20holeC()%3B%5Cn%20%20%20%20%7D%5Cn%7D%5Cn%5Cnmodule%20helpers()%20%7B%5Cn%20%20%20%20%2F%2F%20Inner%20module%20since%20it's%20only%20needed%20inside%20helpers%5Cn%20%20%20%20module%20line()%20color(%5C%22Black%5C%22)%20cylinder(r%3D1%2C%20h%3D10%2C%20center%3Dtrue)%3B%
<linext> 5Cn%5Cn%20%20%20%20scale(0.5)%20%7B%5Cn%20%20%20%20%20%20%20%20translate(%5B-30%2C0%2C-40%5D)%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20intersected()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B-15%2C0%2C-35%5D)%20body()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B15%2C0%2C-35%5D)%20intersector()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B-7.5%2C0%2C-17.5%5D)%20rotate(%5B0%2C30%2C0%5D)%20lin
<linext> e()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B7.5%2C0%2C-17.5%5D)%20rotate(%5B0%2C-30%2C0%5D)%20line()%3B%5Cn%20%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%20%20translate(%5B30%2C0%2C-40%5D)%20%7B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20holes()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B-10%2C0%2C-35%5D)%20holeA()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B10%2C0%2C-35%5D)%20holeB()%3B%5Cn
<linext> %20%20%20%20%20%20%20%20%20%20%20%20translate(%5B30%2C0%2C-35%5D)%20holeC()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B5%2C0%2C-17.5%5D)%20rotate(%5B0%2C-20%2C0%5D)%20line()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B-5%2C0%2C-17.5%5D)%20rotate(%5B0%2C30%2C0%5D)%20line()%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20translate(%5B15%2C0%2C-17.5%5D)%20rotate(%5B0%2C-45%2C0%5D)%20line()%3B%5Cn%20%20%20%20%20%20
<linext> %20%20%7D%5Cn%20%20%20%20%20%20%20%20translate(%5B-20%2C0%2C-22.5%5D)%20rotate(%5B0%2C45%2C0%5D)%20line()%3B%5Cn%20%20%20%20%20%20%20%20translate(%5B20%2C0%2C-22.5%5D)%20rotate(%5B0%2C-45%2C0%5D)%20line()%3B%5Cn%20%20%20%20%7D%5Cn%7D%5Cn%5Cnecho(version%3Dversion())%3B%5Cn%2F%2F%20Written%20by%20Marius%20Kintel%20%3Cmarius%40kintel.net%3E%5Cn%2F%2F%5Cn%2F%2F%20To%20the%20extent%20possible%20under%20law%2C%20the%20author(s)%20ha
<linext> ve%20dedicated%20all%5Cn%2F%2F%20copyright%20and%20related%20and%20neighboring%20rights%20to%20this%20software%20to%20the%5Cn%2F%2F%20public%20domain%20worldwide.%20This%20software%20is%20distributed%20without%20any%5Cn%2F%2F%20warranty.%5Cn%2F%2F%5Cn%2F%2F%20You%20should%20have%20received%20a%20copy%20of%20the%20CC0%20Public%20Domain%5Cn%2F%2F%20Dedication%20along%20with%20this%20software.%5Cn%2F%2F%20If%20not%2C%20see%20%3Cht
<linext> tp%3A%2F%2Fcreativecommons.org%2Fpublicdomain%2Fzero%2F1.0%2F%3E.%5Cn%5Cn%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22%7D%2C%22autorender%22%3Atrue%2C%22autoparse%22%3Atrue%2C%22autorotate%22%3Atrue%2C%22features%22%3A%5B%22fast-csg%22%2C%22fast-csg-trust-corefinement%22%5D%2C%22viewerFocused%22%3Afalse%2C%22showExp%22%3Afalse%2C%22camera%22%3Anull%7D
<linext> whoops
<linext> this fails to render: https://tinyurl.com/262hkuu7
<linext> Try it out at https://ochafik.com/openscad or start with a slightly bigger example.
<teepee> ahh, it stopped :)
<teepee> disable fast-csg , enable manifold and it works
gunnbr_ has joined #openscad
gunnbr has quit [Ping timeout: 265 seconds]
snaked has joined #openscad
<InPhase> "Your url appears to be ridiculous as it will split across lines" really needs to be an IRC client feature.
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<teepee> hah, yes :)
<linext> the slightly bigger example doesn't render
castaway has quit [Ping timeout: 265 seconds]
marcus has quit [Remote host closed the connection]
marcus has joined #openscad
Andy-pants has joined #openscad
Andy-pants has quit [Ping timeout: 264 seconds]
<linext> so the wasm is not a drop in replacement
<teepee> hmm, so ochafik has some extra patches maybe?
<linext> i need to un-minify the JS and see what's failing
<linext> it could just be that my openscad.js is very different from yours
<teepee> oh, that's possible, it shoud be the one from dschroer
<teepee> it might be setup differently for modules and extensions, but I have not looked into any details
<linext> function createWasm() is failing
<linext> wasmMemory = Module["asm"]["Ma"];
<linext> openscad.wasm.js:305 Uncaught (in promise) RuntimeError: Aborted(LinkError: WebAssembly.instantiate(): Import #92 module="a" function="Ma" error: function import requires a callable). Build with -sASSERTIONS for more info.
<teepee> hmm, no idea what that means
<teepee> where did you get the earlier versions from? from ochafik github?
<linext> DShroer
<linext> i think i built it myself with some options to reduce the binary size and increase the optimizations slightly
<linext> pretty sure it was on ubuntu