734089277 发表于 2026-8-13 08:47:28

面选择器如何设置选择相切面,新人跪求大佬解惑

我是使用C#进行二次开发:
我的UI中有一个面选择器 face_select = (FaceCollector)theDialog.TopBlock.FindBlock("face_select");
还有一个枚举类 Enumeration enumFace; 这个枚举类只有两个值: 单个面, 相切面. 是我用来控制面选择器的选择规则.

我在我的 dialogShown_cb() 方法中初始化了:
// 设置默认选择类型为单个面
enumFace.ValueAsString = "单个面";
// 设置选择面可多选
face_select.SelectModeAsString = "Multiple";
// 设置默认选择类型为单个面
face_select.FaceRules = 1;

并且我在 update_cb() 方法中写了更新逻辑:
if (block == enumFace)
{
    if (enumFace.ValueAsString == "单个面")
    {
      face_select.FaceRules = 1;
    }
    else
    {
      face_select.FaceRules = 5;
    }
}

但是现在遇到了问题, 当我在页面上选择单个面时, 面选择器规则是单个面, 点击下拉菜单也只有单个面一个选项;
但是当我选择相切面时, 面选择器规则还是单个面, 只是下拉菜单变成了单个面和相切面两个选项, 但是没有自动选择到相切面.
有大佬知道这种情况如何解决吗?



734089277 发表于 2026-8-13 09:10:25

已经解决了, 是我设置的数值不对, 应该设置为4就是相切面了, 我也收集了其他常用面的对应数值供大家参考:
数值 1 : 单个面
数值 2 : 区域面
数值 4 : 相切面
数值 8 : 相切区域面
数值 16: 体的面
数值 32: 特征面
数值 64: 相邻面
数值 128: 相连圆角面
数值 256: 所有圆角面
数值 512: 筋板面
页: [1]
查看完整版本: 面选择器如何设置选择相切面,新人跪求大佬解惑