66 lines
1.3 KiB
C++
66 lines
1.3 KiB
C++
|
|
|
|
#ifndef SCRIPTBINDING_IMAGE_BUILDER_H
|
|
#define SCRIPTBINDING_IMAGE_BUILDER_H
|
|
|
|
#include "toonz/scriptbinding.h"
|
|
|
|
class ToonzScene;
|
|
class TXshSimpleLevel;
|
|
|
|
namespace TScriptBinding
|
|
{
|
|
|
|
class DVAPI Transform : public Wrapper
|
|
{
|
|
Q_OBJECT
|
|
TAffine m_affine;
|
|
|
|
public:
|
|
Transform();
|
|
Transform(const TAffine &aff);
|
|
|
|
~Transform();
|
|
|
|
WRAPPER_STD_METHODS(Transform)
|
|
Q_INVOKABLE QScriptValue toString();
|
|
|
|
Q_INVOKABLE QScriptValue translate(double x, double y);
|
|
Q_INVOKABLE QScriptValue rotate(double degrees);
|
|
Q_INVOKABLE QScriptValue scale(double s);
|
|
Q_INVOKABLE QScriptValue scale(double sx, double sy);
|
|
|
|
const TAffine &getAffine() const { return m_affine; }
|
|
};
|
|
|
|
class DVAPI ImageBuilder : public Wrapper
|
|
{
|
|
Q_OBJECT
|
|
TImageP m_img;
|
|
int m_width, m_height;
|
|
|
|
QString add(const TImageP &img, const TAffine &aff);
|
|
|
|
public:
|
|
ImageBuilder();
|
|
~ImageBuilder();
|
|
|
|
WRAPPER_STD_METHODS(ImageBuilder)
|
|
Q_INVOKABLE QScriptValue toString();
|
|
|
|
Q_PROPERTY(QScriptValue image READ getImage)
|
|
QScriptValue getImage();
|
|
|
|
Q_INVOKABLE QScriptValue add(QScriptValue img);
|
|
Q_INVOKABLE QScriptValue add(QScriptValue img, QScriptValue transformation);
|
|
|
|
Q_INVOKABLE void clear();
|
|
Q_INVOKABLE QScriptValue fill(const QString &colorName);
|
|
};
|
|
|
|
} // namespace TScriptBinding
|
|
|
|
Q_DECLARE_METATYPE(TScriptBinding::Transform *)
|
|
Q_DECLARE_METATYPE(TScriptBinding::ImageBuilder *)
|
|
|
|
#endif
|