35#include <NDEVR/Model.h>
36#include <NDEVR/ModelTileOptions.h>
37#include <NDEVR/DesignCommand.h>
115 Effect tileEffect()
const;
163 virtual bool addTarget(
UUID target_id)
override { m_tile_targets.add(target_id);
return true; }
193 ModelTileOptions m_options;
The equivelent of std::vector but with a bit more control.
DesignCommand()
Default constructor.
A core class where all Design Objects including models, materials, and geometries are stored.
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
A core class that provides a dynamic effect to an object in a model hierarchy.
virtual TranslatedString name() const override
Returns the user-facing translated name of this command.
ModelTileCommand(const ModelTileOptions &options)
Constructs a ModelTileCommand with the given tiling options.
virtual void execute(DesignObjectLookup *lookup) override
Executes the tiling command, applying tile options to all target models.
virtual bool canCombineWith(const DynamicPointer< DesignCommand > &command) override
Checks whether this command can be combined (merged) with another command.
virtual StringView icon() const override
Returns the icon identifier for this command.
virtual bool canGroupWith(const DynamicPointer< DesignCommand > &command) override
Checks whether this command can be grouped with another command in the undo stack.
virtual void combineWith(const DynamicPointer< DesignCommand > &command) override
Merges another compatible command into this one, absorbing its targets and options.
virtual bool isAsyncExecution() const override
Indicates that this command executes asynchronously.
virtual bool addTarget(UUID target_id) override
Adds a target model (by UUID) to the list of models to tile.
bool hasTileOptions() const
Checks whether this tile group has tiling options configured.
void updateTiles()
Regenerates the tiled instances based on the current options and source model.
static constexpr StringView TypeName()
Returns the type name identifier for this model type.
Model tileRoot()
Retrieves the root model that contains the generated tile instances.
ModelTileOptions tileOptions() const
Retrieves the current tiling options for this group.
void setOptions(const ModelTileOptions &options)
Sets the tiling options that control spacing, alignment, and orientation of tiles.
void setModelToTile(Model &model)
Sets the source model to be used as the tile template.
ModelTileGroup(const Model &model)
Constructs a ModelTileGroup from an existing Model.
ModelTileGroup()
Default constructor.
Model modelToTile()
Retrieves the source model that is being tiled (repeated).
Model()
Default constructor. Creates an uninitialized Model.
The core String View class for the NDEVR API.
Any text displayed to the user should be defined as a TranslatedString which allows the program to lo...
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
The primary namespace for the NDEVR SDK.