Questions tagged [marching-cubes]

An algorithm for creating a triangular mesh from a three-dimensional scalar field, or graphing an implicit function of the form f(x,y,z) = c.

Marching cubes is a computer graphics algorithm for creating a triangular mesh from a three-dimensional scalar field, or equivalently, graphing an implicit function of the form f(x,y,z) = c.

For more information, see:

144 questions
1
vote
1 answer

DirectX/C++: Marching Cubes Indexing

I've implemented the Marching Cube algorithm in a DirectX environment (To test and have fun). Upon completion, I noticed that the resulting model looks heavily distorted, as if the indices were off. I've attempted to extract the indices, but I…
Rashid Ellis
  • 330
  • 3
  • 22
1
vote
1 answer

Marching Cubes isovalue

I'm trying to implement the Marchin Cubes algorithm, but I have some questions (which might be very trivial, but I can't seem to find an answer). When Isovalue = 5, and I have a block like this: 0-------10 | | | | 0-------5 Because 0 <…
Steven
  • 1,123
  • 5
  • 14
  • 31
1
vote
1 answer

Meshing Example -> mesh errors | Project Tango | Unity

I am trying to use the Meshing Example from the Project Tango Unity3d-Demos to detect collision with real world objects in my application. However, there are a lot of small errors in the mesh. These floating "bubbles" are counter productive to what…
1
vote
1 answer

Marching Cubes Terrassing/Ridge Effect

I am implementing a marching cubes algorithm generally based on the implementation of Paul Bourke with some major adjustments: precalculation of the scalarfield (floating point values) avoiding duplicated vertices in the final list using a…
Anthea
  • 3,741
  • 5
  • 40
  • 64
1
vote
1 answer

How to figure the "iso-level" in MarchingCubes algorithm

I have been reading as much as I can about how to properly implement the MarchingCubes(MC) algorithm and I believe I understand how it is working. The one thing I am hung up on is how to figure the iso-level and why it is float and what exactly that…
Pysassin
  • 21
  • 3
1
vote
2 answers

Does marching cubes in vtk require specific input?

The marching cubes class does not generate anything after I passed a ImageData to it. I am trying to generate surface from a 3D numpy array. I used evtk to export the array to a .vti (Structured Points) file and stored as pointData. Then, read the…
YC.Chui
  • 169
  • 1
  • 2
  • 7
1
vote
1 answer

Visualise n-dimensional scalar field in opengl / pycuda

Using pyCuda, I am manipulating an N-dimensional scalar field. I would like to visualise this scalar field in real-time (i.e. rapidly and efficiently). I am thinking about using a marching cubes algorithm to draw 3D projections of isosurfaces, but…
weemattisnot
  • 889
  • 5
  • 16
0
votes
0 answers

Convert wave height co-ordinates value in grid format to contour/ vector layer

I have the wave height data in grid format that I would like to convert to vector layer or contour with similar wave height. The current data looks like this, And I would like to create a layer similar to how bathymetry layer (Sea depth layer)…
Siddharth Sharma
  • 1,653
  • 2
  • 19
  • 35
0
votes
0 answers

VTK marching cubes or contour for surface reconstruction using python

I am new to VTK python. I have a csv file with 8000 point (X, Y, Z) and corresponding 8000 signed distances (sdf) I am trying to read the data and apply VTK filter to reconstruct the surface at sdf = 0.0, but I dont see any option to create surface…
Ricky
  • 1
  • 1
0
votes
0 answers

Marching Cubes Alternative Table (bool [8] => [Planes][Points][Values])

I am looking forward to implement the Marching Cubes Algorithm in an alternative way. As the known apprach uses 8 cube corners, that are either solid or free, to calculate surfaces, I am looking for a different way to get the lookup table. I want…
Mechandrius
  • 323
  • 2
  • 12
0
votes
0 answers

Why is there only one possible vertex normal on the edge of a transition cell in the transvoxel algorithm?

I am implementing the transvoxel algorithm. My main reference is the original paper by Eric Lengyel. I implemented everything until page 39 successfully, but I got stuck with this I am looking for a way how to get that vertex normal. I know how to…
BogdanB
  • 139
  • 10
0
votes
1 answer

Unity URP - Trying to draw a mesh using vertices computed in compute shader without reading back to cpu to assign to mesh object

I'm working on terrain generation using marching cubes. As of now I'm able to generate the terrain vertices in a compute shader but I can't figure out how to draw the mesh without reading the vertices back to the cpu and assigning them to a new mesh…
0
votes
0 answers

How to threshold out small elements in python marching cubes

I am using the python scikit-image marching cubes implementation to create real time moving surface meshes. I am running into a problem where sometimes I get really small surface elements, or else really narrow / high aspect ratio triangles. You can…
Alex
  • 427
  • 6
  • 12
0
votes
0 answers

How to edit marching cubes with a cube shape. Unity, HLSL

I am trying to make terraformer in Unity with marching cubes. I am using a compute shader to edit a 3d texture which is used to create the mesh. I want to implement different shapes for changing the mesh. The different shapes work by finding the…
0
votes
0 answers

How to share vertices in Marching Cubes mesh generated in compute shader

I have implemented Marching Cubes in a compute shader in Unity. The code to it is here. Currently, the implementation creates a vertex regardless of if a vertex exists at the exact location. This meant that I constantly ran into the vertex limit in…
SunnyMonster
  • 500
  • 5
  • 14