当前位置: 首页 > news >正文

c# solidworks 获得所有标注尺寸数值

using System; using System.IO; using System.Runtime.InteropServices; using SolidWorks.Interop.sldworks; using SolidWorks.Interop.swconst; using View=SolidWorks.Interop.sldworks.View; namespace tools { class get_dim_info { /// <summary> /// 获取工程图中的尺寸信息 /// </summary> static public void run() { // 连接到 SolidWorks 应用程序 SldWorks? swApp = Connect.run(); if (swApp == null) { Console.WriteLine("错误:无法连接到 SolidWorks 应用程序。"); return; } // 获取活动文档并转换为 DrawingDoc 类型 ModelDoc2 swModelDoc = (ModelDoc2)swApp.ActiveDoc; if (swModelDoc == null) { Console.WriteLine("错误:没有打开的活动文档。"); return; } var drawingDoc = (DrawingDoc)swModelDoc; // 获取当前图纸 var swSheet = (Sheet)drawingDoc.GetCurrentSheet(); if (swSheet == null) { Console.WriteLine("错误:无法获取当前图纸。"); return; } // 获取图纸上的所有视图 object[] objViews = (object[])swSheet.GetViews(); if (objViews == null) { Console.WriteLine("警告:当前图纸上没有视图。"); return; } // 遍历每个视图 foreach (object objView in objViews) { if (objView == null) continue; var swView = (View)objView; // 获取视图中的所有注解 object[] objAnnotations = (object[])swView.GetAnnotations(); if (objAnnotations == null || objAnnotations.Length == 0) { continue; } // 遍历每个注解 foreach (object objAnnotation in objAnnotations) { if (objAnnotation == null) continue; var annotation = (Annotation)objAnnotation; // 检查是否为显示尺寸类型 if (annotation.GetType() == (int)swAnnotationType_e.swDisplayDimension) { try { DisplayDimension swDisplayDimension = (DisplayDimension)annotation.GetSpecificAnnotation(); Dimension swDimension = (Dimension)swDisplayDimension.GetDimension(); Console.WriteLine($"Dimension Name: {swDimension.Name}"); Console.WriteLine($"Dimension Value: {swDimension.Value:F2}"); Console.WriteLine("---"); } catch (Exception ex) { Console.WriteLine($"处理尺寸时出错: {ex.Message}"); } } } } } } }
http://www.jsqmd.com/news/440964/

相关文章:

  • 中文语音识别新选择:Speech Seaco Paraformer快速上手指南
  • 智能家居开发者实战:如何用ZigBee+ESP32搭建低成本物联网网关?
  • 避坑指南:Qt5.14.2摄像头开发中分辨率设置的5个常见错误
  • C++单元测试实战:用gtest和mockcpp解决真实项目中的依赖问题(附完整代码)
  • 方法的定义
  • Ollama服务突然连不上?三步快速排查法+阿里云特殊配置指南
  • MySQL安全加固:基于IP白名单的访问控制实战
  • Z-Image-GGUF效果展示:基于Transformer架构生成的高质量艺术图像集
  • VCO设计必备:手把手教你用Virtuoso Calculator做参数扫描和F-V曲线分析
  • 告别SecureCRT:用Python自制YModem串口烧录工具(支持STM32/ESP32)
  • 贪心算法不总是最优解:找零钱问题中的反例与优化策略
  • 基于 IPOPT、QPOASES、OSQP 的无工具箱 NMPC 实现框架研究(Matlab代码实现)
  • MogFace人脸检测模型在.NET技术栈中的集成:C#客户端调用WebUI服务
  • ScanNet数据集高效下载与预处理实战指南
  • 敏捷咨询:如何从工具崇拜走向价值驱动
  • MEaSUREs 南极冰盖接地带 V001
  • Qwen-Image-2512-Pixel-Art-LoRA开源大模型教程:prithivMLmods社区版本深度解析
  • 从零上手PCAN:驱动安装、PcanView监听与报文收发实战
  • YOLOv9官方镜像快速入门:从环境激活到模型训练完整教程
  • 百度网盘直链解析技术全解析:从原理到实践的突破方案
  • JetBrains IDE试用期管理全攻略:3大方案+避坑指南
  • Anaconda环境管理下的伏羲模型Python开发实战
  • Ostrakon-VL-8B零售场景效果集:商品陈列合规性自动巡检
  • 简道云HSE系统搭建全指南:零代码搞定隐患排查+培训考核+健康档案
  • 一文讲清:AI大模型7大核心基础概念
  • G-Helper:为ROG笔记本打造的轻量级性能控制中心
  • Vue3与codemirror6打造智能公式编辑器:从基础配置到实战应用
  • DownKyi:B站视频本地化管理的全方位解决方案
  • Qwen2.5-VL-7B-Instruct保姆级教程:模型量化INT4部署与精度损失对照
  • StructBERT-Large部署教程:解决‘model not found’/‘score parsing error’等高频报错方案