- 博客(30)
- 收藏
- 关注
原创 CATIA/3DE CAA二次开发-ScrollWindow滚动窗口
该代码定义了一个继承自CWnd的CScrollContainer类,用于实现可滚动容器功能。主要包含滚动位置、总高度、页面高度和行高等属性,以及设置总高度、滚动到指定位置和更新滚动条状态等操作方法。类中还声明了处理垂直滚动、鼠标滚轮、窗口大小变化、背景擦除和按钮点击等消息的成员函数。通过消息映射机制实现滚动容器的交互功能。
2026-03-15 09:44:05
50
原创 CATIA/3DE CAA二次开发-播放gif的控件
摘要:GifView控件经TRAE改造后,新增支持C++98和R19+VS2005环境,并实现gif图像自适应拉伸功能。项目源码已开源在GitHub,地址:https://github.com/chivstyle/GifView。该优化使控件能更好地适应不同尺寸需求。(98字)
2026-02-16 21:00:32
439
原创 CATIA/3DE CAA二次开发-ListCtrl-2
摘要:ListCtrl默认不提供列表头全选功能。通过TRAE技术实现了在列表头添加checkbox按钮,支持点击全选操作,提升了批量选择的便捷性。该功能简化了用户操作流程,优化了列表控件的交互体验。
2026-02-16 15:05:20
256
原创 CATIA/3DE CAA二次开发-ListCtrl
摘要:针对ListCtrlEx控件在R19低版本兼容性问题,使用TRAE工具进行了修改优化。修改后的控件运行效果良好,解决了原有版本的兼容性缺陷。
2026-02-14 11:26:47
497
原创 CATIA/3DE CAA二次开发-二维码
文章介绍了使用rsky/qrcode第三方库。该库是一个轻量级的二维码生成工具,支持自定义二维码尺寸、颜色等参数,使用简单方便。开发者可以通过引入该库快速实现二维码生成功能,适用于网站、APP等多种应用场景。
2025-11-01 13:10:25
707
原创 CATIA/3DE CAA二次开发-工程图两圆内填充AreaFill
摘要:该内容探讨如何通过编程实现工程图中两圆之间区域的填充。作者提到由于界面选择较繁琐,直接采用遍历方式获取两圆进行填充操作。文中包含一个简化方案,通过代码自动识别两圆位置关系并完成填充功能。该方法省略了手动选择步骤,提高了操作效率。
2025-10-31 19:27:57
254
原创 CATIA/3DE CAA二次开发-加载STL点云文件
摘要:尝试使用达索提供的CATICldCAAImportManager接口加载STL失败后,转而自主开发STL加载功能。过程中学习了高效的哈希碰撞(HashCollision)算法,该算法展现出优异的处理速度。
2025-10-30 18:25:40
347
原创 CATIA/3DE CAA二次开发-自制字典工具
本文介绍了一款独立字典工具的开发原理和优势。该工具复刻了达索的字典功能,但解决了后者必须依赖VS+CAA工程运行的局限性,且能完整显示3DE的字典信息。开发者通过解析CAA工程的.dico文件和达索原生的.dic文件实现功能。工具无需额外依赖环境,可直接运行,方便用户快速查看完整字典信息。文章最后鼓励读者基于此原理开发自己的字典工具。
2025-10-18 16:48:51
510
原创 CATIA/3DE CAA二次开发-自研CAA编译工具-3:单个Frame编译
本文介绍了一种简化Frame编译过程的方法。主要内容包括:1)实现单Frame编译选择功能;2)自动生成.h文件索引,通过cpp文件一键完成头文件索引建立,简化链接过程;3)解决多模块编译顺序问题,仅用327行代码实现核心排序功能。该方法借鉴了达索Rade编译的经验,通过集中管理头文件目录,有效减少了编译参数复杂度。文末附图中的红框标明了依赖模块关系。整个方案旨在提高编译效率,简化开发流程。
2025-10-18 08:17:52
510
原创 CATIA/3DE CAA二次开发-自研CAA编译工具-2:TLB编译
MIDL是微软接口定义语言编译器,用于将.idl文件编译成COM/RPC开发所需的头文件、存根文件和类型库等。该工具支持多种编译参数,如指定输出目录(/out)、生成头文件(/h)、接口ID文件(/iid)、代理文件(/proxy)和类型库(/tlb)等。示例命令展示了如何编译MyCom.idl文件,生成对应的.h、_i.c和_p.c文件,适用于COM接口开发场景。
2025-10-04 08:33:37
359
原创 CATIA/3DE CAA二次开发-自研CAA编译工具
摘要:本文介绍了仅使用MSVC编译CAA项目的方法,通过AI辅助编写CL/LINK脚本成功编译单个模块,解决了编译参数和脚本语法等问题,并开发了806行代码的工具将.tscr文件转换为TIE.h。下一步计划包括实现多模块编译(需解析模块依赖关系)和通过解析.tplib文件编译.midl文件。整个过程展现了技术探索的完整路径,从单模块实现到多模块扩展的逐步推进。
2025-10-02 19:32:29
816
原创 CATIA/3DE CAA二次开发-编译32位、64位
64位CATIA用户无需安装32位版本即可编译32位程序,只需设置环境变量_MkmkOS_BitMode=32,并保持LocatePrerequisiteWorkspace选择64位CATIA路径。编译生成的32位程序位于intel_a目录,切换64位编译时需移除或修改该变量。此方法实现了单一64位环境下的双版本编译兼容性。
2025-09-13 13:02:19
390
原创 CATIA/3DE CAA二次开发-DefineConnector And Connector Connection Point
本文摘要介绍了单插式连接器的电气属性定义方法。通过CAA代码示例展示了如何创建3引脚连接器:1)使用CATFrmEditor获取当前文档和部件;2)通过ElbFactory扩展为单连接器;3)为三个终止点添加几何参考点。第二部分说明了连接点的定义要求:1)使用接触面作为表示;2)通过两条线确定轴向和防旋转方向以确保电气装配唯一性。代码演示了如何查找发布对象并添加连接点,需要提供面、边线等几何元素作为参考。这些步骤共同定义了接插件的完整电气连接属性。
2025-08-23 14:21:46
339
原创 ChartCtrl图表控件在CAA中的使用
ChartCtrl开源图表控件下载及使用说明 摘要:本文介绍了ChartCtrl开源图表控件的下载地址(https://gitcode.com/open-source-toolkit/75c8a/blob/main/ChartCtrl.zip),并展示了其核心实现代码片段。技术要点包括:获取父窗口客户区矩形、通过句柄获取CWnd指针、创建并显示图表控件等。控件支持WS_BORDER、WS_CHILD和WS_VISIBLE等窗口样式,可通过ShowWindow方法显示。该控件适用于需要在MFC应用中快速集成图
2025-08-03 15:06:41
406
原创 表格3D标注
技术要点摘要: 生成的3D标注基于关键接口 CATITPSFactoryElementary->CreateTextNOA 实现。 演示点用于确定标注的起点位置,作为文本标注的定位基准。 该方案解决了3D环境下文本标注的动态生成需求,适用于工业设计等场景。 (约80字)
2025-08-03 14:11:27
412
原创 PictureRep案例
摘要:该代码片段展示了C++中实现图形界面交互的技术要点。在BuildGraph方法中注册了一个回调函数OnManipulateCBClick,当用户操作时触发。回调函数创建并显示一个包含"点击了我"信息的通知对话框(CATDlgNotify),随后请求延迟销毁该对话框。这种模式实现了用户交互与界面更新的解耦,是典型的GUI事件处理实现方式。
2025-08-02 05:47:11
10107
原创 ColorMap特征模拟
本文介绍了CATIA中ColorMap特征的模拟实现方法。主要内容包括:1)创建自定义特征文件ColorMapCatalog.CATfct;2)通过Interface和Impl实现特征接口(可在达索UseCase中查找参考案例);3)提供实例化代码。该方法可准确模拟CATIA原生对象中的ColorMap特征,适用于红色框选区域的特殊显示需求。
2025-07-27 11:16:44
467
原创 模拟原生ABF模块的属性设置
技术实现步骤: 创建ABFCatalog.CATfct文件 建立Interface和Implementation(如图示) 核心创建流程: 获取ABFIFactory实例 判断是否已创建 创建SettingRoot和RulesRoot 设置父子关系 批量创建规则(示例创建13条规则) 更多细节可参考达索官方UseCase
2025-07-19 10:31:18
866
原创 UDF实例化(3DE)
摘要:本文介绍了一种通过UDF实现CATIA建模的技术方法。主要内容包括:1)使用官方CAAMcaUdfEdit_CAAUdfLoft.3dxml创建UDF;2)获取组件externalId;3)通过GetUserFeatureList获取用户特征列表;4)创建CATPathElement对象;5)调用CATAfrStartCommand执行原生命令。该方法为CATIA二次开发提供了实用参考,建议读者尝试实践。
2025-07-17 09:43:01
608
原创 模拟3DCS(3DE版)
本文介绍了数字控制系统(DCS)的技术实现要点:1)自定义DCSStorage特征存储;2)开发专用工作台DCSBench.m;3)通过CATDCSBenchWorkbench_init初始化;4)使用CreateScenario创建仿真场景,通过CATISimScenarioSpec接口添加激励信号。整个流程实现了从特征存储到场景仿真的完整DCS解决方案。
2025-07-17 08:41:42
504
原创 模拟3DCS
本文摘要介绍DCS技术实现的四个关键步骤:1)自定义DCSStorage特征存储;2)创建DCS3DVisuOnContainer可视化容器;3)通过DCSInitOnContainer完成容器初始化;4)使用CATINavigateObject对容器进行功能扩展。该技术方案实现了从特征存储到3D可视化容器的完整构建流程,并通过导航对象实现了容器功能的增强与扩展。
2025-07-16 17:31:08
558
原创 在CATIA原生工具条上添加自定义命令
本文介绍了在GSD工作台中实现自定义命令的技术要点:首先使用GetCurrentWorkbench获取GSD工作台实例,然后通过NewAccess创建新访问点,利用SetAccessCommand设置自定义命令,最后调用SetNext完成命令链设置。该方法为系统功能扩展提供了灵活的实现方式。
2025-07-16 17:11:29
814
原创 给产品部件添加Mask
摘要:本文介绍了通过Extension技术实现产品特征扩展的方法。首先创建应用容器并初始化,然后通过CATIOsmExtendable接口添加MSKExtension扩展。成功添加扩展后,可查询CAAIMSK接口进行操作。同时展示了如何扩展CATICustoIconProduct接口实现图标更换功能。文中提供了关键代码片段,包括容器创建、扩展添加和接口查询等核心操作,并鼓励读者尝试实践这些技术。
2025-07-11 21:27:51
242
原创 CAA+MFC Tree控件(CTreeCtrl)
摘要 本文展示了MFC中子类化控件(CMyTreeCtrl继承自CTreeCtrl)的实现方法,主要包括:1)控件定义,通过#include引用相关头文件并定义派生类;2)右键菜单功能实现,使用LoadMenu加载菜单资源。代码片段演示了如何创建自定义树控件类,并为其添加右键菜单响应功能。该实现涉及消息映射、虚函数重写等MFC关键技术。
2025-07-06 09:29:59
378
原创 CATNavigBox自定义Tree控件
摘要:本文介绍了CATNavigBox控件的使用效果,主要包括三个方面:1.控件调用方式;2.自定义Root和Child特征设置;3.通过CATINavigElement::ProcessAfterMethod实现右键菜单功能。内容简明扼要地概括了该控件的核心应用场景和定制化功能实现。(99字)
2025-07-06 09:13:15
384
原创 绿色安装CATIA V5 R28 CAA编译环境(无需管理员权限)
本文介绍CATIA V5R28无权限安装CAA+Rade时的二次开发解决方案。主要内容包括:1)安装VSCode和C++插件;2)拷贝B28+CAA和Rade目录到指定位置;3)配置VS2012、Windows SDK和JDK环境;4)设置包含license路径的环境变量脚本;5)通过调用脚本完成环境初始化,使用mk命令进行项目编译。关键步骤为环境变量配置和编译命令执行,需确保各组件路径与实际情况一致。该方法解决了无安装权限用户进行CAA二次开发的环境搭建问题。
2025-07-05 20:38:29
936
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅