Mac上のMono F#からシリアルポートを使って、 Arduinoと通信する。
Macのシリアルポートから適当な周期で文字列を書き出して、
Arduinoはそれに合わせてLEDを点けたり消したりする。
ポート名とボーレートは、環境に合わせて変えること。
F#は、monoをbrewで普通にインストールしたら付いてきた。
fsharpc serial.fs && mono serial.exe
Mac上のMono F#からシリアルポートを使って、 Arduinoと通信する。
Macのシリアルポートから適当な周期で文字列を書き出して、
Arduinoはそれに合わせてLEDを点けたり消したりする。
ポート名とボーレートは、環境に合わせて変えること。
F#は、monoをbrewで普通にインストールしたら付いてきた。
fsharpc serial.fs && mono serial.exe
import processing.core._ | |
object Main extends App { | |
PApplet.main("RawDepthApp") | |
} |
import processing.core._ | |
import org.openkinect.freenect._ | |
import org.openkinect.processing._ | |
class DepthApp extends PApplet { | |
var kinect: Kinect = null | |
override def settings() { | |
size(800, 600) | |
} |
import processing.core._ | |
import processing.serial._ | |
import cc.arduino._ | |
class FirmataApp extends PApplet { | |
var ard: Arduino = null | |
override def settings() { | |
size(300, 300) | |
} |
import processing.core._ | |
class HelloApplet extends PApplet { | |
override def settings() { | |
size(600, 400) | |
} | |
override def draw() { | |
background(30) | |
textSize(32) |
import akka.actor.{Actor, ActorSystem, Props} | |
import akka.pattern.ask | |
import akka.util.Timeout | |
import scala.concurrent.duration._ | |
import scala.util.Success | |
import scala.concurrent.ExecutionContext.Implicits.global | |
class DivideActor extends Actor { | |
def receive = { | |
case (i: Int, j: Int) if j > 0 => |
import processing.core._ | |
import processing.video._ | |
class CamApp extends PApplet { | |
var cam: Capture = null | |
override def settings() { | |
size(1280, 720) | |
} | |
override def setup() { |
ボールっぽいモデルを作って、P5.jsで動かしてみる。
多数のボールがあって、それぞれがバネ的な力や、速度を抑える方向の抵抗力を受けるようにした。
それだけだとユーザとのインタラクションがなくていまいちなので、
マウスのY座標(縦の位置、高さ)をバネの原点にした。
これで、マウスを縦に動かすときに、ボールが引っ張られて動く。
また、マウスを押さえている間、マウス左側にあるボールが
上へ持ち上げられる不思議な力もかけてみた。
ball.js内でBallオブジェクトを定義した。
using System; | |
using System.Linq; | |
using System.Windows; | |
using System.Windows.Controls; | |
using System.Windows.Media; | |
using System.Windows.Media.Imaging; | |
using Microsoft.Kinect; | |
public class KinectDepthWindow : Window | |
{ |
open System | |
open System.Windows | |
open System.Windows.Controls | |
open System.Windows.Media | |
open System.Windows.Media.Imaging | |
open Microsoft.Kinect | |
type KinectDepthWindow(kinect: KinectSensor) as this = | |
inherit Window() | |
let mutable bitmap: WriteableBitmap = null |