30 #include "ui_lassavedialog.h"
38 class QStringListModel;
48 ,
public Ui::LASSaveDialog
67 void selectedVersion(uint8_t& versionMajor, uint8_t& versionMinor)
const;
93 QStringListModel* m_scalarFieldsNamesModel{
nullptr};
96 QStringListModel* m_extraFieldsDataTypesModel{
nullptr};
101 std::vector<std::pair<MappingLabel*, QComboBox*>> m_scalarFieldMapping;
void setExtraScalarFields(const std::vector< LasExtraScalarField > &extraScalarFields)
Set the extra LAS scalar fields saved from the original file.
void handleComboBoxChange(int index)
void setOriginalScale(const CCVector3d &scale, bool canUseScale, bool autoCheck=true)
void handleSelectedPointFormatChange(int index)
When the user changes the point format, we need to update the scalar field form.
bool shouldSaveWaveform() const
Returns whether the user wants to save the Waveforms.
LasSaveDialog(ccPointCloud *cloud, QWidget *parent=nullptr)
void selectedVersion(uint8_t &versionMajor, uint8_t &versionMinor) const
Returns the version currently selected.
bool shouldSaveRGB() const
Returns whether the user wants to save RGB.
std::vector< LasScalarField > fieldsToSave() const
void addExtraScalarFieldCard()
uint8_t selectedPointFormat() const
Returns the point format currently selected.
CCVector3d chosenScale() const
Returns the currently selected scale.
std::vector< LasExtraScalarField > extraFieldsToSave() const
void setVersionAndPointFormat(const LasDetails::LasVersion versionAndFmt)
void handleSelectedVersionChange(const QString &)
void setOptimalScale(const CCVector3d &scale, bool autoCheck=false)
Set scale that would offer the user the best precision.
Widget to map a predefined scalar field 'role' with a particular scalar field (combo box)
A 3D cloud and its associated features (color, normals, scalar fields, etc.)
A scalar field associated to display-related parameters.