C# Solidworks二次开发:识别solidworks中导入实体体上的特征相关API详解

大家好,今天要介绍的是关于特征相关的API。

下面是要介绍的相关API:

(1)第一个为CreateFeatures,这个API的含义为在solidworks中创建可识别的导入特性,下面是官方的具体解释:

输入参数为fwFeatureCreationOptions_e

Member Description
fwAddConstraintsToSketch 0x1 = When you specify this option, the software adds a Fix relation to each entity in a sketch, fully defining the sketch; if this option is not specified, then the sketch entities remain underdefined
fwAllowFailFeatureCreation 0x2 = When you specify this option, the software allows the creation of a feature even if the feature has a rebuild error

返回值为bool,成功创建特征返回值为true,失败返回值为false。

下面是官方使用的例子,没有C#,只有VBA:

This sample application illustrates recognizing a feature interactively in a SOLIDWORKS part document, and then creating that feature.

Sub main()

Dim swApp As Object

Dim sample As Object

Dim Part As Object

Dim boolstatus As Boolean

Dim str As String

Set swApp = Application.SldWorks

swApp.SetUserPreferenceIntegerValue swAutoSaveInterval, 0

Set sample = swApp.GetAddInObject("FeatureWorks.FeatureWorksApp")

Dim varOut As Variant

Dim var1 As Boolean

Set Part = swApp.ActiveDoc

Set Part = swApp.ActiveDoc

boolstatus = Part.Extension.SelectByID("", "FACE", 0.1165311335518, -0.006695921966639, 0.03257260156937, False, 0, Nothing)

Dim InterOption As Integer

str = "Fillet" 'Option to recognize interactive fillet

InterOption = fwChainFeatures 'Turn on the chaining option.

varOut = sample.RecognizeFeatureInteractive(str, InterOption)

If (False = varOut) Then MsgBox ("ERROR")

createOption = fwAllowFailFeatureCreation 'Option to allow creation of features with rebuild errors

var1 = sample.CreateFeatures(createOption)

If (False = var1) Then MsgBox ("ERROR")

End Sub

(2)第二个为RecognizeFeatureAutoMatic,这个API的含义为自动识别solidworks中导入的特性,下面是官方的具体解释:

输入参数为fwAutomaticRecognitionOptions_e:

Member Description
fwAutoEdgeFlange 0x100 = Recognize edge flange features automatically
fwAutoHemFlange 0x200 = Recognize hem features automatically
fwBaseFlange 0x40 = Recognize base flange features automatically
fwChamfils 0x10 = Recognize fillets and chamfers automatically
fwExtrudeOption 0x1 = Recognize extrude features automatically
fwHoles 0x8 = Recognize hole features automatically
fwRevolve 0x4 = Recognize revolve features automatically
fwRibs 0x20 = Recognize rib features automatically
fwSketchedBend 0x80 = Recognize sketched bend features automatically
fwVolume 0x2 = Recognize volume features automatically

返回值为识别特征的数量。

(3)第三个为RecognizeFeatureINteractive,这个API的含义为在solidworks中以交互方式识别导入的特性,下面是官方的解释:

输入值有两个,第一个为要识别的类型,第二个为定义的交互选项fwInteractiveRecognitionOptions_e:

Member Description
fwChainFeatures 0x1 = Chain feature faces. Applies to these features: * Fillets * Chamfers * Boss revolve * Cut revolve * Holes
fwNormalToSketch 0x2 = Turn on or turn off normal to sketch

本篇文章要介绍的就是这么多,我们下篇文章再见。

相关推荐
xiaoye-duck7 分钟前
《C++ 项目:手写大模型接入 SDK》会话模块整合:内存 SessionManager 与 DataManager 持久化联动
开发语言·数据库·c++·语言模型
寂寞的船43 分钟前
【Unity知识速递】第13期 Unity 内存泄漏排查实战:从 Memory Profiler 到 Lua 引用泄漏的生产级全链路诊断
unity·junit·c#·游戏引擎·lua
Funlang1 小时前
龙芯上的 Fun:从跑起来到机器码
开发语言·龙芯
总要学点什么1 小时前
第104篇:三维特效-流动墙体效果——让贴图沿墙流动,它却只肯走一条对角线
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
旖旎夜光2 小时前
【C++ 基础入门】C++11 新特性(中):右值引用、移动语义与完美转发
开发语言·c++·笔记·学习
ShineWinsu2 小时前
对于Qt:QTabWidget常见属性的解析
开发语言·数据库·c++·qt·浏览器·qtabwidget·标签页
普通人63 小时前
WebGL与WebGPU入门指南
开发语言·webgl·1024程序员节
꧁细听勿语情꧂3 小时前
直接选择排序,堆排序,冒泡排序,递归快速排序、hoare版本、挖坑法、lomuto前后指针,非递归快速排序
c语言·开发语言·数据结构·算法
SomeOtherTime3 小时前
Rust集合(AI回答)
开发语言·后端·rust
曦樂~3 小时前
【Web Development】03JavaScript 基础和事件
开发语言·前端·javascript