/*!
* © by Sitsanlis Ilias
* This notice shall be included in all copies or substantial portions of the Software.
* Creative Commons 4.0/CC BY - NC - SA 4.0. 
*/
function addBox(e){var t=new createjs.Container,a=thermometerContainer(θCi,θCf,lMax);a.set({x:0,y:20});var r=boxLineFrontShape(),i=boxLineBackShape(),s=top1Shape(),d=top2Shape(),l=bottomShape(),h=waterShape();t.addChild(i),i.set({x:0,y:-90}),t.addChild(l),l.set({x:0,y:71}),t.addChild(d),d.set({x:0,y:0}),t.addChild(a),t.addChild(r),r.set({x:0,y:0}),t.addChild(h),t.addChild(s);s=boxLineFront2Shape();s.scale=-1,s.y=-77,t.addChild(s),s.visible=!1;var n=new createjs.Container;n.name="iceContainer",n.visible=!0,t.addChild(n),iceScales=[];for(var c=0;c<=15;c++){var o=iceShape();n.addChild(o);var Q=rnd2(.2,.8);iceScales.push(Q),o.set({x:rnd(-30,30),y:rnd(60,70),rotation:rnd(0,360),scale:Q,alpha:.5})}s=new createjs.Shape;return s.graphics.drawRect(-55,-10,110,90),n.mask=s,t.addChild(s),t}function setMass(e,t){var a=e.getChildAt(5),r=e.getChildAt(2),e=e.getChildAt(6);h=50*t,a.graphics.clear().f(color).s().dr(-58.5,74-h,117,h),a.alpha=.7,r.y=67.5-h,e.y=80-h-.5}function thermometerContainer(e,t,a){var r=new createjs.Container,i=new createjs.Shape,s=new createjs.Shape,d=10+a,l=-70*Math.PI/180,h=-(Math.PI+l),n=20*Math.cos(l),c=20*Math.sin(l),o=-Math.acos((20*Math.cos(l)-3)/17),Q=-(Math.PI+o),b=17*Math.cos(o),C=17*Math.sin(o);s.graphics.f("#fff").ss(1).s("#000").arc(0,0,20,l,h).mt(n,c).lt(n,c-d).arc(0,c-d,n,0,Math.PI,!0).lt(-n,c),s.graphics.ss(1).s("#ff0000").f("#ff0000").arc(0,0,17,o,Q).lt(-b,C-10).lt(b,C-10).lt(b,C),s.regY=-(9.94-C),r.addChild(s),r.addChild(i);var p=new createjs.Shape;p.graphics.ss(.8).s("#000");for(var u=(t-e)/15,f=a*(u=10*Math.round(u/10))/(t-e),x=Math.ceil(e/u)*u,e=f*(x-e)/u,g=-1,v=e;v<=a;v+=f){g++,p.graphics.mt(-16,-v).lt(-10,-v);var T=new createjs.Text(Math.round(x+g*u),"10px Trebuchet MS","#333");T.set({textAlign:"right"}),T.x=-18,T.y=-v-4.5,r.addChild(T)}p.graphics.ss(.5).s("#666");for(g=e;g<=a;g+=f/10)p.graphics.mt(-12,-g).lt(-10,-g);for(g=e+f/2;g<=a;g+=f/2)p.graphics.mt(-14,-g).lt(-10,-g);return r.addChild(p),r}function setTemperature(e,a,r,i,s){var d=3.8404028665133754,r=s*(a-r)/(i-r);e.getChildAt(1).graphics.clear().ss(1).s("#ff0000").f("#ff0000").dr(-d,-r,2*d,r);var l=box.getChildByName("iceContainer");if(a<100&&-1!==bubbles.numChildren&&bubbles.removeAllChildren(),Q<Q0)valuesText.text="Η θερμότητα που προσφέρεται αυξάνει την θερμοκρασία του πάγου.";else if(Q<Q0T){valuesText.text="Η θερμότητα που προσφέρεται μετατρέπει τον πάγο σε υγρό νερό χωρίς αλλαγή θερμοκρασίας.";var h=(Q-Q0)/QT;setMass(box,h);for(var n=l.numChildren,c=0;c<=n-1;c++)l.getChildAt(c).scale=iceScales[c]*(1-h)}else Q<Q0T1?valuesText.text="Η θερμότητα που προσφέρεται αυξάνει την θερμοκρασία του υγρού νερού.":Q<Q0T1B?(h=(Q-Q0T1)/QB,setMass(box,1-h),valuesText.text="Η θερμότητα που προσφέρεται μετατρέπει το υγρό νερό σε υδρατμούς χωρίς αλλαγή θερμοκρασίας."):valuesText.text="Η θερμότητα που προσφέρεται αυξάνει την θερμοκρασία των υδρατμών.";(Q+dQ>=Q0&&Q<=Q0&&stopFlag||Q+dQ>=Q0T&&Q<=Q0T&&stopFlag||Q+dQ>=Q0T1&&Q<=Q0T1&&stopFlag||Q+dQ>=Q0T1B&&Q<=Q0T1B&&stopFlag)&&$("#play").trigger("click"),0==t&&(valuesText.text="")}function findθ(e){e=e<Q0?θCi+-θCi*e/Q0:e<Q0T?0:e<Q0T1?100*(e-Q0T)/Q1:e<Q0T1B?100:100+20*(e-Q0T1B)/(3100-Q0T1B);return e}function addBubble(){var e=makePoint("#bbb","bubble",1);e.x=rnd(-50,50),e.y=rnd(0,80),e.addEventListener("tick",bubbleTick),bubbles.addChild(e)}function bubbleTick(e){-70<e.target.y?e.target.y-=2*dtSlow/dtInitial:(e.target.removeEventListener("tick",bubbleTick),bubbles.removeChild(e.target))}