Cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with EdgeChainRule

Builder
Builder

Hi!

In my current research I am struggling to get connected edges from a model.

 

I do have a List<Edge> which contains all edges of interest.

 

Some edges in this list build a chain of edges (E.g. intersection curve of a rectangular extrude and a plate -> 4 linear edges) and some depict a edge loop on their own (e.g. circles/holes).

 

Objective:

I want to get these edge groups out of my List<Edge>, so a List<List<Edge>>.

 

My first idea was to use a smart collector.

I tried EdgeChainRule but this does not return the desired groups, only the edge itself.

In case of tangent edges, the EdgeTangentRule does return the adjacent edges but in case of the rectangular extrude united to a plate (4 linear edges), the edges are not tangent, so this rule does also only return one edge.

 

Another possibility would be to do extensive loops and check the vertices etc.

A third option would be to use the Snap.Topology.Loop but this requires a face and I do not want to have to define a face for the process.

 

Has somebody any idea how to solve this problem?

 

Thanks a lot!

3 REPLIES

Re: Problem with EdgeChainRule

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

Maybe try EdgeChainRule?

 

Whlie C++, this lists  the possible types of rules:

https://docs.plm.automation.siemens.com/data_services/resources/nx/12/nx_api/custom/en_US/open_c++_r...

 

Maybe another one would do what you need.

Ken

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


Re: Problem with EdgeChainRule

Builder
Builder

Hi @Ken_A and thanks for your response!

 

As I already mentioned in the topic, I tried EdgeChainRule but somehow this does not lead to the desired result :/

The EdgeChainRule only returns me one edge, not all connected edges, at all my test cases.

 

Maybe I have to script it myself using the edge vertices and look for connections.

Re: Problem with EdgeChainRule

Gears Esteemed Contributor Gears Esteemed Contributor
Gears Esteemed Contributor

@BennyS wrote:

 

Another possibility would be to do extensive loops and check the vertices etc.

A third option would be to use the Snap.Topology.Loop but this requires a face and I do not want to have to define a face for the process.


If you are dealing with edges, you should already have one or more faces to work with; there is no need to define a new face.

 

This question sounds very similar to one of your earlier questions:

https://community.plm.automation.siemens.com/t5/NX-Programming-Customization-Forum/Identify-internal...

 

Can you re-use anything you learned there to tackle this new problem?