FreeCAD傻瓜式教程之约束设定、构建实体、开孔、调整颜色、透明度、参考距离、任意修改尺寸、保持开孔居中等

news2024/11/26 2:30:32

本内容基于官方教程中的绘制简单的零件中的体会,在初次绘制的时候,总是无法完成,几经尝试才发现其关键点所在,以此文记录,用以被查资料,同时也希望能够帮到纯白新手快速熟悉该软件的绘图方法。

一、. 打开软件,选择Part Design工作台,然后选择任务,新建实体,新建草图。 

该过程可参考我的另一篇文章: FreeCAD的傻瓜式初级使用教程_lggirls的博客-CSDN博客

二、.通过线段绘制工具,画出基本的图形

工具绘图 

2.1 先选中工具,移动鼠标到原点附近,出现如下图所示的重合约束提示,则表示所要点下的点和原点重合。单击鼠标左键,确定线段的开始端点。

2.2 继续沿x轴向右侧移动鼠标,在快到达第10个方格时,放下。

若画出的横线和x轴完全平行,则会出现一个小短横,表示平行约束

若没有,则可先点击选中该线段,然后点击约束性工具栏中的图标,即可

 2.3 将鼠标移动到原点,出现重合约束符号,单击,向上延Z轴移动鼠标,超过第2格后单击,确定线段的末端,第二条线则已经画出。

同样的,第二条线要保障和X轴平行,也是和x轴垂直,如同2.2中的操作,对 第二条线进行垂直性约束。

2.4 选中线段绘图工具,将鼠标移动到第2条线段的末端点,出现重合性约束提示符,点下,再向右上方移动鼠标,点下第3条线段的末端点。

2.5 依此操作,画出第4条和斜向上的线相连,但和x轴平行约束的短横线线段

2.6 画出和第1条x轴上的横线线段相连的,垂直于x轴的第5条线段。

三、 进行角度,长度,高度的约束条件设定

a.先约束了斜线和底线的角度为30°;

b.约束了底线的长度为100mm;

c.约束了高处的横线的左端点和原点间的垂直距离为50mm;

d.通过同样的点约束了斜线的水平距离为50mm(此时自由度应该缩减为2);

e.然后用弧线绘图工具,先在图形内点一下,确定圆心,再用重合约束,将最后的两个端点,用弧线连接起来;

f.再通过点击选中弧线,约束其半径为20mm,

g. 对弧线和最上方的横线,最左侧的短竖线进行相切性约束。先选中弧线,然后选中上方的横线,点击相切性约束;如此处理弧线和垂直的尾端线的相切性,此时高处的横线和最后的短垂线的长度将随之变化。

注意:此时自由度应当显示为0 !!!

 3.1  斜线线段的角度性的约束

角度是两条线之间的关系,所以其要点是,选择两条线,然后点击约束条件图标。

在该步骤中,点击了第1条x轴上的横线,第3条斜向上的斜线,然后点角度约束工具,在出现的对话框中,填写你想要的角度。 这里是30°,点击ok

你会发现,在图的外面,也就是第3条线的延长线和第1条线相交会的位置附近,出现了一个带有30°标注提示的弧线,也就是该角度约束的提示线。

可以单击该标注文字,鼠标左键拖动该提示线到图形内部。

 3.2 横线线段的长度约束

点击第1条x轴上的横线,再点击“水平距离约束”工具,在出现的对话框中填写100mm,点击OK

这时你会发现,线段的末端和第10格的交叉点完全重合,同时出现了水平距离提示线,也是选中,将标注线拖动到合适的地方,

注意: 这一步的操作中,第5条竖线会随第1条线的边长的变化而移动到第10格, 如果出现两条线相脱离,则说明了之前画第5条线的时候,端点没有达成重合约束,需要删掉该线,重新约束后再画。

 3.3 确定两点之间的水平和垂直距离。

点击原点,使之被选中,再点击第3条线的末端点,同时也是第4条水平线段的起点,使之选中。

注意!! 要在两点同时选中的时候,再进行水平距离约束和垂直距离约束,这样才能成功。

这一步是设定了两个约束值均为50mm。

 进行必要的提示线整理

四、绘制弧线

4.1先单击“创建弧”工具图标,

 

 将中心定位在大约 x = 80 y = 30 处;然后单击在第2条线的右端点上,定义圆弧的第一个起点;然后再单击将弧的末端点上,定义为第5条线的上端点(确保在单击之前出现重合性约束的提示图标)。

 

 2.单击圆弧,然后选中半径约束工具,设定半径为20mm

 先选中要约束,可约束的对象,然后选约束工具进行约束值的填写。点击ok

点击弧线和要与之相切的横线,进行相切约束

如果一切正确,则求解器部分应当显示完全约束的提示: “Fully constrained” ,同时,绘图区的全部线段将显示绿色,表示所有的线都被有效约束,且形成了闭合连接。

注意: 如果草图没有变为绿色,则说明存在至少一个点是不重合的(2 个点处于叠加状态,但没有实际重合)。这时就需要先点击红和约束工具, 然后将没有形成重合约束的点点起来形成约束。用同样的方法对所有的连接点都点一遍试试。

如果还是没有变成绿色,请验证除了倾斜线外所有的线是否都具有水平约束”或垂直约束,并在必要的时候进行添加。

五、使用凸台和凹坑功能

5.1 单击左上角“任务”选项卡中的“关闭”。我们会自动退出草绘器工作台,零件设计工作台将再次激活。组合视图切换回“模型”选项卡。如果将 “实体” 展开,你将在“Origin”下方看到一个新的 Sketch 元素,并嵌套在 Body 下。

 到了这一步,我们应当保存一下,将文档命名成我们容易记住的名称。此外,最好形成经常保存文档的习惯,比如在完成草图或要素之后 Ctrl + s。

5.2单击标准视图中的”等轴测“视图按钮,然后单击标准视图中的”适合所有“ 视图按钮,这将会在绘图区显示一个居中的 3D 等轴测 视图。

5.3 先单击选中下方的草图,也就是 Sketch,选中目标;再单击零件工具中的“凸台”工具按钮,输入 30 mm 的长度。单击“ok”,则会沿着Y轴拉伸成一个3D实体零件(之前我们所画的图形,只能算是一个面)。 

 

5.4 到此,在“混合浏览器的 模型”树中,将显示一个“Pad”对象(我们称之为特征),而不是“草图”。事实上,它可以被称作草图,因为它是基于草图(Sketch)形成的;  单击Pad前面的箭头或加号将其展开,将显示下面的草图(Sketch),该草图自动隐藏(其标签灰显)。

可以在绘图区看到一个我们所创建的形状形所成实体。

5.5 生成一个孔

5.5.1先单击零件的顶部(方形)侧,再单击“创建实体”按钮旁边的“创建草图”按钮,来创建一个新的草图。

  FreeCAD会创建一个附加到我们之前所选择的零件的面上的新草图。此时我们选择生成的绘图区,是一个平行于绝对平面XY的平面,但高度则根据工件的高度向上进行了偏移,也就是xy平面在Z轴方向了升高了50mm的这样一个水平面,和零件的上表面重合。

可以通过切换视角的按钮来进行试图变换

 最终显示成下图的样子。

 点击“查看草图”按钮,则可以随时切换为当前草图的视图,即 XY平面,以便于像之前再xz轴平面上那样来进行绘图

请注意,这个新草图的原点(Origin)就是实体的原点。 

 5.5.2点击圆形绘图工具,在零件的顶部绘制一个圆,点击圆的边线,进行半径约束,将其设定为5mm

 5.5.3双击新建的草图,展开“混合浏览器中的任务视图,对圆的圆心位置进行约束。 这里的水平距离设置为-65mm,垂直距离设置为15.

 5.5.4 关闭草图;

在“模型树”中,一个新的 Sketch001 草图对象出现在“Pad”下方。单击选中 Sketch001 ,之后再单击选择“凹坑”工具。

 凹坑,之前的版本称之为口袋,是一个被称为“减法”的功能,它可以从我们的零件中删除材料;在这里,因为我们所画的草图是一个圆,则该功能形成的凹坑将会以圆柱体的形式出现。

在凹槽参数中的类型中,选择“通过所有”以完全剪切零件。按“OK”完成。

在模型树中,标记为 Pocket 的新元素出现在 实体 的底部,并被命名为了 Sketch001。

六、更改颜色和透明度

可以通过更改零件的颜色,来区分零件间的差别。作品的透明度也可以修改,这对于将其内部结构进行可视化很有用处。 

选择要进行色彩和透明度设置的”实体“,在左侧的属性中找到 Shape Color(形状颜色),Transparency(透明度),对其进行更改,使得上一步切出的孔能够显示出来。

还可以修改 Line Color和Line Width,以更改线条粗细和零件轮廓的颜色。

 现在,零件内部可以看到该孔。这对于查看模型的隐藏面或内部面通常很有用。

七、手动移动零件

7.1 转到“视图”菜单,然后选择"切换坐标轴显示(Toggle axis cross)"。这些是绝对坐标轴。您应该在 3D 视图中看到 3 个轴 X、Y、Z 为红色、绿色和蓝色。这个坐标将帮助我们在空间中定位自己。这个坐标是固定且不可变的,它要么是视图围绕它旋转,要么是对象在这个空间中进行旋转。

 7.2 选中实体,在其左侧的下方选择数据视图,点击属性这一列中的Placement,

单击三个小点,即省略号(如果未出现,请单击“放置”字段的“值”部分);这将在“任务”面板中打开一个新对话框。使用箭头可以改变零件的位置和角度。实际上是在空间中移动的物体的位置(因此其原点),3D 视图的方向不会改变。

 

另一种方法:在组合视图中,选择“实体 ”并单击鼠标右键,然后选择转换。

这将会显示如下视图: 

 按住并沿轴或球体拖动圆锥体,以向各个方向移动主体。可以实验一下。然后将角度和坐标重置为 0。

八、在草图中建立和显示参照尺寸

以上我们所建立的尺寸,都是相对于原点(Origin)的,但在实际的绘图操作中,零件间结构间的相对尺寸数据也很有用处。这种尺寸可以仅用于参考,也可以稍后使用它们来设置其他尺寸。

在左侧的“模型”树结构显示中,展开“实体”部分 1,然后展开“Pad”以显示第一个草图(Sketch)。双击它(或右键单击并在上下文菜单中选择编辑草图),然后单击“切换驱动/参考约束"图标。

 从现在开始,就可以在草图上创建参考尺寸了;参考尺寸是以蓝色显示的,且对它们所标注的草图的形状是没有影响的(即不会构成约束控制),它们的数值也是自动计算的。

参考约束的建立工具:

 九、进行一个或多个维度的编辑

在建模的过程中,我们可以随时改变模型的尺寸。这非常简单:例如对于零件的厚度,只需要双击Pad,就会在左侧的组合浏览器中出现对话框,然后输入一个新值,例如40mm;或者在选中Pad后,在混合浏览器显示的属性设置的部分,选择数据,也可以更改此值。

 

 可以采用如下方法来验证一下:

对作品的总长度执行相同的操作:双击 Sketch,然后双击 100 mm 尺寸约束,将其更改为 110 mm,然后进行验证。

 我们可以看到,零件的顶部的尺寸和面积被放大了,造成了之前所开的孔不再在顶面的中间居中的位置。,这是因为该孔是被限制在草图的原点位置了。这不一定符合我们通常想要的结果,因为最常见的情况是,我们希望无论如何改变零件的尺寸,顶面所开的这个孔,都应该保持在中心。

下面将进行这样的操作

 十、设置开孔位置保持居中

10.1 第1种方法使用外部几何图形。

10.1.1 再次编辑孔的草图,并删除其中对圆心的水平和垂直距离的约束。

然后单击外部几何图形工具图标。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/912558.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GEEMAP 基本操作(二)如何对 Landsat 进行全色锐化

遥感全色锐化的目标是从图像中获得最高级别的视觉清晰度和细节,通过结合全色波段图像的高空间分辨率和多光谱(Landsat 为 B8 全色)图像的宽光谱范围,全色锐化能够生成质量更清晰的最终彩色图像。 全色锐化过程涉及应用数学算法&a…

IDC发布《亚太决策支持型分析数据平台评估》报告,亚马逊云科技位列“领导者”类别

日前,领先的IT市场研究和咨询公司IDC发布《2023年亚太地区(不含日本)决策支持型分析数据平台供应商评估》1报告,亚马逊云科技位列“领导者”类别。IDC认为,亚马逊云科技在解决方案的协同性、敏捷性、完整性、及时性、经…

Keras三种主流模型构建方式:序列模型、函数模型、子类模型开发实践,以真实烟雾识别场景数据为例

Keras和PyTorch是两个常用的深度学习框架,它们都提供了用于构建和训练神经网络的高级API。 Keras: Keras是一个高级神经网络API,可以在多个底层深度学习框架上运行,如TensorFlow和CNTK。以下是Keras的特点和优点: 优点&#xf…

keepalived+lvs+nginx高并发集群

keepalivedlvsnginx高并发集群 简介: keepalivedlvsnginx高并发集群,是通过LVS将请求流量均匀分发给nginx集群,而当单机nginx出现状态异常或宕机时,keepalived会主动切换并将不健康nginx下线,维持集群稳定高可用 1.L…

浏览器安装selenium驱动,以Microsoft Edge安装驱动为例

Selenium是一个用于Web应用程序测试的自动化工具。它可以直接在浏览器中运行,模拟真实用户对浏览器进行操作。利用selenium,可以驱动浏览器执行特定的动作,比如:点击、下拉等等,还可以获取浏览器当前呈现的页面的源代码…

【数据结构与算法】总结关于二叉树题型经典面试题

【数据结构与算法】二叉树题型经典面试题 1.根据二叉树创建字符串2.二叉树的层序遍历3.二叉树的最近公共祖先4.二叉搜索树与双向链表5.从前序与中序遍历序列构造二叉树6.从中序与后序遍历序列构造二叉树7.二叉树的前序遍历(非递归方法)8.二叉树的中序遍历(非递归方法)9.二叉树的…

SpringBoot接收参数的8种方式

文章目录 1. 直接把请求参数写在方法的形参中2. 封装一个bean直接来接收3. 原生的HttpServletRequest接收4. PathVariable获取rest风格路径参数5. RequestParam绑定请求参数到方法形参6. RequestBody绑定请求参数到方法形参7. RequestHeader8. CookieValue 1. 直接把请求参数写…

唯一受邀参会通信服务商!融云出席数字经济头部盛会「中数大会」并发言

8 月 16 日-18日,“2023 中国数字经济创新发展大会”(下简称“中数大会”)在广东省汕头市举办。关注【融云 RongCloud】,了解协同办公平台更多干货。 中数大会由工业和信息化部、广东省人民政府联合主办,以“聚数联侨…

C++ new运算符开辟空间

1 内存四区介绍 代码区:存放函数的二级制代码,由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:由编译器自动分配释放,存放函数的参数值,局部变量等堆区: 由程序员分配和释放&…

点云平面拟合和球面拟合

一、介绍 In this tutorial we learn how to use a RandomSampleConsensus with a plane model to obtain the cloud fitting to this model. 二、代码 #include <iostream> #include <thread> #include <pcl/point_types.h> #include <pcl/common/io.…

kubesphere部署rocketmq5.x,并对外暴露端口

kubesphere是青云开源的k8s管理工具&#xff0c;用户可以方便的通过页面进行k8s部署的部署&#xff0c;rocketmq则是阿里开源的一款mq平台&#xff0c;现在版本为5.1.3版本&#xff0c;较比4.x版本的rocketmq有比较大的调整&#xff1a;比如客户端的轻量化&#xff08;统一通过…

MS1022高精度时间测量(TDC)电路,应用于超声波热量表、水表、激光测距

产品简述 MS1022 是一款高精度时间测量电路&#xff0c;内部集成了模拟比 较器、模拟开关、施密特触发器等器件&#xff0c;从而大大简化了外 围电路。同时内部增加了第一波检测功能&#xff0c;使抗干扰能力大 大提高。通过读取第一个回波脉冲的相对宽度&#xff0c;用户可…

Spring6.0官方文档示例:(27)配置文件中bean定义的继承关系

一、实体类 package cn.edu.tju.domain;public class DerivedTestBean {private String name;private int age;public String getName() {return name;}public void setName(String name) {this.name name;}public int getAge() {return age;}public void setAge(int age) {t…

几种常见的递归算法

阶乘 这个比较简单就不说了。 int factorial(int n) {if (n < 0){return 0;}else if (n 1){return 1;}else {return n * factorial(n - 1);} }fibonacci 如此简单的算法&#xff0c;复试的时候竟然写错了&#xff01;&#x1f633;囧&#xff01; int fibonacci(unsigne…

高忆管理:a股印花税调整利好股市吗?印花税下调利好股市吗?

在股票市场上&#xff0c;印花税并不是一成不变的&#xff0c;政府会依据实际情况进行调整&#xff0c;那么&#xff0c;a股印花税调整利好股市吗&#xff1f;印花税下调利好股市吗&#xff1f;下面高忆管理为大家预备了相关内容&#xff0c;以供参阅。 股票印花税一般是指投资…

Transformer是否真正理解了自然语言的语义信息,还是单纯的模式识别

论文引用 此篇阅读笔记与思考主要针对以下两篇论文&#xff1a; Climbing towards NLU: On Meaning, Form, and Understanding in the Age of Data Transformer Feed-Forward Layers Are Key-Value Memories 本文将讨论第一篇论文所引发的思考&#xff08;第一篇论文的详细解…

企业级快速开发平台,助力企业走入流程化管理,创造高效办公!

要想实现高效办公&#xff0c;创造流程化管理新时代&#xff0c;需要借助一些优秀平台来实现目标。企业级快速开发平台是当前较为流行的软件平台&#xff0c;拥有多项典型功能&#xff0c;可以摒弃传统办公带来的效率低下、难维护等各种矛盾&#xff0c;一起创造流程化管理和数…

入行嵌入式,你离高薪还差一步!

近几年越来越多的人了解了嵌入式这个高薪、前景好的行业&#xff0c;许多同学也加入了嵌入式学习的队伍中&#xff0c;但对于自己未来在嵌入式的发展方向还是难以抉择&#xff0c;这里为大家答疑解惑一波。 熟悉嵌入式领域的同学都知道&#xff0c;嵌入式可以从软件和硬件两个方…

全链路数据湖开发治理解决方案2.0重磅升级,全面增强数据入湖、调度和治理能力

简介&#xff1a; 阿里云全链路数据湖开发治理解决方案能力持续升级&#xff0c;发布2.0版本。解决方案包含开源大数据平台E-MapReduce(EMR) &#xff0c; 一站式大数据数据开发治理平台DataWorks &#xff0c;数据湖构建DLF&#xff0c;对象存储OSS等核心产品。支持EMR新版数据…

C++继承-补充

本期对继承的知识进行一些补充&#xff0c;还没看过之前对继承讲解的建议先看之前的 C继承_KLZUQ的博客-CSDN博客 本期补充知识为菱形继承以及菱形虚拟继承相关知识 class A { public:virtual void func1(){cout << "A::func1" << endl;} public:int _…