You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,6 @@
1
1
## Master
2
2
3
+
- CLI: Add support for reading BGEO files
3
4
- Lib: Allow passing in an existing `SurfaceReconstruction` to reuse allocated memory (currently only memory for the resulting surface mesh is reused) (https://github.com/w1th0utnam3/splashsurf/pull/7)
4
5
- Lib: Add `Default` trait bound to `Index` and `Real` types
Copy file name to clipboardExpand all lines: README.md
+7-2Lines changed: 7 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,6 +16,7 @@ Surface reconstruction library and CLI for particle data from SPH simulations, w
16
16
-[Sequences of files](#sequences-of-files)
17
17
-[Input file formats](#input-file-formats)
18
18
-[VTK](#vtk)
19
+
-[BGEO](#bgeo)
19
20
-[PLY](#ply)
20
21
-[XYZ](#xyz)
21
22
-[Output file formats](#output-file-formats)
@@ -30,7 +31,7 @@ The following sections mainly focus on the CLI of `splashsurf`. For more informa
30
31
This is a basic but high-performance implementation of a marching cubes based surface reconstruction for SPH fluid simulations (e.g performed with [SPlisHSPlasH](https://github.com/InteractiveComputerGraphics/SPlisHSPlasH)).
31
32
The output of this tool is the reconstructed triangle surface mesh of the fluid.
32
33
At the moment it does not compute normals or other additional data.
33
-
As input, it supports particle positions from .vtk files and binary .xyz files (i.e. files containing a binary dump of a particle position array). In addition, required parameters are the kernel radius and particle radius (to compute the volume of particles) used for the original SPH simulation as well as the surface threshold.
34
+
As input, it supports reading particle positions from `.vtk`, `.bgeo`, `.ply`and binary `.xyz` files (i.e. files containing a binary dump of a particle position array). In addition, required parameters are the kernel radius and particle radius (to compute the volume of particles) used for the original SPH simulation as well as the surface threshold.
34
35
35
36
The implementation first computes the density of each particle using the typical SPH approach with a cubic kernel.
36
37
This density is then evaluated or mapped onto a sparse grid using spatial hashing in the support radius of each particle.
@@ -105,7 +106,7 @@ OPTIONS:
105
106
106
107
ARGS:
107
108
<input-file> Path to the input file where the particle positions are stored (supported formats: VTK, binary
108
-
XYZ, PLY)
109
+
XYZ, PLY, BGEO)
109
110
```
110
111
For example:
111
112
```
@@ -167,6 +168,10 @@ With these parameters, a scene with 13353401 particles is reconstructed in less
167
168
168
169
Files with the "`.vtk`" extension are loaded using [`vtkio`](https://crates.io/crates/vtkio). The VTK file is loaded as a big endian binary file and has to contain an "Unstructured Grid" with either `f32` or `f64` vertex coordinates. Any other data or attributes are ignored. Only the first "Unstructured Grid" is loaded, other entities are ignored.
169
170
171
+
### BGEO
172
+
173
+
Files with the "`.bgeo`" extension are loaded using a custom parser. Not that only the "old" `BGEOV` format is supported (which is the format supported by "Partio"). Only points and their implicit position vector attributes are loaded from the file. All other entities (e.g. vertices) and attributes are ignored/discarded. Notably, the parser supports BGEO files written by [SPlisHSPlasH](https://github.com/InteractiveComputerGraphics/SPlisHSPlasH) ("Partio export").
174
+
170
175
### PLY
171
176
172
177
Files with the "`.ply`" extension are loaded using [`ply-rs`](https://crates.io/crates/ply-rs). The PLY file has to contain an element called "`vertex`" with the properties `x`, `y` and `z` of type `f32`/["`Property::Float`"](https://docs.rs/ply-rs/0.1.3/ply_rs/ply/enum.Property.html#variant.Float). Any other properties or elements are ignored.
Copy file name to clipboardExpand all lines: splashsurf/README.md
+7-2Lines changed: 7 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,6 +16,7 @@ Surface reconstruction library and CLI for particle data from SPH simulations, w
16
16
-[Sequences of files](#sequences-of-files)
17
17
-[Input file formats](#input-file-formats)
18
18
-[VTK](#vtk)
19
+
-[BGEO](#bgeo)
19
20
-[PLY](#ply)
20
21
-[XYZ](#xyz)
21
22
-[Output file formats](#output-file-formats)
@@ -30,7 +31,7 @@ The following sections mainly focus on the CLI of `splashsurf`. For more informa
30
31
This is a basic but high-performance implementation of a marching cubes based surface reconstruction for SPH fluid simulations (e.g performed with [SPlisHSPlasH](https://github.com/InteractiveComputerGraphics/SPlisHSPlasH)).
31
32
The output of this tool is the reconstructed triangle surface mesh of the fluid.
32
33
At the moment it does not compute normals or other additional data.
33
-
As input, it supports particle positions from .vtk files and binary .xyz files (i.e. files containing a binary dump of a particle position array). In addition, required parameters are the kernel radius and particle radius (to compute the volume of particles) used for the original SPH simulation as well as the surface threshold.
34
+
As input, it supports reading particle positions from `.vtk`, `.bgeo`, `.ply`and binary `.xyz` files (i.e. files containing a binary dump of a particle position array). In addition, required parameters are the kernel radius and particle radius (to compute the volume of particles) used for the original SPH simulation as well as the surface threshold.
34
35
35
36
The implementation first computes the density of each particle using the typical SPH approach with a cubic kernel.
36
37
This density is then evaluated or mapped onto a sparse grid using spatial hashing in the support radius of each particle.
@@ -105,7 +106,7 @@ OPTIONS:
105
106
106
107
ARGS:
107
108
<input-file> Path to the input file where the particle positions are stored (supported formats: VTK, binary
108
-
XYZ, PLY)
109
+
XYZ, PLY, BGEO)
109
110
```
110
111
For example:
111
112
```
@@ -167,6 +168,10 @@ With these parameters, a scene with 13353401 particles is reconstructed in less
167
168
168
169
Files with the "`.vtk`" extension are loaded using [`vtkio`](https://crates.io/crates/vtkio). The VTK file is loaded as a big endian binary file and has to contain an "Unstructured Grid" with either `f32` or `f64` vertex coordinates. Any other data or attributes are ignored. Only the first "Unstructured Grid" is loaded, other entities are ignored.
169
170
171
+
### BGEO
172
+
173
+
Files with the "`.bgeo`" extension are loaded using a custom parser. Not that only the "old" `BGEOV` format is supported (which is the format supported by "Partio"). Only points and their implicit position vector attributes are loaded from the file. All other entities (e.g. vertices) and attributes are ignored/discarded. Notably, the parser supports BGEO files written by [SPlisHSPlasH](https://github.com/InteractiveComputerGraphics/SPlisHSPlasH) ("Partio export").
174
+
170
175
### PLY
171
176
172
177
Files with the "`.ply`" extension are loaded using [`ply-rs`](https://crates.io/crates/ply-rs). The PLY file has to contain an element called "`vertex`" with the properties `x`, `y` and `z` of type `f32`/["`Property::Float`"](https://docs.rs/ply-rs/0.1.3/ply_rs/ply/enum.Property.html#variant.Float). Any other properties or elements are ignored.
0 commit comments