5 #include "../canvas/MapDisplay.h"
6 #include "../canvas/Canvas.h"
9 #include <QtCore/QPropertyAnimation>
10 #include <QtGui/QPainter>
11 #include <QtCore/QVector>
16 QGraphicsPixmapItem(),
21 m_automaticPan(false),
35 int w = m_display->getDisplayPixmap()->width();
36 int h = m_display->getDisplayPixmap()->height();
46 return m_matrix.map(m_pos).toPoint();
51 m_duration = duration;
52 m_animation->setDuration(m_duration);
53 if(m_direction == QAbstractAnimation::Forward)
54 m_curTimeDuration = 0;
56 m_curTimeDuration = m_duration;
61 m_direction = direction;
62 setDuration(m_duration);
81 size_t size = m_time.count();
83 for(
size_t i = 0; i < size; ++i)
85 if(m_time[i] == iTime || m_time[i] > iTime)
91 for(
size_t i = size-1; i >= 0; --i)
93 if(m_time[i] == fTime || m_time[i] < fTime)
100 size_t tfim = ini + size;
102 m_SRID = m_display->getSRID();
103 m_animationRoute.clear();
104 m_animationTime.clear();
106 if(m_display->getSRID() !=
TE_UNKNOWN_SRS && m_display->getSRID() != m_route->getSRID())
111 for(
size_t i = ini; i < tfim; ++i)
113 std::auto_ptr<te::gm::Point> p(line.
getPointN(i));
114 m_animationRoute.push_back(QPointF(p->getX(), p->getY()));
115 m_animationTime.push_back(m_time[i]);
120 for(
size_t i = ini; i < tfim; ++i)
122 std::auto_ptr<te::gm::Point> p(m_route->getPointN(i));
123 m_animationRoute.push_back(QPointF(p->getX(), p->getY()));
124 m_animationTime.push_back(m_time[i]);
Point * getPointN(std::size_t i) const
It returns the specified point in this LineString.
double m_urx
Upper right corner x-coordinate.
A class to represent time instant.
double m_llx
Lower left corner x-coordinate.
This file defines a class for a Animation Scene.
LineString is a curve with linear interpolation between points.
This file defines a class for a Animation Item.
An Envelope defines a 2D rectangular region.
#define TE_UNKNOWN_SRS
A numeric value to represent a unknown SRS identification in TerraLib.
double m_lly
Lower left corner y-coordinate.
This file defines a class for a Trajectory Animation.
double m_ury
Upper right corner y-coordinate.
void transform(int srid)
It converts the coordinate values of the linestring to the new spatial reference system.