jizai
jizai (自在(じざい)) is a fast and memory-efficient framework for radial basis function (RBF) interpolation.
Features
- Interpolation of 1D, 2D, and 3D scattered data
- Fast geostatistical prediction
- Support for 1M+ input points
- Inequality and gradient constraints
- Surface reconstruction from 2.5D and 3D point clouds
- Advanced isosurface generation
- Surface discovery and tracking
- Vertex position refinement
- Vertex clustering
- Snapping to input points
Installation
-
Install the prerequisites.
-
Install jizai from PyPI using pip:
pip install jizai
jizai is built from source during installation, which takes a while.
Usage
Here is an example of surface reconstruction from a point cloud with normals.
import urllib.request
import jizai as jz
import numpy as np
url = "https://www.cs.jhu.edu/~misha/Code/PoissonRecon/horse.npts"
with urllib.request.urlopen(url) as response:
table = np.loadtxt(response)
indices = jz.DistanceFilter(table[:, :3]).filtered_indices()
points = table[indices, :3]
normals = table[indices, 3:]
gen = jz.SdfDataGenerator(points, normals)
rbf = jz.Biharmonic3D(dim=3)
model = jz.Model(rbf)
interp = jz.Interpolant(model)
interp.fit(gen.sdf_points, gen.sdf_values, tolerance=1e-5, accuracy=1e-7)
bbox = jz.Bbox(np.full(3, -0.1), np.full(3, 0.1))
field_fn = jz.RbfFieldFunction(interp, accuracy=1e-7)
mesh = jz.Isosurface(bbox, 5e-4).generate_from_seed_points(points, field_fn)
mesh.export_obj("horse.obj")
NOTE: The example downloads horse.npts, one of the sample data sets provided with PoissonRecon. The data is not part of jizai and is not covered by its license. No license is stated for the data, so check the terms with its provider before using it for anything beyond trying out this example.
Platform Support
The following platforms are supported with the listed BLAS implementations:
| Platform | Architecture | BLAS | Build |
|---|---|---|---|
| Windows | x64 | oneMKL | |
| Windows | ARM64 | ArmPL | |
| macOS | ARM64 | Accelerate | |
| Linux | x64 | oneMKL | |
| Linux | ARM64 | ArmPL |
oneMKL and ArmPL are automatically downloaded and extracted into the build tree during the configuration process.
References
-
J. C. Carr, R. K. Beatson, J. B. Cherrie, T. J. Mitchell, W. R. Fright, B. C. McCallum, and T. R. Evans. Reconstruction and representation of 3D objects with radial basis functions. In Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '01), pages 67–76, 2001. https://doi.org/10.1145/383259.383266
-
R. K. Beatson, W. A. Light, and S. Billings. Fast solution of the radial basis function interpolation equations: Domain decomposition methods. SIAM Journal on Scientific Computing, 22(5):1717–1740, 2001. https://doi.org/10.1137/S1064827599361771
-
G. M. Treece, R. W. Prager, and A. H. Gee. Regularised marching tetrahedra: improved iso-surface extraction. Computers & Graphics, 23(4):583–598, 1999. https://doi.org/10.1016/S0097-8493(99)00076-X
Metadata
Release files for jizai 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jizai-1.0.0.tar.gz | 6.2 MB | Details |
Release files / jizai-1.0.0.tar.gz
| Download URL | jizai-1.0.0.tar.gz |
|---|---|
| Size | 6.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
21150e4d37985fa784466f4702a25bd6b5b9c557bf090e284ba7900c8f6dd7a7
|
|
BLAKE2b-256 checksum How to use checksums |
4e18221e54333dc020beb59ed608183f44295796e510476f8459debdda292c8d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 6, 2026.
Transparency log