Project Icon

Elements

跨平台建筑元素库,支持多种格式序列化

Elements是一个跨平台的建筑元素库,专为建筑师和工程师设计,支持生成和操作建筑元素。库内含高效的几何内核和详细的文档,便于快速上手和集成。Elements支持在Dynamo、Grasshopper、Revit和Unity等应用中的代码重用,并能够序列化为JSON、IFC和glTF等格式。独立于Rhino或Revit等应用,使其适合微服务和Linux环境。

Elements 项目介绍

项目概述

Elements 是一个跨平台的库,用于创建建筑元素。它专为建筑师、工程师和其他希望通过编写代码生成建筑的专业人士设计。在创建 Hypar 这个平台时,我们需要一个能够生成建筑元素的库,并作为平台每个功能的核心运行。Elements 满足了一系列苛刻的要求,例如小巧、快速、并行运行于Linux的微服务环境且不依赖于其他主流软件的几何内核。

项目组成

  • Elements Core: 包含了Element类型、几何内核和其他核心建筑元素类型。
  • Elements.Benchmarks: 用于对Elements进行性能基准测试和追踪。
  • Elements.CodeGeneration: 将Element类型的JSON schema转换为C#的方法。
  • Elements.Components: 用于创建元素的组件。
  • Elements.Playground: 一个在线代码编辑应用程序,用于在浏览器中生成元素。
  • Elements.Serialization.DXF: 用于模型的DXF格式序列化和反序列化。
  • Elements.Serialization.IFC: 用于模型的IFC格式序列化和反序列化。

核心功能

  • 高效的几何处理: Elements 使用一种简单的混合 BREP/CSG(边界表示与构造实体几何)几何内核,支持矢量、线条、弧、和多边形等在建筑设计中常用的基本几何类型。
  • 精度控制: 提供多种方法保证几何操作的精度,比如Vector3.Epsilon=1e-05double.IsAlmostEqualTo(...) 等。
  • 灵活的元素系统: Elements系统允许用户定义新的建筑元素类型,而不是像 IFC 或 Revit 等 BIM 应用那样被限制于已存在的元素分类。这种灵活性使得用户可以更好地在系统中处理建筑模型。

设计原则

  • 元素实例化: Elements可以定义一个元素并通过实例对其进行引用和变换。
  • 可扩展性: Elements是C#的一个库,但设计时考虑到未来可能在其他编程语言中使用,因此,不依赖C#特有的特性如属性来传递类型或其特性的信息。
  • 开放性: Elements的设计鼓励在流行的AEC(建筑、工程和施工)应用中重用代码。

项目搭建与测试

  • 构建: 通过 dotnet build 进行项目构建。
  • 测试: 使用 dotnet test 进行测试确保库的功能正常。
  • 基准测试: 提供 Elements.Benchmarks 用于性能评估。

项目的使用

用户可以通过 NuGet 包管理器将 Elements 集成到自己的项目中。在 .NET Core 项目中,使用 dotnet add package Hypar.Elements 命令进行安装,在 Visual Studio 中则可通过 Install-Package Hypar.Elements 安装。

对于那些想要贡献该项目的开发者,源码和详细的使用示例及文档都可供参考。特别是在提供的示例测试中,用户可以找到几乎所有函数的使用示例。

Elements 旨在提供一个高效、易用且具备可扩展性的工具集,以帮助建筑专业人士提高生产力,摆脱对其他大型软件的依赖,尽可能地简化复杂的建筑设计任务。通过关注小巧、高效和开放性,Elements 试图在建筑软件领域带来一股清新的风潮。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号