NDEVR
API Documentation
GeometrySurfacingWidget

A widget that provides a UI for configuring and executing geometry surfacing operations on point clouds. More...

Inheritance diagram for GeometrySurfacingWidget:
[legend]
Collaboration diagram for GeometrySurfacingWidget:
[legend]

Public Member Functions

 GeometrySurfacingWidget (QWidget *parent=nullptr)
 Constructs a GeometrySurfacingWidget.
void aboutToPerformSurfacingSignal ()
 Emitted just before a surfacing operation begins.
bool event (QEvent *event) override
 Handles widget events.
void executeSurfacing (UUID target)
 Executes the surfacing operation on the specified target.
void finishedSignal ()
 Emitted when the surfacing operation is finished.
void generatePreview ()
 Generates a preview of the surfacing result.
UUID setupPreviewSurface ()
 Sets up and returns the UUID of the preview surface model.
QSize sizeHint () const override
 Returns the preferred size hint for this widget.
void updateUIFromAvailableFilters ()
 Updates the UI controls based on available surfacing filter engines.
Public Member Functions inherited from DesignObjectWidgetInterface
virtual void addTarget (const DynamicPointer< QTDesignObject > &object)
 Adds a design object to the set of targets.
virtual Bounds< 3, fltp08bounds () const
 Returns the combined 3D bounding box of all target design objects.
void clearTargets ()
 Removes all target design objects from this widget.
QTModelManagermanager () const
 Returns the current model manager.
Buffer< Modelmodels () const
 Returns all target objects as Models.
virtual void removeTarget (const DynamicPointer< QTDesignObject > &object)
 Removes a specific target design object.
virtual void removeTarget (const UUID &object)
 Removes a specific target by UUID.
void setManager (QTModelManager *manager)
 Sets the model manager used for UUID-based lookups.
void setTarget (const DynamicPointer< QTDesignObject > &object)
 Sets a single target design object, replacing any existing targets.
void setTargetID (const UUID &object)
 Sets a single target by UUID, replacing any existing targets.
void setTargetIDs (const Buffer< UUID > &objects)
 Sets multiple targets by UUID, replacing any existing targets.
void setTargets (const Buffer< DynamicPointer< QTDesignObject > > &objects)
 Sets multiple target design objects, replacing any existing targets.
Buffer< UUIDtargetIDs () const
 Returns the UUIDs of all current target design objects.

Static Public Member Functions

static uint04 AvailableSurfacingEngines ()
 Returns the number of available surfacing engines.

Protected Member Functions

QWidget * createWidget (SurfacingDescription *description_ptr)
 Creates the UI widget for a specific surfacing description.
void executeFilters ()
 Executes the currently configured surfacing filters.
void onTargetUpdated (UUID) override
 Called when the target model selection changes.
void setToDefaults ()
 Resets all surfacing parameters to their defaults.
Protected Member Functions inherited from DesignObjectWidgetInterface
const Dictionary< UUID, DynamicPointer< QTDesignObject > > & targets () const
 Returns a const reference to the dictionary of all targets.

Protected Attributes

Buffer< SurfacingDescription * > m_available_filters
 Available surfacing filter engines.
UUID m_preview_surface = Constant<UUID>::Invalid
 The UUID of the current preview surface model.
Ui::GeometrySurfacingUI * ui
 The auto-generated UI form.
Protected Attributes inherited from DesignObjectWidgetInterface
DesignObjectInterfacem_interface
 The internal QObject-based implementation handling signals and target storage.

Detailed Description

A widget that provides a UI for configuring and executing geometry surfacing operations on point clouds.


Definition at line 17 of file GeometrySurfacingWidget.h.

Constructor & Destructor Documentation

◆ GeometrySurfacingWidget()

GeometrySurfacingWidget::GeometrySurfacingWidget ( QWidget * parent = nullptr)

Constructs a GeometrySurfacingWidget.

Parameters
[in]parentThe optional parent widget.

Member Function Documentation

◆ AvailableSurfacingEngines()

uint04 GeometrySurfacingWidget::AvailableSurfacingEngines ( )
static

Returns the number of available surfacing engines.

Returns
The count of registered surfacing engines.

◆ createWidget()

QWidget * GeometrySurfacingWidget::createWidget ( SurfacingDescription * description_ptr)
protected

Creates the UI widget for a specific surfacing description.

Parameters
[in]description_ptrThe surfacing description to create a widget for.
Returns
The created widget.

◆ event()

bool GeometrySurfacingWidget::event ( QEvent * event)
override

Handles widget events.

Parameters
[in]eventThe event to process.
Returns
True if the event was handled.

References event().

Referenced by event().

◆ executeSurfacing()

void GeometrySurfacingWidget::executeSurfacing ( UUID target)

Executes the surfacing operation on the specified target.

Parameters
[in]targetThe UUID of the target model to surface.

◆ onTargetUpdated()

void GeometrySurfacingWidget::onTargetUpdated ( UUID )
overrideprotectedvirtual

Called when the target model selection changes.

Parameters
[in]targetThe UUID of the new target.

Reimplemented from DesignObjectWidgetInterface.

◆ setupPreviewSurface()

UUID GeometrySurfacingWidget::setupPreviewSurface ( )

Sets up and returns the UUID of the preview surface model.

Returns
The UUID of the preview surface.

◆ sizeHint()

QSize GeometrySurfacingWidget::sizeHint ( ) const
override

Returns the preferred size hint for this widget.

Returns
The recommended widget size.

The documentation for this class was generated from the following file: