Cancel
Showing results for 
Search instead for 
Did you mean: 

Create symbolic threads in non-associative holes (VB.net & NX10)

Experimenter
Experimenter

Hey!

 

Is it possible to go through all holes of a non-associative part with specific predefined diameters ( for e.g. bore diameter 6,8 for an M8 thread and so on...) and automatically create a symbolic thread on all of this holes?

 

I´m relatively new to VB.net and journaling but I´m learning... in my research, I found some journals which automatically colored specific diameters, which is helpful but I don´t know if there´s a command in NXOpen to create symbolic threads. 

In my company, we work with non-associative parts and therefore it would be very time-saving if that would be possible.

 

Thanks in advance.

Kevin

 

3 REPLIES 3

Re: Create symbolic threads in non-associative holes (VB.net & NX10)

Siemens Phenom Siemens Phenom
Siemens Phenom

Hi @Kev17 ,

 

Welcome to Community!

 

When you record a journal in NX, supported features/commands are displayed with small green square. While recording a Thread operation, you can notice that an icon is not there meaning the command is not supported. I think which also means you can't automate this scenario in any way.

Regards,
Samadhan

GTAC | NX Help: NX1102 | NX1202 | NX1847
Please mark post as an "Accepted Solution", if it answers your question/is more helpful!
Highlighted

Re: Create symbolic threads in non-associative holes (VB.net & NX10)

Siemens Legend Siemens Legend
Siemens Legend

The legacy thread feature did not support journaling yet and in such cases you should check the Open C API Reference to find UF_MODL_create_symb_thread which is supposed to create the legacy thread feature.
See also nx_api683 - Sample Open C API program : create and edit symbolic thread

 

For .NET you need to port the code and call the UF Wrapper UFModl.CreateSymbThread method instead.

Re: Create symbolic threads in non-associative holes (VB.net & NX10)

Here is vb code snippet.  If you look up SymbThreadData in ufmodl  you will see all the fields exposed. 

 

Dim threaddata As UFModl.SymbThreadData = Nothing
threaddata.cyl_face = threadfacetag
threaddata.start_face = startfacetag
threaddata.axis_direction = dirdbl
threaddata.form = threadstandard
threaddata.callout = threadcallout
threaddata.method = "CUT"
threaddata.angle = "60"
threaddata.include_instances = UFConstants.UF_MODL_NO_INSTANCES
threaddata.rotation = UFConstants.UF_MODL_RIGHT_HAND
threaddata.length_flag = UFConstants.UF_MODL_FIXED_LENGTH threaddata.length = threaddepthstring
threaddata.tapered = UFConstants.UF_MODL_NON_TAPERED
threaddata.num_starts = 1
threaddata.tapped_dia = tapdiastring

Try
      ufs.Modl.CreateSymbThread(threaddata, threadtag)
Catch ex As Exception
       MsgBox("error creating thread")
End Try

Dim threadfeat As Feature
 threadfeat = NXObjectManager.Get(threadtag)

Hope this helps

 

Frank Swinkels