- 博客(60)
- 资源 (1)
- 收藏
- 关注
原创 曲线定义分析
在精度控制方面表现优异,特别适用于那些要求的场合。它通常用于,以及一些要求较高精度的设计应用。在OCC中NURBS是B样条曲线,提供了更高的灵活性,特别适合于的场合。NURBS 曲线的灵活性来自于,这使得它能够实现更平滑的曲线过渡,适合需要曲线的应用。
2025-03-28 11:24:39
29
原创 OCC+VTK 拾取中判断内外面
获取当前视图的方向,针对实体面和片体面 用户通过视图交互可以获取到想要的面法相(球面、圆柱面、圆锥面)m_cellPicker->GetPickNormal()获取拾取点在面上的法相,会虽OCC模型面变换法相不同。// 点击点的世界坐标。下面是获取参数的方法。
2025-03-27 10:34:29
21
原创 OCC判断点和形状位置关系
为了计算三维点在面的位置关系,使用了BRepClass_FaceClassifier与BRepClass3d_SolidClassifier结合的方法Count++;
2025-03-25 11:13:24
33
原创 曲线、曲面偏执相关论文
1、可去除自交且具有可调节光顺的非均匀有理B样条等距曲线生成方法.pdf。对曲线的基础知识理解的不是好,最近刷了几篇论文,对自己提升还是很大的。有需要的同学可以私聊我转发给你,本人已经购买了知网的会员可以免费下载。3、三角网格曲面上测地B样条曲线偏置.pdf。2、样条曲线的参数化变形方法.pdf。
2025-02-24 11:23:43
28
原创 OCC 曲线线的偏执
在 Open CASCADE (OCC) 中,偏置曲线(Offset Curve)和曲面求交线涉及多个 API,分别适用于 2D、3D、闭合、非闭合曲线,以及曲面交线的偏置。
2025-02-17 15:33:51
66
原创 三维中矩阵变换计算方法
三维中引用坐标矩阵计算,以及装配中多层级对象变换和坐标转换。3、已知变换矩阵T,把矩阵C通过T变换得到新的矩阵D。1、A矩阵通过变换矩阵T得到新的矩阵B。2、A矩阵变换得到B矩阵,求变换矩阵T。注意:矩阵相乘区分乘数和被乘数。
2025-02-10 15:42:47
163
原创 vtkAssembly 装配关系获取
1、添加装配-每次装配添加(AddAssemblyPartNew)同时添加vtkAssemblyPath。通过vtkAssemblyPath::AddNode()可以记录装配关系。在装配中VTK没有给方法获取父项或者模型在世界坐标矩阵的获取。2、通过全局thevtkAssemblyPath获取装配结构。// 添加根 Assembly。3、遍历装配节点信息。
2025-02-10 14:05:24
170
原创 OCC+vtk参考Analysis situs
官网:GIT开源源码下载链接:git@gitlab.com:ssv/AnalysisSitus.git。
2025-01-16 15:20:46
200
原创 OCC+VTK对象高亮
高亮后移除高亮对象。// 创建高亮Actor// 从 vtkActor 获取 vtkPolyData。// 创建高亮Actor// 从 vtkActor 获取 vtkPolyData。// 创建新的 vtkMapper 和 vtkActor。//删除Actor对象。
2025-01-13 19:37:01
93
原创 VTK 鼠标+键盘重构
1、鼠标事件如果有鼠标事件处理等相应的需求,可以重写该事件。//鼠标移动事件//左键按下事件//左键抬起事件//滚轮按下事件//滚轮抬起事件//右键按下事件//右键抬起事件//滚轮向前事件//滚轮向后事件。
2025-01-03 16:49:47
482
原创 C语言指针应用
/ 将 interopstatus 的地址赋给指针 interopstatus_F。// 将 interopstatus的值赋给指针所指向的内存。2、把地址传入常量的地址,变量变换常量的值同时变,1、把值传入常量的地址,变量变换常量的值不变,
2024-12-26 11:24:22
171
原创 OCC+VTK 错误机制
/ 代码可能抛出 Standard_Failure 异常 TopoDS_Shape shape;OCC获取错误信息Standard_Failure,通过try catch。VTK错误机制vtkErrorCode,只能返回读取文件的错误,通过返回值。// 可能因某些错误抛出异常。
2024-11-28 14:34:35
104
原创 OCC对象渲染到VTK-拾取
2、vtkCellPicker和渲染的形状来源没有关系,但是vtkCellPicker只能拾取Prop3Ds ,这边已经颜色OCC对象线和形状渲染为线框的不可以,这个可能和它拾取机制有关系,平面点射线的单元格,我理解的可能线没办法射线到。3、IVtkTools_ShapePicker也是全局的,是OCC的api,但是它是继承了vtkAbstractPropPicker的类,部分功能可以在VTK库去理解。参考中,通过设置渲染器到拾取器,拾取直接通过屏幕点击的点获取我认为是可以的。
2024-11-28 10:32:08
134
原创 OCC对象VTK中Filter中的应用
再通过Filter去实现相关过滤,渲染后能否在VTK界面选择到子对象,边和单个面级别,以及模型移动或移除后怎么刷新过滤器。// 将切线方向归一化,作为圆锥轴向量。在OCC中创建的多个对象VTK渲染,通过单元设置标量属性实现不同颜色,不同透明度。++j)//颜色转换。//颜色获取设置到形状添加到形状集合中。//OCC对象形状转换为VTK对象。// 返回 vtkPolyData。// 返回 vtkPolyData。//创建圆柱圆锥添加到装配。// 缩放向量到指定距离。// 获取生成的圆锥。
2024-11-26 15:42:13
150
原创 OCC多个形状在VTK中渲染不同颜色方法
疑问:VTK中vtkAppendPolyData和vtkCellArray区别,vtkAppendPolyData只是把几个对象一起显示,vtkCellArray感觉是合并形状,它会把我路径线显示为一个片体,通过点控制整体颜色。// 将切线方向归一化,作为圆锥轴向量。//计算圆弧中点,计算中点在线上的法相,创建方向示意圆锥。// 在中点位置计算圆弧的切线向量。// 获取圆弧的参数范围。//颜色获取设置到形状添加到形状集合中。//OCC对象形状转换为VTK对象。// 多段圆弧,可以不连接轨迹中圆弧路径。
2024-11-12 14:29:30
190
原创 OCC 拟合的平面转换为有界平面
if (aSurface.GetType() == GeomAbs_SurfaceOfRevolution || aSurface.GetType() == GeomAbs_BSplineSurface)//回旋曲面//样条曲面。解决方法:通过面拟合转换gp_Pln,然后获取面的内外边,重新修剪生成新的TopoDS_Face。//判断面的类型 转换面类型 获取面的边界 修建获取新的有界面 针对平面。//如果获取的包容盒小于步距,获取一下OBB包容盒判断是否大于2,大于2开始面转换。
2024-11-05 16:37:50
435
原创 OCC 点云
OCC的基础知识可能还是要系统学习一下,部分导入的模型面类型是很多面都是GeomAbs_BSplineSurface,最终获取参数都要拟合一下,拟合后的生成的面对象没有大小,比如平面只有矢量(大小没有思路) 圆柱拟合面没有高度(圆柱最后我用的投影的方法获取高度)。我的遗留问题:为什么部分GeomAbs_BSplineSurface类型面通过BRepTools::UVBounds没办法获取大小。本章,拾取的面按步距生成点云,因为没有大小或者没办法通过UV控制,所以尝试通过点云类直接操作。
2024-11-02 11:19:25
802
原创 VTK–Picking
返回的信息可能仅仅是简单的x-y-z的球体坐标,也可能包含cell’s ids,point ids,cell 参数化坐标,被拣选的vktProp的实例,装配路径(assembly paths)等。类定义了用于拣选vtkProp实例对象的API,该类提供用于查询并返回pick的类型的简便的方法:GetProp(),GetProp3D(),GetActor(),GetActor2D(), GetVolume(),GetAssembly(), GetPropAssembly()。返回的pcik通常不唯一。
2024-10-11 17:31:13
123
原创 OCC 逆矩阵
功能实现导入的CAD模型通过选择面线点创建坐标系,获取逆矩阵,把模型按世界坐标系移动到原点,这样机台上实物坐标系和软件中模型坐标系对应,才能开始测量或者加工。一下是一位大佬分享的手搓的逆矩阵获取方法,看到OCC也有4X4矩阵逆矩阵获取方法应该都能实现。// 定义一个 4x4 矩阵。// 计算矩阵的余子式矩阵。// 计算矩阵的伴随矩阵。// 计算矩阵的行列式。// 计算矩阵的逆矩阵。
2024-09-04 09:53:54
433
原创 针对样条曲面没有Location情况
/计算TopoDS_Face投影在轴线上的最大高度(针对面没有Location情况),同时投影算出起点和终点。我可以设置拟合面的获取的轴线中原点是0,0,0,然后再经过样条曲面投影 轴线的方法获取长度和面底部圆心。// 更新最小和最大投影距离及对应的点。// 从点 P 到轴起点 O 的向量。// 从点 P 到轴起点 O 的向量。// 将点投影到指定方向。// 初始化最小和最大投影距离。// 获取边的两个顶点。// 计算投影点的坐标。// 计算投影点的坐标。// 初始化对应的点。
2024-08-14 16:38:29
52
原创 样条曲面拟合成为圆柱面后,获取圆柱高度
轴线的获取OCC中也分两种一种面本身有Location,一种没有Location,库没有进行详细区分。//计算TopoDS_Face投影在轴线上的最大高度(针对面有Location情况)// 更新最小和最大投影距离。// 将点投影到指定方向。// 初始化最小和最大投影距离。// 获取边的离散点。通过面投影在轴线上计算得出。
2024-08-14 16:31:19
94
原创 针对OCC中样条曲面拟合为几何面,并获取参数
/拟合出来的面都是在原点,需要先获取一下原始样条曲面的矩阵,把矩阵设置到拟合出来的圆圆柱面中。拟合的面没有高度,部分没有底面圆心。需要在其他里面出来。
2024-08-14 16:27:41
151
原创 在CAD软件中有一类壳体片体法相向内,在测量软件XG中平面和曲面面片方向不一致可以直接检测修改,OCC库给出了方法直接判断和修改。
props.IsNormalDefined()//是否有法相。// 高亮显示面片 (假设有一个渲染器)查看了API一下方法都是存在的后期验证一下结果。修改面法相 TopoDS_Face face;
2024-08-03 17:16:14
417
原创 OCC导入的模型修复
至于能修复什么不是很清楚是否修复成功也不知道,还有复杂的设置修复公差的没有涉及,修复后模型的标识符内存不边很神奇。// 获取修复后的几何形状。
2024-07-27 16:44:25
144
原创 vtkCellPicker 中部分点法相异常
业务情况导入STEP,在VTK中渲染,选择面上的点法相异常,增加STEP导入后获取组合体中片体,然后缝合片体。下面方法还是有些问题的,缝合的片体可以转换为实体,但是运行后没有实体显示转换失败,没有好的方法解决。获取的发现反向,造成这样情况的原因可能选择的面是片体(壳),需要把片体或者壳缝合或者转换为实体正常。// 使用 BRepBuilderAPI_Sewing 来缝合壳。//// 如果缝合的形状是有效的壳,使用它来创建实体。// 创建一个壳并将所有面添加到壳中。
2024-07-27 16:42:10
117
原创 NX静默安装
在命令提示符中运行msiexec.exe /qb /i "F:\SOFT\NX相关\SiemensNX-1926_wntx64\nx\SiemensNX.msi" ADDLOCAL=all INSTALLDIR="D:\UG" LANGUAGE=simpl_chinese SPLM_LICENSE_SERVER=28000@LAPTOP-3ET1IJQB。/i "F:\SOFT\NX相关\SiemensNX-1926_wntx64\nx\SiemensNX.msi" 为NX安装目录下.msi安装文件。
2023-11-24 15:03:31
336
2
转载 电子邮件监控中21个常见的SMTP响应代码
但是,如果由于无效地址或永久性故障而收到SMTP错误,那么从您的电子邮件列表中删除失败的地址将是一个好主意,这样以后您就不会再重复发送到相同的错误电子邮件地址了。SMTP代码固有的一个问题是,不同的服务器以不同的方式使用代码,因此无法确定地声明每个代码的含义。在我们最近的文章中,我们讨论了电子邮件状态代码,并说明了当您的电子邮件程序发出请求时,接收邮件服务器将返回指示消息状态的代码。这就是为什么在此文章中,我们将为您提供21种最常见的SMTP响应代码,以及推荐的免费SMTP服务器测试工具的链接。
2023-07-12 13:44:21
3744
转载 NX GC工具箱中英文切换
GC工具箱是非常实用的工具,有一些非常高效的功能,对于那些喜欢英文版的工程师,如果仅仅设置环境变量:UGII_LANG=simpl_chinese1,GC工具箱是不能使用的!增加以下环境变量:UGII_COUNTRY=prc,GC工具就可以完美调用了!
2023-06-09 14:41:48
1171
转载 vs code里打开 终端,下面一片空白 无法输入命令【最新版已解决】
vs code里打开 终端,下面一片空白 无法输入命令 之前试了很多方法都不行
2023-04-10 18:48:19
4457
4
原创 NX 在UI中PerformApply( )、PerformOK( )和PerformCancel( )实现放法
NX 在UI中PerformApply( )、PerformOK( )和PerformCancel( )实现放法
2023-02-17 12:02:04
447
C++ 开发的发送邮件的脚本,传入参数发送带附件邮件到指定邮箱
2023-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人