質問編集履歴

2

コードの修正

2021/01/24 06:22

投稿

ryu-sei
ryu-sei

スコア12

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- startボタンを押したら振動が始まり、振幅sinカーブを描くような振動パターンを作りたいと考えています。以下のコードで0.1秒ごとに戻り値Hzが変化して振幅が上がっていくようにしたいです。
5
+ startボタンを押したら振動が始まり、0.1秒ごとの振幅を並べたときsinカーブを描くような振動パターンを作りたいと考えています。以下のコードで0.1秒ごとに戻り値Hzが変化していくようにしたいです。
6
6
 
7
7
 
8
8
 
@@ -12,7 +12,7 @@
12
12
 
13
13
  ```
14
14
 
15
- 振動の様子変わらない。(うまくHzをかえせていない?)
15
+ アプリ落ちる
16
16
 
17
17
  ```
18
18
 
@@ -54,7 +54,7 @@
54
54
 
55
55
  val vibrator = getSystemService(Context.VIBRATOR_SERVICE) as Vibrator
56
56
 
57
- val vibrationEffect = VibrationEffect.createWaveform(longArrayOf(100), intArrayOf(vib()), 0)
57
+ val vibrationEffect = VibrationEffect.createWaveform(longArrayOf(100), main(), 0)
58
58
 
59
59
  vibrator.vibrate(vibrationEffect)
60
60
 
@@ -72,13 +72,25 @@
72
72
 
73
73
 
74
74
 
75
- private fun vib(): Int {
75
+ private fun main(): IntArray {
76
76
 
77
- Hz= (sin(gHz*2*Math.PI*i/gTime).toInt())
77
+ val increase: (Int) -> () -> Int = { x: Int ->
78
78
 
79
- i++
79
+ var xx = x
80
80
 
81
- return Hz
81
+ { -> xx++ }
82
+
83
+ }
84
+
85
+ val f = increase(1)
86
+
87
+ Hz=sin(gHz*2*Math.PI*f()/gTime).toInt()
88
+
89
+
90
+
91
+
92
+
93
+ return (0 until 10).map { Hz }.toIntArray()
82
94
 
83
95
  }
84
96
 

1

コードの修正

2021/01/24 06:22

投稿

ryu-sei
ryu-sei

スコア12

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- startボタンを押したら振動が始まり、振幅がsinカーブを描くような振動パターンを作りたいと考えています。以下のコードで0.1秒ごとに戻り値Hzが1ずつ増えて振幅が上がっていくようにしたいです。
5
+ startボタンを押したら振動が始まり、振幅がsinカーブを描くような振動パターンを作りたいと考えています。以下のコードで0.1秒ごとに戻り値Hzが変化して振幅が上がっていくようにしたいです。
6
6
 
7
7
 
8
8
 
@@ -74,7 +74,7 @@
74
74
 
75
75
  private fun vib(): Int {
76
76
 
77
- Hz= ((gHz +i).toInt())
77
+ Hz= (sin(gHz*2*Math.PI*i/gTime).toInt())
78
78
 
79
79
  i++
80
80