hoops_ai.insights.display

Display module for HOOPS AI Insights.

This module provides Jupyter display helpers for rendering CAD viewers in notebooks.

Functions

create_comparison_view(urls[, layout, titles])

Display multiple viewers side-by-side.

create_inline_display(url[, width, height])

Create inline display for viewer.

create_sidecar_display(url[, title, anchor, ...])

Create sidecar display for viewer.

detect_jupyter_environment()

Detect which Jupyter environment we're running in.

Classes

DisplayHandle(display_type[, widget, url])

Handle for managing displayed viewer.

class hoops_ai.insights.display.DisplayHandle(display_type, widget=None, url=None)

Bases: object

Handle for managing displayed viewer.

Parameters:
  • display_type (str)

  • url (str)

close()

Close the display.

is_active()

Check if display is active.

Return type:

bool

hoops_ai.insights.display.create_comparison_view(urls, layout='horizontal', titles=None)

Display multiple viewers side-by-side.

Parameters:
  • urls (List[str]) – List of viewer URLs to display

  • layout (str) – Layout type (‘horizontal’, ‘vertical’, ‘grid’)

  • titles (List[str] | None) – Optional list of titles for each viewer

Returns:

DisplayHandle instance

Raises:
Return type:

DisplayHandle

hoops_ai.insights.display.create_inline_display(url, width=960, height=600)

Create inline display for viewer.

Parameters:
  • url (str) – URL of the viewer to display

  • width (int) – Width of the iframe in pixels

  • height (int) – Height of the iframe in pixels

Returns:

DisplayHandle instance

Raises:

ImportError – If IPython is not available

Return type:

DisplayHandle

hoops_ai.insights.display.create_sidecar_display(url, title='CAD Viewer', anchor='right', width=450, height=1080)

Create sidecar display for viewer.

Parameters:
  • url (str) – URL of the viewer to display

  • title (str) – Title for the sidecar window

  • anchor (str) – Position of sidecar (‘right’, ‘left’, ‘split-right’, ‘split-left’)

  • width (int) – Width of the sidecar in pixels (only for ‘right’/’left’ anchors)

  • height (int) – Height of the iframe in pixels (ignored for responsive layout)

Returns:

DisplayHandle instance

Raises:

ImportError – If required packages are not available

Return type:

DisplayHandle

hoops_ai.insights.display.detect_jupyter_environment()

Detect which Jupyter environment we’re running in.

Returns:

‘lab’, ‘notebook’, ‘vscode’, or ‘unknown’

Return type:

str