0
에서 열거 키에 의해 액세스 값 I는 키 넥트 플러그인과 유니티에서C#을 사전 - 유니티/키 넥트 프로젝트
RootSystem.Collections.Generic.Dictionary<Microsoft.Kinect.Face.FaceProperty, Windows.Kinect.DetectionResult> FaceProperties
에 액세스하기 위해 노력하고있어.
따라서, FaceProperty 및 DetectionResult이 열거 형은 다음과 같습니다
FaceProperties // Count = 8
FaceProperties[0] // Incorrect types or number of arguments
FaceProperties[FaceProperty.Happy] // The name 'FaceProperties[global::Microsoft.Kinect.Face.FaceProperty.Happy]'
// does not exist in the current context.
당신을 수행
public enum FaceProperty : int
{
Happy =0,
Engaged =1,
WearingGlasses =2,
LeftEyeClosed =3,
RightEyeClosed =4,
MouthOpen =5,
MouthMoved =6,
LookingAway =7,
}
및 디버그 모드에서 다음
public enum DetectionResult : int
{
Unknown =0,
No =1,
Maybe =2,
Yes =3,
}
, 나는 FaceProperties 액세스를 시도했다 사전 FaceProperties의 값에 어떻게 접근 할 수 있을지 생각해보십시오. 사전에
감사합니다, 당신은 아마 네임 스페이스 누락
좋은 추측을,하지만 난 이미 내 스크립트에이 라인을 가지고 ...하지만 또 다른 질문으로 저를 지적했다 : 'dictionary [Enum.Key]'의 문법이 일반적으로 올바르지 않습니까? 아니면 단결을 코딩하는 데 문제가 있습니까? 말하자면,이 문제는 내가 작성한 약간의 코딩 테스트에 따르면 다른 어느 곳에서나있다 : [link] (http://rextester.com/BNFCD7626). 나는이 방향으로 더 조사 할 것이므로 매우 감사드립니다. – bertiooo
두 번째 시도에서 테스트가 실패하는 것을 볼 수 있습니다. Dictionary에는 인덱싱이 없습니다. 항목이 목록이나 배열처럼 메모리에 정렬되지 않았기 때문입니다. 마지막 버전은 예외를 피하기 위해 키를 확인할 수있는 최상의 방법입니다. 또한 dict.ContainsKey보다 빠릅니다. – Everts
디버거 시계 패널에서 런타임에 변수를 읽으려고했는데 이제는 작동합니다 ... monodevelop .. 문제가있는 것 같습니다. 다시 thx – bertiooo