お世話になっております。
しゃまとんです。

UnityのuGUIを使って、画面上で円運動させたいなーと思いやってみました。
Mathfにあるsin/cos関数をx,yに当てはめることで回転させられます。

sin/cos関数にはラジアンを渡します。MathfのDeg2Radを使うと角度を簡単にラジアンに変換できます。

float rad = angle * Mathf.Deg2Rad;

float x = Mathf.Cos(rad) * r;
float y = Mathf.Sin(rad) * r;

今回は複数のUIオブジェクトを均等に配置したかったので、ベースオブジェクトを用意してスクリプト上から複製して、 座標計算して設定しています。
半径はスクリプトで定義してもいいですし、 ベースオブジェクトを0度などわかりやすい位置に置いて利用してもいいと思います。

スクリプトは上記画像のUIオブジェクトにつけて、Baseを参照させます。
コードはこんな感じです。

using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;

public class UICircle : MonoBehaviour {
  // 回転速度
  private const float speed = 2f;
  // 生成数
  private const int num = 5;

  [SerializeField]
  private Image imgBase; // ベース
  private float r;       // 半径

  // 回転に利用する
  private List<RectTransform> transes = new List<RectTransform>();
  private List<float> startRads = new List<float>();

  // cache
  private Transform myTrans;

  void Start() {
    // キャッシュする
    myTrans = transform;

    // 半径を取得
    r = imgBase.rectTransform.localPosition.y;

    // ベースから生成
    GameObject objBase = imgBase.gameObject;
    for (int i = 0; i < num; i++) {
      GameObject obj = Instantiate(objBase);
      obj.transform.SetParent(myTrans, false);

      RectTransform trans = obj.GetComponent<RectTransform>();

      // 角度
      float angle = i * (360 / num) + 90f;
      // ラジアン
      float rad = angle * Mathf.Deg2Rad;
      // 座標変換
      float x = Mathf.Cos(rad) * r;
      float y = Mathf.Sin(rad) * r;

      // 初期位置
      trans.anchoredPosition = new Vector2(x, y);

      // update用に取得
      transes.Add(trans);
      startRads.Add(rad);
    }

    // ベースを消す
    objBase.SetActive(false);
  }

  void Update () {
    // 回転処理
    for (int i = 0; i < transes.Count; i++) {
      float nowRad = Time.time * speed + startRads[i];
      float x = Mathf.Cos(nowRad) * r;
      float y = Mathf.Sin(nowRad) * r;

      transes[i].anchoredPosition = new Vector2(x, y);
    }
  }
}

実行するとくるくると回ります。

以上です。

■ 参考