User Tools

Site Tools


built_in:sensors

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
built_in:sensors [2014/09/17 19:18]
stevegarman created
built_in:sensors [2018/01/03 10:23] (current)
Line 1: Line 1:
-====== Sensor control ====== +====== Sensors ====== 
-===== Create ===== + 
-Create Sensor objects using the CreateSensor function of the app object:+//(Information and examples taken from the DroidScript documentation). Information provided by Nick Weber// 
 + 
 +===== Description ===== 
 +Create Sensor objects using the **CreateSensor** function of the **[[built_in:app|app]]** object:
 <code>sns = app.CreateSensor( type, options );</code> <code>sns = app.CreateSensor( type, options );</code>
-Types available are: "Accelerometer", "MagneticField", "Orientation""Lightand "Proximity".+Types available are:  
 +  * **Accelerometer** 
 +  * **MagneticField** 
 +  * **Orientation** 
 +  * **Light** 
 +  * **Proximity** 
 +  * **Temperature** 
 +  * **GameRotation** 
 +  * **GeomagneticRotation** 
 +  * **Gravity** 
 +  * **Gyroscope** 
 +  * **HeartRate** 
 +  * **Acceleration** 
 +  * **Pressure** 
 +  * **Humidity** 
 +  * **Rotation** 
 +  * **Motion** 
 +  * **StepCounter** 
 +  * **StepDetector** 
 + 
 +Try **sns.GetNames()** which lists all the sensor information. You can probably scan for certain keywords. 
 + 
 +You can also use a sensor id number instead of the name (just in case a future sensor is added). 
 + 
 +You can use the **SetOnChange** function of the Sensor to set the name of a function you want to be called when a the changes occur. 
 + 
 +Change the rate that a sensor checks for changes by adding one the options **"Fastest"****"Fast"****"Medium"** or **"Slow"**. 
 +"Slowis the default.
  
-You can use the SetOnChange function of the Sensor to set the name of a function you want to be called when a the changes occur. 
  
-Change the rate that a sensor checks for changes by adding one the options "Fastest", "Fast", "Medium" or "Slow". "Slow" is the default. 
 ===== Methods ===== ===== Methods =====
-^Method ^Description ^ +Some controls use the same methods.\\ 
-|sns.GetAzimuth| | +For examples of the **[[same methods]]** look here. 
-|sns.GetHeight| | +^ Method                          ^ Description                              
-|sns.GetPitch| | +Sensor.GetAzimuth()                                                      
-|sns.GetRoll| | +Sensor.GetHeight()                                                       
-|sns.GetVisibility| | +Sensor.GetNames()               returns a list of all available sensors  
-|sns.GetWidth| | +Sensor.GetPitch()                                                        
-|sns.Release| | +Sensor.GetRoll()                                                         
-|sns.SetBackColor| | +Sensor.GetType()                                                         
-|sns.SetBackGradient| | +Sensor.GetValues()                                                       
-|sns.SetBackGradientRadial| | +Sensor.SetMaxRate( rate )       default 20ms                             
-|sns.SetBackground| | +Sensor.SetMinChange( value )    a value between 0 and 1                  
-|sns.SetMargins| | +Sensor.SetOnChange( callback )                                           
-|sns.SetMinChange| | +Sensor.Start()                                                           
-|sns.SetOnChange| | +Sensor.Stop()                                                            | 
-|sns.SetPadding| | + 
-|sns.SetPosition| +===== Examples ===== 
-|sns.SetSize| | +^Sensor Type ^Code Example ^ 
-|sns.SetVisibility| | +|Accelerometer | <code javascript>function OnStart() 
-|sns.Start+
-|sns.Stop| |+  lay = app.CreateLayout( "Linear", "VCenter,FillXY" ); 
 + 
 +  txt = app.CreateText( "", 0.8, 0.3, "Multiline" ); 
 +  lay.AddChild( txt ); 
 +  app.AddLayout( lay ); 
 + 
 +  sns = app.CreateSensor( "Accelerometer" ); 
 +  sns.SetOnChange( sns_OnChange ); 
 +  sns.Start(); 
 + 
 +
 + 
 +function sns_OnChange( x, y, z, time ) 
 +
 +  txt.SetText( "x="+x + "\n y="+y + "\n z="+z ); 
 +
 +</code> 
 +|Orientation | <code javascript>function OnStart() 
 +
 +  lay = app.CreateLayout( "Linear", "VCenter,FillXY" ); 
 + 
 +  txt = app.CreateText( "", 0.8, 0.3, "Multiline" ); 
 +  lay.AddChild( txt ); 
 +  app.AddLayout( lay ); 
 + 
 +  sns = app.CreateSensor( "Orientation" ); 
 +  sns.SetOnChange( sns_OnChange ); 
 +  sns.Start(); 
 + 
 +
 + 
 +function sns_OnChange( azimuth, pitch, roll, time ) 
 +
 +  var msg = " azimuth = " + azimuth.toFixed(1); 
 +  msg += "\n pitch = " + pitch.toFixed(1); 
 +  msg += "\n roll = " + roll.toFixed(1); 
 +  txt.SetText( msg ); 
 +
 +</code> 
 +|Light | <code javascript>function OnStart() 
 +
 +  lay = app.CreateLayout( "Linear", "VCenter,FillXY" ); 
 + 
 +  txt = app.CreateText( "", 0.8, 0.3 ); 
 +  lay.AddChild( txt ); 
 +  app.AddLayout( lay ); 
 + 
 +  sns = app.CreateSensor( "Light" ); 
 +  sns.SetOnChange( sns_OnChange ); 
 +  sns.Start(); 
 + 
 +
 + 
 +function sns_OnChange( lux ) 
 +
 +  txt.SetText( "level = " + lux + " lux" ); 
 +
 + 
 +</code> |
built_in/sensors.1410981501.txt.gz · Last modified: 2014/09/18 03:18 (external edit)