bool HitTestWithResultType(ARPoint point, ARHitTestResultType resultTypes)
        {
            List <ARHitTestResult> hitResults = UnityARSessionNativeInterface.GetARSessionNativeInterface().HitTest(point, resultTypes);

            if (hitResults.Count > 0)
            {
                foreach (var hitResult in hitResults)
                {
                    Debug.Log("Got hit!");
                    m_HitTransform.position = UnityARMatrixOps.GetPosition(hitResult.worldTransform);
                    Debug.Log(string.Format("x:{0:0.######} y:{1:0.######} z:{2:0.######}", m_HitTransform.position.x, m_HitTransform.position.y, m_HitTransform.position.z));
                    m_HitTransform.rotation = UnityARMatrixOps.GetRotation(hitResult.worldTransform);
                    if (IsHorizontal)
                    {
                        Vector3 currAngle = PortalRoom.transform.eulerAngles;
                        PortalRoom.transform.position = FocusEllipse.FoundEllipse.transform.position;
                        //PortalRoom.transform.LookAt (Camera.main.transform);
                        PortalRoom.transform.eulerAngles = new Vector3(currAngle.x, Camera.main.transform.eulerAngles.y, currAngle.z);

                        PortalRoom.SetActive(true);
                        PortalController.OutsidePortal();
                    }
                    else
                    {
                        Wall.SetActive(true);
                        ResetWall();
                        CanvasController.ShowResetButton();
                    }
                    _isPlaced = true;
                    CanvasController.ScanImage.SetActive(false);
                    Debug.Log("Call hide image");
                    FocusEllipse.IsScanning = false;
                    FocusEllipse.HideFoundEllipse();
                    return(true);
                }
            }
            return(false);
        }