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

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

相关推荐
北方有星辰zz13 分钟前
数据结构:栈
java·开发语言·数据结构
我是唐青枫36 分钟前
C#.NET NLog 详解
开发语言·c#·.net
向宇it1 小时前
【unity游戏开发——网络】网络游戏通信方案——强联网游戏(Socket长连接)、 弱联网游戏(HTTP短连接)
网络·http·游戏·unity·c#·编辑器·游戏引擎
Mr_Xuhhh1 小时前
网络基础(1)
c语言·开发语言·网络·c++·qt·算法
旺旺大力包1 小时前
【JS笔记】JS 和 noodjs 的常见操作(十)
开发语言·javascript·node.js·ecmascript
背影疾风2 小时前
C++之路:类基础、构造析构、拷贝构造函数
linux·开发语言·c++
Ting-yu2 小时前
Java中Stream流的使用
java·开发语言·windows
一线码农2 小时前
MinHook 如何对 .NET 母体 CoreCLR 进行拦截
c#·.net·代码注入
【ql君】qlexcel2 小时前
Notepad++ 复制宏、编辑宏的方法
开发语言·javascript·notepad++··宏编辑·宏复制
Zevalin爱灰灰2 小时前
MATLAB GUI界面设计 第六章——常用库中的其它组件
开发语言·ui·matlab