Input/Output

File I/O and visualization functions for TinyGismo objects.

File Reading

TinyGismo.readFileFunction
readFile(Type, filename::String)

Read a Gismo object from a file.

Arguments

  • Type: The type of object to read (e.g., BSplineBasis, TensorBSpline{2}, Nurbs, etc.)
  • filename: Path to the file to read

Returns

An object of the specified type read from the file

Supported Types

  • Basis types: BSplineBasis, TensorBSplineBasis{1/2/3}, NurbsBasis, TensorNurbsBasis{1/2/3}
  • Geometry types: BSpline, TensorBSpline{1/2/3}, Nurbs, TensorNurbs{2/3}

Examples

# Read a B-spline surface
surface = readFile(TensorBSpline{2}, "surface.xml")

# Read a NURBS curve
curve = readFile(Nurbs, "curve.xml")

# Read a basis
basis = readFile(TensorBSplineBasis{2}, "basis.xml")

Details

Reads Gismo XML format files containing geometric or basis function data.

source

Paraview Export

Export TinyGismo objects to Paraview VTK format for visualization.

Geometry and Basis Export

TinyGismo.writeParaviewFunction
writeParaview(geo::gsGeometry, fn::String; npts=1000, mesh=false, ctrlNet=false)
writeParaview(basis::gsBasis, fn::String; npts=1000, mesh=false)
writeParaview(basis::gsBasis, indices::Vector{Int}, fn::String; npts=1000, mesh=false)

Export TinyGismo geometries and bases to Paraview VTK files.

Arguments

  • geo: Geometry to export (B-spline or NURBS)
  • basis: Basis to export (B-spline or NURBS)
  • indices: Basis function indices to export (1-indexed)
  • fn: Output filename
  • npts: Number of sampling points (default: 1000)
  • mesh: Plot parameter mesh (default: false)
  • ctrlNet: Plot control net (geometry export only, default: false)

Details

  • Geometry export writes the shape with optional mesh and control net.
  • Basis export writes all basis functions, or only the specified indices.
source
TinyGismo.writeParaviewBasisFnctFunction
writeParaviewBasisFnct(i::Int, basis::gsBasis, fn::String; npts=1000)

Export a single basis function to a Paraview file.

Arguments

  • i: Index of the basis function (1-indexed)
  • basis: The B-spline or NURBS basis
  • fn: Output filename
  • npts: Number of sampling points (default: 1000)

Details

Exports a single basis function as a curve/surface in VTK format.

source

Point Cloud Export

TinyGismo.writeParaviewPointsFunction
writeParaviewPoints(points::Matrix{Float64}, fn::String)
writeParaviewPoints(X::Matrix{Float64}, Y::Matrix{Float64}, fn::String)
writeParaviewPoints(X::Matrix{Float64}, Y::Matrix{Float64}, Z::Matrix{Float64}, fn::String)
writeParaviewPoints(X::Matrix{Float64}, Y::Matrix{Float64}, Z::Matrix{Float64}, V::Matrix{Float64}, fn::String)

Export 2D/3D point sets and tensor-structured grids to Paraview.

Arguments

  • points: Matrix with points as columns (2 or 3 rows)
  • X, Y, Z: 1×n coordinate arrays for structured point sets
  • V: 1×n scalar values for each point (optional)
  • fn: Output filename

Details

  • Supports simple point clouds and structured grids with optional scalar data.
source