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
peepsalot has quit [Read error: Connection reset by peer]
peepsalot has joined #openscad
Guest2933 has joined #openscad
<Guest2933> Anybody notice how they have perspective and orthogonal mixed up now?=$
Guest2933 has quit [Client Quit]
J224 has joined #openscad
J22 has quit [Ping timeout: 250 seconds]
LordOfBikes has quit [Ping timeout: 250 seconds]
LordOfBikes has joined #openscad
fling has quit [Remote host closed the connection]
ccox has joined #openscad
peepsalot has quit [Read error: Connection reset by peer]
peepsalot has joined #openscad
ccox_ has quit [Ping timeout: 256 seconds]
<InPhase> They who? Are those OpenSCAD devs messing things up again?
Guest72 has joined #openscad
Guest72 has quit [Client Quit]
fling has joined #openscad
arebil has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
drkow has quit [Remote host closed the connection]
drkow has joined #openscad
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
KimK has quit [Ping timeout: 248 seconds]
nedko has quit [Ping timeout: 240 seconds]
nedko has joined #openscad
buZz has quit [*.net *.split]
noonien has quit [*.net *.split]
buZz has joined #openscad
buZz is now known as Guest6667
noonien has joined #openscad
AndrewStone[m] has quit [*.net *.split]
ABSHK has quit [*.net *.split]
ABSHK has joined #openscad
KimK has joined #openscad
AndrewStone[m] has joined #openscad
califax has quit [Remote host closed the connection]
califax has joined #openscad
fling has quit [Ping timeout: 240 seconds]
fling has joined #openscad
GNUmoon has quit [Remote host closed the connection]
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
drkow has quit [Ping timeout: 246 seconds]
drfff has joined #openscad
fling has quit [Ping timeout: 240 seconds]
fling has joined #openscad
lastrodamo has joined #openscad
fling has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
fling has joined #openscad
GNUmoon has joined #openscad
arebil has joined #openscad
GNUmoon has quit [Quit: Leaving]
GNUmoon has joined #openscad
GNUmoon2 has joined #openscad
GNUmoon has quit [Ping timeout: 240 seconds]
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
fling has quit [Ping timeout: 240 seconds]
fling has joined #openscad
<juri_> InPhase: guess it's time for everyone to switch to implicitcad, then. ;)
fling has quit [Ping timeout: 240 seconds]
KimK has quit [Ping timeout: 240 seconds]
<crazy_imp> uhm, openscad window not in focus - translation input from spacemouse still works (unexpected because no focus), rotation input doesn't (as expected)
GNUmoon2 has quit [Remote host closed the connection]
la1yv_a has quit [Remote host closed the connection]
la1yv_a has joined #openscad
<gbruno> [github] printerderby closed issue #4179 (Performance issues with 2022.03.14 on higher $fn values) https://github.com/openscad/openscad/issues/4179
<gbruno> [github] t-paul pushed 2 modifications (Merge pull request #4226 from MichaelPFrey/mfr-2022-04-18-pref Fix preference setting for RotateVPRelGain.) https://github.com/openscad/openscad/commit/294ab163bc70128c870ea51ebcf58d4fcebbfba9
GNUmoon has joined #openscad
arebil has joined #openscad
myosotis has joined #openscad
KimK has joined #openscad
KimK has quit [Ping timeout: 256 seconds]
<gbruno> [github] MichaelPFrey assigned issue #4030 (Option to clear console on each Preview/Render) https://github.com/openscad/openscad/issues/4030
arebil has quit [Quit: My keyboard has gone to sleep. ZZZzzz…]
SamantazFox has quit [Ping timeout: 256 seconds]
myosotiss has joined #openscad
myosotis has quit [Ping timeout: 256 seconds]
Guest6667 is now known as buZz
myosotiss is now known as myosotis
<buZz> crazy_imp: yeah thats a ancient bug
<buZz> at least 4 years :P
<gbruno> [github] t-paul pushed 12 modifications (Merge pull request #4222 from MichaelPFrey/mfr-2022-04-15 Trace: show parameters of user modul calls, make trace depth configurable.) https://github.com/openscad/openscad/commit/b25862ffdbe0fab1cfd060d5f2c91a654effe78e
<gbruno> [github] t-paul pushed 3 modifications (Merge pull request #4221 from MichaelPFrey/2022-04-15-include-use-newline Warning when a \n is found in use<> or include<>.) https://github.com/openscad/openscad/commit/b9fff2b9132333ea3b337ba47d4ef230b4da9491
<crazy_imp> buZz: is there a ticket for it? https://github.com/openscad/openscad/issues/3724 sounds like quite the opposite :D
<buZz> i have never seen it work -ANY- different
<buZz> crazy_imp: spacemice are -not- joysticks, obviously
<crazy_imp> yeah, but still focus and input related ;)
<buZz> crazy_imp: that issue indeed confirms the lack of sane defaults or configurability
<crazy_imp> buZz: not sure how much of this is linked to the fact that the used input libs continue to provide input without checking for the focus
<teepee> from OpenSCAD perspective spacemouse are really just joysticks ;-)
<buZz> right, so why is rotation and translation different from the 1 joystick
<buZz> because they arent
<teepee> from software side, they are identical on Linux going through the linux joystick driver
<teepee> some special stuff going on using HID or SpaceNav but that's not a huge difference in the end
<teepee> hmm, where's my spacemouse then
veverak1 has joined #openscad
<buZz> mine is so ancient , it uses that weird daemon
<veverak1> Hi folks
<veverak1> by any chance, anybody know a good algorithm for this 2D problem? : I have a 'rectangle' with fixed dimensions, a sequence of points with x,y,theta (coordinates and rotation). I want to take the rectangle and sweep it over the sequence of points to generate a polygon of the "path" (it's a car)
<veverak1> How to get the polygon of the path?
<veverak1> (fast)
peeps[zen] has joined #openscad
peepsalot has quit [Ping timeout: 250 seconds]
<teepee> no idea, but it's probably somewhere in there: https://github.com/openscad/openscad/pull/918
peepsalot has joined #openscad
peeps[zen] has quit [Ping timeout: 250 seconds]
<gbruno> [github] t-paul closed issue #4030 (Option to clear console on each Preview/Render) https://github.com/openscad/openscad/issues/4030
<gbruno> [github] t-paul pushed 4 modifications (Merge pull request #4228 from MichaelPFrey/mfr-2022-04-18-consol Add auto clear console option to preferences) https://github.com/openscad/openscad/commit/ca2ba5f64c8d2be2ccf6394331d74d2b0647cb7c
<veverak1> wow, thanks!
peeps[zen] has joined #openscad
<teepee> I wish he'd left some pointers on how it works, I'm still a bit sad seeing that rotting away
<teepee> the focus thing looks like a simple bug
peepsalot has quit [Ping timeout: 250 seconds]
<teepee> when having the preferences window open and focussing that, it stops all input
<teepee> I guess it's just some copy&paste code that should have been unified into a single place
peepsalot has joined #openscad
peeps[zen] has quit [Ping timeout: 246 seconds]
KimK has joined #openscad
KimK has quit [Ping timeout: 248 seconds]
sinvet has quit [Remote host closed the connection]
sinvet has joined #openscad
osfesa has joined #openscad
la1yv_a has quit [Read error: Connection reset by peer]
la1yv_a has joined #openscad
sinvet has quit [Remote host closed the connection]
sinvet has joined #openscad
sinvet has quit [Remote host closed the connection]
SamantazFox has joined #openscad
<gbruno> [github] t-paul pushed 2 additions 4 modifications 4 removals (Merge pull request #4227 from MichaelPFrey/mfr-2022-04-18-mousewheel Ignore mouse wheel in preferences.) https://github.com/openscad/openscad/commit/59386b965a53254dbf824afd0e549eaf8162074b
osfesa has quit [Ping timeout: 250 seconds]
<gbruno> [github] t-paul pushed 24 modifications (Merge pull request #4220 from MichaelPFrey/mfr-2022-04-14 Fix and regenerate ord-tests.) https://github.com/openscad/openscad/commit/260d3ba45f2212b231e9b7e0395e1b4ffbc7bf6b
sinvet has joined #openscad
fling has joined #openscad
sinvet has quit [Remote host closed the connection]
califax has quit [Remote host closed the connection]
califax has joined #openscad
snaked has quit [Ping timeout: 256 seconds]
GNUmoon has quit [Remote host closed the connection]
fling has quit [Ping timeout: 240 seconds]
<AndrewStone[m]> I don't know if this is the spot to talk about implementation details. But I'll just ask my question now and if its not the right place, feel free to let me know!
<AndrewStone[m]> I'm looking at StackCheck::inst() and its use (for example) in UserModule.cc.
<AndrewStone[m]> (nvm figured it out)
<teepee> AndrewStone[m]: it's the right place too :)
<AndrewStone[m]> thx! I'm working on deferring computation to other threads so that the UI remains responsive... obviously StackCheck therefore needs to be a little more sophisticated!
<teepee> ah, yes. right now there's only the CGAL thread which is the mesh calculation part
<teepee> the 2 other big chunks "compile" and "preview" are on the GUI thread. so you are looking at the compile part?
<teepee> there's another trap, well, one I know of, that there's some static information used
<teepee> I tried to at least make it more obvious but that comes into play when spawning separate threads too
<AndrewStone[m]> I've made a general job executor (in threads), and then a slot that executes an arbitrary function to defer UX calls back into the GUI thread. I found the real hiccup in compile is actually execution of compileDone(bool didchange), so so-far I've just deferred that (instantiateRoot). But I think updateCompilerResult() is also causing a problem.
<AndrewStone[m]> So that's working with a StackCheck workaround. This first step is a little easier than a generalized multi-thread perf speedup, because I'm just moving computation out of the GUI thread so presumably there remains only 1 thread actually doing "real work". But can you point me to the static vars?
<AndrewStone[m]> (no its not updateCompilerResult... its something executing after that)
<teepee> StaticModuleNameStack in UserModule
<teepee> I think that's one of the reasons for that GUI lock in MainWindow that prevents parallel execution
<teepee> I believe all that stuff now has actually a place to go, as there's the EvaluationSession now
<AndrewStone[m]> perfect, I won't have to make something similar
<teepee> I'm not sure it covers everything already, but as it's meant to handle the memory management, it should be at least in scope of the whole compilation part
<AndrewStone[m]> great, I'll fool around and if I get something that seems stable open an MR if you want one but I'm pretty new to this codebase so will probably try it in 2 parts. Part 1 is just defer expensive operations out of the gui thread to keep the gui responsive (like you'll be able to edit or scroll around the code while its computing). Part 2 is actually multithreading the compile/compute. This is more where we'd need every global that
<AndrewStone[m]> depends on compile context to be put into that Session object. There's also another problem with that which is to figure out WHEN to launch in a new thread. I already tried doing so in NodeVisitor, but that was foolish as I'm sure you know.
<AndrewStone[m]> sry, gtg
<teepee> sounds good
snaked has joined #openscad
<gbruno> [github] t-paul pushed 3 modifications (Merge pull request #4229 from MichaelPFrey/mfr-2022-04-18-error-log Error log improvements.) https://github.com/openscad/openscad/commit/110ca328899e031c5fbd21f8caf34734a24b3d7e
myosotis has quit [Quit: myosotis]
lastrodamo has quit [Quit: Leaving]
ur5us has joined #openscad
GNUmoon has joined #openscad
GNUmoon has quit [Remote host closed the connection]
GNUmoon has joined #openscad