Compartir a través de


SpacePin Clase

Definición

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

public class SpacePin : UnityEngine.MonoBehaviour
type SpacePin = class
    inherit MonoBehaviour
Public Class SpacePin
Inherits MonoBehaviour
Herencia
UnityEngine.MonoBehaviour
SpacePin
Derivado

Comentarios

Este componente captura la posición inicial de su gameObject y, a continuación, una segunda posición. A continuación, agrega ese par al Administrador de alineación de WorldLocking. A continuación, el administrador negocia entre todos estos pines agregados, en función de la posición actual de la cabeza, para generar una asignación de fotograma a fotograma que alinee el espacio global de Unity, es decir, el espacio global de Unity, de modo que las patillas coincidan lo mejor posible. Otra manera de expresar esto es: Dada una posición arbitraria (la "posición de modelado") y una posición alineada de alguna manera con el mundo real (la "posición bloqueada del mundo"), aplique una corrección a la cámara de modo que un objeto virtual con coordenadas de la posición de modelado aparecerá superpuesto en el mundo real en la posición y orientación descrita por la posición bloqueada. Para este componente, la posición bloqueada debe entrar a través de una de las tres API siguientes: SetFrozenPose(Pose) con la posición de entrada en el espacio congelado, que incluye anclaje. SetSpongyPose(Pose) con la posición de entrada en Spongy Space, que es el espacio del elemento primario de la cámara, y es el mismo espacio en el que se mueve la cámara, y que las API nativas devuelven valores en (por ejemplo, XR). SetLockedPose(Pose) con la posición de entrada en El espacio bloqueado, que es el espacio estabilizado por la DLL del motor Frozen World, pero excluyendo el anclaje. Tenga en cuenta que, dado que alignmentManager cambia el espacio congelado, llamar a SetFrozenPose(p) con la misma pose p dos veces es un error, ya que la Pose p haría referencia a una ubicación diferente después de la primera llamada.

Constructores

SpacePin()

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

Propiedades

AlignmentManager

Descriptor de acceso para invalidar alignmentManager del script.

AnchorId

Este contenedor para anchorId se debe a que anchorId debe almacenarse como ulong, que es la clase base de la enumeración AnchorId. Unity solo admite enumeraciones basadas en int, por lo que se quejará de la serialización, etc. para el AnchorId basado en ulong.

AnchorName

Proporcione un nombre de delimitador único. Se usa para la persistencia.

FragmentId

Identificador del fragmento en el que pertenece este pin.

LockedPose

Descriptor de acceso para la posición bloqueada del mundo para las clases derivadas.

Manager

Acceso de solo lectura a la dependencia de administrador de clases derivadas.

ModelingPoseGlobal

En primer lugar, el par de posturas enviadas al administrador de alineación para la alineación.

ModelPositionSource

Dónde buscar la posición del espacio del modelo en el destino. La transformación es preferible, pero si las transformaciones están horneadas, el representador o el colisionador pueden ser más adecuados.

PinActive

Si este pin de espacio está activo, use el espacio de anclaje.

RestorePoseLocal

Posar para restaurar después de la manipulación (si existe).

Métodos

ExtractModelPose()

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

ExtractModelPoseFromCollider()

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

ExtractModelPoseFromRenderer()

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

ExtractModelPoseFromTransform()

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

ForceAttachment()

Asegúrese de que hay datos adjuntos y que está colocado al día.

GetModelPoseFromGlobalPosition(Vector3)

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

OnDestroy()

Al destruir, anule el registro del evento cargado.

OnLocationUpdate(Pose)

Devolución de llamada para las operaciones de reajuste. Aplicar transformación de ajuste a la posición bloqueada.

PushAlignmentData(IAlignmentManager)

Comunique los datos desde este punto al administrador de alineación.

ReleaseAttachment()

Elimine cualquier punto de datos adjuntos creado anteriormente.

Reset()

Volver al estado inicial, incluida la eliminación de artefactos independientes del administrador de alineación.

ResetModelingPose()

Restablezca la posición de modelado a la transformación actual.

RestoreOnLoad()

Devolución de llamada en la notificación de la base de datos del administrador de alineación para comprobar si este valor preestablecido se ha conservado y restaurarlo en operación si lo tiene.

SendAlignmentData(IAlignmentManager)

Notifique al administrador que se han enviado todas las actualizaciones necesarias y estén listas para su procesamiento.

SetFrozenPose(Pose)

Transforme la posición en Espacio bloqueado y pase por él.

SetLockedPose(Pose)

Registre la posición bloqueada e inserte los datos en el administrador.

SetSpongyPose(Pose)

Transforme la posición en Espacio bloqueado y pase por él.

Start()

Asistente de componentes para anclar el espacio bloqueado del mundo en un único punto de referencia.

Se aplica a