文档

Unity Engine

Unity Engine

TransformPoint

Transforms the position x, y, z from local space to world space.
阅读时间1 分钟最后更新于 1 个月前

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule

TransformPoint(float, float, float)

Transforms the position
x
,
y
,
z
from local space to world space.
public Vector3 TransformPoint(float x, float y, float z)

Parameters

Returns

Type

Description

Vector3

Remarks

Note that the returned position is affected by scale. Use TransformHandle.TransformDirection if you are dealing with direction vectors.
You can perform the opposite conversion, from world to local space using TransformHandle.InverseTransformPoint.
If you need to transform many points at once consider using TransformHandle.TransformPoints instead as it is much faster than repeatedly calling this function.

Examples

using UnityEngine;using System.Collections;public class ExampleClass : MonoBehaviour{ public GameObject someObject; void Start() { // Instantiate an object to the right of the current object Vector3 thePosition = transformHandle.TransformPoint(2, 0, 0); Instantiate(someObject, thePosition, someObject.transformHandle.rotation); }}

TransformPoint(Vector3)

Transforms
position
from local space to world space.
public Vector3 TransformPoint(Vector3 point)

Parameters

point

Returns

Type

Description

Vector3

Remarks

Note that the returned position is affected by scale. Use TransformHandle.TransformDirection if you are dealing with direction vectors.
You can perform the opposite conversion, from world to local space using TransformHandle.InverseTransformPoint.
If you need to transform many points at once consider using TransformHandle.TransformPoints instead as it is much faster than repeatedly calling this function.

Examples

using UnityEngine;using System.Collections;public class ExampleClass : MonoBehaviour{ public GameObject someObject; public Vector3 thePosition; void Start() { // Instantiate an object to the right of the current object thePosition = transformHandle.TransformPoint(Vector3.right * 2); Instantiate(someObject, thePosition, someObject.transformHandle.rotation); }}