rust-zw3d (core)
当前版本:Alpha(框架阶段)。仅提供基础绑定与最小封装,欢迎 Issue/PR(https://gitee.com/rust-cad/rust-zw3d)。
ZW3D SDK 的 Rust 绑定(核心 crate)。
- 提供
ffi(自动绑定)与wrapper(易用封装) - 暴露命令/回调注册宏:
register_commands!、register_callbacks!、unregister_commands!、unregister_callbacks! - 提供模块进出点宏:
zw3d_module!
依赖与配置
- 需要链接
ZW3D.lib(详见仓库根README.md环境准备章节) - 通过
zw3d.toml配置 SDK 路径与version,并可在代码中通过rust_zw3d::SDK_VERSION读取 - feature:
macros(重导出属性宏,默认开启)
最小示例
use *;
zw3d_module!;
API 概览
cvxMsgDisp(msg: &str):显示消息cvxCmdFunc(cmd: &str, func: fn(i32)->i32, code: f64):注册命令cvxCmdFuncUnload(cmd: &str):卸载命令cvxCmdCallback(name: &str, func: unsafe extern "C" fn(*const c_char,i32,i32)->i32):注册回调cvxCmdCallbackUnload(name: &str):卸载回调register_commands!()/unregister_commands!():批量注册/卸载由#[cmd]收集的命令register_callbacks!()/unregister_callbacks!():批量注册/卸载由#[callback]收集的回调zw3d_module!(myplugin):生成模块的Init/Exit出口
注意
- 传递给底层 SDK 的字符串需与其编码约定匹配;请优先使用 ASCII/UTF-8