summaryrefslogtreecommitdiff
path: root/vectorgfx/test.bmx
blob: cbe1f64bd0dd4f39ab139aae644518e7e2dafc13 (plain)
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
' $Id$

Import noddybox.vectorgfx
Strict

Const SCRW=800'1280
Const SCRH=600'1024

SetGraphicsDriver GLMax2DDriver()
Graphics SCRW,SCRH,32,60' Or HARDSYNC
'HideMouse()

SetBlend(ALPHABLEND)

Const SIZE:Int=20
Const MSIZE:Int=40

'Local o1:TVectorGfxObject=New TVectorGfxObject
'Local o2:TVectorGfxObject=New TVectorGfxObject

Local o1:TVectorGfxObject=TVectorGfxObject.Load("obj1.2d")
Local o2:TVectorGfxObject=TVectorGfxObject.Load("obj2.2d")

Local cm:TVectorGfxCollisionMap=TVectorGfxCollisionMap.Create(MSIZE,MSIZE)

Rem
o1.AddLine(TVectorGfxLine.Create(-SIZE,SIZE,SIZE,SIZE,255,0,0,1))
o1.AddLine(TVectorGfxLine.Create(SIZE,SIZE,SIZE,-SIZE,0,255,0,2))
o1.AddLine(TVectorGfxLine.Create(SIZE,-SIZE,-SIZE,-SIZE,255,0,0,1))
o1.AddLine(TVectorGfxLine.Create(-SIZE,-SIZE,-SIZE,SIZE,0,255,0,2))
o1.x=400
o1.y=300
o1.Save("obj1.2d")

o2.AddLine(TVectorGfxLine.Create(-SIZE,SIZE/2,SIZE,SIZE/2,255,255,255,0))
o2.AddLine(TVectorGfxLine.Create(SIZE,SIZE/2,SIZE,-SIZE/2,255,255,255,0))
o2.AddLine(TVectorGfxLine.Create(SIZE,-SIZE/2,-SIZE,-SIZE/2,255,255,255,0))
o2.AddLine(TVectorGfxLine.Create(-SIZE,-SIZE/2,-SIZE,SIZE/2,255,255,255,0))
o2.Save("obj2.2d")
EndRem

While Not KeyHit(KEY_ESCAPE)
	Cls
	
	cm.Clear()
	cm.SetOffset(MouseX()-MSIZE/2,MouseY()-MSIZE/2)
	
	If KeyHit(KEY_F1)
		VectorGfxSetSolid()
	EndIf

	If KeyHit(KEY_F2)
		VectorGfxSetAlpha(0.7,1.0)
	EndIf
	
	If KeyHit(KEY_F3)
		VectorGfxSetThickAlpha(0.2)
	EndIf
	
	o1.Draw(cm)
	o1.ang=(o1.ang+2) Mod 3600
	
	o2.x=MouseX()
	o2.y=MouseY()
	o2.Draw(cm)
	
	DrawText MilliSecs() + ":Col=" + o2.Draw(cm),0,0
	
	Flip
	FlushMem
Wend

EndGraphics
End