C# Solidworks二次开发:获取零件的最小包容体方法详解

今天要讲的文章是在Solidworks如何获取零件的最小包容体的方法,这个方法的API如下所示:

获取零件的最小包容体的API为:partDoc.GetPartBox(true);

这个方法中参数为只有一个,是否转换为用户单位;True保留系统单位,false更改用户单位。

下面举个使用的例子:

PartDoc partDoc=(PartDoc)swDoc;

List<double[]> boxpoint = GetBoxPoint(partDoc);

var holePtInModel2 = new double[3];

var holePtInModel1 = new double[3];

holePtInModel2[0] = boxpoint[0][0];

holePtInModel2[1] = boxpoint[0][1];

holePtInModel2[2] = boxpoint[0][2];

holePtInModel1[0] = boxpoint[0][3];

holePtInModel1[1] = boxpoint[0][4];

holePtInModel1[2] = boxpoint[0][5];

double[] first = new double[3];

double[] second = new double[3];

first[0] = holePtInAss2[0] * 1000;

first[1] = holePtInAss2[1] * 1000;

first[2] = holePtInAss2[2] * 1000;

second[0] = holePtInAss1[0] * 1000;

second[1] = holePtInAss1[1] * 1000;

second[2] = holePtInAss1[2] * 1000;

//获取最小包容体一个6维double[]数组的点位坐标

public List<double[]> GetBoxPoint(PartDoc partDoc)

{

List<double[]> boxpoint = new List<double[]>();

double[] box= partDoc.GetPartBox(true);

boxpoint.Add(box);

return boxpoint;

}

通过上述例子,可以了解到方法的返回值是一个6维double[]数组的点位坐标,点坐标中分为两部分,返回值为左下和右上两个点位。

也可以通过返回的这两个点位坐标来判断某些点位是否在这个包容体中还是包容体外,用上面的例子的时候也需要注意要判断你是在零件的里面才可以获取零件的最小包容体。

今天的文章就讲这些,我们下篇文章再见。

相关推荐
Highcharts.js2 小时前
缺失数据可视化图表开发实战|Highcharts创建人员出生统计面积图表示例
开发语言·前端·javascript·信息可视化·highcharts·图表开发
测试员周周7 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
杜子不疼.9 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号310 小时前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia10 小时前
Qt——编辑交互功能的实现
开发语言·qt
石山代码11 小时前
C++ 内存分区 堆区
java·开发语言·c++
无风听海11 小时前
C# 隐式转换深度解析
java·开发语言·c#
LateFrames12 小时前
520 - 如何说晚安 (WPF)
c#·wpf·浪漫·ui体验
一只大袋鼠12 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
LuminousCPP12 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习