10 void update(
const class Board &brd);
11 void update_only(
const class Board &brd);
12 void prepare_only(std::function<
void()> cb =
nullptr);
18 Vertex(
float ix,
float iy) : x(ix), y(iy)
24 std::vector<Vertex> tris;
25 std::vector<Vertex> walls;
26 void move_from(
Layer3D &&other);
27 void copy_sizes_from(
const Layer3D &other);
30 float thickness = 0.035;
32 float explode_mul = 0;
35 std::atomic_bool done =
false;
38 static bool layer_is_pth_barrel(
int layer)
40 return (layer >= 20'000) && (layer < 21'000);
43 static bool layer_is_substrate(
int layer);
45 std::map<int, Layer3D> &get_layers()
49 const std::map<int, Layer3D> &get_layers()
const
53 std::pair<Coordi, Coordi> get_bbox()
const;
62 std::map<int, Layer3D> layers;
63 std::atomic_bool cancel =
false;
65 void prepare(
const class Board &brd);
66 void prepare_work(std::function<
void()> cb);
68 std::vector<int> layers_to_prepare;
70 void prepare_worker(std::atomic_size_t &layer_counter, std::function<
void()> cb);
71 void prepare_layer(
int layer);
72 void prepare_soldermask(
int layer);
73 void prepare_silkscreen(
int layer);
74 void add_path(
int layer,
const ClipperLib::Path &path);