34#include <NDEVR/DrillHole.h>
46 TranslatedString row_name_format;
47 TranslatedString hole_name_format;
56 bool operator!=(
const HoleLayout& pattern)
const
58 return row_name_format != pattern.row_name_format
59 || hole_name_format != pattern.hole_name_format
60 || row_spacing != pattern.row_spacing
61 || hole_spacing != pattern.hole_spacing
62 || row_skew != pattern.row_skew
63 || row_count != pattern.row_count
64 || holes_per_row != pattern.holes_per_row
65 || stagger != pattern.stagger;
69 DrillPattern(
const Model& root, fltp08 default_radius = Constant<fltp08>::NaN);
70 DrillHole addCollar(TranslatedString collar_name = TranslatedString());
71 DrillHole addCollar(uint04 collar_number);
72 void setupCollar(Model& collar);
73 void addHolePath(
const TranslatedString& collar_name,
const TranslatedString& path_name,
const Buffer<fltp08>& data, fltp08 radius = Constant<fltp08>::NaN);
74 void addHolePath(
const TranslatedString& collar_name,
const TranslatedString& path_name,
const Buffer<Vertex<3, fltp08>>& data, fltp08 radius = Constant<fltp08>::NaN);
76 void addHolePath(
const TranslatedString& row_name,
const TranslatedString& collar_name,
const TranslatedString& path_name,
const Buffer<fltp08>& data, fltp08 radius = Constant<fltp08>::NaN);
77 void addHolePath(
const TranslatedString& row_name,
const TranslatedString& collar_name,
const TranslatedString& path_name,
const Buffer<Vertex<3, fltp08>>& data, fltp08 radius = Constant<fltp08>::NaN);
79 void setPathVisible(
const TranslatedString& path,
bool is_visible);
80 Model addRow(
const TranslatedString& row_name);
81 Model addRow(
const uint04& row_number,
bool auto_offset);
82 Model addHole(
const uint04& row_number);
83 static TranslatedString DefaultRowName(uint04 row_number, TranslatedString row_name_format = TranslatedString());
84 static TranslatedString DefaultHoleName(uint04 row_number, uint04 hole_number, TranslatedString hole_name_format = TranslatedString());
86 HoleLayout getLayout()
const;
89 Buffer<Model> rows()
const;
91 fltp08 defaultRadius()
const;
93 void layoutPattern(
const HoleLayout& layout, Buffer<Model>& added_models, Buffer<Model>& unused_models);
96 TranslatedString holeNamingConvension()
const;
97 void setHoleNamingConvension(
const TranslatedString& value);
100 TranslatedString rowNamingConvension()
const;
101 void setRowNamingConvension(
const TranslatedString& value);
104 static constexpr const char* TypeName() {
return "drill_pattern"; }
105 static constexpr const char* RowTypeName() {
return "drill_pattern_row"; }
bool operator!=(const VkVertexInputAttributeDescription &a, const VkVertexInputAttributeDescription &b)
Definition VulkanRenderObject.cpp:10
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:120
double fltp08
Defines an alias representing an 8 byte floating-point number.
Definition BaseValues.hpp:181