사용자가 원하는 위도, 경도 주변에 있는지 확인

	void DetectPlace()
    {
        //원하는 위치 수 만큼 반복
        foreach (LatLong latLong in latLongs)
        {
            //현재 위치와 원하는 위치의 거리가 범위 내에 들어가지 않으면 isInPlace = false, 반복문 continue
            if (Vector3.Magnitude(currentLocation - GPSEncoder.GPSToUCS(latLong.lat, latLong.lon)) > distance)
            {
                isInPlace = false;
                continue;
            }
            //범위 내에 들어간다면 isInPlace = true, 위치 이름을 place에 저장
            isInPlace = true;
            place = latLong.name;
            return;
        }
    }
이벤트 프리팹을 생성하거나 삭제
위치 범위에서 벗어나고 이벤트 프리팹이 생성 되었다면, 이벤트 프리팹을 삭제하는 함수 DestroyEventPre()

위치 범위 내에 있고 이벤트 프리팹이 생성되지 않았다면, 바닥을 감지한 뒤 이벤트 프리팹을 생성하는 함수 DetectGround()

	void Update()
    {
        if (!isInPlace) 
        {
            if (isGen)
            {
                DestroyEventPre();
            }
            return; 
        }
        if (!isGen)
        {
            DetectGround();
        }
    }
스마트폰 중앙 지점에서 Ray를 발사할 때 Plane타입의 물체가 존재 한다면 EventPrefab 활성화 후 EventPrefab의 위치를 Plane으로 설정
오브젝트 활성화 정보를 저장하는 isGen을 true로 설정

    void DetectGround()
    {
        //스마트폰 스크린의 Center를 찾음
        Vector2 centerPoint = new Vector2(Screen.width * 0.5f, Screen.height * 0.5f);
        //Ray에 부딪힌 대상들의 정보를 저장할 리스트 생성
        List<ARRaycastHit> hitInfos = new List<ARRaycastHit>();
        //스크린 중앙지점으로 부터 Ray를 발사 했을 때, Plane 타입의 물체가 존재한다면,
        if (arRayMan.Raycast(centerPoint, hitInfos, TrackableType.Planes))
        {
            //표식 오브젝트 활성화
            eventPre.SetActive(true);
            isGen = true;
            //표식 오브젝트의 위치와 회전값 업데이트
            eventPre.transform.position = hitInfos[0].pose.position;
            eventPre.transform.rotation = hitInfos[0].pose.rotation;
        }
    }

터치시 터치한 화면 위치에서 Ray를 발사할 때, smallEvent를 포함한 오브젝트가 있다면 text와 image를 출력할 UI Canvas 활성화
해당 위치의 text와 image를 보여주는 smallEventManager 스크립트의 함수 사용
	void Update()
    {
        if (Input.touchCount == 0) return;  //터치 횟수가 0이면 return
        Touch touch = Input.GetTouch(0);
        
        if (touch.phase == TouchPhase.Began) // 터치 시작시
        {
            Ray ray;
            RaycastHit hitobj;
            ray = arCamera.ScreenPointToRay(touch.position); //카메라 정중앙에서 ray쏨
            if (Physics.Raycast(ray, out hitobj)) //맞은 오브젝트가 있으면 hitobj에 저장하고 if들어감
            {
                //터치한 곳에 오브젝트 이름이 smallEvent를 포함하면
                if (hitobj.collider.name.Contains("smallEvent"))
                {
                    //현재 위치의 document id 들고옴
                    GetComponent<PlaceInfo>().documentId = GameObject.Find("AR Session Origin").GetComponent<AREventGen>().place;
                    //UI띄움
                    if(!smallEventManager.isView) // UI가 비활성 상태면 띄우기
                        smallEventManager.View(GameObject.Find("smallEvent"));
                    else // 활성상태면 index증가해서 다음 text띄우기
                        smallEventManager.TextView(GetComponent<PlaceInfo>().documentId);
                }
                
            }
        }
    }
혹시 전체 코드를 볼 수 있을까요... 어떤식으로 연결되어 있는지 이해가 안되서.. 도와주세요!