public BoundingBox ConstructCornerChild(CameraCorner corner) { var newBound = BoundingBox.ConstructBoundingBox(Vector3.zero, corner.ToString()); newBound.transform.parent = CameraCornerProvider.GetCornerTransform(corner); newBound.transform.localScale = Vector3.one; newBound.transform.localRotation = Quaternion.identity; newBound.transform.localPosition = Vector3.zero; return(newBound); }
public override IEnumerator ReceivePayload(VisualPayload payload) { var newBound = ConstructCornerChild(CameraCorner.GetFirstValue(payload.Data)); ConstructedBounds.Add(newBound); var newPayload = new VisualPayload(payload.Data, new VisualDescription(newBound)); var iterator = Router.TransmitAll(newPayload); while (iterator.MoveNext()) { yield return(null); } }
public static Transform GetCornerTransform(CameraCorner corner) { switch (corner) { case CameraCorner.TopCenter: return(Instance.TopCenter); case CameraCorner.BottomCenter: return(Instance.BottomCenter); case CameraCorner.TopRight: return(Instance.TopRight); case CameraCorner.TopLeft: return(Instance.TopLeft); case CameraCorner.BottomLeft: return(Instance.BottomLeft); case CameraCorner.BottomRight: return(Instance.BottomRight); } throw new Exception("Cannot find camera corner " + corner + "!"); }