NX CAM 讀取加工參數


'取加工幾何試圖程序組

Function GetGemoGroup_Name(ByVal camObjectTag As NXOpen.Tag) As String

Dim theGemoGroupTag As NXOpen.Tag

Dim gemoGroupName As String = ""

theUfSession.Oper.AskGeomGroup(camObjectTag, theGemoGroupTag)

theUfSession.Obj.AskName(theGemoGroupTag, gemoGroupName)

Return gemoGroupName

End Function

 

'取操作名稱

Function GetToolPathName(ByVal camObjectTag As NXOpen.Tag) As String

Dim toolPathName As String = ""

theUfSession.Oper.AskNameFromTag(camObjectTag, toolPathName)

Return toolPathName

End Function

 

'獲取刀具名稱

Function GetToolName(ByVal camObjectTag As NXOpen.Tag) As String

Dim toolName As String = ""

Dim toolTag As NXOpen.Tag

theUfSession.Oper.AskCutterGroup(camObjectTag, toolTag)

theUfSession.Obj.AskName(toolTag, toolName)

Return toolName

End Function

 

'獲取刀具號碼

Function GetToolNumber(ByVal camObjectTag As NXOpen.Tag) As Integer

Dim toolTag As NXOpen.Tag

Dim toolNumber As Integer

theUfSession.Oper.AskCutterGroup(camObjectTag, toolTag)

theUfSession.Param.AskIntValue(toolTag, NXOpen.UF.UFConstants.UF_PARAM_TL_NUMBER, toolNumber)

Return toolNumber

End Function

 

'獲取刀具長度

Function GetToolHeight(ByVal camObjectTag As NXOpen.Tag) As Double

Dim toolTag As NXOpen.Tag

Dim toolHeight As Double

theUfSession.Oper.AskCutterGroup(camObjectTag, toolTag)

theUfSession.Param.AskDoubleValue(toolTag, NXOpen.UF.UFConstants.UF_PARAM_TL_HEIGHT, toolHeight)

Return toolHeight

End Function

 

'獲取刀具直徑

Function GetToolDiameter(ByVal camObjectTag As NXOpen.Tag) As Double

Dim toolTag As NXOpen.Tag

Dim toolDiameter As Double

theUfSession.Oper.AskCutterGroup(camObjectTag, toolTag)

theUfSession.Param.AskDoubleValue(toolTag, NXOpen.UF.UFConstants.UF_PARAM_TL_DIAMETER, toolDiameter)

Return toolDiameter

End Function

 

'獲取刀具刃長

Function GetToolFluteLength(ByVal camObjectTag As NXOpen.Tag) As Double

Dim toolTag As NXOpen.Tag

Dim toolFluteLength As Double

theUfSession.Oper.AskCutterGroup(camObjectTag, toolTag)

theUfSession.Param.AskDoubleValue(toolTag, NXOpen.UF.UFConstants.UF_PARAM_TL_FLUTE_LN, toolFluteLength)

Return toolFluteLength

End Function

 

'獲取刀具R

Function GetToolCornerRadius(ByVal camObjectTag As NXOpen.Tag) As Double

Dim toolTag As NXOpen.Tag

Dim toolCornerRadius As Double

theUfSession.Oper.AskCutterGroup(camObjectTag, toolTag)

theUfSession.Param.AskDoubleValue(toolTag, NXOpen.UF.UFConstants.UF_PARAM_TL_COR1_RAD, toolCornerRadius)

Return toolCornerRadius

End Function

 

'取部件側部余量

Function GetStockPart(ByVal camObjectTag As NXOpen.Tag) As Double

Dim stockPart As Double

theUfSession.Param.AskDoubleValue(camObjectTag, NXOpen.UF.UFConstants.UF_PARAM_STOCK_PART, stockPart)

Return stockPart

End Function

 

'取部件底部余量

Function GetStockFloor(ByVal camObjectTag As NXOpen.Tag) As Double

Dim stockfloor As Double

theUfSession.Param.AskDoubleValue(camObjectTag, NXOpen.UF.UFConstants.UF_PARAM_STOCK_FLOOR, stockfloor)

Return stockfloor

End Function

 

'取主軸轉速

Function GetSpeedValue(ByVal camObjectTag As NXOpen.Tag) As Double

Dim speedVale As Double

theUfSession.Param.AskDoubleValue(camObjectTag, NXOpen.UF.UFConstants.UF_PARAM_SPINDLE_RPM, speedVale)

Return speedVale

End Function

 

'取進給速度

Function GetFeedValue(ByVal camObjectTag As NXOpen.Tag) As Double

Dim feedValue As Double

Dim camObject As NXOpen.TaggedObject = NXOpen.Utilities.NXObjectManager.Get(camObjectTag)

Dim params(0) As NXOpen.CAM.Operation

params(0) = CType(camObject, NXOpen.CAM.Operation)

Dim feedsBuilder1 As NXOpen.CAM.ObjectsFeedsBuilder = theSession.Parts.Work.CAMSetup.CreateFeedsBuilder(params)

feedValue = feedsBuilder1.FeedsBuilder.FeedCutBuilder.Value

feedsBuilder1.Destroy()

Return feedValue

End Function

 

'取切削時間

Function GetCutTime(ByVal camObjectTag As NXOpen.Tag) As Double

Dim cutTime As Double

theUfSession.Param.AskDoubleValue(camObjectTag, 142, cutTime)

Return cutTime

End Function


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM