Ab3d.PowerToys改进了 Ab3d.Utilities.Triangulator 通过添加对带孔的多个多边形进行三角剖分的支持(之前只能对没有任何孔的单个多边形进行三角剖分)。这可用于从文本创建 3D 网格。
Ab3d.Utilities.PolygonAnalyzer 现在是一个公共类,可用于分析由 2D 位置列表定义的 2D 多边形。
通过防止在 DXEngine 渲染场景时报告鼠标点击隐藏的 UIElement3D 对象来改进 EventManager3D(例如,将 ModelMover 与 EventManager3D 结合使用时可能会发生这种情况)。
为定义 ModelMoverVisual3D、ModelRotatorVisual3D 和 ModelScalarVisual3D 的 3D 对象设置名称。
向 ViewCubeCameraController 添加了 IsHeadingRotationInvertedWhenUpsideDown 属性。如果为真(默认情况下),则当 ViewCube 上下颠倒(y 指向下方)时,航向方向会反转。这样 ViewCube 的旋转就会跟随鼠标的方向。
向 AxisWith3DLabelsVisual3D 添加了 AdjustFirstLabelPosition、AdjustLastLabelPosition 和 LabelAdjustmentFactor 属性。向 AxisWithOverlayLabelsVisual3D 添加了 AdjustFirstLabelPosition、AdjustLastLabelPosition、LabelXAdjustmentFactor 和 LabelYAdjustmentFactor 属性。添加 AdjustFirstAndLastLabelPositions 到 AxesBoxVisual3D。这些属性可用于防止一个轴的标签与相邻轴的标签重叠。
新的原生 Assimp 导入程序库 v5.2.5。
WPF 和 WinForms 的终极 3D 图形工具包
Ab3d.PowerToys 是一个终极的 WPF 和 WinForms 3D 工具包库,它极大地简化了开发具有科学、技术、CAD 或其他 3D 图形的桌面应用程序。
该库已在许多专业应用程序中得到验证。基于大量的用户反馈,它演变成 3D 应用程序所需的辅助类和工具的最终集合。
该库附带的示例提供了许多构建块,您可以简单地复制这些构建块并将其包含到您的应用程序中。
Ab3d.PowerToys 使用基于 DirectX 9 的 WPF 3D 渲染引擎。这提供了不错的硬件加速,可以渲染许多 3D 场景。但当 3D 场景更复杂时,则可以使用超快的 DirectX 11 渲染引擎 - Ab3d.DXEngine。此外,使用 Ab3d.PowerToys 库的现有应用程序可以在几分钟内升级到带有 DirectX 11 渲染引擎的 Ab3d.DXEngine。
主要特点是:
最简单易用的3D API,在 C# 中有许多很棒的代码示例
相机(TargetPositionCamera、FreeCamera、FirstPersonCamera、ThirdPersonCamera 等)
相机控制器(MouseCameraController、CameraControlPanel、ViewCubeCameraController)
3D 模型和视觉效果(球体、盒子、圆柱体等)
生成挤压或车床3D 对象
对 3D 对象使用布尔运算或使用 3D 平面对其进行切片
3D 线(连接、断开和带箭头的线的最快实现)
3D文字
Event Manager 3D(简化了 3D 对象的事件处理)
许多辅助类可以简化 WPF 3D 的工作
支持触摸和多点触摸来旋转、移动和缩放相机
使用 Assimp 导入器从 obj 文件(集成在 Ab3d.PowerToys 中)或几乎所有其他 3D 文件导入 3D 模型
使用 Assimp 导入器播放来自许多 3D 文件的关键帧和骨骼动画
将 3D 模型导出为多种文件类型文件(使用 Assimp 导出器)
全面优化以实现最佳性能
当需要更快的渲染时,可以很容易地使用 Ab3d.DXEngine 切换到 DirectX 11 渲染
对有关 WPF 3D 和我们的库的所有问题的高级支持
可以使用assimp 导入器从以下文件格式导入 3D 对象:
.3d、.3ds、.3mf、.ac、.ac3d、.acc、.amf、.ase、.ask、.assbin、.b3d、.blend、 .bvh、.cob、.csm、.dae、.dxf、.enff、.fbx、.glb、.gltf、.hmp、.ifc、.ifczip、.irr、.irrmesh、.lwo、.lws、.lxo , .md2, .md3, .md5anim, .md5camera, .md5mesh, .mdc, .mdl, .mesh, .mesh.xml, .mot, .ms3d, .ndo, .nff, .obj, .off, .ogex , .pk3, .ply, .pmx, .prj, .q3o, .q3s, .raw, .scn, .sib, .smd, .stl, .stp, .ter, .uc, .vta, .x, . x3d、.x3db、.xgl、.xml、.zgl
可以将 3D 对象导出为以下文件格式:
dae、x、stp、obj、obj、stl、stl、ply、ply、3ds、gltf、glb、gltf、glb、assbin、assxml、x3d、fbx、 fbx,3mf。文件