peepsalot has quit [Remote host closed the connection]
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
peepsalot has joined #openscad
fedorafan has joined #openscad
guso78 has joined #openscad
guso78 has quit [Ping timeout: 260 seconds]
L29Ah has quit [Ping timeout: 246 seconds]
ur5us has quit [Ping timeout: 250 seconds]
epony has joined #openscad
SamantazFox has joined #openscad
guso78 has joined #openscad
J2362828263798 has quit [Ping timeout: 260 seconds]
Guest83 has joined #openscad
Guest83 has quit [Client Quit]
<guso78>
switching off MIMALLOC for use with libfive appears generally more stable. but i doubt that libmimalloc is buggy at all. does mimalloc require configuration which might be not ok ?
fedorafan has quit [Ping timeout: 265 seconds]
fedorafan has joined #openscad
ur5us has joined #openscad
epony has quit [Remote host closed the connection]
<Scopeuk>
https://github.com/libfive/libfive/issues/166 is interesting, it suggests eigan uses it's own allocator, for consistency that would also need to be mapped to mimalloc when using it
fedorafan has quit [Ping timeout: 246 seconds]
<guso78>
you mean Eigen library ? where are the hints that make you believe, that libEigen has its own alloc/free system functions ?
fedorafan has joined #openscad
ur5us has quit [Ping timeout: 246 seconds]
J23 has joined #openscad
rvt has quit [Ping timeout: 255 seconds]
rvt has joined #openscad
epony has joined #openscad
<guso78>
is it more than the title ?
pah is now known as pq
pq is now known as pa
ur5us has joined #openscad
castaway has joined #openscad
L29Ah has joined #openscad
Number3[m] has quit [Read error: Connection reset by peer]
Notkea has quit [Write error: Connection reset by peer]
mikolajw has quit [Read error: Connection reset by peer]
guso78[m] has quit [Read error: Connection reset by peer]
xloem[m] has quit [Read error: Connection reset by peer]
Cadair has quit [Read error: Connection reset by peer]
evils[m] has quit [Read error: Connection reset by peer]
LinuxHackerman has quit [Write error: Connection reset by peer]
JordanBrown[m] has quit [Read error: Connection reset by peer]
BZK[m] has quit [Write error: Connection reset by peer]
Notkea has joined #openscad
<Scopeuk>
guso78 the issue linked above referenced overiding them
JordanBrown[m] has joined #openscad
mikolajw has joined #openscad
<Scopeuk>
it's likely that like cgal it defaults to the system ones but can be instructed to build against custom ones
<guso78>
teepee, great info! will use it. i don't like including absolute pathes to my openscad installation in my personal computer O:3 O:3
<teepee>
yes, this should be able to detect the folder on all platforms as it's also used to find the other stuff like examples, color schemes and so on
<guso78>
Exactly what i need. in my personal fork i want to store/load my SDF primitive library in/from a "common" place
<teepee>
some sort of library folder might make sense, we have that for MCAD already
<teepee>
that said, this should really be core stuff that does not change often, as updates would be only with openscad release which unfortunately happen not exactly often
L29Ah has joined #openscad
fedorafan has quit [Ping timeout: 246 seconds]
fedorafan has joined #openscad
<lf94>
guso78: yes! great stuff
guso78 has quit [Ping timeout: 260 seconds]
<lf94>
guso78[m]: have you seen MagicaCSG?
<lf94>
I've been looking at this more and more
<lf94>
I've been wondering, what's faster? Sphere-tracing NxMxO space, or cube marching?
<lf94>
Sphere tracing must be faster, right?
<lf94>
But then what if you consider the computation reduction libfive introduces, and also do gradual resolution increasing?
<lf94>
Is 500 unions then slower or faster between the two?
<peepsalot>
never heard of MagicaCSG, but I assume that's a spinoff/module for Magica Voxel editor?
<peepsalot>
voxel based CSG seems like it would be fairly trivial to implement, as you don't have to worry about splitting up faces etc. each voxel is just enabled or disabled
<peepsalot>
like a 3d bitmap. of course you can get fancy with how you represent and traverse the bitmap; octrees, BSP, etc.
kintel has joined #openscad
fling has quit [Remote host closed the connection]
fling has joined #openscad
<kintel>
Any CMake enthusiasts around who have opinions/ideas/knowledge about the Right Way to deal with CMake built-in find modules needing adjustment?
<kintel>
Our current strategy of copy & modify tends to accumulate bitrot, so I'm looking for a way of using the built-in ones where they work, so that we eventually can easily kick out our modifications
<InPhase>
Hmm. 132 people in #cmake Maybe some help there?
<peepsalot>
what do you need to "adjust"? is this still the FindPython issue?
<InPhase>
(I just joined that to watch. I'm not actually sure how one is supposed to handle those sorts of cmake problems.)
<peepsalot>
when you say built in, do you mean the ones packaged up with cmake itself, or more generally modules provided from native distro repos?
<kintel>
peepsalot FindGLEW broke for me on macOS. I realized that our copy is really old, so I tried to use the one shipping with CMake
<kintel>
..but that one doesn't work on MXE
<kintel>
*yes, I mean built into CMake
<kintel>
I'll try in #cmake :)
<lf94>
What's "MXE"
<kintel>
MXE cross-compiles Windows binaries on Linux
<lf94>
ah
peeps[work] has joined #openscad
peeps[work] has quit [Remote host closed the connection]
peeps[work] has joined #openscad
dTal is now known as DTAL
DTAL is now known as dTal
L29Ah has left #openscad [#openscad]
<peeps[work]>
kintel: from what I've seen, it seems like typical handling is for Find modules to be a light wrapper around pkg config .pc files, assuming that is available.
<kintel>
yeah, but in this case it looks like FindGLEW doesn't offer a pkg-config fallback. MXE looks like it has a working pkg-config for glew
L29Ah has joined #openscad
<peeps[work]>
maybe just manipulate CMAKE_MODULE_PATH conditionally dependent upon platform?
<peeps[work]>
so MXE can use its native one, and configure other platforms to find our cmake module first
MatrixBot1234513 has quit [Ping timeout: 248 seconds]
MatrixBot1234513 has joined #openscad
peeps[work] has quit [Remote host closed the connection]
peeps[work] has joined #openscad
guso78 has joined #openscad
<guso78>
lf94 i actually dont have any idea about the algorithm "cube marching" which will convert the sdf to mesh. have to learn this first.
<guso78>
i have quickly spot into the magicalcsg. i understand its an app where you can "click" your object. you are interested in algrithm in the back stage ?
<lf94>
Yeah. But I suspect it's just sphere tracing and using for-loops
<lf94>
Really I suspect it's simple, and not as complicated as it seems, and the value proposition is "easy GUI to make organic objects in real time"
<lf94>
cube marching I believe is simple in principle
<lf94>
If I ever get to focus on code cad full time, I think it's a must to implement this as an exercise...
use-value has quit [Remote host closed the connection]
<guso78>
ahh m the cubes which have content are subdivided again, just wondering how the algorithm checks that it has content
use-value has joined #openscad
<lf94>
yeah. see? simple in principle
<lf94>
it works by intersection
<lf94>
so like
<lf94>
you hardcode the ~20 or so intersections
<lf94>
of a cube
<lf94>
and then you run it through
<lf94>
that's what I understand. I'm no graphics expert, far from it
<guso78>
but i dont think that voxel based csg is a good thing, because even in the end you get faces pointing to x,y,z. and if you only have N2 instead of N3 surface elements, its still far too much
<guso78>
there exist another solid next to cube, which is room-filling and more round than a cube. just cant recall its name.
<guso78>
doing room-tesselation with this instead would yield a more "smooth" look
<guso78>
ahh, rhombic dodecahedron
<guso78>
and truncated octahedron
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
guso78 has quit [Ping timeout: 260 seconds]
kintel has joined #openscad
<kintel>
peeps[work] Challenge is that the different FindGLEW macros provide different output, so it's annoying to merge them. But yeah, my currant approach is essentially writing a custom find module for MXE which uses pkg-config, then re-packages the result into something compatible with the upstream macro. Just feels like there should be a better way..
<kintel>
Most macros follow a more modern approach now; e.g. FindGLEW will provide an imported target GLEW::glew, which offers the correct include and link arguments
L29Ah has quit [Ping timeout: 265 seconds]
<kintel>
I was hoping to adopt that, as it makes our top-level CMakeLists so much nicer
<InPhase>
kintel: It's possible as an option to use FindPkgConfig and fall back to FindGLEW second?
<InPhase>
kintel: But... no promises on whether or not using pkg-config directly like that will break more or less stuff.
<InPhase>
kintel: Or maybe if FindGLEW produced a detectable failure, FindGLEW first and then pkg-config second as a fallback.
<InPhase>
That's probably cleaner, defaulting to the preferred approach.
<gbruno>
[github] t-paul pushed 1 modifications (Bump manifold version to latest master. This brings mainly: - updated thrust #389 -> may fix some of the random test case crashes - global coplanarity check #408 -> fixes disapearing geometry in higher resolutions - flip triangles #404 -> may fix the mirror winding order issue?) https://github.com/openscad/openscad/commit/2007db30afd085994a29c996df4cd894397afd0c
<gbruno>
[github] t-paul pushed 7 modifications (Bump manifold version to latest master. This brings mainly: - updated thrust manifold/#389 -> may fix some of the random test case crashes; removes need for patching thrust - global coplanarity check manifold/#408 -> fixes disapearing geometry in higher resolutions - flip triangles manifold/#404 -> may fix the mirror winding order issue?) https://github.com/openscad/openscad/commit/0dbf7eb9aeb325ae0c60363c0f3b1186
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
L29Ah has joined #openscad
kintel has joined #openscad
<kintel>
InPhase Sorry, being on and off (back to work again, so I need to somehow carve out 8 hours more every day)
<kintel>
The pkg-config path makes sense, but I'm no longer certain what's cleaner; write a good wrapper (which isn't totally trivial) vs. just copy and patch from upstream : /
ur5us has joined #openscad
guso78 has joined #openscad
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<InPhase>
kintel: The 32 hour day is the secret to success. The trick is fitting it into 24 hours. The best known method is to launch yourself up in a spaceship and accelerate the rest of the solar system up to 198,300km/s