Example #1
0
        public static TrackableId AddOrUpdate(TrackableId planeId, TrackableId subsumedById, Pose pose, Vector2[] boundaryPoints, TrackingState trackingState = TrackingState.Tracking)
        {
            if (boundaryPoints == null)
            {
                throw new ArgumentNullException("boundaryPoints");
            }

            if (planeId == TrackableId.invalidId)
            {
                planeId = NativeApi.NewTrackableId();
            }

            if (!s_TrackingStates.ContainsKey(planeId))
            {
                s_TrackingStates[planeId] = trackingState;
            }

            SetPlaneData(planeId, pose, boundaryPoints);

            if (subsumedById != TrackableId.invalidId)
            {
                NativeApi.UnityXRMock_subsumedPlane(planeId, subsumedById);
            }

            return(planeId);
        }
Example #2
0
 public static void Merge(TrackableId planeId, TrackableId subsumedById)
 {
     NativeApi.UnityXRMock_subsumedPlane(planeId, subsumedById);
 }