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

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

相关推荐
点心的游戏开发世界7 小时前
Unity C# 脚本学习笔记:命名空间与 using
学习·unity·c#
2601_962071578 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
淡海水9 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
点心的游戏开发世界9 小时前
Unity C# 脚本学习笔记:泛型
学习·unity·c#
CS_Zero10 小时前
C语言sizeof是函数吗?
c语言·开发语言
-今昭-10 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
黑马程序员毕设12 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
_Twink1e13 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
公子小六13 小时前
基于.NET的Windows窗体编程之WinForms滑块与上下控件
windows·microsoft·c#·.net·winforms
问天_观心13 小时前
大模型微调学习(一)
开发语言·人工智能·学习·语言模型·github