public void PlaceObjectInMidAir(Transform midAirTransform)
    {
        if (midAirTransform == null || AnchorStage == null)
        {
            Debug.LogWarning("Hit test is invalid or AnchorStage not set");
            return;
        }

        var anchor = _deviceTracker.CreateMidAirAnchor(Guid.NewGuid().ToString(), midAirTransform);

        if (anchor != null)
        {
            AnchorStage.transform.parent        = anchor.transform;
            AnchorStage.transform.localPosition = Vector3.zero;
            AnchorStage.transform.localRotation = Quaternion.identity;
            AnchorStage.SetActive(true);
        }

        if (_previousAnchor != null)
        {
            Destroy(_previousAnchor);
        }

        _previousAnchor = anchor;
    }
    public void PlaceObjectInMidAir(Transform midAirTransform)
    {
        Debug.Log("PlaceObjectInMidAir() called.");

        if (planeMode != PlaneMode.MIDAIR)
        {
            Debug.Log("Invalid Ground Plane Mode:" + planeMode);
            return;
        }

        if (m_PositionalDeviceTracker != null && m_PositionalDeviceTracker.IsActive)
        {
            DestroyAnchors();

            m_MidAirAnchor      = m_PositionalDeviceTracker.CreateMidAirAnchor("MyMidAirAnchor_" + (++m_AnchorCounter), midAirTransform);
            m_MidAirAnchor.name = "MidAirAnchor";

            if (!m_MidAirAugmentation.activeInHierarchy)
            {
                Debug.Log("Setting Mid-Air Augmentation to Active");
                // On initial run, unhide the augmentation
                m_MidAirAugmentation.SetActive(true);
            }

            Debug.Log("Positioning Mid-Air Augmentation at: " + midAirTransform.position.ToString());
            // parent the augmentation to the anchor
            m_MidAirAugmentation.transform.SetParent(m_MidAirAnchor.transform);
            m_MidAirAugmentation.transform.localPosition = Vector3.zero;
            RotateTowardCamera(m_MidAirAugmentation);
        }
    }
    /// <summary>
    /// point is the  Measurepoint 1 or 2
    /// </summary>
    /// <param name="result"></param>
    /// <param name="point"></param>
    void PutMeasurePointMidAir(Transform inputPosition, GameObject point)
    {
        var anchor = _deviceTracker.CreateMidAirAnchor(point.name, inputPosition.position, point.transform.rotation); //inputPosition.rotation

        if (anchor != null)
        {
            point.transform.position = inputPosition.position;
            point.transform.rotation = Quaternion.identity;//inputPosition.rotation;

            point.SetActive(true);
            point.GetComponent <Collider>().enabled     = true;
            point.GetComponent <MeshRenderer>().enabled = true;
        }
    }