3D_STEP_Classification icon indicating copy to clipboard operation
3D_STEP_Classification copied to clipboard

How the graph works?

Open Prarthana1116 opened this issue 2 years ago • 3 comments

I run the code of Graph_classification of "step_2_graph.py" and its successfully converted my step file to graph data. But I am keen to know how does the graph works? What are the primitive geometric parameters taken into consideration to convert step to graph data? Could you please explain me in details, if possible? For better understanding for myself, I have attached two images of step data and its graph conversion. Its a simple shaft and bracket data but the graph seems so complex. So, I would be thankful if you could explain me. Here I have attached the images of it. shaft bracket

Thankyou

Prarthana1116 avatar Mar 09 '23 00:03 Prarthana1116

The structure of the graph depends on the modeling process used during the creation phase of the CAD models and in particular on their B-rep structure. A 3D model in B-rep is represented as a collection of connected surfaces, edge loops, edges and vertices. Each of these elements forms a node of the graph, while the relationships between elements form the arcs of the graph. Going into detail, the entities taken into consideration are all the geometric primitives such as points, complex geometric surfaces such as splines, and semantic properties of the model such as name, security level and domain. In creating the graph we take into consideration each entity present in the file step.

The same shape can therefore be described by an infinite number of different graphs depending on the type of modeling used. In the examples shown we have the case of a very simple representation (shaft) and a very complex one (bracket). Without being able to actually analyze the step files it is difficult to say why the second example is very complex, probably a very inefficient type of modeling was used. For example, it is possible that the holes in the bracket were made not as individual curved surfaces, but as sets of numerous flat surfaces like the figure below.

cerchioapprossimato

divanoLetto avatar Apr 02 '23 13:04 divanoLetto

Thank you so much for your time and brief explanation.

Prarthana1116 avatar Apr 03 '23 00:04 Prarthana1116

Hello, I read your research paper 'CAD 3D model classification by GNN', it was a wonderful read. I have a couple of questions :

  1. In section 2.1 'Feature based approaches' one of the approach that is described is a frequency domain representation of a CAD model. I found it particularly intriguing, can you shed some light on how it is done in python (as is claimed in that paper) ?
  2. The requirement pythonocc-core , is it pip installable? I tried installing it through pip , it didn't work..

Thanks in Advance

ADITHYAG73 avatar Jan 14 '24 12:01 ADITHYAG73