दिलचस्प पोस्ट
मैं .htaccess के साथ दोस्ताना यूआरएल कैसे बना सकता हूँ? आप सी में स्ट्रैक्ट्स की एक सरणी कैसे बनाते हैं? आइकलिंग <टी> वीएस लिस्ट <टी> इनटाइटी फ्रेमवर्क में म्कक के साथ एचटीटीपी कंटेंटेबबेस मजाक करना स्विफ्ट 2 (executeFetchRequest): त्रुटि हैंडलिंग ASP.NET कस्टम त्रुटि पृष्ठ – Server.GetLastError () रिक्त है जैक्सन एनोटेशन में पॉलीमॉर्फिज़्म: @ जेसनटाइपइन्फो उपयोग एक टेक्स्टरेया में लाइनों की संख्या कैसे प्राप्त करें? एंड्रॉइड: कैसे एक InflateException की उत्पत्ति को ट्रैक करने के लिए? स्पार्क के साथ सीएसवी फ़ाइल लोड करें तीन। जेएस में एक ही जाल चेहरे पर एकाधिक पारदर्शी बनावट ऑरेकल में सभी टेबल बाधाओं को अक्षम करें IOS 8 UIPageViewController संक्रमण के बाद लागू बाधाओं एक ही थ्रेडेड प्रोग्रामिंग मॉडल में एसिंक्रोनस प्रोग्रामिंग कैसे काम करता है? यह सामान्य जावा कोड क्यों संकलित नहीं करेगा?

एंड्रॉइड ओरिएंटेशन सेंसर का विकल्प क्या है?

हाय, मैं एंड्रॉइड के लिए एक 3D गेम का निर्माण कर रहा हूं।

मैं वर्तमान में अपने गेम के लिए एक सेंसर जोड़ने का प्रयास कर रहा हूं जो कि खिलाड़ी को एंड्रॉइड को उसके नियंत्रण के रूप में झुकाता है।

आदर्श रूप में मैं ओरिएंटेशन सेंसर का उपयोग करना चाहूंगा, लेकिन मैंने देखा कि इसे नापसंद किया गया है। क्या किसी को पता है कि एंड्रॉइड में झुकाव का पता कैसे लगा और इस संवेदक का उपयोग न करें?

वेब के समाधान से एकत्रित समाधान "एंड्रॉइड ओरिएंटेशन सेंसर का विकल्प क्या है?"

कोई वास्तविक "अभिविन्यास" सेंसर नहीं है – यह वास्तव में एक संवेदी संवेदक है, जो एक्सीलरोमीटर और मैग्नेमोमीटर के संयोजन से उत्पन्न होता है।

http://developer.android.com/reference/android/hardware/SensorEvent.html से

"यह सेंसर प्रकार विरासत के कारणों के लिए मौजूद है, कृपया रिमैक कॉओरेडिएट सिस्टम () के साथ संयोजन में getRotationMatrix () का उपयोग करें और इसके बजाय इन मानों की गणना करें।"

public class OrientationTestActivity extends Activity implements SensorEventListener { private SensorManager mSensorManager; private Sensor mAccelerometer; private Sensor mMagnetometer; private float[] mLastAccelerometer = new float[3]; private float[] mLastMagnetometer = new float[3]; private boolean mLastAccelerometerSet = false; private boolean mLastMagnetometerSet = false; private float[] mR = new float[9]; private float[] mOrientation = new float[3]; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); mMagnetometer = mSensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD); } protected void onResume() { super.onResume(); mLastAccelerometerSet = false; mLastMagnetometerSet = false; mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL); mSensorManager.registerListener(this, mMagnetometer, SensorManager.SENSOR_DELAY_NORMAL); } protected void onPause() { super.onPause(); mSensorManager.unregisterListener(this); } public void onAccuracyChanged(Sensor sensor, int accuracy) { } @Override public void onSensorChanged(SensorEvent event) { if (event.sensor == mAccelerometer) { System.arraycopy(event.values, 0, mLastAccelerometer, 0, event.values.length); mLastAccelerometerSet = true; } else if (event.sensor == mMagnetometer) { System.arraycopy(event.values, 0, mLastMagnetometer, 0, event.values.length); mLastMagnetometerSet = true; } if (mLastAccelerometerSet && mLastMagnetometerSet) { SensorManager.getRotationMatrix(mR, null, mLastAccelerometer, mLastMagnetometer); SensorManager.getOrientation(mR, mOrientation); Log.i("OrientationTestActivity", String.format("Orientation: %f, %f, %f", mOrientation[0], mOrientation[1], mOrientation[2])); } } }