Browse Source

update du couvre-feu

tth 1 month ago
parent
commit
7cc708c0fd
4 changed files with 37 additions and 5 deletions
  1. 10
    0
      specific/README.md
  2. 4
    1
      specific/joy2laser.c
  3. 22
    4
      specific/laserblast.c
  4. 1
    0
      specific/laserblast.h

+ 10
- 0
specific/README.md View File

@@ -26,3 +26,13 @@ défini par la teamlaser. Hélas, le soft de Sam n'étant pas très stable, ce l
26 26
 n'a pas été vraiment testé sur le système réel.
27 27
 
28 28
 
29
+```
30
+<tth> vos lasers, la déviation elle se fait à quelle fréquence maxi ?
31
+<sammmm> plop
32
+<sammmm> voila une reponse si j'ai bien compris la question.
33
+<sammmm> Le plus rapide de nos lasers peut tracer 30 000 pts /sec avec un angle max de 8°
34
+<sammmm> Apres si tu traces que 2 points plus proches que 8° le nombre d'oscillations va etre plus elevé evidement puisqu'il faudra moins de tps pour aller au pts suivant puisqu'il est plus pres.
35
+<sammmm> en resumé la frequence maxi est inversement proportionnelle a la deviation.
36
+<sammmm> plus tu devies plus ca va etre long a tracer donc plus la frequence baisse.
37
+```
38
+

+ 4
- 1
specific/joy2laser.c View File

@@ -121,7 +121,10 @@ if (verbosity) {
121 121
 	}
122 122
 
123 123
 foo = blast_init(remote_host, remote_port, scenenumber, lasernumber);
124
-
124
+if (foo) {
125
+	fprintf(stderr, "blast init error : %d\n", foo);
126
+	exit(1);
127
+	}
125 128
 
126 129
 st = lo_server_thread_new(local_port, error);
127 130
 lo_server_thread_add_method(st, "/joystick/xy", "ii", xy_handler, NULL);

+ 22
- 4
specific/laserblast.c View File

@@ -19,12 +19,17 @@ static char		big_buffer[BUFF_SIZE+2];
19 19
 static int		curpos;
20 20
 static int		la_scene, le_laser;
21 21
 static lo_address	lo_addr;
22
+static int		x_scale, y_scale;
22 23
 
23 24
 extern int		verbosity;
24 25
 
25 26
 /* ------------------------------------------------------------------- */
26 27
 int	blast_init(char *host, char *port, int scene, int laser)
27 28
 {
29
+#if DEBUG_LEVEL
30
+fprintf(stderr, ">>> %s ( '%s:%p' %d %d )\n", __func__, host, port,
31
+							scene, laser);
32
+#endif
28 33
 
29 34
 /* prepare OSC transmission */
30 35
 lo_addr =  lo_address_new(host, port);
@@ -33,11 +38,26 @@ if (verbosity) {
33 38
 	} 
34 39
 
35 40
 la_scene = scene, le_laser = laser;
41
+x_scale = y_scale = 700;
36 42
 
37 43
 /* manage our internals memories */
38 44
 big_buffer[0] = '\0';			/* clear buffer */
39 45
 curpos = 0;				/* index in buffer */
40 46
 
47
+return 0;
48
+}
49
+/* ------------------------------------------------------------------- */
50
+int	blast_setscale(int width, int height)
51
+{
52
+#if DEBUG_LEVEL
53
+fprintf(stderr, ">>> %s ( %d %d )\n", __func__, width, height);
54
+#endif
55
+
56
+/* no validity check ? */
57
+
58
+x_scale = width;
59
+y_scale = height;
60
+
41 61
 return -1;
42 62
 }
43 63
 /* ------------------------------------------------------------------- */
@@ -61,8 +81,7 @@ int		foo, sz;
61 81
 
62 82
 sz = sprintf(buff, "(%.2f, %.2f, %ld),", x, y, col);
63 83
 
64
-if (verbosity > 1)
65
-	fprintf(stderr, "%s --> %s\n", __func__, buff);
84
+if (verbosity > 1) fprintf(stderr, "%s --> %s\n", __func__, buff);
66 85
 
67 86
 /* check free space in bigbuffer */
68 87
 if ( (curpos+sz) > BUFF_SIZE ) {
@@ -83,8 +102,7 @@ char		buffer[100];
83 102
 /* we have to kill the last ',' in the big buff before send */
84 103
 big_buffer[curpos-1] = ']';	big_buffer[curpos] = '\0';
85 104
 
86
-if (verbosity)
87
-	fprintf(stderr, "BLAST  %s\n", big_buffer);
105
+if (verbosity) fprintf(stderr, "BLAST  %s\n", big_buffer);
88 106
 
89 107
 sprintf(buffer, "/pl/%d/%d", la_scene, le_laser);
90 108
 

+ 1
- 0
specific/laserblast.h View File

@@ -6,6 +6,7 @@
6 6
 
7 7
 int	blast_init(char *host, char *port, int scene, int laser);
8 8
 int	blast_rewind(void);
9
+int	blast_setscale(int width, int height);
9 10
 
10 11
 int	blast_addpoint(float fx, float fy, long col);
11 12
 int	blast_flush(int notused);

Loading…
Cancel
Save