Pencil2D Animation
Download Community News Docs Contribute

CameraTool Class Reference

  • Main Page
  • Related Pages
  • Classes
  • Files
  •  
  • Class List
  • Class Index
  • Class Hierarchy
  • Class Members
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
CameraTool Class Reference
+ Inheritance diagram for CameraTool:
BaseTool QObject

Public Member Functions

 CameraTool (QObject *object)
 
QCursor cursor () override
 
ToolType type () override
 
void paint (QPainter &painter) override
 
void loadSettings () override
 
void pointerPressEvent (PointerEvent *) override
 
void pointerReleaseEvent (PointerEvent *) override
 
void pointerMoveEvent (PointerEvent *) override
 
void setShowCameraPath (const bool showCameraPath) override
 
void resetCameraPath () override
 
void setPathDotColorType (const DotColorType pathDotColor) override
 
void resetTransform (CameraFieldOption option)
 
void transformView (LayerCamera *layerCamera, CameraMoveType mode, const QPointF &point, const QPointF &offset, qreal angle, int frameNumber) const
 
- Public Member Functions inherited from BaseTool
QString typeName ()
 
void initialize (Editor *editor)
 
virtual ToolType type ()=0
 
virtual void loadSettings ()=0
 
virtual QCursor cursor ()
 
virtual void pointerPressEvent (PointerEvent *)=0
 
virtual void pointerMoveEvent (PointerEvent *)=0
 
virtual void pointerReleaseEvent (PointerEvent *)=0
 
virtual void pointerDoubleClickEvent (PointerEvent *)
 
virtual bool keyPressEvent (QKeyEvent *)
 
virtual bool keyReleaseEvent (QKeyEvent *)
 
virtual bool startAdjusting (Qt::KeyboardModifiers modifiers, qreal argStep)
 
virtual void stopAdjusting ()
 
virtual void adjustCursor (Qt::KeyboardModifiers modifiers)
 
virtual void clearToolData ()
 
virtual void resetToDefault ()
 
QPixmap quickSizeCursor (qreal scalingFac)
 precision circular cursor: used for drawing stroke size while adjusting
 
virtual bool isActive ()
 Check if the tool is active.
 
virtual void setWidth (const qreal width)
 
virtual void setFeather (const qreal feather)
 
virtual void setInvisibility (const bool invisibility)
 
virtual void setBezier (const bool bezier_state)
 
virtual void setPressure (const bool pressure)
 
virtual void setUseFeather (const bool usingFeather)
 
virtual void setPreserveAlpha (const bool preserveAlpha)
 
virtual void setVectorMergeEnabled (const bool vectorMergeEnabled)
 
virtual void setAA (const int useAA)
 
virtual void setFillMode (const int mode)
 
virtual void setStabilizerLevel (const int level)
 
virtual void setTolerance (const int tolerance)
 
virtual void setToleranceEnabled (const bool enabled)
 
virtual void setFillExpand (const int fillExpandValue)
 
virtual void setFillExpandEnabled (const bool enabled)
 
virtual void setFillToLayerMode (int layerMode)
 
virtual void setFillReferenceMode (int referenceMode)
 
virtual void setUseFillContour (const bool useFillContour)
 
virtual void setShowSelectionInfo (const bool b)
 
virtual void setShowCameraPath (const bool showCameraPath)
 
virtual void setPathDotColorType (const DotColorType dotColorType)
 
virtual void resetCameraPath ()
 
virtual void paint (QPainter &painter)
 
virtual bool leavingThisTool ()
 
QPointF getCurrentPressPixel () const
 
QPointF getCurrentPressPoint () const
 
QPointF getCurrentPixel () const
 
QPointF getCurrentPoint () const
 
QPointF getLastPixel () const
 
QPointF getLastPoint () const
 
QPointF getLastPressPixel () const
 
QPointF getLastPressPoint () const
 
bool isPropertyEnabled (ToolPropertyType t)
 
bool isDrawingTool ()
 BaseTool::isDrawingTool - A drawing tool is anything that applies something to the canvas.
 
- Public Member Functions inherited from QObject
virtual const QMetaObject * metaObject () const const
 
 QObject (QObject *parent)
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
QString objectName () const const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
bool blockSignals (bool block)
 
QThread * thread () const const
 
void moveToThread (QThread *targetThread)
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
void killTimer (int id)
 
T findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
const QObjectList & children () const const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
void dumpObjectTree () const const
 
void dumpObjectInfo () const const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const const
 
QList< QByteArray > dynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObject * parent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
T qobject_cast (QObject *object)
 
T qobject_cast (const QObject *object)
 
T qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
 Q_CLASSINFO (Name, Value)
 
 Q_INTERFACES (...)
 
 Q_PROPERTY (...)
 
 Q_ENUMS (...)
 
 Q_FLAGS (...)
 
 Q_ENUM (...)
 
 Q_FLAG (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG_NS (...)
 
 Q_OBJECT Q_OBJECT
 
 Q_GADGET Q_GADGET
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SLOTS Q_SLOTS
 
 Q_SLOT Q_SLOT
 
 Q_EMIT Q_EMIT
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 

Private Member Functions

QPointF localRotationHandlePoint (const QPoint &origin, const QTransform &localT, const qreal objectScale, float worldScale) const
 
QPointF worldRotationHandlePoint (const QPoint &origin, const QTransform &localT, const qreal objectScale, const QTransform &worldT, float worldScale) const
 
void paintHandles (QPainter &painter, const QTransform &worldTransform, const QTransform &camTransform, const QRect &cameraRect, const QPointF translation, const qreal scale, const qreal rotation, bool hollowHandles) const
 
void paintInterpolations (QPainter &painter, const QTransform &worldTransform, int currentFrame, const LayerCamera *cameraLayer, const Camera *keyframe, bool isPlaying) const
 
void paintControlPoint (QPainter &painter, const QTransform &worldTransform, const LayerCamera *cameraLayer, const int frameIndex, const QPointF &pathPoint, bool hollowHandle) const
 
CameraMoveType moveMode ()
 
void transformCamera (Qt::KeyboardModifiers keyMod)
 
void transformCameraPath ()
 
void updateSettings (const SETTING setting)
 
int constrainedRotation (const qreal rotatedAngle, const int rotationIncrement) const
 
void updateProperties ()
 
void updateUIAssists (const Layer *layer)
 
qreal getAngleBetween (const QPointF &pos1, const QPointF &pos2) const
 
CameraMoveType getCameraMoveMode (const QPointF &point, qreal tolerance) const
 
CameraMoveType getPathMoveMode (const LayerCamera *layerCamera, int frameNumber, const QPointF &point, qreal tolerance) const
 

Private Attributes

QPointF mTransformOffset
 
CameraMoveType mCamMoveMode = CameraMoveType::NONE
 
CameraMoveType mCamPathMoveMode = CameraMoveType::NONE
 
int mDragPathFrame = 1
 
int mRotationIncrement = 0
 
QRectF mCameraRect
 
QPolygonF mCameraPolygon
 
QPointF mRotationHandlePoint
 
qreal mStartAngle = 0
 
qreal mCurrentAngle = 0
 
const int mDotWidth = 6
 
const int mHandleWidth = 12
 
const qreal mRotationHandleOffsetPercentage = 0.05
 
QPen mHandlePen
 
QColor mHandleColor
 
QColor mHandleDisabledColor
 
QColor mHandleTextColor
 

Additional Inherited Members

- Signals inherited from BaseTool
bool isActiveChanged (ToolType, bool)
 
- Static Public Member Functions inherited from BaseTool
static QString TypeName (ToolType)
 
static QPixmap canvasCursor (float brushWidth, float brushFeather, bool useFeather, float scalingFac, int windowWidth)
 precision circular cursor: used for drawing a cursor within scribble area.
 
static bool isAdjusting ()
 
- Static Public Member Functions inherited from QObject
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
- Public Attributes inherited from BaseTool
Properties properties
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from BaseTool
 BaseTool (QObject *parent)
 
StrokeManager * strokeManager () const
 
Editor * editor ()
 
- Protected Member Functions inherited from QObject
QObject * sender () const const
 
int senderSignalIndex () const const
 
int receivers (const char *signal) const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
- Protected Attributes inherited from BaseTool
QHash< ToolPropertyType, bool > mPropertyEnabled
 
Editor * mEditor = nullptr
 
ScribbleArea * mScribbleArea = nullptr
 
QHash< Qt::KeyboardModifiers, ToolPropertyType > mQuickSizingProperties
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 44 of file cameratool.h.

Constructor & Destructor Documentation

◆ CameraTool()

CameraTool::CameraTool ( QObject *  object)
explicit

Definition at line 38 of file cameratool.cpp.

◆ ~CameraTool()

CameraTool::~CameraTool ( )
override

Definition at line 43 of file cameratool.cpp.

Member Function Documentation

◆ constrainedRotation()

int CameraTool::constrainedRotation ( const qreal  rotatedAngle,
const int  rotationIncrement 
) const
private

Definition at line 277 of file cameratool.cpp.

◆ cursor()

QCursor CameraTool::cursor ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 112 of file cameratool.cpp.

◆ getAngleBetween()

qreal CameraTool::getAngleBetween ( const QPointF &  pos1,
const QPointF &  pos2 
) const
private

Definition at line 326 of file cameratool.cpp.

◆ getCameraMoveMode()

CameraMoveType CameraTool::getCameraMoveMode ( const QPointF &  point,
qreal  tolerance 
) const
private

Definition at line 331 of file cameratool.cpp.

◆ getPathMoveMode()

CameraMoveType CameraTool::getPathMoveMode ( const LayerCamera *  layerCamera,
int  frameNumber,
const QPointF &  point,
qreal  tolerance 
) const
private

Definition at line 364 of file cameratool.cpp.

◆ loadSettings()

void CameraTool::loadSettings ( )
overridevirtual

Implements BaseTool.

Definition at line 47 of file cameratool.cpp.

◆ localRotationHandlePoint()

QPointF CameraTool::localRotationHandlePoint ( const QPoint &  origin,
const QTransform &  localT,
const qreal  objectScale,
float  worldScale 
) const
private

Definition at line 388 of file cameratool.cpp.

◆ moveMode()

CameraMoveType CameraTool::moveMode ( )
private

Definition at line 163 of file cameratool.cpp.

◆ paint()

void CameraTool::paint ( QPainter &  painter)
overridevirtual

Reimplemented from BaseTool.

Definition at line 441 of file cameratool.cpp.

◆ paintControlPoint()

void CameraTool::paintControlPoint ( QPainter &  painter,
const QTransform &  worldTransform,
const LayerCamera *  cameraLayer,
const int  frameIndex,
const QPointF &  pathPoint,
bool  hollowHandle 
) const
private

Definition at line 593 of file cameratool.cpp.

◆ paintHandles()

void CameraTool::paintHandles ( QPainter &  painter,
const QTransform &  worldTransform,
const QTransform &  camTransform,
const QRect &  cameraRect,
const QPointF  translation,
const qreal  scale,
const qreal  rotation,
bool  hollowHandles 
) const
private

Definition at line 470 of file cameratool.cpp.

◆ paintInterpolations()

void CameraTool::paintInterpolations ( QPainter &  painter,
const QTransform &  worldTransform,
int  currentFrame,
const LayerCamera *  cameraLayer,
const Camera *  keyframe,
bool  isPlaying 
) const
private

Definition at line 539 of file cameratool.cpp.

◆ pointerMoveEvent()

void CameraTool::pointerMoveEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 290 of file cameratool.cpp.

◆ pointerPressEvent()

void CameraTool::pointerPressEvent ( PointerEvent *  )
overridevirtual

Implements BaseTool.

Definition at line 282 of file cameratool.cpp.

◆ pointerReleaseEvent()

void CameraTool::pointerReleaseEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 310 of file cameratool.cpp.

◆ resetCameraPath()

void CameraTool::resetCameraPath ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 226 of file cameratool.cpp.

◆ resetTransform()

void CameraTool::resetTransform ( CameraFieldOption  option)

Definition at line 235 of file cameratool.cpp.

◆ setPathDotColorType()

void CameraTool::setPathDotColorType ( const DotColorType  pathDotColor)
overridevirtual

Reimplemented from BaseTool.

Definition at line 218 of file cameratool.cpp.

◆ setShowCameraPath()

void CameraTool::setShowCameraPath ( const bool  showCameraPath)
overridevirtual

Reimplemented from BaseTool.

Definition at line 208 of file cameratool.cpp.

◆ transformCamera()

void CameraTool::transformCamera ( Qt::KeyboardModifiers  keyMod)
private

Definition at line 248 of file cameratool.cpp.

◆ transformCameraPath()

void CameraTool::transformCameraPath ( )
private

Definition at line 268 of file cameratool.cpp.

◆ transformView()

void CameraTool::transformView ( LayerCamera *  layerCamera,
CameraMoveType  mode,
const QPointF &  point,
const QPointF &  offset,
qreal  angle,
int  frameNumber 
) const

Definition at line 401 of file cameratool.cpp.

◆ type()

ToolType CameraTool::type ( )
inlineoverridevirtual

Implements BaseTool.

Definition at line 52 of file cameratool.h.

◆ updateProperties()

void CameraTool::updateProperties ( )
private

Definition at line 87 of file cameratool.cpp.

◆ updateSettings()

void CameraTool::updateSettings ( const SETTING  setting)
private

Definition at line 97 of file cameratool.cpp.

◆ updateUIAssists()

void CameraTool::updateUIAssists ( const Layer *  layer)
private

Definition at line 66 of file cameratool.cpp.

◆ worldRotationHandlePoint()

QPointF CameraTool::worldRotationHandlePoint ( const QPoint &  origin,
const QTransform &  localT,
const qreal  objectScale,
const QTransform &  worldT,
float  worldScale 
) const
private

Definition at line 396 of file cameratool.cpp.

Member Data Documentation

◆ mCameraPolygon

QPolygonF CameraTool::mCameraPolygon
private

Definition at line 99 of file cameratool.h.

◆ mCameraRect

QRectF CameraTool::mCameraRect
private

Definition at line 98 of file cameratool.h.

◆ mCamMoveMode

CameraMoveType CameraTool::mCamMoveMode = CameraMoveType::NONE
private

Definition at line 93 of file cameratool.h.

◆ mCamPathMoveMode

CameraMoveType CameraTool::mCamPathMoveMode = CameraMoveType::NONE
private

Definition at line 94 of file cameratool.h.

◆ mCurrentAngle

qreal CameraTool::mCurrentAngle = 0
private

Definition at line 103 of file cameratool.h.

◆ mDotWidth

const int CameraTool::mDotWidth = 6
private

Definition at line 105 of file cameratool.h.

◆ mDragPathFrame

int CameraTool::mDragPathFrame = 1
private

Definition at line 95 of file cameratool.h.

◆ mHandleColor

QColor CameraTool::mHandleColor
private

Definition at line 110 of file cameratool.h.

◆ mHandleDisabledColor

QColor CameraTool::mHandleDisabledColor
private

Definition at line 111 of file cameratool.h.

◆ mHandlePen

QPen CameraTool::mHandlePen
private

Definition at line 109 of file cameratool.h.

◆ mHandleTextColor

QColor CameraTool::mHandleTextColor
private

Definition at line 112 of file cameratool.h.

◆ mHandleWidth

const int CameraTool::mHandleWidth = 12
private

Definition at line 106 of file cameratool.h.

◆ mRotationHandleOffsetPercentage

const qreal CameraTool::mRotationHandleOffsetPercentage = 0.05
private

Definition at line 107 of file cameratool.h.

◆ mRotationHandlePoint

QPointF CameraTool::mRotationHandlePoint
private

Definition at line 100 of file cameratool.h.

◆ mRotationIncrement

int CameraTool::mRotationIncrement = 0
private

Definition at line 96 of file cameratool.h.

◆ mStartAngle

qreal CameraTool::mStartAngle = 0
private

Definition at line 102 of file cameratool.h.

◆ mTransformOffset

QPointF CameraTool::mTransformOffset
private

Definition at line 92 of file cameratool.h.


The documentation for this class was generated from the following files:
  • core_lib/src/tool/cameratool.h
  • core_lib/src/tool/cameratool.cpp
Generated on Sun Sep 24 2023 19:39:35 for Pencil2D by doxygen 1.9.6 based on revision 1395c86cb17dafbb32de44cbabe1f4c58636468d