0
0

More than 3 years have passed since last update.

あるGameObjectのワールド座標を指定したものと一致させる

Last updated at Posted at 2020-03-05

こちらを参考にしました。

UnityのTransformのワールド空間とローカル空間について
参考URL:https://gametukurikata.com/basic/worldlocal

スクロール内のセル内の区切り線と
スクロールの上にあるヘッダーの区切り線を合わせたいので、
スクロール内のセルの区切り線の絶対座標を取得して、
ヘッダーの区切り線に入れたところ一致した。
(Vertical Layout Group で Child Force Expand しているので、
 都度1セル当たりの横幅が変化するため、このような事を行っている。
 高速スクロールを実現するためにEnabledはTrueにしてからFalseに必ず戻す)

名前 | 数 | 値段
あ  | 1 | 100  ← 解像度対応で縦棒がVertical Layout GroupのEnabledをTrueにするたびに変化
い  | 2 | 200  ← 解像度対応で縦棒がVertical Layout GroupのEnabledをTrueにするたびに変化

        /// <summary>
        /// スクロールする1セル最初の区切り棒のワールド座標
        /// </summary>
        [SerializeField]
        private Transform CellFirstColumnWorldPosition;

        /// <summary>
        /// スクロールする1セル2つ目の区切り棒のワールド座標
        /// </summary>
        [SerializeField]
        private Transform CellSecondColumnWorldPosition;

        /// <summary>
        /// スクロールヘッダー最初の区切り棒のワールド座標
        /// </summary>
        [SerializeField]
        private Transform HeaderFirstColumnWorldPosition;

        /// <summary>
        /// スクロールヘッダー2つ目の区切り棒のワールド座標
        /// </summary>
        [SerializeField]
        private Transform HeaderSecondColumnWorldPosition;

// 1つ目のヘッダーのX座標
HeaderFirstColumnWorldPosition.position = 
    new Vector3(CellFirstColumnWorldPosition.position.x, 
                HeaderFirstColumnWorldPosition.position.y, 
                HeaderFirstColumnWorldPosition.position.z);

// 2つ目のヘッダーのX座標
HeaderSecondColumnWorldPosition.position = 
    new Vector3(CellSecondColumnWorldPosition.position.x, 
                HeaderSecondColumnWorldPosition.position.y, 
                HeaderSecondColumnWorldPosition.position.z);

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0