BIMBase之python建模宝典:吊钩

admin

文章最后更新时间:2023-10-01 08:11:20,由管理员负责审核发布,若内容或图片失效,请留言反馈!

BIMbase自从2021年发布以来获得了众多关心国产BIM和业务数字化转型的圈内老法师的关注,除了是国内首款完全自主知识产权的BIMbase系统,实现建筑信息模型(BIM)关键核心技术自主研发安全可控。

同时开创了BIM X PYthon的技术跨界混搭风,得以让建模可以通过快速编程实现。

So!

BIMbase团队为了在功能和场景上

帮助大家了解BIMbase

学习建模小技巧

开设了技术专栏

【BIMbase之python建模宝典】

今日分享第二十二弹

应用背景

BIMbase建模宝典之吊钩

起重机械作为物料搬运的主要设备,能实现人力所不及的物品转移,其重要性也随着全球工业化发展的趋势得以显现。无论是在港口、码头的装卸货物上,还是冶金的生产过程中,它都发挥了不可替代的作用。而对于建筑行业,起重机械更是贯穿了生产的全过程,对降低成本、提高效率起到决定性的影响。

在起重设备的组成构件中,吊钩及吊钩组成为最主要的吊具。吊钩除承受货物重量外,还承受冲击荷载的反复作用。正因如此,一个承载能力高、强度可靠、具备韧性的安全性吊钩才能充分发挥起重机械的工作性能。

随着科学技术的进步和行业针对性的重视,多种新型吊钩出现在市场上以适应不同领域需求或特定工作要求。基于BIMbase平台的Python参数化组件二次开发接口,顺应计算机数字技术的浪潮,在机械设备领域的模型建造中,正以自身独特优势满足着各类用户的需求。

图1 吊钩的种类

图2 三维模型展示

图3 属性调整

技术问题&思路简介

BIMbase建模宝典之吊钩

Part 01

技术问题

在传统吊钩建模过程中,存在以下难点:

1、吊钩模型建模思路;

2、钩子断面绘制和截面离散点捕捉;

3、放样中断面的旋转角度及轴线控制。

本期我们将给大家分享吊钩的BIMbase-python参数化建模方法,你是否对不规则造型的构件无从下手?那这篇文章你可看对了!本文对python参数化组件建模过程进行了详细拆解,相信本讲内容定会让你收获颇丰。

图4 吊钩效果图

Part 02

建模思路

首先,我们介绍吊钩的整体建模思路。根据结构造型,将模型分为钩子、螺杆、螺纹三部分。因钩子部分的不规则截面,一次成形较为困难,我们从上到下将其细分为四节,最终将各部分组合成型。

针对钩子的细部建模,我们采取以面构型的方式,即先构建钩子的截面,再用Loft装载各截面进行放样。基础工具放样Loft的使用方式,可以下载《BIMbase-Python参数化组件使用手册》进行学习。

相信屏幕前的你看到这里也会感到困惑:不同带弧线截面之间,能通过Loft直接放样成型吗?答案当然是不行。想要使用Loft放样,相邻截面必须具备相同数目的离散点。那么,如何得到相同离散点的截面呢?别忘了我们的好伙计,

get_discrete_points_from_section函数(详见《BIMbase之python建模宝典:隧道锚杆支护》),该函数旨在帮助用户得到截面中的三维点列表,能够控制离散点的期望数目,我们再把离散点集装入to_section函数构面,如此,不就得到了具有指定离散点的截面~

但是,放样过程中仍存在一个关键性难题:各个截面在Linspace线性排布中可不是平移关系那么简单。针对相邻截面的角度偏差问题,python二次开发提供了针对性接口——arbitrary_rotate函数,该函数是在rotate函数基础上创造的更具灵活性的转动函数,用户通过装填旋转中心点、旋转轴与旋转角度,便能够实现三维空间中的任意转动。

图5 新函数运用

至于螺纹的创建方法,《BIMbase之python建模宝典:三角形螺纹》中已做了细致的分析讲解,故本讲中不作为难点进行赘述。

创建过程展示

BIMbase建模宝典之吊钩

01

钩子(Hook)部分

钩子形状按照一定规律提炼归纳为四部分:变截面弯段(蓝色)、变尺寸截面圆弧段(绿色)、变截面直段(黄色)、圆截面末端(橙色)。

图6 钩子分段分析

第一段变截面弯段(蓝色)是由圆截面过渡到圆角三角形截面。两个截面的基本组成单位不一致,无法直接进行Loft。需要先离散为相同的点型截面,一致后方可进行Loft。

图7 截面离散化

get_discrete_points_from_section()函数提供将截面Section离散为边缘均匀点的功能。函数中置入三个参数:截面、离散点个数、是否仅离散圆弧段,返回点集。

离散过后的点集再通过to_section()函数生成截面,获得一个由确定个数点组成的截面。相同点个数的截面就可以执行Loft得到变截面体。

分别对圆形截面和圆角三角形截面进行打散再成面处理,并且做到起始点位置对应。保证两截面离散点个数相同、保证两截面之间点按顺序投影能够对应。

制作弧线段变截面需将弧线段截面置入循环,按照精度和外观要求,调整其位置和尺寸,放入列表存储。最后将截面列表以及单截面按正确顺序置入Loft函数生成放样体,得到第一段钩子。其中arbitrary_rotate(P,Z,a)指绕过点P方向为Z的向量旋转a角度(右手准则)。

图8 第一段放样效果

第二段变尺寸截面圆弧段(绿色),在第一段的基础上加入了尺寸的变化。此段前半部分截面是有小变大的过渡段,后一半是固定尺寸的圆弧形放样。尺寸改变只需要在循环中控制尺寸的另一个参数即可。使用for+ zip的方式可以实现循环中两个参数的遍历。

其余两段逻辑相同。

图9 第二段放样效果

02

螺杆螺纹

范例中螺杆是由剖切面Section旋转扫描Sweep而得。

螺纹是由剖切面绕螺杆半径循环离散生成一圈截面组,而后Loft放样。在按照所需圈数竖向排布。

图10 生成顺序

文章小结

基坑支护等级预测分析

以上就是本次建模宝典的全部内容。本讲重点介绍了基于BIMbase的python参数化组件的机器设备造型能力,着重讲述了不规则构件的分析思路、截面离散点的控制与选取函数、空间旋转函数等等。用户可在此基础上开发有参数化能力的特殊吊钩模型,满足指定功能。

文章版权声明:除非注明,否则均为土豆网原创文章,转载或复制请以超链接形式并注明出处。

会员中心

最近更新

热门浏览

标签列表

取消
微信二维码
微信二维码
支付宝二维码