Esempio n. 1
0
    private void AddNewMarker(Vector3 mousePosition, int markerId)
    {
        // put new marker between the emulator collider and IdSelector
        mousePosition.z = -1;
        EmulatedMarker newMarker = Instantiate(markerSprites[markerId], mousePosition, Quaternion.identity, transform).GetComponent <EmulatedMarker>();

        newMarker.marker = new Marker(0, _markerId, uniqueId++, mousePosition);
        existingMarkers.Add(newMarker);
        trackingHandler.onDetectedEvent.Invoke(newMarker.marker);
    }
Esempio n. 2
0
    public void OnExistingClicked(EmulatedMarker clickedMarker)
    {
        if (clickedMarker.hidden)
        {
            UnhideMarker(clickedMarker);
        }

        else
        {
            HideMarker(clickedMarker);
        }
    }
Esempio n. 3
0
    private EmulatedMarker CheckCollisionWithExistingMarker(Vector3 mousePosition)
    {
        EmulatedMarker existingMarker = null;

        // check collision with exsting marker
        for (int i = existingMarkers.Count - 1; i >= 0; i--)
        {
            // trigger onLost event if clicked in existing marker
            if (existingMarkers[i].transform.GetComponent <Collider2D>().bounds.Contains(mousePosition))
            {
                existingMarker = existingMarkers[i];
            }
        }

        return(existingMarker);
    }
Esempio n. 4
0
 private void UnhideMarker(EmulatedMarker hiddenMarker)
 {
     hiddenMarker.Unhide();
     hiddenMarkers.Remove(hiddenMarker);
     trackingHandler.onRedetectedEvent.Invoke(hiddenMarker.marker);
 }
Esempio n. 5
0
 private void HideMarker(EmulatedMarker marker)
 {
     trackingHandler.onLostEvent.Invoke(marker.marker);
     marker.Hide();
     hiddenMarkers.Add(marker);
 }
Esempio n. 6
0
 private void RemoveMarker(EmulatedMarker markerToRemove)
 {
     existingMarkers.Remove(markerToRemove);
     markerToRemove.Remove();
 }