3个不稳定版本
0.3.1 | 2024年2月24日 |
---|---|
0.3.0 |
|
0.2.0 |
|
0.1.3 | 2021年6月7日 |
#93 in 数学
142 每月下载量
1.5MB
10K SLoC
libfive

libfive的Rust包装器。
示例
use libfive::*;
let f_rep_shape = Tree::sphere(1.0.into(), TreeVec3::default())
.difference_multi(vec![
Tree::sphere(0.6.into(), TreeVec3::default()),
Tree::cylinder_z(
0.6.into(),
2.0.into(),
TreeVec3::new(0.0, 0.0, -1.0),
),
Tree::cylinder_z(
0.6.into(),
2.0.into(),
TreeVec3::new(0.0, 0.0, -1.0),
)
.reflect_xz(),
Tree::cylinder_z(
0.6.into(),
2.0.into(),
TreeVec3::new(0.0, 0.0, -1.0),
)
.reflect_yz(),
]);
f_rep_shape.to_stl(
"f_rep_shape.stl",
&Region3::new(-2.0, 2.0, -2.0, 2.0, -2.0, 2.0),
// Resolution
100.0,
)?;
这会产生这个STL网格

文档
本地构建文档
cargo doc -p libfive --no-deps --all-features --open
特性
-
stdlib
– 默认开启。添加一个高级操作的大量列表 – libfive stdlib。要在
Cargo.toml
中禁用上述功能之一或两个,请取消设置默认功能[dependencies.libfive] default-features = false
-
packed_opcodes
- 紧密打包操作码。这会破坏与旧版保存的f-rep文件的兼容性。
依赖项
macOS
如果已安装 homebrew
,则运行
brew install cmake pkg-config eigen libpng boost
Ubuntu/Debian
libfive
应该可以在最新的Ubuntu LTS(目前为20.04)上直接构建。如果您发现不是这样,请在 上游仓库 中提交问题!
使用 apt
安装以下依赖项
sudo apt-get install cmake pkg-config libeigen3-dev libpng-dev libboost-all-dev
Arch Linux
安装以下依赖项
sudo pacman -S cmake pkgconf eigen libpng boost boost-libs
Windows (VS2019)
安装 Git,选择设置以便可以从Windows 命令提示符 中调用(默认值应该没问题)。
安装 VS2019(社区版),配置为 使用 C++
开发桌面应用程序。
您只需要 MSVC、Windows 10 SDK 和 Windows 的 C++ CMake 工具。您可以在右侧边栏中取消勾选其他可选包。然后运行安装程序!
接下来,使用 vcpkg
安装依赖项。
⚠️ 此步骤会修改许多文件,因此您可能想禁用 Antimalware Service Executable,否则它将扫描每个文件并大大减慢速度:在
Windows 安全
→病毒和威胁防护设置
中,取消勾选实时保护
。
在 Windows 的 命令提示符 中
git clone https://github.com/Microsoft/vcpkg.git
.\vcpkg\bootstrap-vcpkg.bat
.\vcpkg\vcpkg.exe install --triplet x64-windows eigen3 boost-container boost-bimap boost-interval boost-lockfree boost-functional boost-algorithm boost-math libpng
去喝杯咖啡或做点别的事情——这需要一段时间。
构建
就是一般的流程。
cargo build
依赖项
~1.1–3.5MB
~69K SLoC