Write mesh to file in mz3 binary format.

write.fs.surface.mz3(filepath, vertex_coords, faces, gzipped = TRUE)



string. Full path to the output surface file, should end with '.mz3', but that is not enforced.


n x 3 matrix of doubles. Each row defined the x,y,z coords for a vertex.


n x 3 matrix of integers. Each row defined the 3 vertex indices that make up the face. WARNING: Vertex indices should be given in R-style, i.e., the index of the first vertex is 1. However, they will be written in FreeSurfer style, i.e., all indices will have 1 substracted, so that the index of the first vertex will be zero.


logical, whether to write a gzip compressed file


string the format that was written. One of "tris" or "quads". Currently only triangular meshes are supported, so always 'tris'.


This format is used by the surf-ice renderer. The format spec is at https://github.com/neurolabusc/surf-ice/tree/master/mz3.

See also


# \donttest{
    # Read a surface from a file:
    surface_file = system.file("extdata", "lh.tinysurface",
     package = "freesurferformats", mustWork = TRUE);
    mesh = read.fs.surface(surface_file);

    # Now save it:
    write.fs.surface.mz3(tempfile(fileext=".mz3"), mesh$vertices, mesh$faces);
# }