vtkio

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

On crates.io On docs.rs Build Status

This is meant to be a feature complete parser of Legacy and XML VTK file formats. Both serial and parallel XML file formats are supported.

The Legacy format parser is written using nom. XML VTK files are import and exported with quick-xml and serde crates.

Usage

To use this library simply add the crate name to your Cargo.toml file:

rust [dependencies] vtkio = "0.5"

Examples

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 Legacy ASCII format.

```rust use vtkio::model::*; // import model definition of a VTK file use vtkio::{import, exportascii}; fn main() { use std::path::PathBuf; let filepath = PathBuf::from("assets/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));

} ```

Features

There are two main features available:

To disable the features above simply set default-features to false. To enable a specific feature add it to the list under features. For instance to disable only the compression feature, add the vtkio dependency as

rust [dependencies] vtkio = { version = "0.6", default-features = false, features = ["xml"] }

To disable all additional features use

rust [dependencies] vtkio = { version = "0.6", default-features = false }

Changes

Version 0.3 of the crate supports only Legacy VTK formats. For a list of changes introduced in the new versions of vtkio (v0.4+) see the CHANGELOG.

License

This repository is licensed under either of

at your option.

Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.