Cancel
Showing results for 
Search instead for 
Did you mean: 

how to determine the direction of an edge with respect to face?

Experimenter
Experimenter

Is there a way, using NXOpen, to determine the direction of an edge with respect to a face? For example in SolidWorks there is a concept of a "CoEdge" -> each edge has two respective CoEdges (one for each adjacent face). The CoEdge has a flag which specifies whether the direction of the CoEdge is in line with the Edge.

7 REPLIES

Re: how to determine the direction of an edge with respect to face?

Esteemed Contributor
Esteemed Contributor

What would be the purpose of the direction of the edge?

 

There is nothing like a CoEdge in NXOpen .NET and there is no direction either.

 

Have you checked the NXOpen API reference for the edge class of the development language you are using?

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.0, FBM, MRL 3.1.4 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 10.1
Development: VB.NET, Tcl/Tk    Testing: NX12.0

How to Get the Most from Your Signature in the Community

Re: how to determine the direction of an edge with respect to face?

Siemens Phenom Siemens Phenom
Siemens Phenom
The Snap.Topology namespace includes a "Fin" object, which is the same thing as a co-edge. Take a look at the Snap Reference Guide for details and examples. It has shell, loop, and vertex objects, too. None of these exist in NX Open.
山田
yamada

Re: how to determine the direction of an edge with respect to face?

Esteemed Contributor
Esteemed Contributor

But they do exist in legacy API - UF_BREP_* functions.  There are some unions, so this may only be available in C/C++.

There is a tetrahedron example in the top level pages in the docs for UF_BREP

Ken Akerboom Sr CAx Systems Engr, Moog, Inc.
Production: NX10.0.3.5 MP5 + patch/TC11.2
I'd rather be e-steemed than e-diseaseled


Re: how to determine the direction of an edge with respect to face?

Esteemed Contributor
Esteemed Contributor

.NET doesn't support anything like unions, so the NXOpen API C/C++ functions using unions are not wrapped or translated into .NET methods currently.

Stefan Pendl, Systemmanager CAx, HAIDLMAIR GmbH
Production: NX10.0.3, VERICUT 8.0, FBM, MRL 3.1.4 | TcUA 10.1 MP7 Patch 0 (10.1.7.0) | TcVis 10.1
Development: VB.NET, Tcl/Tk    Testing: NX12.0

How to Get the Most from Your Signature in the Community

Re: how to determine the direction of an edge with respect to face?

Experimenter
Experimenter

thanks for the pointers. i will check out the SNAP api and maybe play around with the functions in the UF_BREP namespace. I'm using .NET but i assume i should be able to write a managed wrapper around the necessary functionality.

 

Re: how to determine the direction of an edge with respect to face?

Siemens Phenom Siemens Phenom
Siemens Phenom

Yes, UF_BREP does have loops and fins. I had forgotten about this, and thought it only had faces and edges.My apologies.

 

Yes, you can write managed wrappers, though it won't be easy, since the C++ data structures are pretty complicated and use the "union" idea.

 

Using the SNAP functions will be much easier (or, that was the intention, anyway). But you'll need a SNAP license, which may or may not be worth the money, depending on how much time it will save you.

山田
yamada

Re: how to determine the direction of an edge with respect to face?

Legend
Legend

There is a function in Open C which is wrapped for .Net that can be used get the connected edges.  Look at AskCnncEdges(....).  It is the wrapped function for UF_MODL_ask_cnnc_edges.