X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=antikythera;a=blobdiff_plain;f=src%2Fgear.h;fp=src%2Fgear.h;h=1247a14348bc8f498898f67fff0ded62254a6c34;hp=7f230e4a1b099c2b33b53c2da3382087426764bd;hb=080d7a779d43f549fc16c44e709cbf5989180fdf;hpb=b29d7193d03833109cfdda3ab576fe183efd8acf diff --git a/src/gear.h b/src/gear.h index 7f230e4..1247a14 100644 --- a/src/gear.h +++ b/src/gear.h @@ -39,7 +39,7 @@ class Gear { private: Mesh *mesh; - mutable Mat4 xform, dir_xform; + mutable Mat4 xform, dir_xform, axel_xform; mutable bool xform_valid; void calc_matrix() const; @@ -65,12 +65,18 @@ public: float bevel; // bevel size + Gear *supergear; + std::vector subgears; std::vector pins; std::vector slots; Gear(); ~Gear(); + void attach(Gear *g); + bool detach(Gear *g); + Gear *get_super() const; + void set_angular_offset(float offs); float get_angular_offset() const;