大家好,今天继续介绍我们的通关方法系列。
下面是今天要介绍的通用方法:
(1)这个通用方法为获取当前激活的配置自定义属性信息
/// <summary>
/// 获取当前激活的配置自定义属性信息
/// </summary>
/// <param name="swApp"></param>
public static void GetActiveConfigCustomPropertyData(SldWorks swApp)
{
var swModel = (ModelDoc2)swApp.ActiveDoc;
//获取当前激活的配置
var config = (Configuration)swModel.GetActiveConfiguration();
var cusPropMgr = config.CustomPropertyManager;
object vPropNames = null;
object vPropTypes = null;
object vPropValues = null;
object resolved = null;
object linkProp = null;
cusPropMgr.GetAll3(ref vPropNames, ref vPropTypes, ref vPropValues, ref resolved, ref linkProp);
var propValues = (object[])vPropValues;
var propNames = (string[])vPropNames;
for (int i = 0; i < propNames.Length; i++)
{
Debug.Print("属性名= " + propNames[i] + " 属性值= " + propValues[i]);
}
}
(2)这个通用方法为获取当前选中的面的属性值
/// <summary>
/// 获取当前选中的面的属性值
/// </summary>
/// <param name="swApp"></param>
public static void GetEntityName(SldWorks swApp)
{
var swModel = (ModelDoc2)swApp.ActiveDoc;
var selectionMgr = (SelectionMgr)swModel.SelectionManager;
//选中一个面
var swFeat = (Feature)selectionMgr.GetSelectedObject6(1, -1);
//获取面属性
var faceName = swModel.GetEntityName(swFeat);
var swSk = (Sketch)swFeat.GetSpecificFeature2();
var swent = (Entity)swSk;
var res = swent.Select(true);
}
今天要介绍的就是这么多,我们下篇文章再见。