tahoma2d/toonz/sources/include/toonz/cellpositionratio.h
Jaroslav 203cc81f42 Horizontal timeline option in Xsheet (issue#503) (#1019)
* Added the horizontal timeline support
2017-07-20 18:03:13 +09:00

48 lines
1,015 B
C++

#pragma once
#ifndef CELL_POSITION_RATIO_INCLUDED
#define CELL_POSITION_RATIO_INCLUDED
#undef DVAPI
#undef DVVAR
#ifdef TOONZLIB_EXPORTS
#define DVAPI DV_EXPORT_API
#define DVVAR DV_EXPORT_VAR
#else
#define DVAPI DV_IMPORT_API
#define DVVAR DV_IMPORT_VAR
#endif
#include "tcommon.h"
class DVAPI Ratio {
int m_num, m_denom;
void normalize();
Ratio normalized() const;
public:
Ratio(int num, int denom);
friend Ratio operator+(const Ratio &a, const Ratio &b);
friend Ratio operator-(const Ratio &a, const Ratio &b);
friend Ratio operator*(const Ratio &a, const Ratio &b);
friend Ratio operator/(const Ratio &a, const Ratio &b);
friend int operator*(const Ratio &a, int b);
bool operator!() const { return m_num == 0; }
};
class DVAPI CellPositionRatio {
Ratio m_frame, m_layer;
public:
CellPositionRatio(const Ratio &frame, const Ratio &layer)
: m_frame(frame), m_layer(layer) {}
Ratio frame() const { return m_frame; }
Ratio layer() const { return m_layer; }
};
#endif