TheCoffeMaker has quit [Quit: So long and thanks for all the fish]
TheCoffeMaker has joined #openscad
J25k1 has joined #openscad
J25k38 has quit [Ping timeout: 240 seconds]
snaked has joined #openscad
drfff has quit [Ping timeout: 276 seconds]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
drfff has joined #openscad
<lockywolf>
The wikibooks manual mentions "View >> OpenCSG" model view, but my openscad does not have it. Why? OpenCSG is installed, and ldd shows openscad linked to it.
fling has quit [Remote host closed the connection]
fling has joined #openscad
<J25k1>
lockywolf do you have a link where this is mentioned? you have preview (F9) and throw together (F12) and you view with F5 and render with F6
<J25k1>
seems this is "preview" in the nightly version 2025 not sure when this was changed
<lockywolf>
This is still "preview" in 2021
<J25k1>
yes the preview is openSCG but that naming seems a bit confusing in the wiki
guerd has joined #openscad
<lockywolf>
why does "cube" have three dimensions?
<lockywolf>
isn't a cube defined by x=y=z?
<lockywolf>
anyway, it's a nitpick
<lockywolf>
How can I change keybindings?
<J25k1>
xyz are 3 dimensions
<J25k1>
key bindings are fix
<lockywolf>
hehe
<InPhase>
lockywolf: Because RectangularSolid is too much to type.
<InPhase>
lockywolf: Fortunately, cube has an actual cube mode. cube(5); works. ;)
<InPhase>
lockywolf: Also, cylinder has a cylinder mode, and a cone mode.
<lockywolf>
InPhase: should have been RectangularParallelepiped :)
<InPhase>
Although cone is easier to type. My prior explanation has no defense there. :)
<InPhase>
I think overall the most basic recognizable shapes were used as keywords, followed by a lot of modifiers added while keeping the keyword count low.
<lockywolf>
is everything in openscad triangulated? like, no function-defined NURBS?
<teepee>
yes, it's based on mesh kernels only at this point
<lockywolf>
how do I stop animation and re-define time?
<lockywolf>
ah, never mind
drfff has quit [Ping timeout: 252 seconds]
<J25k1>
those are nice first time user questions
<J25k1>
If you consider the scad file were a function is defined, after render this becomes a mesh. The resolution is set in the scad. But the rendered geometry is based on a mesh.
<J25k1>
animation has these buttons you may have discovered
<J25k1>
you can define time as $t=0 , but then animation is not running anymore
<J25k1>
you can also enter a time 0-1 into the input field
cart_ has joined #openscad
<lockywolf>
I am just reading the manual straight through
guerd has quit [Read error: Connection reset by peer]
guso78k has joined #openscad
guso78k has quit [Quit: Client closed]
aiyion3 has quit [Remote host closed the connection]
aiyion3 has joined #openscad
misterfish has quit [Ping timeout: 252 seconds]
misterfish has joined #openscad
guso78k has joined #openscad
<guso78k>
I am just wondering if openSCAD (or its animation feature) has static variables, which retain their values in between successive animation frame and $t could become irrlevant.
<guso78k>
Not having to fit the "whole story"into a timeframe between 0 and 1 would make animations way more flexible by having their own "time" and animations like those: https://www.youtube.com/watch?v=L6Z2WhO_VVs would be possible
<othx>
guso78k linked to YouTube video "PythonSCAD games" => 2 IRC mentions
<guso78k>
Yeah, the Teacups animation is especially wonderful. Thanks JordanBrown! Still such a nice animation is just possible when you are able to map your story into a recurring time frame from 0 to 1. Issue is if it possible to to detach from $t by having static variables(e.g individul positions and rotatations of the teacups and its passengers)
cart_ has quit [Quit: Konversation terminated!]
LordOfBikes has quit [Ping timeout: 268 seconds]
LordOfBikes has joined #openscad
mtm has quit [Ping timeout: 246 seconds]
mtm has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 264 seconds]
teepee_ is now known as teepee
<InPhase>
guso78k: The example most desperately in need of what you're describing, is Day 19 here, right side, second from bottom, with the Game Of Life: https://openscad.org/advent-calendar-2022/
<InPhase>
guso78k: As you can see, a workaround is possible...
<InPhase>
guso78k: And this notion is generalizable, so it is always computable. It just might be horrible and unsatisfying. ;)
<InPhase>
guso78k: There has by long tradition never been retained state like that for OpenSCAD, which is why there is none for animation. But it is certainly the case that this creates implementation complications like this due to it being missing.
<InPhase>
guso78k: The merit of Jordan's Game of Life implementation in that example is precisely because it instinctively seems like it should not be possible because of the lack of retained state, and so it's nice to show that it is still technically computable and achievable. The alternative of adding in some sort of state retention adds a philosophical impurity to the whole process for which the consequences
<InPhase>
for testing and such would have to be thought through.
<InPhase>
So in summary I'd say yeah, we have clear evidence of the value of that for making some things cleaner to write. Although it's not necessarily concluded that it would be worth it to add this shift in the core way of thinking about data and state. And those are the structure of some of the pros and cons.
snaked has quit [Quit: Leaving]
TheAssass1n has joined #openscad
TheAssassin has quit [Remote host closed the connection]
guso78k has quit [Quit: Client closed]
<teepee>
shadertoy logic might solve at least some cases?
<InPhase>
How do they handle it?
<teepee>
a monotone clock
<teepee>
it's still very minimalistic but does seem to allow much more interesting animations
<InPhase>
I guess the key to having a clock is a state retention system.
<InPhase>
I have frequently argued to people that a stateless functional system is logical and can result in cleaner code for 3D modeling. That argument does of course fall apart hard and fast for animations. :)
<InPhase>
But despite my steady enjoyment of the animation system, I wouldn't want to compromise the 3D printing features to improve the animation process. So updates should keep this prioritization in mind, I think.
<InPhase>
Elsewhere, I've regularly argued to people that functional programming is stupid and limited for general purpose programming, precisely because the real world is stateful, and you cannot model the dynamics of the real world appropriately without a stateful system that mirrors the natural dynamics of what is being represented in the code.
<InPhase>
So we get this flip real fast as soon as we introduce dynamics.
<gbruno>
[github] jordanbrown0 closed issue #5649 ([Help] The command "openscad mymodule.scad-o mymodule.ast" does not produce the expected AST) https://github.com/openscad/openscad/issues/5649