+void ClusterStyle::SetClusterSize( const Vector3& clusterSize )
+{
+ mClusterSize = clusterSize;
+}
+
+Vector3 ClusterStyle::GetClusterSize() const
+{
+ return mClusterSize;
+}
+
+void ClusterStyle::Apply( Actor actor,
+ const Vector3& position,
+ const Vector3& size,
+ AlphaFunction alpha,
+ const TimePeriod& durationSeconds)
+{
+ float animationDuration = durationSeconds.delaySeconds + durationSeconds.durationSeconds;
+ if( animationDuration > 0.f )
+ {
+ Animation animation = Animation::New(animationDuration);
+ animation.MoveTo( actor, position, alpha, durationSeconds.delaySeconds, durationSeconds.durationSeconds );
+ animation.Resize( actor, size, alpha, durationSeconds.delaySeconds, durationSeconds.durationSeconds );
+ animation.Play();
+ }
+ else
+ {
+ actor.SetPosition( position );
+ actor.SetSize( size );
+ }
+}
+
+void ClusterStyle::Apply( Actor actor,
+ const Vector3& position,
+ const Vector3& size,
+ const Quaternion& rotation,
+ const Vector3& scale,
+ AlphaFunction alpha,
+ const TimePeriod& durationSeconds)
+{
+ float animationDuration = durationSeconds.delaySeconds + durationSeconds.durationSeconds;
+ if( animationDuration > 0.f )
+ {
+ Animation animation = Animation::New(animationDuration);
+ animation.MoveTo( actor, position, alpha, durationSeconds.delaySeconds, durationSeconds.durationSeconds );
+ animation.Resize( actor, size, alpha, durationSeconds.delaySeconds, durationSeconds.durationSeconds );
+ animation.RotateTo( actor, rotation, alpha, durationSeconds.delaySeconds, durationSeconds.durationSeconds );
+ animation.ScaleTo( actor, scale, alpha, durationSeconds.delaySeconds, durationSeconds.durationSeconds );
+ animation.Play();
+ }
+ else
+ {
+ actor.SetPosition( position );
+ actor.SetSize( size );
+ actor.SetRotation( rotation );
+ actor.SetScale( scale );
+ }
+}
+