Voxels to the Rescue: Exploring the Basics of Computational Engineering, Part 3.


0

Thanks to the previous articles, we should have a pretty good understanding of the reasoning behind Computational Engineering and the fundamental technology necessary to support it. In this six-part series, we have explored the different aspects of Computational Engineering, including the history, technology, and the role of voxels.

In this article, we will dive deeper into Tier 1 of the Computational Engineering software framework, which is the geometry kernel. The geometry kernel is crucial in supporting the entire framework, and it needs to be compact, robust, and fast.

When it comes to representing geometry in a computer, there are numerous ways to do it. Most methods are vector-based, using surface patches or triangles to construct the shape of the object. While vectors are great for simple shapes, they have several drawbacks when it comes to complex geometry.

To understand this, let’s think in 2D for a moment. Representing shapes with a vector outline is flexible for simple geometry like a logo, as it allows for scaling, rotating, and refining the control points. However, for complex shapes, such as a photograph of your surroundings, representing it in a vector-based format would result in a large file that is difficult to manipulate. Even small changes to vectors in a complex graphic can have unexpected and non-localized effects that are hard to control.

The same principle applies to 3D geometry. While vectors are suitable for simple shapes like cubes, more sophisticated mathematical representations become fragile and challenging to create a consistent and robust setup. This is where voxels come in.

Voxels are points in 3D space on a grid that represent matter. Each voxel can be thought of as a cube that is either on or off, similar to a pixel in a 2D image. This voxel representation provides a robust and unambiguous way to store and understand complex geometry. It eliminates numerical instabilities and ensures a single source of truth.

The only drawback of voxels is that they are not as mathematically “perfect” as vectors. They are rough, but so is the real world. 3D printers and other production methods have their limitations and inaccuracies. As long as the voxel resolution is high enough to provide the necessary fidelity for object production, it is sufficient. Just like how digital cameras have more than enough pixels for practical purposes, our eyes no longer see the pixels on screens.

The simplicity of voxels also allows for their fast computation. Because of their straightforward representation, voxel operations can be executed quickly, making computational engineering efficient.

In conclusion, the geometry kernel, which is the foundation of Computational Engineering, benefits greatly from using voxels as a robust representation of complex geometry. While vectors have their place for simple shapes, voxels provide an unambiguous, easy-to-verify, and fast way to handle complex geometries. By embracing the voxel paradigm, Computational Engineering opens up new possibilities for the design and production of objects with increased accuracy and reliability.

In today’s blog post, I want to take a different approach to sharing the story and logic behind the fundamentals of computational engineering. Instead of following the traditional format, I will present the same information in a more conversational manner.

Let me start by introducing a key member of our team at Hyperganic, Michal Krcmar. He has been with me throughout my entrepreneurial journey, always providing the expertise needed to optimize our code at a machine-language level. His skills in this area are incredibly rare in today’s world, and he has played a crucial role in making our software lightning fast on modern processors.

Thanks to Michal’s contributions, we have built a solid foundation for our geometry engine – a voxel-based data structure. This innovative approach, which relies on voxels (three-dimensional pixels), has allowed us to create highly complex objects that would have been nearly impossible to model using traditional geometry kernels.

And this is just the beginning. The objects we’ve created so far are just the tip of the iceberg. In the coming years, you’ll witness even more complex and intricate designs brought to life through our computational engineering techniques.

One of the advantages of using voxels is that each voxel can represent a different material, similar to how pixels can have different colors. This adds another layer of realism and versatility to our models, expanding the possibilities of what we can achieve.

Nearly a decade has passed since we made the decision to utilize voxels in our computational geometry engine, and it has proven to be the right choice. In the future, I will delve deeper into this topic, explaining why voxels are so powerful and the operations required to build a compact and robust kernel that can be used by our high-level geometry-generating functions.

I hope you enjoyed this alternative approach to sharing our story. Stay tuned for the next articles in this series, where we will explore the concept of computational engineering further. As always, feel free to leave any questions or comments below.

Editor’s note: This blog post is part of a six-part series introducing the concept of Computational Engineering, developed by Leap71. You can find the links to all parts as they are published below:

– Fundamentals of Computational Engineering: Prologue

– Fundamentals of Computational Engineering: Part 1 — A Bit of History

– Fundamentals of Computational Engineering: Part 2 — The Technology

– Fundamentals of Computational Engineering: Part 3 — Voxels to the Rescue

– Fundamentals of Computational Engineering: Part 4 — Implicits

– Fundamentals of Computational Engineering: Part 5 — All You Need is a Few Functions

Thank you for reading and sharing this post!

Original source

Source

“Why did the 3D printer go to therapy? Because it had too many layers of unresolved issues!”


Like it? Share with your friends!

0
GCode-Guru

Meet the mastermind behind NozzleNerds.com: GCode-Guru, a 3D printing wizard whose filament collection rivals their sock drawer. Here to demystify 3D tech with a mix of expert advice, epic fails, and espresso-fueled rants. If you've ever wondered how to print your way out of a paper bag (or into a new coffee cup), you're in the right place. Dive into the world of 3D printing with us—where the only thing more abundant than our prints is our sarcasm.

0 Comments

Your email address will not be published. Required fields are marked *

Choose A Format
Personality quiz
Series of questions that intends to reveal something about the personality
Trivia quiz
Series of questions with right and wrong answers that intends to check knowledge
Poll
Voting to make decisions or determine opinions
Story
Formatted Text with Embeds and Visuals
List
The Classic Internet Listicles
Countdown
The Classic Internet Countdowns
Open List
Submit your own item and vote up for the best submission
Ranked List
Upvote or downvote to decide the best list item
Meme
Upload your own images to make custom memes
Video
Youtube and Vimeo Embeds
Audio
Soundcloud or Mixcloud Embeds
Image
Photo or GIF
Gif
GIF format