Horizon
canvas_gerber.hpp
1 #pragma once
2 #include "canvas/canvas.hpp"
3 
4 namespace horizon {
5 class CanvasGerber : public Canvas {
6 public:
7  CanvasGerber(class GerberExporter &exp);
8  void push() override
9  {
10  }
11  void request_push() override;
12  uint64_t outline_width = 0;
13 
14 private:
15  void img_net(const Net *net) override;
16  void img_polygon(const Polygon &poly, bool tr) override;
17  void img_line(const Coordi &p0, const Coordi &p1, const uint64_t width, int layer, bool tr = true) override;
18  void img_padstack(const Padstack &ps) override;
19  void img_hole(const Hole &hole) override;
20  void img_set_padstack(bool v) override;
21  bool padstack_mode = false;
22 
23  GerberExporter &exporter;
24 };
25 } // namespace horizon
Definition: canvas_gerber.hpp:5
Definition: canvas.hpp:24
Definition: gerber_export.hpp:8
A hole with diameter and position, that's it.
Definition: hole.hpp:18
Definition: net.hpp:11
Definition: padstack.hpp:21
Polygon used in Padstack, Package and Board for specifying filled Regions.
Definition: polygon.hpp:27
zip_uint64_t uint64_t
zip_uint64_t_t typedef.
Definition: zip.hpp:108