Skip to content
/ vtkio Public
forked from elrnv/vtkio

Visualization ToolKit (VTK) file praser and writer

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

Andlon/vtkio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vtkio

A parser and writer for the Visualization Toolkit (VTK) legacy file format.

On crates.io On docs.rs Build status

This is meant to be a feature complete parser of the legacy VTK file format. However, I have only used this parser for tetrahedral and triangle meshes, and I am still lacking real world tests. Pull requests welcome.

This parser is written using nom.

Examples

There are many sample files can be found in the assets directory. For the following example, we will load a VTK file named tet.vtk, modify it and write it back in ASCII VTK format.

extern crate vtkio;
use vtkio::model::*; // import model definition of a VTK file
use vtkio::{import, export_ascii};
fn main() {
    use std::path::PathBuf;
    let file_path = PathBuf::from("tet.vtk");
    
    let mut vtk_file = import(&file_path)
        .expect(&format!("Failed to load file: {:?}", file_path));
    
    vtk_file.version = Version::new((4,2)); // arbitrary change

    export_ascii(vtk_file, &file_path)
        .expect(&format!("Failed to save file: {:?}", file_path));
}

Notes

If you are working with binary files produced by ParaView, it is likely that they will be written in big endian format regardless of your platform. To load binary files in a specific endianness, use the import_le and import_be functions for little and big endian files respectively.

License

This repository is licensed under either of

at your option.

About

Visualization ToolKit (VTK) file praser and writer

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 99.8%
  • Python 0.2%