CN111159800B - 一种基于cad文件自动生成3d模型的方法及装置 - Google Patents
一种基于cad文件自动生成3d模型的方法及装置 Download PDFInfo
- Publication number
- CN111159800B CN111159800B CN201911285454.7A CN201911285454A CN111159800B CN 111159800 B CN111159800 B CN 111159800B CN 201911285454 A CN201911285454 A CN 201911285454A CN 111159800 B CN111159800 B CN 111159800B
- Authority
- CN
- China
- Prior art keywords
- points
- cad file
- coordinates
- graph
- array
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明公开了一种基于CAD文件自动生成3D模型的方法及装置,包括以下步骤:对CAD文件进行解析以得到CAD文件的图形信息;对所述图形信息进行数据运算处理以获取图形的所有点的坐标以生成一个包含有所有点的坐标的数组;将数组中的具有相同坐标的点进行合并之后,根据逆时针排序算法对数组中的所有点进行逆时针排序;根据进行逆时针排序后的所述数组确定CAD文件中的图形的横截面数据,根据所述横截面数据以及用户所设定的放样路径,通过3D放样技术绘制出对应的3D模型并显示。该方法能够自动识别CAD文件的图形信息,根据图形信息获取所有点的坐标并对所有点进行合并排序得到包含有所有点的坐标的数组,进而根据所得到的数组自动绘制出3D模型。
Description
技术领域
本发明涉及3D建模技术领域,尤其涉及一种基于CAD文件自动生成3D模型的方法及装置。
背景技术
很多产品、建筑等在开始生产制造或施工之前,均会设计出其CAD图纸,一般情况下,CAD图纸为二维平面图,二维平面图在理解上存在一定难度,而且视觉效果较差,容易产生理解偏差;3D模型更利于生产人员或施工人员的理解。但是3D模型需要通过专门的建模软件来建模生成,当用户手里只有CAD文件,而又不懂3D建模时,无法生成3D化的模型。
发明内容
为了克服现有技术的不足,本发明的目的之一在于提供一种基于CAD文件自动生成3D模型的方法,其能够自动识别CAD文件的图形信息,根据图形信息获取所有点的坐标并对所有点进行合并排序得到包含有所有点的坐标的数组,进而根据所得到的数组确定图形的横截面数据从而通过3D放样技术自动绘制出3D模型。
本发明的目的之二在于提供一种电子设备,其能够自动识别CAD文件的图形信息,根据图形信息获取所有点的坐标并对所有点进行合并排序得到包含有所有点的坐标的数组,根据数组确定图形的横截面数据从而通过3D放样技术自动绘制出3D模型。
本发明的目的之三在于提供一种计算机可读存储介质,该存储介质中的程序运行时能够自动识别CAD文件的图形信息,根据图形信息获取所有点的坐标并对所有点进行合并排序得到包含有所有点的坐标的数组,根据数组确定图形的横截面数据从而通过3D放样技术自动绘制出3D模型。
本发明的目的之一采用如下技术方案实现:
一种基于CAD文件自动生成3D模型的方法,包括以下步骤:
对CAD文件进行解析以得到CAD文件的图形信息;
对所述图形信息进行数据运算处理以获取图形的所有点的坐标以生成一个包含有所有点的坐标的数组;
将所述数组中的具有相同坐标的点进行合并之后,根据逆时针排序算法对所述数组中的所有点进行逆时针排序;
根据进行逆时针排序后的所述数组确定CAD文件中的图形的横截面数据,根据所述横截面数据以及用户所设定的放样路径,通过3D放样技术绘制出对应的3D模型并显示。
进一步地,所述逆时针排序算法具体为:
通过排序得出数组中位于坐标系左下方的点,再获取与该点相邻的两个点,计算排序在前的两点所确定的向量逆时针旋转至排序在后的两点所确定的向量的方向相同时所经过的角度θ,如果角度θ小于180度,则此时为逆时针顺序,不需要重新排序;否则为顺时针顺序,则将数组倒序成逆时针顺序。
进一步地,所述对所述图形信息进行数据运算处理以获取图形的所有点的坐标具体为:
针对所述图形信息中的不同的线条类型进行不同的数据运算处理以获取图形的所有点的坐标;
其中,各个线条类型对应的数据运算处理方式如下:
直线和矩形:根据图形信息中对应的各个点的位置信息直接得到各个点的坐标;
圆弧和圆形:根据图形信息中对应的圆心坐标、半径、精度、起始角度以及角度长度计算得到各个点的坐标;
椭圆弧和椭圆形:根据图形信息中对应的中心坐标、x轴半径、y轴精度、起始角度以及终止角度计算得到各个点的坐标;
b样条:根据图形信息中对应的控制点权重、控制点的数量、节点坐标以及角度步长计算得到各个点的坐标。
进一步地,在对CAD文件进行解析以得到CAD的图形信息之后,还包括步骤:
根据所述图形信息判断所述CAD文件中的图形是否为封闭的单个图形;
若是,则对所述图形信息进行数据运算处理以获取图形的所有点的坐标;
若否,则结束流程。
进一步地,在结束流程的同时,通过提示框进行报错。
进一步地,在对CAD文件进行解析以得到CAD的图形信息之前,还包括步骤:通过three-dxf.js插件导入CAD文件。
进一步地,还包括步骤:当监听到鼠标拖动事件时,根据鼠标的移动位置来调整所述3D模型的位置。
进一步地,还包括步骤:根据用户所输入的旋转角度,旋转所述3D模型。
本发明的目的之二采用如下技术方案实现:
一种电子设备,包括处理器和存储器,所述存储器存储有可执行计算机程序,所述处理器可读取所述存储器中的计算机程序并运行以实现如上所述的基于CAD文件自动生成3D模型的方法。
本发明的目的之三采用如下技术方案实现:
一种计算机可读存储介质,所述计算机可读存储介质存储有可执行计算机程序,所述计算机程序运行时可实现如上所述的基于CAD文件自动生成3D模型的方法。
相比现有技术,本发明的有益效果在于:
该基于CAD文件自动生成3D模型的方法能够自动识别CAD文件的图形信息,根据图形信息获取所有点的坐标并对所有点进行合并排序得到包含有所有点的坐标的数组,进而根据所得到的数组自动绘制出3D模型。
附图说明
图1为本发明提供的一种基于CAD文件自动生成3D模型的方法的流程示意图。
具体实施方式
下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
请参阅图1,其为一种基于CAD文件自动生成3D模型的方法的流程示意图,包括以下步骤:
对CAD文件进行解析以得到CAD文件的图形信息;
对所述图形信息进行数据运算处理以获取图形的所有点的坐标以生成一个包含有所有点的坐标的数组;
将所述数组中的具有相同坐标的点进行合并之后,根据逆时针排序算法对所述数组中的所有点进行逆时针排序;
根据进行逆时针排序后的所述数组确定CAD文件中的图形的横截面数据,根据所述横截面数据以及用户所设定的放样路径,通过3D放样技术绘制出对应的3D模型并显示。
该基于CAD文件自动生成3D模型的方法能够自动识别CAD文件的图形信息,根据图形信息获取所有点的坐标并对所有点进行合并排序得到包含有所有点的坐标的数组,进而根据所得到的数组确定图形的横截面数据,从而根据横截面数据和放样路径,通过3D放样技术自动绘制出3D模型。特别地,放样路径可以由用户自行设定,用户可根据自身需要来调整放样路径的长短从而调整3D模型的大小。
所述逆时针排序算法具体为:
通过排序得出数组中位于坐标系左下方的点,再获取与该点相邻的两个点,计算排序在前的两点所确定的向量逆时针旋转至排序在后的两点所确定的向量的方向相同时所经过的角度θ,如果角度θ小于180度,则此时为逆时针顺序,不需要重新排序;否则为顺时针顺序,则将数组倒序成逆时针顺序。
作为一种优选的实施方式,所述对所述图形信息进行数据运算处理以获取图形的所有点的坐标具体为:
针对所述图形信息中的不同的线条类型进行不同的数据运算处理以获取图形的所有点的坐标;
其中,各个线条类型对应的数据运算处理方式如下:
直线和矩形:根据图形信息中对应的各个点的位置信息直接得到各个点的坐标;
圆弧和圆形:根据图形信息中对应的圆心坐标、半径、精度、起始角度以及角度长度计算得到各个点的坐标;
椭圆弧和椭圆形:根据图形信息中对应的中心坐标、x轴半径、y轴精度、起始角度以及终止角度计算得到各个点的坐标;
b样条:根据图形信息中对应的控制点权重、控制点的数量、节点坐标以及角度步长计算得到各个点的坐标。
CAD文件中的图形中可能会包含不同的线条类型,如直线与弧线绘制出的半圆,而通过解析CAD文件所得到的数据信息中并不包含整个图形的所有点的坐标信息,例如图形中的一个圆弧,所解析得到的原始数据(即图形信息)仅具有该圆弧的半径、圆心坐标、精度、起始角度以及角度长度等信息,需要通过这部分信息进行运算之后才得到该圆弧上所有的点的坐标。因此,通过针对不同的线条类型采用不同的处理手段,逐一获取整个图形的所有点的坐标数据。
作为一种优选的实施方式,在对CAD文件进行解析以得到CAD的图形信息之后,还包括步骤:
根据所述图形信息判断所述CAD文件中的图形是否为封闭的单个图形;
若是,则对所述图形信息进行数据运算处理以获取图形的所有点的坐标;
若否,则结束流程。优选地,在结束流程的同时,还通过提示框进行报错。
当该方法用于生成石膏线等建筑材料的3D模型的话,需要要求导入的CAD文件必须是封闭的单个图形,因此通过上述方式来判断CAD文件中的图形是否是单一图形,并且判断其是否是封闭的图形,如果不是的话则会提示报错,无法绘制3D模型。
作为一种优选的实施方式,在对CAD文件进行解析以得到CAD的图形信息之前,还包括步骤:通过three-dxf.js插件导入CAD文件。利用three-dxf.js插件导入CAD文件,可以得到CAD文件的原始数据,诸如精度,圆心坐标等信息。
作为一种优选的实施方式,还包括步骤:当监听到鼠标拖动事件时,根据鼠标的移动位置来调整所述3D模型的位置。还可包括:根据用户所输入的旋转角度,旋转所述3D模型。如此一来,在自动生成3D模型之后,用户还可对3D模型进行简单的调整,例如通过鼠标拖动来调整3D模型的位置,通过输入旋转角度来实现3D模型旋转对应的角度。
本发明还提供了一种电子设备,包括处理器和存储器,所述存储器存储有可执行计算机程序,所述处理器可读取所述存储器中的计算机程序并运行以实现如上所述的基于CAD文件自动生成3D模型的方法。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有可执行计算机程序,所述计算机程序运行时可实现如上所述的基于CAD文件自动生成3D模型的方法。
该计算机可读存储介质存储有计算机程序,本发明的方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在该计算机存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机存储介质不包括电载波信号和电信信号。
上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。
Claims (9)
1.一种基于CAD文件自动生成3D模型的方法,其特征在于,包括以下步骤:
对CAD文件进行解析以得到CAD文件的图形信息;
对所述图形信息进行数据运算处理以获取图形的所有点的坐标以生成一个包含有所有点的坐标的数组;
将所述数组中的具有相同坐标的点进行合并之后,根据逆时针排序算法对所述数组中的所有点进行逆时针排序;
根据进行逆时针排序后的所述数组确定CAD文件中的图形的横截面数据,根据所述横截面数据以及用户所设定的放样路径,通过3D放样技术绘制出对应3D模型并显示;
所述逆时针排序算法具体为:通过排序得出数组中位于坐标系左下方的点,再获取与该点相邻的两个点,计算排序在前的两点所确定的向量逆时针旋转至排序在后的两点所确定的向量的方向相同时所经过的角度θ,如果角度θ小于180度,则此时为逆时针顺序,不需要重新排序;否则为顺时针顺序,则将数组倒序成逆时针顺序。
2.如权利要求1所述的基于CAD文件自动生成3D模型的方法,其特征在于,所述对所述图形信息进行数据运算处理以获取图形的所有点的坐标具体为:
针对所述图形信息中的不同的线条类型进行不同的数据运算处理以获取图形的所有点的坐标;
其中,各个线条类型对应的数据运算处理方式如下:
直线和矩形:根据图形信息中对应的各个点的位置信息直接得到各个点的坐标;
圆弧和圆形:根据图形信息中对应的圆心坐标、半径、精度、起始角度以及角度长度计算得到各个点的坐标;
椭圆弧和椭圆形:根据图形信息中对应的中心坐标、x轴半径、y轴精度、起始角度以及终止角度计算得到各个点的坐标;
b样条:根据图形信息中对应的控制点权重、控制点的数量、节点坐标以及角度步长计算得到各个点的坐标。
3.如权利要求1所述的基于CAD文件自动生成3D模型的方法,其特征在于,在对CAD文件进行解析以得到CAD的图形信息之后,还包括步骤:
根据所述图形信息判断所述CAD文件中的图形是否为封闭的单个图形;
若是,则对所述图形信息进行数据运算处理以获取图形的所有点的坐标;
若否,则结束流程。
4.如权利要求3所述的基于CAD文件自动生成3D模型的方法,其特征在于,在结束流程的同时,通过提示框进行报错。
5.如权利要求1所述的基于CAD文件自动生成3D模型的方法,其特征在于,在对CAD文件进行解析以得到CAD的图形信息之前,还包括步骤:通过three-dxf.js插件导入CAD文件。
6.如权利要求1所述的基于CAD文件自动生成3D模型的方法,其特征在于,还包括步骤:当监听到鼠标拖动事件时,根据鼠标的移动位置来调整所述3D模型的位置。
7.如权利要求6所述的基于CAD文件自动生成3D模型的方法,其特征在于,还包括步骤:根据用户所输入的旋转角度,旋转所述3D模型。
8.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有可执行计算机程序,所述处理器可读取所述存储器中的计算机程序并运行以实现如权利要求1至7任一项所述的基于CAD文件自动生成3D模型的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有可执行计算机程序,所述计算机程序运行时可实现如权利要求1至7任一项所述的基于CAD文件自动生成3D模型的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911285454.7A CN111159800B (zh) | 2019-12-13 | 2019-12-13 | 一种基于cad文件自动生成3d模型的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911285454.7A CN111159800B (zh) | 2019-12-13 | 2019-12-13 | 一种基于cad文件自动生成3d模型的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111159800A CN111159800A (zh) | 2020-05-15 |
CN111159800B true CN111159800B (zh) | 2023-02-17 |
Family
ID=70557150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911285454.7A Active CN111159800B (zh) | 2019-12-13 | 2019-12-13 | 一种基于cad文件自动生成3d模型的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111159800B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100712A (zh) * | 2020-08-11 | 2020-12-18 | 广州南方卫星导航仪器有限公司 | 基于cad的道路放样转换方法及存储介质 |
CN112231800B (zh) * | 2020-09-25 | 2022-06-21 | 深圳市华阳国际工程设计股份有限公司 | Bim图形的优化方法、装置以及计算机存储介质 |
CN112434502A (zh) * | 2020-11-04 | 2021-03-02 | 西安理工大学 | 一种自动识别螺栓cad工程制图的方法 |
CN112819915B (zh) * | 2020-12-25 | 2023-05-09 | 佛山欧神诺云商科技有限公司 | 一种墙体建模系统 |
CN112634440B (zh) * | 2020-12-28 | 2023-08-11 | 深圳市彬讯科技有限公司 | 三维边框模型构建方法、装置、设备及介质 |
CN113190905A (zh) * | 2021-05-13 | 2021-07-30 | 中国电子工程设计院有限公司 | 一种建筑模型的分析方法、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004318368A (ja) * | 2003-04-15 | 2004-11-11 | Hitachi Eng Co Ltd | 空間領域データ生成装置 |
CN102990179A (zh) * | 2012-10-19 | 2013-03-27 | 廖怀宝 | 一种使用cad文件提高焊锡机器人编程速度和精度的方法 |
CN103092577A (zh) * | 2011-10-28 | 2013-05-08 | 鸿富锦精密工业(深圳)有限公司 | 三维影像量测程序生成系统及方法 |
CN106055794A (zh) * | 2016-05-31 | 2016-10-26 | 浙江科澜信息技术有限公司 | 一种参数化建立三维管线模型的方法 |
CN109035364A (zh) * | 2018-07-23 | 2018-12-18 | 山东省地质矿产勘查开发局第五地质大队(山东省第五地质矿产勘查院) | 一种基于cad地形图快速绘制剖面图的方法 |
CN109360262A (zh) * | 2018-10-23 | 2019-02-19 | 东北大学 | 基于cad图生成三维模型的室内定位系统及方法 |
CN109710963A (zh) * | 2018-11-05 | 2019-05-03 | 陈树铭 | 基于建筑二维cad图纸的三维快速建模系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3059798B1 (fr) * | 2016-12-05 | 2019-08-02 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Procede de construction d'une maquette numerique 3d a partir d'un plan 2d |
-
2019
- 2019-12-13 CN CN201911285454.7A patent/CN111159800B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004318368A (ja) * | 2003-04-15 | 2004-11-11 | Hitachi Eng Co Ltd | 空間領域データ生成装置 |
CN103092577A (zh) * | 2011-10-28 | 2013-05-08 | 鸿富锦精密工业(深圳)有限公司 | 三维影像量测程序生成系统及方法 |
CN102990179A (zh) * | 2012-10-19 | 2013-03-27 | 廖怀宝 | 一种使用cad文件提高焊锡机器人编程速度和精度的方法 |
CN106055794A (zh) * | 2016-05-31 | 2016-10-26 | 浙江科澜信息技术有限公司 | 一种参数化建立三维管线模型的方法 |
CN109035364A (zh) * | 2018-07-23 | 2018-12-18 | 山东省地质矿产勘查开发局第五地质大队(山东省第五地质矿产勘查院) | 一种基于cad地形图快速绘制剖面图的方法 |
CN109360262A (zh) * | 2018-10-23 | 2019-02-19 | 东北大学 | 基于cad图生成三维模型的室内定位系统及方法 |
CN109710963A (zh) * | 2018-11-05 | 2019-05-03 | 陈树铭 | 基于建筑二维cad图纸的三维快速建模系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111159800A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111159800B (zh) | 一种基于cad文件自动生成3d模型的方法及装置 | |
CN103890766B (zh) | 坐标测量系统数据缩减 | |
US9158297B2 (en) | Computing device and method for generating measurement program of product | |
US20140067333A1 (en) | CAD-Based System for Product Definition, Inspection and Validation | |
US20170067737A1 (en) | Inspection program editing environment providing user defined collision avoidance volumes | |
JP2014106980A (ja) | ユーザの相互作用に基づく映像内の輪郭分割装置及び方法 | |
CN112765695B (zh) | 支撑体生成方法、3d打印机、计算机装置及存储介质 | |
WO2019190625A1 (en) | Relative density-based clustering and anomaly detection system | |
CN108255702A (zh) | 一种测试用例创建方法、装置、设备及存储介质 | |
US20150066443A1 (en) | Computing device and method for analyzing assembly clearance between two components of product | |
US20150112655A1 (en) | Computing device and method for simulating measurement of object | |
EP3791319A1 (en) | Computer vision and speech algorithm design service | |
KR20150112832A (ko) | 산출 프로그램, 산출 장치 및 산출 방법 | |
US11694416B2 (en) | Intuitive editing of three-dimensional models | |
CN112597239A (zh) | 可视化建模方法、装置和电子设备 | |
CN108507563B (zh) | 巡航路径生成方法及装置 | |
US20160307470A1 (en) | System and method for dynamic geometry suggestion tool | |
US9761046B2 (en) | Computing device and simulation method for processing an object | |
US20130100137A1 (en) | Computing device, storage medium and method for analyzing 2d graphic files of measurement products | |
Mateo et al. | Hierarchical, Dense and Dynamic 3D Reconstruction Based on VDB Data Structure for Robotic Manipulation Tasks | |
US9460362B2 (en) | Method and apparatus for identifying a desired object of an image using a suggestive marking | |
US9858364B2 (en) | Computing device and method for processing point clouds | |
US10282810B2 (en) | Rendering illustrations using a two-dimensional rendering engine | |
US20120230605A1 (en) | Computing device and offline programming method | |
US20120197615A1 (en) | System and method for simulating measuring process of workpiece |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |