void DianVoteControl::ShowStopWatch()
{
    // 不管三七二十八,先把窗口设置成默认的大小
//    QPoint curPos = this->pos();
    this->resize(initSize);
    QSize endSize(initSize);
    endSize.setHeight(initSize.height() + 100);

    resizeAnimation = new QPropertyAnimation(this, "size");
    resizeAnimation->setDuration(1000);
    resizeAnimation->setStartValue(initSize);
    resizeAnimation->setEndValue(endSize);

    if(!stopWatch)
    {
        stopWatch = new StopWatch(this);
    }
    connect(this, SIGNAL(setLastTime(int)), stopWatch, SLOT(SetStartTime(int)));
    connect(stopWatch, SIGNAL(autoStop()), this, SLOT(VoteStop()));
    ui->stopWatchLayout->addWidget(stopWatch);
}
TEST_F(OsgScreenSpaceQuadRenderTests, InitTest)
{
	std::shared_ptr<OsgScreenSpaceQuadRepresentation> quad =
		std::make_shared<OsgScreenSpaceQuadRepresentation>("Screen Quad");

	viewElement->addComponent(quad);

	/// Run the thread
	runtime->start();
	EXPECT_TRUE(graphicsManager->isInitialized());
	EXPECT_TRUE(viewElement->isInitialized());
	quad->setSize(100, 100);
	boost::this_thread::sleep(boost::posix_time::milliseconds(1000));

	auto dimensions = viewElement->getView()->getDimensions();

	SurgSim::Math::Vector3d startPosition(0.0, 0.0, 0.0);
	SurgSim::Math::Vector3d endPosition(dimensions[0], dimensions[1], 0.0);

	SurgSim::Math::Vector2d startSize(0.0, 0.0);
	SurgSim::Math::Vector2d endSize(200, 200);

	int numSteps = 100;
	for (int i = 0; i < numSteps; ++i)
	{
		/// Calculate t in [0.0, 1.0]
		double t = static_cast<double>(i) / numSteps;
		RigidTransform3d currentPose = SurgSim::Testing::interpolatePose(
										   Vector3d::Identity(), Vector3d::Identity(),
										   startPosition, endPosition, t);

		quad->setLocalPose(currentPose);

		SurgSim::Math::Vector2d size = SurgSim::Testing::interpolate(startSize, endSize, t);
		quad->setSize(size.x(), size.y());

		boost::this_thread::sleep(boost::posix_time::milliseconds(1000 / numSteps));
	}

}