3#if NDEVR_MODEL_TILE_CONTAINER
4#include <NDEVR/Editor.h>
5#include <NDEVR/QTModelManager.h>
6#include <NDEVR/QTDesignObject.h>
8 class GeometryToSymbolUI;
17 class ModelTileOptions;
22 class NDEVR_API ModelTileGroupEditor :
public Editor
31 ModelTileGroupEditor(DynamicPointer<QTDesignObject>
object, QWidget* parent =
nullptr);
36 ModelTileGroupEditor(QWidget* parent =
nullptr);
41 void setTarget(
const DynamicPointer<QTDesignObject>&
object)
override;
45 void updateValues()
override;
49 static void RegisterEditor();
55 void tileModel(
const ModelTileOptions& options);
60 void extrudeModel(
const Polyline<3, fltp08> polyline_extrusion);
69 void loadDefaultSettings(
bool reset_if_no_exist);
73 void saveDefaultSettings();
78 void setSettings(
const ModelTileOptions& options);
83 void setOptionsFromUI(ModelTileOptions& options)
const;
92 bool prepareTileModel();
97 ModelTileGroup tileGroup();
102 void updateFromUISlot();
107 void onModelChosen(
const Buffer<UUID>& selected);
109 Ui::GeometryToSymbolUI* ui;
111 Model m_model_to_tile;
112 Dictionary<String, QBoxLayout*> m_layouts;
113 bool m_has_edited =
false;
A base class for displaying options for editing a single DesignObject, typically a Model.
Manages loading Models from a group that is stored either on a remote server or locally on the disk i...
A Model subclass that manages tiling (repeating) a source model along a path or surface.
The primary namespace for the NDEVR SDK.