Edge Indexing

Occt category icon with logo interpretation

Intro

In the situations when you want to get specific edge on the shape you can use it's index. Indexes are also useful when you want to chamfer or fillet specifc edges on the shell or a solid. Such commands may take index list and property list in order to apply the fillet or chamfer to the specific edges.

How to know which index applies to which edge on the solid?

There is a way to enable edge index drawing in your 3D space that allows to figure out which index applies to which edge on the solid. Index is an address of the edge on the particular shape. Indexes on edges, due to some legacy issues related to blockly, are starting with 1, not 0.

When using a drawAnyAsync command with occt shape entity, you can use OCCT shape options and turn on the "draw edge indexes" option. With this option turned on, you will see the indexes of the edges on the solid in 3D space. Keep in mind that after you apply the fillet, the number of edges on your shape will increase and old index values will not be valid anymore.

Below you will find the TypeScript, Rete and Blockly code examples that create a solid box and enable the drawing of edge indexes:

TypeScript

Draw edge indexes

Blockly

Draw edge indexes

Rete

Draw edge indexes

What if index text elements are not visible or too big and overlap?

Sometimes when you geometry is very large edge indexes may be invisible even after you enable their drawing. In such situation you can adjust "edgeIndexHeight" property. This will make texts larger and you will see them better. It is also advisable to use "faceOpacity" that is not 1 as that will make your faces transparent and you will be able to see the indexes better. You can also apply opacity to the edges.

In situations where text appears too large and 3D elements overlap, you can lower "edgeIndexHeight" so that it does not overlap anymore.