二维矢量动画智能制作软件开发合集
个人开发二维矢量动画智能制作软件界面如下:
目录
一、骨骼变换和骨骼调整原理
骨骼操作中主要包括骨骼变换和骨骼调整。操作工具如下图所示:
① 骨骼变换,当父对象位置或者旋转变换时,子对象也做相对距离位移和角度位移。
② 骨骼调整,当父对象位置或者旋转变换时,子对象不做相对距离位移和角度位移,只是单纯对骨骼结构进行调整。
二、骨骼变换核心代码
.h文件变量申明:
QList<qreal> OrginAngle;
QLineF line1,line2;
QList<QGraphicsItem *> selectBone;
void Scene::mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent)
{
OrginAngle.clear();
OrginAngle.append(selectBone[0]->rotation());
line1.setPoints(selectBone[0]->scenePos(),mouseEvent->scenePos());
line2.setP1(selectBone[0]->scenePos());
}
void Scene::mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent)
{
line2.setP2(mouseEvent->scenePos());
qreal angle = line2.angleTo(line1);
selectBone[0]->setRotation(OrginAngle[0]+angle);
}
三、骨骼调整核心代码
.h文件变量申明:
QPointF startNodePos,endNodePos;
QList<QGraphicsItem *> selectBone;
void Scene::mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent)
{
endNodePos = mouseEvent->scenePos();
selectBone[0]->moveBy(endNodePos.x() - startNodePos.x(),endNodePos.y() - startNodePos.y());
startNodePos = mouseEvent->scenePos();
}
四、骨骼变换和骨骼调整软件测试视频
骨骼变换
结束语
本文简要梳理了软件【骨骼变换和骨骼调整】的实现框架,内容均为原创。
作者文笔水平一般,请大家多多包涵和指正,十分欢迎进一步交流学习。
若需,请联系本人小红书(小红书号:YzLab96),谢谢。