News for hackers. Stuff that matters.
Re:Show HN: 3D Meshes of Signed Distance Functions in Python by fogleman on Monday February 15, 2021 @09:50PM (#26150389)
Yes, I'm well aware of libfive!

I'm not doing anything special for sharp geometry. For now you just need to use sufficient resolution until it looks "good enough." Normals are just based on the triangle normals.

Re:Show HN: 3D Meshes of Signed Distance Functions in Python by bhouston on Tuesday February 16, 2021 @09:41PM (#26162012)
Take the spatial derivative for the normals? Runga-kutta methods work wonders for that: https://en.m.wikipedia.org/wiki/Runge–Kutta_methods That works well if they are true signed distance.
Re:Show HN: 3D Meshes of Signed Distance Functions in Python by user-the-name on Wednesday February 17, 2021 @05:01AM (#26164708)
Since you have a distance, you could fairly easily implement dual contouring, I think?
Re:Show HN: 3D Meshes of Signed Distance Functions in Python by andybak on Wednesday February 17, 2021 @09:44AM (#26166795)
Or Surface Nets. Nice compromise of speed and quality. Marching cubes needs a lot of resolution and it's imperfections are especially ugly my eyes.

Maybe mesh resolution isn't a problem for 3D printing. But if 3D printing is the main goal why bother with a mesh? Just go straight to voxels that can be fed directly to the printer.

Re:Show HN: 3D Meshes of Signed Distance Functions in Python by user-the-name on Wednesday February 17, 2021 @10:18AM (#26167238)
The printer does not use voxels, it uses G-codes, which are tool paths for the print head.
Re:Show HN: 3D Meshes of Signed Distance Functions in Python by tdotuos on Wednesday February 24, 2021 @11:49PM (#26259813)
True for FDM, but for SLA you have the potential rendering a direct slice of the SDF.
Re:Show HN: 3D Meshes of Signed Distance Functions in Python by andybak on Wednesday February 17, 2021 @12:42PM (#26169089)
OK. But a voxel representation has to be a closer match than a mesh. I guess overhang, solidity etc still need to be calculated and dealt with. Which is non-trivial.

Is it that "mesh to G-code" libraries are more mature than "voxel to G-code"?