-
Notifications
You must be signed in to change notification settings - Fork 23
/
arPlusNyIdMarker.pde
52 lines (49 loc) · 1.56 KB
/
arPlusNyIdMarker.pde
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/**
* NyARToolkit for proce55ing/3.0.5
* (c)2008-2017 nyatla
* airmail(at)ebony.plala.or.jp
*
* ARマーカとIdマーカを同時に使う例です。
* このスケッチはARマーカのkanji,hiroと、idマーカは0,1番のマーカを使います。
* 全ての設定ファイルとマーカファイルはスケッチディレクトリのlibraries/nyar4psg/dataにあります。
*
* This sample handles 2 ARToolkit style markers and 2 NyId markers at same time.
* The sketch uses ARToolKit standard marker files(kanji.patt,hiro.patt) and NyIdMarker(#0 and #1).
* Any pattern and configuration files are found in libraries/nyar4psg/data inside your sketchbook folder.
*/
import processing.video.*;
import jp.nyatla.nyar4psg.*;
Capture cam;
MultiMarker nya;
void setup() {
size(640,480,P3D);
colorMode(RGB, 100);
println(MultiMarker.VERSION);
cam=new Capture(this,640,480);
nya=new MultiMarker(this,width,height,"../../data/camera_para.dat",NyAR4PsgConfig.CONFIG_PSG);
nya.addARMarker("../../data/patt.hiro",80);//id=0
nya.addARMarker("../../data/patt.kanji",80);//id=1
nya.addNyIdMarker(0,80);//id=2
nya.addNyIdMarker(1,80);//id=3
cam.start();
}
void draw()
{
if (cam.available() !=true) {
return;
}
cam.read();
nya.detect(cam);
background(0);
nya.drawBackground(cam);//frustumを考慮した背景描画
for(int i=0;i<4;i++){
if((!nya.isExist(i))){
continue;
}
nya.beginTransform(i);
fill(100*(((i+1)/4)%2),100*(((i+1)/2)%2),100*(((i+1))%2));
translate(0,0,20);
box(40);
nya.endTransform();
}
}