Wie benutze ich einen Vibrator richtig?

  • 1 Antworten
  • Neuester Beitrag
Diskutiere Wie benutze ich einen Vibrator richtig? im Android App Entwicklung im Bereich Betriebssysteme & Apps.
Jaiel

Jaiel

Experte
hahaha die Frage sagt es ja schon fast

Also zum Punkt ich hab da ein Gerät und dieses soll Vibrieren damit ich noch mehr spaß als sonst hab beim rum spielen.:scared:

Ich habe mir jetzt die API dazu angeguckt : Vibrator | Android Developers

Ist alles straight-forward soweit.

Aber mir fehlt eine Funktion wie z.B. die Vibrationsstärke einstellen.

Man kann zwar Muster einstellen indem man eine Array mit Longs für die Zeiten übergibt, aber gibt es denn keine Möglichkeit zusätzlich noch die Stärke mit einzustellen.


Süße grüße


Jaiel:love:
 
Jaiel

Jaiel

Experte
Ok infantilen Humor beiseite...

Man kann leider die Intensität nicht beeinflussen aber:

Ich habe nun ein Array aufgebaut den ich aus der funktion f(x)=-0.5*cos(x)+0.5
mittels Pulswellenmodulation aufgebaut der eine Cosinus Kurve von 0 bis 2pi immitiert.

Ich hab die Werte dann ausgerechnet im Code und die Arrays damit befüllt...auf Details gehe ich nciht ein da es zu vieler Erklärungen bedarf.

Ihr könnt diese Funktion hier

"-0.5*cos(x/1.3888889*3.141592654/180)+0.5"

auf dieser Seite mal Plotten : Funktionsplotter | Funktionsgraphen online berechnen mit dem Funktionenplotter!

(stellt die x Achse auf Intervall[0-500] und y achse auf [0-1] ein)


Hioer der Code für das Array mit den Vibrationswerten:

PHP:
        int j=0;
		vibrationPattern=new int[122];
		for(;j<16;j+=2)
		{
			vibrationPattern[j]=vibrationPattern[120-j]=4;
			vibrationPattern[j+1]=vibrationPattern[121-j]=1;
			
		}

		for(;j<30;j+=2)
		{
			vibrationPattern[j]=vibrationPattern[120-j]=3;
			vibrationPattern[j+1]=vibrationPattern[121-j]=2;
		}
		
		for(;j<44;j+=2)
		{
			vibrationPattern[j]=vibrationPattern[120-j]=2;
			vibrationPattern[j+1]=vibrationPattern[121-j]=3;
		}

		for(;j<60;j+=2)
		{
			vibrationPattern[j]=vibrationPattern[120-j]=1;
			vibrationPattern[j+1]=vibrationPattern[121-j]=4;
		}

		for(;j<62;j+=2)
		{
			vibrationPattern[j]=0;
			vibrationPattern[j+1]=100;
		}
Dauer : 400 ms Schrittlänge sind 5 ms die aufgeteilt werden in x ms Aus und y ms An

Da die Kurve symmetrisch ist habe ich die Arrays von Beiden seiten befüllt um Code zu sparen.

Der Effekt den ich mir erhoffe: langsamen rundes Ansteigen der Intensität bis zum Maximum und genau so flüssiges Absteigen

Noch nciht getestet wie das rüber kommt und ob die Intervalle vllt größer sein sollten so 10 ms oder gar 20 ms

Ich geb Bescheid

Der ursprüngliche Beitrag von 17:29 Uhr wurde um 18:01 Uhr ergänzt:

Das Ergebnis ist etwas bescheiden...nciht ganz das was ich mir erhofft habe er quitscht vor sich hin leider nix da mit flüssig...