推荐:使用 NSDT场景设计器 快速搭建 3D场景。

原文链接:https://www.mvrlink.com/openscad/

OpenSCAD是一个用于创建实体3D CAD对象的软件。它是免费软件,可用于Linux / UNIX,MS Windows和macOS。

与大多数用于创建3D模型的免费软件(例如著名的应用程序Blender)不同,OpenSCAD专注于CAD方面,而不是3D建模的艺术方面。因此,当您计划创建机器零件的 3D 模型时,这可能是您正在寻找的应用程序,但可能不是用于创建计算机动画电影的工具。

OpenSCAD不是一个交互式建模器。相反,它更像是一个 3D 编译器,它读取描述对象的脚本文件并从该脚本文件呈现 3D 模型(请参阅下面的示例)。这使设计人员能够完全控制建模过程,并使您能够轻松更改建模过程中的任何步骤或进行由可配置参数定义的设计。

OpenSCAD提供了两种主要的建模技术:首先是建设性的实体几何体(又名CSG),其次是2D轮廓的拉伸。作为这些二维轮廓的数据交换格式,使用Autocad DXF文件。除了用于拉伸的 2D 路径外,还可以从 DXF 文件中读取设计参数。除了DXF文件,OpenSCAD还可以读取和创建STL和OFF文件格式的3D模型。

OpenSCAD拥有丰富的开发库:

BOSL: 一个工具、形状和助手的库,使 OpenScad 更易于使用。

dotSCAD:处理复杂3D模型的算法库。

NopSCADlib:拓展零件库,可用于3D打印机和电子产品等。

UB.scad:是OpenSCAD的完整3D打印工作流程解决方案,提供了用于修改和生成3D对象,视图助手和一系列机械零件的工具

Functional OpenSCAD:将OpenSCAD的内置模块重新实现为直接在顶点数据上运行的函数。通过访问顶点、路径和面几何数据,可以从用户脚本中扩展 OpenSCAD 的功能。例如,此库包括函数 bounds(poly),它返回 [[minX,minY,minZ],[maxX,maxY,maxZ]] 表示构成形状或形状列表的所有点的最大和最小坐标 使用内置模块时无法进行这种计算,因为它们的顶点数据不可访问。

Constructive Library:扩展 OpenScad 语言,用于复杂和互补的机械部件,只需更少的算法代码。提供“冲压”方法,以快速创建机械零件,并相互配合。这被用作其他 CAD 系统已知约束的替代品 使用库自己的语法从模块轻松创建孔,并克服 Openscad 对复杂模型的许多限制

BOLTS :开放的技术规格库。

Round-Anything:用于处理平滑角和圆角的工具

Mark's Enclosure Helper:OpenSCAD 脚本工具,用于生成一个两件式铰链盒,具有圆角、盖子、互锁轮辋、卡扣、磁铁或螺钉闭合,以及用于向任何面添加切口或添加的简单位置。

Functional:OpenSCAD 函数的集合。 它旨在提供算法和工具,以帮助使用 OpenSCAD 函数式编程技术中构建高效的脚本。

OpenSCAD threads.scad module:这是一个高效的OpenSCAD线程库,主要用于其他设计中的组件。它支持公制兼容的内螺纹和外螺纹、螺旋钻螺纹、螺纹锥形、间隙孔、埋头孔、嵌入式孔、六角螺栓、螺母、垫圈、十字尖端和用螺纹接头延伸的长杆。只要有可能,这符合参数默认值的度量标准,同时为许多值提供覆盖。

核心螺纹例程利用列表推导式将整个螺纹螺钉生成为单个多面体。与其他方法相比,这大大提高了渲染速度和鲁棒性,减少了必要的刻面数量,并增加了最终零件的触觉平滑度。这也允许部分锥形螺纹端部,以及螺旋钻和传统螺纹达到一定程度。

OpenSCAD Smooth Primitives Library:此库是一些平滑图元的集合,即具有指定的圆角边,用于其他设计。

OpenSCAD Function Plotting Library:这是一个用于OpenSCAD的通用函数绘图库,它将使用笛卡尔坐标(x和y输入,z输出)、极坐标/柱坐标(r和角度输入,z输入)或轴坐标(z和角度输入、r输出)绘制函数。该库非常灵活,不仅可以用于绘图功能,还可以用于其他功能。如包含的演示文件所示,这可以有效地渲染具有由数学函数定义的曲面的普通对象。

虽然OpenSCAD还有一些其他函数绘图库,但这一个库特别健壮、快速和灵活。它使用列表理解将每个图生成为单个多面体,在一个设计中支持每种类型的多个用户定义函数,一致地创建适当的流形渲染,并且执行速度与任何其他类似大小的渲染对象一样快。

OpenSCAD ClosePoints Library:通用的OpenSCAD库,只需创建点列表即可轻松创建各种形状,这些点列表在所需形状的轮廓中描摹出层。该库由用于从这些点列表创建多面体的模块以及帮助使用变换指定点的函数组成。

Tray Library:旨在快速创建具有不同配置的托盘,以便高效存储零件,例如硬件、小工具、棋盘游戏插件等。

Parametric Projectbox generator:参数投影盒生成器,用于电子项目盒的生成器

STEMFIE Parts Library:STEMFIE是一款免费的教育拼搭套装玩具,您可以在家中下载并使用和制作模型组件。每个组件都是兼容形状的机械生态系统的一部分,旨在通过各种连接和紧固件互锁。

Catch'n'Hole:用于在 OpenSCAD 中创建螺母、螺丝孔和埋头孔。

Pathbuilder:使用 SVG 语法创建带有圆角和倒角的复杂 2D 形状的快速方法。支持完整的 SVG 语法。

OpenSCAD:一款用于创建实体3D CAD对象的软件的更多相关文章

  1. Dynamic CRM 2013学习笔记(三)快速创建实体 EntityCreater

    一.实体简介 实体用于在 Microsoft Dynamics CRM 中建立业务数据模型和管理业务数据.例如,可以使用客户.市场活动和事件(案例)等实体跟踪和支持销售.市场营销和服务活动.实体具有一 ...

  2. EntityFramework_MVC4中EF5 新手入门教程之一 ---1.创建实体框架数据模型

    Contoso University  Web 应用程序 你会在这些教程中构建的应用程序是一个简单的大学网站. 用户可以查看和更新学生. 课程和教师信息.这里有几个屏幕,您将创建. 这个网站的用户界面 ...

  3. 使用MyBatis的Generator自动创建实体类和dao的接口与xml

    在实际的项目中其实建立数据库和设计数据库的时候特别重要,而等数据库设计完成之后,根据数据库创建实体类的工作就特别麻烦和繁琐了,不仅很麻烦,而且很浪费时间,不做又不行,这次就找到了一个简单的方法可以让m ...

  4. 一款用于对 WiFi 接入点安全进行渗透测试的工具

    越来越多的设备通过无线传输的方式连接到互联网,以及,大范围可用的 WiFi 接入点为攻击者攻击用户提供了很多机会.通过欺骗用户连接到虚假的 WiFi 接入点,攻击者可以完全控制用户的网络连接,这将使得 ...

  5. [转]RegExp 构造函数创建了一个正则表达式对象,用于将文本与一个模式匹配

    本文转自:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/RegExp RegExp  ...

  6. ABP领域层创建实体

    原文作者:圣杰 原文地址:ABP入门系列(2)——领域层创建实体 在原文作者上进行改正,适配ABP新版本.内容相同 这一节我们主要和领域层打交道.首先我们要对ABP的体系结构以及从模板创建的解决方案进 ...

  7. JavaWeb_(Hibernate框架)Hibernate中创建实体

    Hibernate中创建实体 创建实体五个基本规则 --提供无参的构造器 --成员变量的私有化,提供get.set方法,提供属性 --尽量使用包装类型 --主键(一定要有) --不要加final(hi ...

  8. 实现领域驱动设计 - 使用ABP框架 - 创建实体

    用例演示 - 创建实体 本节将演示一些示例用例并讨论可选场景. 创建实体 从实体/聚合根类创建对象是实体生命周期的第一步.聚合/聚合根规则和最佳实践部分建议为Entity类创建一个主构造函数,以保证创 ...

  9. 如何在ASP.Net创建各种3D图表

    我们都知道,图表在ASP.NET技术中是一种特别受欢迎而又很重要的工具.图表是表示数据的图形,一般含有X和Y两个坐标轴.我们可以用折线,柱状,块状来表示数据.通过图表控件,我们即能表示数据又能比较各种 ...

  10. Entity Framework 教程——创建实体数据模型

    创建实体数据模型: 本文将带你创建实体数据模型(EDM)SchoolDB数据库和理解基础建设模块. 实体数据模型(EDM)是用于描述实体之间关系的一种模型,以下将使用Visual Studio 201 ...

随机推荐

  1. 4.9:MapReduce之WordCount

    〇.概述 1.拓扑结构 2.目标 使用hadoop的MapReduce来实现计数. 一.启动服务 二.新建计算的文件 三.上传文件 四.分析文件 cd ~/bigdatahadoop jar Word ...

  2. JavaEE Day12 Xml

    今日内容Xml 1.概念 2.语法结构 3.解析xml 一.XML概述 1.概念 Markup Language Extensible Markup Language--可扩展标记语言 标记语言:标签 ...

  3. 天坑,这样一个lambda随机取数据也有Bug

    前几天,一位网友跟我说他编写的一段很简单的代码遇到了奇怪的Bug,他要达到的效果是从一个List中随机取出来一条数据,代码如下: 1 var random = new Random(); 2 var ...

  4. 深度学习GPU加速配置方法

    深度学习GPU加速配置方法 一.英伟达官方驱动及工具安装 首先检查自己的电脑驱动版本,未更新至最新建议先将驱动更新至最新,然后点击Nvidia控制面板 2.在如下界面中点击系统信息,点击显示可以看见当 ...

  5. 实时采集MySQL数据之轻量工具Maxwell实操

    @ 目录 概述 定义 原理 Binlog说明 Maxwell和Canal的区别 部署 安装 MySQL准备 初始化Maxwell元数据库 Maxwell进程启动 命令行参数 配置文件 实时监控Mysq ...

  6. Jmeter 之模块控制器

    模块控制器作用: 模块控制器相当于python中的import 操作,即可以导入本线程组或者其他线程组下的控制器测试片段直接执行. 说明:被导入的测试片段可以是启用.禁用,导入后都将被执行. 字段解释 ...

  7. android studio 写一个桌球简单页面

    首先: 保存素材图: 其次: 参考:https://blog.csdn.net/nanhaoluo23/article/details/111144033 一步一步来,导入素材我就卡住了,找不到 于是 ...

  8. [深度学习] Pytorch模型转换为onnx模型笔记

    本文主要介绍将pytorch模型准确导出为可用的onnx模型.以方便OpenCV Dnn,NCNN,MNN,TensorRT等框架调用.所有代码见:Python-Study-Notes 文章目录 1 ...

  9. 05.深入理解JMM和Happens-Before

    大家好,我是王有志. JMM都问啥? 最近沉迷P5R,所以写作的进度很不理想,但不得不说高卷杏YYDS.话不多说,开始今天的主题,JMM和Happens-Before. 关于它们的问题并不多,基本上只 ...

  10. python进阶之路14 之函数内置方法、可迭代对象、异常捕获处理

    重要内置函数 1.map() 映射 l1 = [1, 2, 3, 4, 5] # def func(a): # return a+1 res = map(lambda x:x+1, l1) print ...