How to Increase performance of visual selection of subfaces on a shell in Hoops visualize 3DF?

Greetings,

I’m currently seeking assistance with improving the performance of visual selection for subfaces on a shell using the rectangular selection tool. Below is the current method I’m employing:

HC_Open_Segment_By_Key(ShellSegmentKey);
{
HC_Set_Selectability(“faces=on,vertices=off,edges=off”);
}
HC_Close_Segment();

GetView()->Update();

HC_Open_Segment_By_Key(ShellSegmentKey);
{
const char* opt = “v, no related selection limit, no selection sorting, no internal selection limit, visual selection = on”;

HUtility::Order(&m_ptRectangle[0], &m_ptRectangle[1]);

selection_count = HC_Compute_Selection_By_Area(".", ".", opt, m_ptRectangle[0].x, m_ptRectangle[1].x, m_ptRectangle[0].y, m_ptRectangle[1].y);

}
HC_Close_Segment();

However, I’m encountering significant performance issues with this approach. It takes over 4 seconds to select 100,000 visible subfaces. Comparatively, with visual selection turned off, selecting the same number of subfaces takes only around a second.

I’m actively seeking ways to enhance the performance of visual selection. If you have any suggestions or insights, I’d greatly appreciate your assistance. Thank you in advance for your help.

Best regards,
Rohith

Hi, Rohith.

Analytic selection pretends to draw the scene and evaluate the selection operation from that rendering. Visual selection starts from here and adds additional analysis to filter out any entities that are not visible to the camera for various reasons.

There are probably improvements that could be made within HOOPS Visualize but it’s unlikely the performance can be improved from the application side.

Hope this helps your understanding.

Regards,
Mike

1 Like