Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mobile 确定';景观';和';肖像画';Arduino定向_Mobile_Arduino_Orientation_Screen Orientation - Fatal编程技术网

Mobile 确定';景观';和';肖像画';Arduino定向

Mobile 确定';景观';和';肖像画';Arduino定向,mobile,arduino,orientation,screen-orientation,Mobile,Arduino,Orientation,Screen Orientation,移动设备如何确定是处于横向模式还是纵向模式 如果有相同的传感器可用,是否有可能在Arduino板上复制相同的功能 例如,下图所示的电路板将是横向的,如果旋转90度,它将是纵向的 本文详细介绍了它 Objective-C中提供了相关的代码片段,但可以轻松地翻译成您需要的任何形式: float x = -[acceleration x]; float y = [acceleration y]; float angle = atan2(y, x); if(angle >= −2.25 &

移动设备如何确定是处于横向模式还是纵向模式

如果有相同的传感器可用,是否有可能在Arduino板上复制相同的功能

例如,下图所示的电路板将是横向的,如果旋转90度,它将是纵向的


本文详细介绍了它

Objective-C中提供了相关的代码片段,但可以轻松地翻译成您需要的任何形式:

float x = -[acceleration x];
float y = [acceleration y];
float angle = atan2(y, x);

if(angle >= −2.25 && angle <= −0.75) {
   //OrientationPortrait
} else if(angle >= −0.75 && angle <= 0.75){
   //OrientationLandscapeRight
} else if(angle >= 0.75 && angle <= 2.25) {
   //OrientationPortraitUpsideDown
} else if(angle <= −2.25 || angle >= 2.25) {
   //OrientationLandscapeLeft];
}
float x=-[加速度x];
浮动y=[加速度y];
浮动角度=atan2(y,x);
如果(角度>=−2.25和角度=−0.75和角度=0.75和角度