From d658db34bdb51b2398112ee2327e7ccc0bf9c218 Mon Sep 17 00:00:00 2001 From: pisouvigne Date: Tue, 2 Jun 2020 14:25:53 +0200 Subject: [PATCH] =?UTF-8?q?impl=C3=A9mentation=20du=20ou=20logique?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- site/img/OR_ANSI.png | Bin 0 -> 980 bytes site/img/logiqueet.png | Bin 1516 -> 934 bytes site/img/logiqueou.png | Bin 0 -> 1406 bytes site/js/func.js | 87 +++++++++++++++++++++++++++-------------- site/vues/index.html | 29 ++------------ site/vues/jeu.html | 24 +++++++----- 6 files changed, 74 insertions(+), 66 deletions(-) create mode 100644 site/img/OR_ANSI.png create mode 100644 site/img/logiqueou.png diff --git a/site/img/OR_ANSI.png b/site/img/OR_ANSI.png new file mode 100644 index 0000000000000000000000000000000000000000..eef5b74111e1992c43a97f8f6a9ff22972f577bb GIT binary patch literal 980 zcmV;_11tQAP)s1SbI*(|ntAUz z?>q1P!i9S`_xC%`bN`%sp6Alg(9qD((6As_ltJSOJlUml9ma3?8Kd|HU$nP_UD8*ncw!Lm&Z)JMAe4m%$YV>hPEPRv`lq>FkBg3~c32I<|O+y9sNn%l~I3A%>AH(|09(s;v z#DKh1Kz}uUt#}y6RRw(X3|EW6I8eyL8tK${6w3>FDbC6GTL{Dy&MxHRHnhZ~eAf0h zkbEfy;>LnLwo2b=+Y5Rr$}TYo4;Az=gm)`mj^n0MMoLnBcU)M^MR;UBAk6d)TJ2yKwi-Ui!u$KGv!%8|ALZpt(-?&Z#D24A*DS?s*;+gYrquS{Dn;`ZFJspBvz2hAL-Bo2~15 zk**Sc-Z>^sL<>(F;3kHdY!`#`sqQYhuN0=z-#PK*;bWl}tD(*1(%H>ix=co}OlW9Z zkEiesestm_Obboc8#MKngxtThweY^sqFQ5 zkkhoO`8)TMsm0&;lQ(S6{$Qx_&-YE*gLi!9>ZSWP$tCs4tdX~Uua)2~wX*w#-QMl@ z|Lh8%7S&XC-wkLDW0JSKOU$bq4AX&Z3r`ov5R21GuU4Bg1&XkKXqNCb(G+r;bbQJw z<$TwWDc^r@-2eZ3fqF`2+s*Qu_5ZJ}DSm&axUVDZ!PI&8_Bs4#=)7&n*1U|ny)8zP zuf9V2Qm=0RBez8x53D$R{L#M~Co2pVemSDj>Uw6Siom>Q8&32rJ!j&b)UsY4~NfAlQMel^su{0Dt`K*2dlF~*ZcAwJLVg8^S1TJ z!%w~b-7C2F!TGvD`TEY|*PcghOtRnq@i$XdRb8RJLjRPatJk+r`J?`xJ+kspq|Z4C zV1TNYxJHzuB$lLFB^RXvDF!10BLiInGhG9t5JMv?Lt`r=18oBXD+7aO{dz_e4Y~O# fnQ4{i8ceJVEFl_>3(v~}YGCkm^>bP0l+XkKDpL}w literal 1516 zcmVQn8CHez0ssI7GD$>1RCt{2o$HpOIuJ&yhp% z<;NuTxr+S)R@^J8q;i4CC+0X0#OmO+A#YA}=1_F&V|6RiNV>_8M6+NX9Qk&V#MMT+ z)p$4$*Qsx^R~eUV(HQBLW8pkZz5gfaYL~R#H0z&aESfQ4d@*?NKV%zYqWZ9JPUWI| ze5#lp_uhZ_T?pji3sa}f@pGJ7&WnIQjZAP4Kd7r@`_U8wh6kdPtNSi*(qV{!;(_*wo58A05-=VpTDj_9DIJCoI39?~ z|E!6%&N2s*2RgZ$Q!E{Y2v8oVxmXcL=_n+?@<1Cmf7O^Hz&y}?X_K|WSreKEYV6v& z*H;OL^FSv%GWE4|6rsWMKqbS4y_nMW`B?Ks}^(IXBg`Wew_KSVd?mG@*Kk?8ww(?USZHLG?gI&b*Tj z;)SJ0`g98FVMx`fbP&({gKIdy2G>K4Hg{F(!Id|9q+|JOpVSjr5BpxxCMj&5CNc}= zCDxS5AHW`{>GkZ9B72~Yd7`BL4ei102r0SB2<^dG53O_%VSx5P3G+qAz=Z9=?L+7& ze`9;7AIuBsAcBDH!OU%RD$dYgd!UN>q2f>(xQD_na5D>&o|@4?Mm6_ply4Krm;% zNXHNWcn|LEy>tu#fcKE0UElQsx`%qJ<=I^HM{a2KNxz)pV<%x`gf_wX@c>bPz$n_Hfs+ z8As?I>}+W(9YYwPJ*2E!uC+*P_JvOJTgDvzRy=DSZ_;v zJv|HjUS*SG)t0n+NWer;$q0aya4M#*@p*EJsj+KIRlz3 z`3BU3iJ5btwS#v+Jrq~w9bQ=e0QGQY6}KL~!1S=tm81#O!|AHyag!$yJ!~@Ov#L=E z(u1*6RvnL2K7r@Kbn21=0eUcQ6HZxjAV3dg&OAXXvxWi9gS#Gj)^Swk1uPH7Y1k@w z#^EQRJQ(-*Sgzt-_3uD=aPKUss_uOOMTA1{4qO z`vS~~q7ArjKzJ}Wx8IOMoz4ghf``q@b%sn^Y3~Jj52nnVhE7?b`y0|8%)NIOdJW%r z_#Lty()-L=xXyKV29ou#KModn)+o8;@EgQDn5rE{Bz{yH-fj335*|#QR_%}D=J})? z`+{Te5b&>v(xQsH%g3qz-PjjCa2_73MF8U4tz56#$@cT=#br@QFCcMve}Fhe#S)pF`IR~K32E=p^n~mH2NPnCt(vE SPdcpt0000N7X;-wJ)!|pEGk&Q!|5w z9R=Fho7|qXnKrPy99SXn^umISL%d3zyH2fKa6;7eAa_8c#)1Z!MGqSH{J++>GD+Rq zdb8_P`4|4T-(T5$`Lgldvo{*IvT#g$;bB#Bqtc~IMZWb&P|)Q|YiEAp@z6EazCG#W z#fIcP4^EvudD^~C$!)Gp>QNB}&y$N{Uf9Kow03zP*=j8JU`;B+^K;XMf}@^^hUqbg ztKK}RyIx_%Ca)6*R3B{8S-LMPX6MoG9=4bWKHESmut+~ga;m7Fc z(6^y2YQaX$xNNp45suHQL64#yFOhbb&6Q}bdHbzn9Oqr9i@B=B?(FZ{DxS(+Sm+XA zH+TDF@l6eSrjOpTX;oP)6yLGl?MAcRg8vI2+B31`2s~SIK~6eP${?eCgJKn{+eSWS z=y%h) zN%e~QjdG?=g%3oZ@4xnD-c#vUjFa{JW-u+A>cT9#?78mxfX=H^PyPPsMLgiiS7syM{+&J?$5H0@5@cyG@~eZ%}bVZzW+ZmE1kL(?Y_VMes2EVR)OE~-^3@0vztl$j%o!a7}XNjh?11V zl2ohYqEsNoU}Ruqple{JYhV;&Xk=w*07Tjb237_J&!!)Kh@v4kKP5A*5>tbb1w@0^ SDx;e~4Gf;HelF{r5}E*Ltdh3? literal 0 HcmV?d00001 diff --git a/site/js/func.js b/site/js/func.js index 4b226e2..f38518f 100644 --- a/site/js/func.js +++ b/site/js/func.js @@ -1,21 +1,47 @@ -function createEtLogique(x, y, id, type) { - var imageObj = new Image(); - imageObj.onload = function () { - var et = new Konva.Image({ - x: x, - y: y, - image: imageObj, - width: 100, - height: 50, - id: id, - }); +function createLogique(x, y, id, type) { + + switch(type){ + case "et": + var imageObj = new Image(); + imageObj.onload = function () { + var et = new Konva.Image({ + x: x, + y: y, + image: imageObj, + width: 100, + height: 50, + id: id, + }); - layer.add(et); - layer.batchDraw(); - }; - imageObj.src = '../img/logiqueet.png'; - imageObj.id = id; + layer.add(et); + layer.batchDraw(); + }; + imageObj.src = '../img/logiqueet.png'; + imageObj.id = id; + break; + case "ou": + var imageObj = new Image(); + imageObj.onload = function () { + var et = new Konva.Image({ + x: x, + y: y, + image: imageObj, + width: 100, + height: 50, + id: id, + }); + + + layer.add(et); + layer.batchDraw(); + }; + imageObj.src = '../img/logiqueou.png'; + imageObj.id = id; + break; + } + + var logique = { name: id, @@ -120,7 +146,8 @@ function changeLineColorYellow(idLine){ function checkAllSortieLogique(){ logiques.forEach(function(element){ - checkSortieLogique(element.name); + if(element.id3 != null) + checkSortieLogique(element.name); }); } @@ -150,6 +177,14 @@ function checkSortieLogique(logiqueId){ changeLineColorBlack(element.id3); } break; + case "ou" : + if(line1State == true || line2State == true){ + changeLineColorYellow(element.id3); + } + else{ + changeLineColorBlack(element.id3); + } + break; } } }); @@ -178,24 +213,14 @@ function createSwitch(id, x, y) { width: 100, height: 50, stroke: 'black', + fill: 'red', strokeWidth: 4, id: id, id3 : null, }); - layer.add(rect1); - var simpleText = new Konva.Text({ - x: x, - y: y, - text: '0', - fontSize: 30, - fontFamily: 'Calibri', - fill: 'black', - id: "text" + id, - }); - layer.add(simpleText); - + layer.add(rect1); } @@ -203,8 +228,10 @@ function initAllSwitch(){ switchs.forEach(function(element){ let switche = stage.findOne("#"+element); switche.on('click', function () { + let colorrect = switche.fill() == 'red' ? 'green' : 'red'; + switche.fill(colorrect); changeLineColor(switche.id3); - checkSortieLogique("logique1"); + checkAllSortieLogique(); layer.draw(); }); diff --git a/site/vues/index.html b/site/vues/index.html index b64584e..f94ab88 100644 --- a/site/vues/index.html +++ b/site/vues/index.html @@ -29,41 +29,18 @@ Je veux jouer à
  • - +
  • - - \ No newline at end of file diff --git a/site/vues/jeu.html b/site/vues/jeu.html index af4dca5..f3a07e4 100644 --- a/site/vues/jeu.html +++ b/site/vues/jeu.html @@ -38,17 +38,21 @@ initLayer(); - createEtLogique(300, 100, "logique1","et"); - - createEtLogique(600,200,"logique2","et"); - - createSwitch("et", 20, 20); - createSwitch("et2", 20, 150); - createSwitch("et3", 20, 300); - createLink(stage.findOne("#et3"), findLogique("logique2"),3); - createLink(stage.findOne("#et2"), findLogique("logique1"),1); - createLink(stage.findOne("#et"), findLogique("logique1"),0); + createLogique(300, 100, "logique1","et"); + createLogique(600,200,"logique2","ou"); + createLogique(900,300,"logique3","et"); + createLogique(900,500,"logique4","ou"); + createSwitch("s1", 20, 20); + createSwitch("s2", 20, 150); + createSwitch("s3", 20, 300); + createSwitch("s4", 20, 500); + + createLink(stage.findOne("#s3"), findLogique("logique2"),3); + createLink(stage.findOne("#s2"), findLogique("logique1"),1); + createLink(stage.findOne("#s1"), findLogique("logique1"),0); createLink(findLogique("logique1"),findLogique("logique2"),2); + createLink(stage.findOne("#s4"), findLogique("logique3"),4); + createLink(findLogique("logique2"),findLogique("logique3"),5); initAllSwitch();