Skip to content

3DCursor

uozumi edited this page Oct 15, 2023 · 5 revisions

必要な機能

・選択物をカーソル位置に移動させる
・カーソルを選択位置に移動させる

概要

Buttonを叩く
└Buttonのif内→ set3dcursor_hogehoge()
 └setcursor_hogehoge()→ get_selectposition()とset_3dcursor()
  ├get_selectposition()→ 今選択しているオブジェクトのpositionを返す
  ├set_3dcursor()→ vrctor3を受け取ってカーソルの位置を変更する

Buttonを叩く
└Buttonのif内→ setselectobjects_hogehoge()
 └setselectobjects_hogehoge()→ get_3dcursor()とset_selectpositions()
  ├get_3dcursor()→ 3dcursorのpositionオブジェクトの位置を変更する
  ├set_selectposition()→ Vector3を受け取って、選択中のオブジェクトの位置を変える

小ウィンドウのボタンをクリックすると、メインクラスのボタンごとの専用関数が呼ばれる。
専用関数の中では下の関数をごにょごにょして処理を実現する。

想定される状況

・ユーザーは一つのオブジェクトを選択している
・ユーザーは複数のオブジェクトを選択している
・オブジェクトのPivotはCenterである
・オブジェクトのPivotはOriginである
・カーソルのポジションを代入前にいじる(カーソルをグリッドへ、カーソルを原点へ)

関数

set_3dcursor(vector3)
 カーソルの位置を引数から設定する
set_selectobjects(vector3)
 選択しているオブジェクトたちにPivot設定を考慮して位置を設定する

get_3dcursor()
 カーソルの位置を返す
get_selectobjects()
 選択しているオブジェクトたちの位置をPivot設定を考慮して取得する

仕様検討のまとめ
3DCursor

Clone this wiki locally