Esempio n. 1
0
QMatrix LayerCamera::getViewAtFrame(int frameNumber) {
	//qDebug() << ">> " << frameNumber;
	int index = getLastIndexAtFrame(frameNumber);
	int frame1 = -1;
	int frame2 = -1;
	Camera* camera1 = getCameraAtIndex(index);
	if(camera1) frame1 = framesPosition.at(index);
	Camera* camera2 = getCameraAtIndex(index+1);
	if(camera2) frame2 = framesPosition.at(index+1);
	if(camera1 == NULL && camera2 == NULL) {
		return QMatrix();
	}
	if(camera1 == NULL && camera2 != NULL) {
		return camera2->view;
	}
	if(camera2 == NULL && camera1 != NULL) {
		return camera1->view;
	}
	if(camera1 != NULL && camera2 != NULL) {
		// linear interpolation
		qreal c2 = (frameNumber-frame1+0.0)/(frame2-frame1);
		qreal c1 = 1.0 - c2;
		//qDebug() << ">> -- " << c1 << c2;
		return QMatrix( c1*camera1->view.m11() + c2*camera2->view.m11(),
										c1*camera1->view.m12() + c2*camera2->view.m12(),
										c1*camera1->view.m21() + c2*camera2->view.m21(),
										c1*camera1->view.m22() + c2*camera2->view.m22(),
										c1*camera1->view.dx() + c2*camera2->view.dx(),
										c1*camera1->view.dy() + c2*camera2->view.dy()	);
	}
}
Esempio n. 2
0
QImage* LayerVector::getLastImageAtFrame(int frameNumber, int increment, QSize size, bool simplified, bool showThinLines, qreal curveOpacity, bool antialiasing, int gradients) {
	int index = getLastIndexAtFrame(frameNumber);
	if(index == -1) {
		return NULL;
	} else {
		return getImageAtIndex(index + increment, size, simplified, showThinLines, curveOpacity, antialiasing, gradients);
	}
}
Esempio n. 3
0
void LayerImage::setModified(int frameNumber, bool trueOrFalse)
{
    int index = getLastIndexAtFrame(frameNumber);
    if (index != -1)
    {
        framesModified[index] = trueOrFalse;
        object->modification();
    }
}
Esempio n. 4
0
QImage* LayerImage::getLastImageAtFrame(int frameNumber, int increment)
{
    int index = getLastIndexAtFrame(frameNumber);
    if (index == -1)
    {
        return NULL;
    }
    else
    {
        return getImageAtIndex(index + increment);
    }
}
Esempio n. 5
0
BitmapImage* LayerBitmap::getLastBitmapImageAtFrame(int frameNumber, int increment)
{
    int index = getLastIndexAtFrame(frameNumber);
    return getBitmapImageAtIndex(index + increment);
}
Esempio n. 6
0
VectorImage* LayerVector::getLastVectorImageAtFrame(int frameNumber, int increment)
{
    int index = getLastIndexAtFrame(frameNumber);
    return getVectorImageAtIndex(index + increment);
}
Esempio n. 7
0
Camera* LayerCamera::getLastCameraAtFrame(int frameNumber, int increment) {
	int index = getLastIndexAtFrame(frameNumber);
	return getCameraAtIndex(index + increment);
}