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

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

相关推荐
峥嵘life1 小时前
Android16 开机后立即打开相机闪退问题分析与解决总结
android·开发语言·数码相机·策略模式
niucloud-admin2 小时前
NIUCLOUD LITE AI开发文档--命名规范
开发语言·php
WL学习笔记2 小时前
模板初阶(C++)
开发语言·c++·后端·模板初阶
SunnyDays10112 小时前
使用 Java 高效管理 Excel 批注:添加、读取、修改和删除
java·开发语言·excel
ydjs678899-bot2 小时前
为什么大型monorepos变慢了Rush.js + Sparo对此做了什么
开发语言·javascript·ecmascript
坊钰2 小时前
【LangGraph框架入门级】12. 人机交互:interrupt 中断与 Command 恢复
开发语言·数据库·python·人机交互·ai编程·langgraph
开开心心就好2 小时前
打印机卡住打不了?一键清理卡死打印队列
服务器·开发语言·算法·pdf·ocr·idea·visual studio code
David猪大卫2 小时前
【C++修炼】STL容器—模板进阶:非类型模板参数、模板特化、模板分离编译
c语言·开发语言·c++·经验分享·笔记·学习·面试
牛战士coding2 小时前
Java 对象写入 Redis 后类型变了?Jackson 多态序列化问题复盘
java·开发语言·redis
Chasing__Dreams2 小时前
python杂识--24--Nuitak打包exe
开发语言·python