2017-03-09 4 views
0

델파이 RAD 10.1 베를린을 사용하여 안드로이드 장치에서 현재 표제를 검색하려고합니다.현재 표제 델파이 멀티 장치 받기

OrientationSensor에는 True Heading 기능이 있지만 Windows에서는이 기능이 Embarcadero 기술 자료에 따라 활성화되어 있습니다.

그래서, 나는 다음 변수를 하나의 제목으로 변환해야한다고 생각합니다.

OrientationSensor1.Sensor.HeadingX 
OrientationSensor1.Sensor.HeadingY 
OrientationSensor1.Sensor.HeadingZ 

난 단지 제목 (고도에 대한 상관 없어) 필요에 따라

, 나는 내가 0-360에서해야 현재의 제목을 검색해야하는 대가로 Z.

을 무시할 수 있다고 생각합니다.

는 I는 내가 온라인을 발견 공식 사용 : -

angle = atan2(Y, X); 

도움 듯하지만, 일부 위치에서 격렬하게 부정확, 그리고 다른 사람에 부정적이었다.

도움이나 조언을 보내 주시면 감사하겠습니다. 도움이 될 수

일부 세부 사항은 다음과 같습니다

그것은 델파이의 다중 장치 응용 프로그램입니다.

Android 기기에서만 사용할 수 있습니다 (또한 Android 기기에서만 테스트 중입니다).

미리 감사드립니다.

+0

FWIW, atan2는 일부 입력에 대해 음수가 될 것으로 예상됩니다. 그리고 그게 잘못된거야? 그것이 불합리하다고 생각한다면 계속하기 전에 뒤로 물러나서 기본 삼각대를 더 잘 이해해야합니다. 무지 상태에서 문제를 해결하려고하지 마십시오. 잠재적 인 해결책을 이해하십시오. 이 카피 붙여 넣기 문화는 생각이 없어도 좋은 일은 아닙니다. –

+0

안녕하세요, 데이빗, 제가 학위를 받아야하기 때문에, 제가 필요로하는 것에 대해 긍정적이어야합니다. 당신이 의미하는 바를 고맙게 생각합니다. 그리고 저는 제 손을 들어 주어야합니다. 그래서 저는 trig에서 끔찍한 분이라는 것을 인정합니다. 도움을 얻기 위해 인터넷으로 향했다. 그렇다고해서 3 ~ 4 일의 고통이 없었다는 것을 의미하지는 않는다. –

+0

-30은 330과 같고 -390과 같습니다. 제목은 주기적입니다. 이것이 무엇을 의미하는지 생각해보십시오. –

답변

0

HeadingZ을 버리지 마십시오.

이러한 트리 머리글은 세계 표면에 상대적인 것이 아니라 대신 장치 방향 및 기울기를 기준으로합니다.

그래서 진정한 헤딩을 얻으려면 3 축 모두에 대한 헤딩을 고려해야하며 3 축 모두에 대한 정보를 기울여야합니다.

현재 향하고 계산에 대한 자세한 정보를 읽을 수 있습니다 : https://stackoverflow.com/a/1055051/3636228

예 연결 대답은 목표 C입니다하지만 수학은 뒤에 모든 프로그래밍 언어에 대해 동일합니다.

+0

이은을 가져 주셔서 감사합니다. 올바른 것으로 표시하십시오. –