Interface ITransform3D
- Namespace
- VMagicMirror.Buddy
姿勢を取得・編集できるような3DオブジェクトのTransform情報です。
public interface ITransform3DProperties
LocalPosition
オブジェクトのローカル座標での位置を取得、設定します。
Vector3 LocalPosition { get; set; }Property Value
Remarks
SetParent(IReadOnlyTransform3D) などで親オブジェクトを指定している場合、この値は親オブジェクトに対するローカル姿勢を表します。 そうでない場合、この値はワールド座標に相当する値になります。
LocalRotation
オブジェクトのローカル座標での回転を取得、設定します。
Quaternion LocalRotation { get; set; }Property Value
Remarks
SetParent(IReadOnlyTransform3D) などで親オブジェクトを指定している場合、この値は親オブジェクトに対するローカル姿勢を表します。 そうでない場合、この値はワールド座標に相当する値になります。
LocalScale
オブジェクトのローカル座標でのスケールを取得、設定します。
Vector3 LocalScale { get; set; }Property Value
Remarks
SetParent(IReadOnlyTransform3D) などで親オブジェクトを指定している場合、この値は親オブジェクトのスケールと組み合わせて適用されます。 そうでない場合、この値そのものでオブジェクトのスケールが定まります。
Position
オブジェクトの位置をワールド座標で取得、設定します。
Vector3 Position { get; set; }Property Value
Rotation
オブジェクトの回転をワールド座標で取得、設定します。
Quaternion Rotation { get; set; }Property Value
Methods
AsReadOnly()
インスタンスを読み取り専用とみなした値に変換します。
IReadOnlyTransform3D AsReadOnly()Returns
- IReadOnlyTransform3D
- 読み取り専用扱いに変換した値 
Remarks
このメソッドの戻り値を経由するとTransformの状態は編集できなくなります。 ただし、呼び出し元のインスタンス自体は引き続き編集可能です。
RemoveParent()
親オブジェクトを削除し、オブジェクトをワールド空間に直接配置した状態にします。
void RemoveParent()SetParent(HumanBodyBones)
親オブジェクトとして、メインアバターの特定のボーンを指定します。
void SetParent(HumanBodyBones bone)Parameters
- boneHumanBodyBones
- 親オブジェクトとして用いるアバターのボーン 
Remarks
NoneやLastBoneを指定した場合、親オブジェクトを外す処理として扱われます。 この関数はメインアバターがロードされていない状態でも呼び出せます。 メインアバターがロードされた時点で、指定したアバターのボーンが親オブジェクトに切り替わります。
SetParent(IReadOnlyTransform3D)
親オブジェクトを指定します。
void SetParent(IReadOnlyTransform3D parent)Parameters
- parentIReadOnlyTransform3D
- 親オブジェクト 
Remarks
親オブジェクトを指定すると、このTransformが関連するオブジェクトの姿勢や大きさは親オブジェクトの影響を受けるようになります。
SetParent(ITransform3D)
親オブジェクトを指定します。
void SetParent(ITransform3D parent)Parameters
- parentITransform3D
- 親オブジェクト 
Remarks
親オブジェクトを指定すると、このTransformが関連するオブジェクトの姿勢や大きさは親オブジェクトの影響を受けるようになります。