teepee changed the topic of #openscad to: OpenSCAD - The Programmers Solid 3D CAD Modeller | This channel is logged! | https://openscad.org/advent-calendar-2021/ | 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
<Notkea> hello, is there a way to have multiple views from different angles at the same time? I'm looking for something similar to Blender's Quad View, but in OpenSCAD. (https://docs.blender.org/manual/en/latest/editors/3dview/navigate/views.html#quad-view)
Non-ICE has joined #openscad
<teepee> so, shall we check if it's actually water tight?
<teepee> Notkea: not really, it's possible to run multiple instances of OpenSCAD that reload on save, but that's probably a bit annoying to setup
<Notkea> yes, I'm currently running multiple instances, but it starts being a bit problematic in terms of performance with complex objects which get loaded and compiled multiple times instead of just being reused and just rendered with different angles :/
<teepee> Jack22: not water tight, but very fuzzy :) - https://www.prusaprinters.org/prints/107988-bowl/comments#makes
<teepee> Notkea: opening multiple windows of one instance might help by sharing the cache
<Jack22> nice one .. my prints are always watertight i wonder why .. maybe cuz PETg
<Jack22> oh maybe it is too fuzzy so it is more an air filter Ü
<teepee> I suppose chances would be better at slightly higher layer size and a bit hotter printing
<teepee> no, it's just a couple of places at the bottom where it leaks, and there's some places that look like calculation errors with large spikes sticking out
<teepee> that showed in the slicer already
<Notkea> teepee: I didn't think of that; This should speed things up, thanks!
<teepee> I guess a multi camera view would be nice, no idea how complicated that would be
<teepee> I think there's even a ticket for that already
<Jack22> Notkea  these quad views are to allign and check geometry but in oSCAD the geometry is where your code put them so it is not needed to have constant all 3 views
<teepee> when I'm lazy I just shift cubes around with ALT+Cursor keys. I suppose that quad view would be useful in those cases :)
<Jack22> also those quad view often only refresh the actual window .. so not so different as switching the views with hotkeys
<Notkea> quad view would still be very useful in my workflow as I appreciate having a complete overview of the object and not having to grab the mouse, switch from the text editor to the preview window, look around the thing…
<Jack22> teepee still you can't move object with the mouse in any direction with unknown value
<Jack22> notkea you have ctrl 4-0  to switch views
<teepee> true, no direct mouse movement at this point
<teepee> heh, now I want 4 monitors :)
<Notkea> oh that helps! Still, this requires switching back and forth contexts instead of just having everything at a glance
<Jack22> i think this is more of a  " iam used to it "  thing ..  in autocad i had this quad view and  when using other software you miss this, but  it didn't take long until you get used to on view.  Also in oSCAD i put in code without needing a view ( yeah and get surprised when it doesn't look as expected )
SamantazFox has joined #openscad
SamantazFox has quit [Read error: Connection reset by peer]
SamantazFox has joined #openscad
<Notkea> I suppose it's also that I'm using an external editor and dislike having to jump from windows, tiles, views, back to the editor, all the while I have enough screen estate to have all the things always up next to each other x)
<Jack22> you could use a script to export the 3 views as png .. and have these open in a webpage that refreshes the content
<Notkea> and soon, I'll have a CAD-dashboard-thing :D
* teepee makes mental note for a GSoC project improving the 3d view
<Jack22> maybe you could use animation to switch the views automatically
<Jack22> not sure if less than 1sec is possible
<Jack22> oh yes you can use  0.2 fps  .. for auto cycle the views
<Notkea> I'll call that headache mode
<Jack22> or  5fps for better seizures
<Notkea> haha
<InPhase> Notkea: module MyThing() { ... } MyThing(); if (my_multiview_bool) translate([...]) rotate([...]) MyThing();
<Notkea> oh, that works too
<Jack22> InPhase would be easier to change $vpr or?
<InPhase> I don't really go with the same workflow as you are looking for, but I do very often setup multiple views of the same thing while I'm in intermediate stages of development.
<Jack22> doesn't that become super slow?
<InPhase> Well you have natural opportunities to render and cache something if you need to.
<Jack22> notkea  if you change $vpr=[0,90,0];  in your code you should be able to control the view from your external editor
<InPhase> But usually not. Most of my designs render in good time these days, in part because my computer is faster than when I started OpenSCAD, but mostly because I tend to make them more efficiently now.
<Jack22> yes it is a good carrot to write nice code
<Jack22> they should give  all developers  pentium 3 cpu - Ü
<Notkea> it's quite neat to control the "camera" through the source file :D
<InPhase> Notkea: cube(5); $vpr = rands(0,360,3); Then View, Animate, FPS 30, Steps 30
LordOfBikes has quit [Ping timeout: 240 seconds]
<Jack22> notkea  $vpd=100 is for distance $vpt =[0,0,0] moves and $vpf for field of view angle
LordOfBikes has joined #openscad
<Notkea> :D
SamantazFox has quit [Ping timeout: 268 seconds]
Jack228 has joined #openscad
Jack22 has quit [Ping timeout: 256 seconds]
linext_ has quit [Read error: Connection reset by peer]
spuder has joined #openscad
<spuder> Could anyone help me look at this valgrind / strace output? I can reproduce this crash consistently https://github.com/openscad/openscad/issues/4028#issuecomment-1002888248
gunnbr has joined #openscad
othx has joined #openscad
<peeps> spuder: are you running openscad as root?
<peeps> i only ask since i saw a number of stat calls to paths with "sbin" in them. but now looking at my PATH, i guess that's typical? i DON'T recommend running as root btw
<peeps> spuder: i would have started with a gdb stack trace from a build with debug info. i've never gotten anything useful from valgrind, and yeah you have to apply a patch like the one you found, that's always been a problem with valgrind & CGAL
<spuder> Yes this is in a docker container so it is running as root. I'm not too familiar with GDB but I'll see if I can figure out how to get a core dump
<peeps> you just need a debug build of openscad, and use gdb command "bt" for backtrace (not a coredump)
<peeps> also i have no idea what that "fmt" call is for which looks like the last thing before strace fails
gunnbr_ has joined #openscad
<InPhase> That's probably part of that xvfb-run thing, which must be a shell script.
<InPhase> I really doubt OpenSCAD is executing /bin/rm and /usr/bin/fmt
<InPhase> Ah yes, and right before it opens up stat("/tmp/xvfb-run.mXOqpW/Xauthority"
<InPhase> See the WIFEXITED, which must be close to where xvfb-run takes over from the crash.
<InPhase> spuder: Okay. In fact, I think you have accidentally made the most useless strace ever. lol
<InPhase> spuder: OpenSCAD is launched on line 163, then it waits for OpenSCAD until line 191 at which point it checks the child process status and prints out an error log.
<InPhase> spuder: So you did not strace anything at all from OpenSCAD. :)
<InPhase> Maybe you want to try reproducing that again with the strace slapped directly on the OpenSCAD process. If necessary, make a copy of xvfb-run and intrusively add the strace to your copy, and run that instead of the original.
<InPhase> Alternatively if you're more comfortable messing with docker, make a bash script to launch OpenSCAD with an strace, and setup docker to run that script instead of the OpenSCAD executable directly.
gunnbr_ has quit [Ping timeout: 240 seconds]
<InPhase> spuder: Oh right, and also another option is you could use strace with the -f flag, which will follow child processes.
<InPhase> That might be a little messier, but we already have the trace of what the xvfb-run part is doing, so we could mentally subtract that out.
<InPhase> Generally I would preference a clean trace of just the target process if possible, because then it's very clear what you're dealing with.
<peeps> surely there's some accepted way to run commands in docker as not-root?
<spuder> If running as root is a problem, it is possible to run as non-root docker, but from my expierence a lot of people don't bother since the container is isolated and short lived.
<spuder> I generated new straces which i'm looking through now. Hopefully I captured the actual openscad process in these https://github.com/openscad/openscad/issues/4028#issuecomment-1003264809
<InPhase> *thumbsup*
<InPhase> Let's see.
<InPhase> Looking better. Checking the first of the two as a priority.
<InPhase> So you're having an OpenGL problem.
<InPhase> I think.
<InPhase> It looks like it's trying to complain about "X Error of failed request: BadRequest" at the very end, then it goes to munmap (a deallocate) and it promptly terminates, so I assume it's deallocating something that is not a valid pointer when it processes this error.
<InPhase> So there's a chance this is two problems in one. It might be an OpenGL and a stack unwinding issue in that animate code. Let me inspect it for exception safety.
<spuder> Oh good, so the strace worked. Thanks for looking at that. I'm still working on making a debug build to run gdb against. Might take me a bit
<InPhase> The initial OpenGL problem is probably something amiss with the docker setup.
<InPhase> Especially if you cannot reproduce this problem without docker.
<spuder> Good to know. There is an official nvidia/opengl docker container I've been researching. https://hub.docker.com/r/nvidia/opengl
<InPhase> And I'm not sure of your particular background, but please understand this phase of debugging involves heuristic guesswork which tends to lead in the right direction on average, but has an error rate. :)
<InPhase> One must chase a few intuitive leads in order to make timely progress.
<peeps> i'd try not running as root... who knows what kind of graphics conflicts that could cause
<InPhase> Hmm. So that last munmap right before the crash, is actually attempting to free some executable memory that is created and mapped to files like /root/.glvndrnLrnL and /root/.glvndD8w6g9
<InPhase> I'm not sure what those are, but they both start with .glvnd
<InPhase> So this might be some sort of temporary file used by OpenGL?
<InPhase> glvnd is the "GL Vendor-Neutral Dispatch Library"
<InPhase> I was unable to find any exception safety issues in OpenSCAD for animation, but I think it's not that sort of problem. I think the problem is entirely an OpenGL crash now.
<InPhase> I think the OpenGL library has some sort of problem, attempts to report the error, fails hard, and segfaults itself.
<InPhase> I'll document on github.
<spuder> Thank you
KimK has quit [Quit: Leaving]
<InPhase> spuder: openscad --info Since you're not running it graphically, running the info might give you some insight into the libraries actually in use.
<InPhase> Did you compile that yourself?
<spuder> No, still working on that. This _should_ be the official image.
<InPhase> It doesn't match the libraries in the normal 2021.01 AppImage for Linux.
<spuder> Basically using `openscad/openscad:2021.01` based on debian:buster
<InPhase> https://bpa.st/6E4A Here's what I get for 2021.01
<InPhase> Same git hash, but different libraries.
<InPhase> And llvmpipe for VMware. Never saw that one before. :) I guess the problem is probably somewhere floating around in that general vicinity.
<spuder> I'm guessing xvfb is spoofing that. Here is what I get when I run directly in docker, no xvfb https://gist.github.com/spuder/c8368d196bdb43085f51ff3d40ff0dff
<InPhase> Hmm, yeah.
arebil has joined #openscad
ferdna has quit [Quit: Leaving]
gunnbr_ has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
gunnbr_ has quit [Quit: Leaving]
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
arebil has joined #openscad
lastrodamo has joined #openscad
rvt_ has joined #openscad
rvt_ has quit [Quit: rvt_]
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
rvt_ has joined #openscad
arebil has joined #openscad
rvt_ has quit [Quit: rvt_]
la1yv_b has quit [Ping timeout: 256 seconds]
la1yv_b has joined #openscad
SamantazFox has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
miique has joined #openscad
arebil has joined #openscad
califax has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
SamantazFox has quit [Read error: Connection reset by peer]
SamantazFox has joined #openscad
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
arebil has joined #openscad
linext has joined #openscad
LordOfBikes has quit [Ping timeout: 256 seconds]
LordOfBikes has joined #openscad
<gbruno> [github] kintel pushed 1 modifications (Rewrite comment to not mention qmake). https://github.com/openscad/openscad/commit/3de6cc27a9ee9a5cbda33cc9bd622114a797d887
<gbruno> [github] kintel pushed 1 modifications (Make script work without first setting OPENSDCADDIR, for interactive usage). https://github.com/openscad/openscad/commit/70e6ba377f8b924f5912ca868775d76bab363cb4
<gbruno> [github] kintel pushed 1 modifications (Make script work without first setting OPENSDCADDIR, for interactive usage). https://github.com/openscad/openscad/commit/4a8b2723a966ac1cf79750cdea87a00c3c00fba3
<gbruno> [github] kintel pushed 1 modifications (libxml2 comes with macOS, removing any existing custom installation). https://github.com/openscad/openscad/commit/13a5a04ea3936875fecff91d4171a0d2bb1c06ca
ferdna has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
spuder has quit [Quit: Client closed]
SamantazFox has quit [Read error: Connection reset by peer]
arebil has joined #openscad
SebastianM has joined #openscad
SebastianM has quit [Client Quit]
<gbruno> [github] kintel pushed 1 modifications (Build output for Sparkle). https://github.com/openscad/openscad/commit/9340201b7cceb29b27dd5836da43eb4674af2b2e
<gbruno> [github] kintel pushed 1 modifications (Fix sed argument causing a '-e' backup file). https://github.com/openscad/openscad/commit/193189bd1465153053f3995a3fdd075ecd4f79c1
<gbruno> [github] kintel pushed 1 modifications (Fix sed argument causing a '-e' backup file). https://github.com/openscad/openscad/commit/5ea834773bd911220b3cff117e21eb558003582a
<gbruno> [github] kintel pushed 3 modifications (brew install meson). https://github.com/openscad/openscad/commit/afeb7fb665f0e9195812117af8467edc31d46f71
<gbruno> [github] kintel pushed 2 modifications (Fix sed argument causing a '-e' backup file). https://github.com/openscad/openscad/commit/1599d2f4acec5263fad7b8a4a7b6cf8005d1e0ba
<gbruno> [github] kintel pushed 3 modifications (brew install meson). https://github.com/openscad/openscad/commit/fc002e8a8252b5c51e6aedb98919a31ab13ba846
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
<gbruno> [github] kintel pushed 1 modifications (Some GLIB2 dependencies may be built-in libraries, so don't search for them in our install dir). https://github.com/openscad/openscad/commit/e6bdf63073434aac476ae77d0c86b7789cf6841b
<gbruno> [github] kintel pushed 3 modifications (brew install meson). https://github.com/openscad/openscad/commit/8be2237de81201b517478f6f9d90d75a904b43d9
rvt_ has joined #openscad
rvt_ has quit [Client Quit]
juri_ has quit [Ping timeout: 240 seconds]
la1yv_a has joined #openscad
miique_ has joined #openscad
NonICE has joined #openscad
af1 has joined #openscad
miique has quit [*.net *.split]
la1yv_b has quit [*.net *.split]
othx has quit [*.net *.split]
Non-ICE has quit [*.net *.split]
peeps[win] has quit [*.net *.split]
foul_owl has quit [*.net *.split]
rawgreaze has quit [*.net *.split]
ccox has quit [*.net *.split]
castawayc has quit [*.net *.split]
fling has quit [*.net *.split]
L29Ah has quit [*.net *.split]
Alexer has quit [*.net *.split]
fardog has quit [*.net *.split]
af has quit [*.net *.split]
sinned6915 has quit [*.net *.split]
EkpyroticFrood has quit [*.net *.split]
sinned6915 has joined #openscad
foul_owl has joined #openscad
rawgreaze has joined #openscad
fardog has joined #openscad
ccox has joined #openscad
Alexer has joined #openscad
EkpyroticFrood has joined #openscad
SebastianM has joined #openscad
othx has joined #openscad
castawayc has joined #openscad
SebastianM has quit [Client Quit]