当前位置 : 主页 > 编程语言 > java >

【Rust日报】2022-03-08 Fornjot: 世界需要另一个CAD程序

来源:互联网 收集:自由互联 发布时间:2022-07-04
Fornjot: 世界需要另一个CAD程序 Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W09 关于Fornjot Fornjot是一个早期项目,旨在创建新一代的Code-CAD应用程序:因为世界需要另一个CAD程序。 这个项目的

Fornjot: 世界需要另一个CAD程序

Fornjot (Code-CAD in Rust) - Weekly Dev Log - 2022-W09

关于Fornjot

Fornjot是一个早期项目,旨在创建新一代的Code-CAD应用程序:因为世界需要另一个CAD程序。

这个项目的目标是创建一个有如下特色的CAD应用程序:

  • 使用代码优先的方法;
  • 是开源的;
  • 广泛使用,支持所有主要平台;
  • 基于一个新的CAD内核,用Rust语言编写;
  • 提供一个全面的功能集;
  • 以及对不同建模语言的支持;

这个目标还没有实现。事实上,还远远没有! 但Fornjot正在一步一步地慢慢变得更好。

Fornjot正在积极开发中,但仍然是实验性的。目前的工作重点是提供一套稳定的基本CAD功能。

基本建模功能

在这一点上,Fornjot支持基本的2D形状(由线段、圆和它们之间的有限组合组成的草图),沿着直线路径扫过这些2D形状以创建3D形状,以及对构造实体几何(CSG)的一些非常不完整的支持。

短期到中期的优先事项是提供固体CSG支持、更灵活的草图和更灵活的扫描(沿着圆或螺旋)。长期计划是不断增加更高级的CAD建模功能,以支持甚至复杂的模型和工作流程。

平台支持

截至目前,Fornjot在Linux、Windows和macOS上运行。该项目主要是在Linux上开发的,所以其他平台可能会有bug。

中短期的计划是增加对网络平台的支持,因此Fornjot可以在浏览器中运行。长期来看,计划是增加对主要移动平台的支持。

导出到3MF

支持将模型导出到3D制造格式(3MF),这在3D打印中使用。

Kira(游戏音频库) v0.6.0 - 完全重写以支持流媒体声音和更精简、更优雅的API

kira (game audio library) v0.6.0 - complete rewrite with streaming sound support and a leaner and more elegant API

关于Kira

Kira是一个与后台无关的库,用于为游戏创建富有表现力的音频。它提供了用于平滑调整声音属性的参数,一个灵活的混合器,用于将效果应用于音频,以及一个时钟系统,用于为音频事件精确计时。

平台支持

  • Kira主要用于桌面平台。大多数测试是在Windows上进行的,但它也被成功地用在了Linux上。
  • Kira也可以在wasm环境中使用,但有以下限制:
    • 静态声音不能从文件中加载;
    • 不支持流媒体声音,因为它们会大量使用线程;

    代码示例

    use kira::{
    manager::{
    AudioManager, AudioManagerSettings,
    backend::cpal::CpalBackend,
    },
    sound::static_sound::{StaticSoundData, StaticSoundSettings},
    };

    // Create an audio manager. This plays sounds and manages resources.
    let mut manager = AudioManager::<CpalBackend>::new(AudioManagerSettings::default())?;
    let sound_data = StaticSoundData::from_file("sound.ogg", StaticSoundSettings::default())?;
    manager.play(sound_data.clone())?;
    // After a couple seconds...
    manager.play(sound_data.clone())?;
    // Cloning the sound data will not use any extra memory.

    项目地址:https://github.com/tesselode/kira


    turbofish: 飞驰的海洋生物

    Pronunciation of <[_]>

    turbofish,通常用于在Rust表达式中为泛型类型、函数或方法指定参数。

    这里有个小网站可以通过泛型参数自定义turbofish的形状,它的小尾巴还能游动哦:

    • turbofish-int
    • turbofish-slice

    使用Rust实现一个有大小限制可过期的LRU缓存

    Implementing a size-bounded LRU cache with expiring entries for my DNS server (in Rust)

    跟着作者一起学习,如何使用Rust编程语言为DNS服务器实现一个有大小限制的LRU缓存,并有过期的条目。



    社区学习交流平台订阅:

    Rust.cc 论坛: 支持 rss

    微信公众号:Rust 语言中文社区


    上一篇:【Rust日报】2022-01-31 新年快乐
    下一篇:没有了
    网友评论