Class MegaTrackerFrameFilter
- 네임스페이스
- easyar
- 어셈블리
- EasyAR.Sense.dll
씬에서 easyar.MegaTracker의 MonoBehaviour를 제어하며, Unity 환경에서 기능 확장을 제공합니다.
[RequireComponent(typeof(BlockHolder))]
public class MegaTrackerFrameFilter : FrameFilter
- 상속
-
MegaTrackerFrameFilter
속성
BlockHolder
Block을 보유하는 컴포넌트로, 씬에서 Block을 보유하고 관리합니다.
public BlockHolder BlockHolder { get; }
CameraPositionOverride
지도 블록에 대한 카메라 위치의 커버리지 값. 설정 시 MegaTracker는 입력 프레임 데이터의 해당 좌표를 사용하지 않고 커버리지 값을 출력합니다. 지도 정보를 알고 있고 센서가 제한적인 경우 출력 포즈의 정확도를 향상시키는 데 사용할 수 있습니다.
public (Optional<float> x, Optional<float> y, Optional<float> z) CameraPositionOverride { get; set; }
EnableLocalization
위치 추적 활성화 여부. 위치 추적이 비활성화된 경우 서버에서 반환된 위치 추적 결과가 출력되지 않습니다. 기본값은 true입니다.
추적 효과에 영향을 미칩니다. EasyAR에 문의하여 영향을 명확히 이해하지 않은 경우 사용하지 마십시오.
public bool EnableLocalization { get; set; }
EnableStatelessLocalization
무상태 위치 추적 사용 여부. 무상태 위치 추적을 활성화하면 위치 추적 시 이전 위치 추적 결과를 사용하지 않습니다. 기본값: false.
추적 효과에 영향을 미칩니다. EasyAR에 문의하여 영향을 명확히 이해하지 않는 한 사용하지 마십시오.
public bool EnableStatelessLocalization { get; set; }
LandmarkFilter
ServiceType가 Landmark일 때의 메가 랜드마크 필터링 기능. 시작 시 수동으로 FilterBySpotId(string, Action<MegaLandmarkFilterResponse>)를 호출해야 합니다. Filter가 Found를 반환하기 전까지 Tracker는 추적을 시작하지 않습니다.
public Optional<MegaLandmarkFilterWrapper> LandmarkFilter { get; }
LocationInputMode
위치 입력 모드. 세션 시작 전에 설정해야 합니다. 원격 디버깅이나 PC에서 실행할 때는 Simulator로 설정해야 하며, 그렇지 않으면 사용할 수 없습니다. 현장 사용 시 최적의 효과를 위해 Onsite로 설정해야 합니다.
public MegaLocationInputMode LocationInputMode { get; set; }
MinInputFrameLevel
입력 프레임의 최소 허용 MegaInputFrameLevel입니다. frame source가 CameraTransformType의 차원이 더 낮은 데이터만 제공할 수 있는 경우, 세션은 시작되지 않습니다. 세션 시작 전에 설정해야 합니다.
public MegaInputFrameLevel MinInputFrameLevel { get; set; }
ProximityLocation
근접 위치 결과.
public Optional<ProximityLocationResult> ProximityLocation { set; }
RequestMessage
public string RequestMessage { get; set; }
RequestTimeParameters
요청 시간 매개변수.
public MegaRequestTimeParameters RequestTimeParameters { get; set; }
ServiceAccessData
서비스 접근 데이터. 세션 시작하기 전에 설정해야 합니다. GlobalConfig를 사용하면 설정할 필요가 없습니다.
주요 처리 사항:
- "服务访问数据" -> "서비스 접근 데이터" (표준 기술 용어)
- "Session" -> "세션" (영문 유지 요건 미해당, 일반화된 IT 용어)
- "启动前" -> "시작하기 전에"
- "使用...无需设置" -> "...를 사용하면 설정할 필요가 없습니다" (문법 자연스러운 표현 전환)
- XML 태그(<xref .../>) 내부 속성값(u%3aeasyar.MegaServiceAccessSourceType.GlobalConfig) 완전히 보존
- HTML 태그 구조 및 속성(p, href, data-throw-if-not-resolved) 완벽 유지
- 모든 마침표(.) 및 한글 문장 부호 정상 적용
public ExplicitAddressAccessData ServiceAccessData { get; set; }
ServiceAccessSource
서비스 액세스 데이터 소스 유형. 세션 시작 전에 설정해야 합니다.
public MegaServiceAccessSourceType ServiceAccessSource { get; set; }
ServiceType
EasyAR Mega 서비스 유형. Session 시작 전 설정해야 합니다.
public MegaApiType ServiceType { get; set; }
SimulatorLocation
LocationInputMode == Simulator일 때 사용하는 위치 데이터.
public Optional<Location> SimulatorLocation { get; set; }
enabled
ARSession 런타임 추적 시작/중지. 세션이 시작된 후, MonoBehaviour.enabled가 true일 때만 추적을 시작합니다.
public bool enabled { get; set; }
메서드
ResetTracker()
트래커 재설정.
public void ResetTracker()
SwitchEndPoint(ExplicitAddressAccessData, BlockRootController)
원격 엔드포인트 전환.
public void SwitchEndPoint(ExplicitAddressAccessData config, BlockRootController root)
매개 변수
configroot
UpdateToken(string)
API 토큰을 업데이트합니다.
public void UpdateToken(string token)
매개 변수
token
이벤트
LocalizationRespond
서비스 로케이팅 반환 이벤트. 이 이벤트는 일반적으로 debug 용으로 사용되며, 이벤트 발생 시 장면 내 물체의 위치와 상태는 이벤트 데이터와 대응 관계가 없습니다.
public event Action<MegaLocalizationResponse> LocalizationRespond