{{ 'ml-label-loading-course' | message }}
{{ toc.name }}
{{ toc.signature }}
{{ tocHeader }} {{ 'ml-btn-view-details' | message }}
{{ tocSubheader }}
{{ 'ml-toc-proceed-mlc' | message }}
{{ 'ml-toc-proceed-tbs' | message }}
Lektion
Övningar
Rekommenderade
Tester
Ett fel uppstod, försök igen senare!
Kapitel {{ article.chapter.number }}
{{ article.number }}. 

{{ article.displayTitle }}

{{ article.intro.summary }}
Visa mindre Visa mer expand_more
{{ ability.description }} {{ ability.displayTitle }}
Inställningar & verktyg för lektion
{{ 'ml-lesson-number-slides' | message : article.intro.bblockCount }}
{{ 'ml-lesson-number-exercises' | message : article.intro.exerciseCount }}
{{ 'ml-lesson-time-estimation' | message }}
 Vinklar och trianglar
Appe (Diskussion | bidrag)
(Redigerar graf triangleTypes via JXMagician.)
Appe (Diskussion | bidrag)
(Redigerar graf triangleTypes via JXMagician.)
Rad 8: Rad 8:
  
 
<jsxgpre id="triangleTypes" class="jxgbox jsx-canvas">
 
<jsxgpre id="triangleTypes" class="jxgbox jsx-canvas">
var b = mlg.board([-1,5,6,-2],{grid:false, canvas:true, renderer:'canvas'});
+
var b=mlg.board([-1,11,11,-1]);
b.node(0,0);
+
b.xaxis(20,0,'x');
var radiusSize = 0.6;
+
b.yaxis(20,0,'y');
var radiusFactor = 0.00043*b.board.canvasWidth;
+
var f1 = b.func('-(x+1)*(x-7)-12', 'blue', {xMax:3});
mlg.af("triangleTypes.start", function(){
+
var f2 = b.func('(x)*(x-8) + 20', 'blue', {xMin:4});
    b.remove();
+
var f1 = b.func('4', 'blue', {xMin:3, xMax:4});
    var p1 = b.point(0,0,{fixed:false});
+
var f3 = b.func('3*x-18', 'red');
    var p2 = b.point(5,0,{fixed:false});
+
var t1 = b.legend(f3,[7,3],'Strängt växande funktion', {fontSize:1.1, mathMode:false});
    var p3 = b.point(2.5,3,{fixed:false});
+
var t2 = b.legend(f2,[6,8],'Växande funktion', {mathMode:false});
    var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
 
    var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var ang2 = b.nonreflexangle(p3,p2,p1,{fillColor:'green',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var ang3 = b.nonreflexangle(p1,p3,p2,{fillColor:'red',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var dra1 = b.txt(p1.X(),p1.Y()-0.5,'<!--T:8--> Drag mig',{fontSize:1,mathMode:false});
 
    var dra2 = b.txt(p2.X(),p2.Y()-0.5,'<!--T:9--> Drag mig',{fontSize:1,mathMode:false});
 
    var dra3 = b.txt(p3.X(),p3.Y()+0.5,'<!--T:10--> Drag mig',{fontSize:1,mathMode:false});
 
    var hat1 = b.hatch(pol.borders[0], 1,{opacity:0});
 
    var hat2 = b.hatch(pol.borders[1], 1,{opacity:0});
 
    var hat3 = b.hatch(pol.borders[2], 1,{opacity:0});
 
  
     p1.on('drag',function(){
+
 
         var l1 = pol.borders[0].L();
+
    var b = mlg.board([-1,5,6,-2],{grid:false, canvas:true, renderer:'canvas'});
         var l2 = pol.borders[1].L();
+
    b.node(0,0);
        var l3 = pol.borders[2].L();
+
    var radiusSize = 0.6;
        shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
+
    var radiusFactor = 0.00043*b.board.canvasWidth;
        checkBorder([p1,p2,p3]);
+
     mlg.af("triangleTypes.start", function(){
        b.hide([dra1,dra2,dra3]);
+
        b.remove();
        evenSides(hat1,hat2,hat3,pol,l1,l2,l3);
+
        var p1 = b.point(0,0,{fixed:false});
 +
        var p2 = b.point(5,0,{fixed:false});
 +
        var p3 = b.point(2.5,3,{fixed:false});
 +
        var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
 +
        var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 +
        var ang2 = b.nonreflexangle(p3,p2,p1,{fillColor:'green',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 +
        var ang3 = b.nonreflexangle(p1,p3,p2,{fillColor:'red',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 +
        var dra1 = b.txt(p1.X(),p1.Y()-0.5,'<!--T:8--> Drag mig',{fontSize:1,mathMode:false});
 +
        var dra2 = b.txt(p2.X(),p2.Y()-0.5,'<!--T:9--> Drag mig',{fontSize:1,mathMode:false});
 +
        var dra3 = b.txt(p3.X(),p3.Y()+0.5,'<!--T:10--> Drag mig',{fontSize:1,mathMode:false});
 +
        var hat1 = b.hatch(pol.borders[0], 1,{opacity:0});
 +
        var hat2 = b.hatch(pol.borders[1], 1,{opacity:0});
 +
        var hat3 = b.hatch(pol.borders[2], 1,{opacity:0});
 +
 
 +
        p1.on('drag',function(){
 +
            var l1 = pol.borders[0].L();
 +
            var l2 = pol.borders[1].L();
 +
            var l3 = pol.borders[2].L();
 +
            shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 +
            checkBorder([p1,p2,p3]);
 +
            b.hide([dra1,dra2,dra3]);
 +
            evenSides(hat1,hat2,hat3,pol,l1,l2,l3);
 +
        });
 +
         p2.on('drag',function(){
 +
            var l1 = pol.borders[0].L();
 +
            var l2 = pol.borders[1].L();
 +
            var l3 = pol.borders[2].L();
 +
            shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 +
            checkBorder([p1,p2,p3]);
 +
            b.hide([dra1,dra2,dra3]);
 +
            evenSides(hat1,hat2,hat3,pol,l1,l2,l3);
 +
         });
 +
        p3.on('drag',function(){
 +
            var l1 = pol.borders[0].L();
 +
            var l2 = pol.borders[1].L();
 +
            var l3 = pol.borders[2].L();
 +
            shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 +
            checkBorder([p1,p2,p3]);
 +
            b.hide([dra1,dra2,dra3]);
 +
            evenSides(hat1,hat2,hat3,pol,l1,l2,l3);
 +
        });
 +
        b.board.update();
 
     });
 
     });
     p2.on('drag',function(){
+
 
        var l1 = pol.borders[0].L();
+
     mlg.af("triangleTypes.ratvink", function(){
        var l2 = pol.borders[1].L();
+
        b.remove();
        var l3 = pol.borders[2].L();
+
        var p2 = b.point(5,0,{fixed:false});
        shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
+
        var p3 = b.point(0,3,{fixed:false});
        checkBorder([p1,p2,p3]);
+
        var p1 = b.node(function(){return p3.X();},function(){return p2.Y();});
        b.hide([dra1,dra2,dra3]);
+
        var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
         evenSides(hat1,hat2,hat3,pol,l1,l2,l3);
+
        var ang2 = b.nonreflexangle(p1,p2,p3,{fillColor:'green',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
    });
+
        var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
    p3.on('drag',function(){
+
        var ang3 = b.nonreflexangle(p1,p3,p2,{fillColor:'red',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
        var l1 = pol.borders[0].L();
+
        var dra2 = b.txt(p3.X(),p3.Y()+0.5,'<!--T:11--> Drag mig',{fontSize:1, mathMode:false});
        var l2 = pol.borders[1].L();
+
        var dra3 = b.txt(p2.X(),p2.Y()-0.5,'<!--T:12--> Drag mig',{fontSize:1, mathMode:false});
        var l3 = pol.borders[2].L();
+
        p2.on('drag',function(){
        shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
+
            var l1 = pol.borders[0].L();
        checkBorder([p1,p2,p3]);
+
            var l2 = pol.borders[1].L();
        b.hide([dra1,dra2,dra3]);
+
            var l3 = pol.borders[2].L();
         evenSides(hat1,hat2,hat3,pol,l1,l2,l3);
+
            shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 +
            checkBorder([p1,p2,p3]);
 +
            b.hide([dra2,dra3]);
 +
         });
 +
        p3.on('drag',function(){
 +
            var l1 = pol.borders[0].L();
 +
            var l2 = pol.borders[1].L();
 +
            var l3 = pol.borders[2].L();
 +
            shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 +
            checkBorder([p1,p2,p3]);
 +
            b.hide([dra2,dra3]);
 +
         });
 +
        b.board.update();
 
     });
 
     });
    b.board.update();
 
});
 
  
mlg.af("triangleTypes.ratvink", function(){
+
    mlg.af("triangleTypes.liksid", function(){
    b.remove();
+
        b.remove();
    var p2 = b.point(5,0,{fixed:false});
 
    var p3 = b.point(0,3,{fixed:false});
 
    var p1 = b.node(function(){return p3.X();},function(){return p2.Y();});
 
    var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
 
    var ang2 = b.nonreflexangle(p1,p2,p3,{fillColor:'green',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var ang3 = b.nonreflexangle(p1,p3,p2,{fillColor:'red',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var dra2 = b.textA(0,-0.3,'<!--T:11--> Drag mig',{anchor:p2,fontSize:1});
 
    var dra3 = b.textA(0,0.3,'<!--T:12--> Drag mig',{anchor:p3,fontSize:1});
 
    p2.on('drag',function(){
 
        var l1 = pol.borders[0].L();
 
        var l2 = pol.borders[1].L();
 
        var l3 = pol.borders[2].L();
 
        shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 
        checkBorder([p1,p2,p3]);
 
        b.hide([dra2,dra3]);
 
    });
 
    p3.on('drag',function(){
 
        var l1 = pol.borders[0].L();
 
        var l2 = pol.borders[1].L();
 
        var l3 = pol.borders[2].L();
 
        shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 
        checkBorder([p1,p2,p3]);
 
        b.hide([dra2,dra3]);
 
    });
 
    b.board.update();
 
});
 
  
mlg.af("triangleTypes.liksid", function(){
+
        var p3 = b.point(2.5,4.375,{fixed:false});
    b.remove();
+
        var p2 = b.node(function(){return 2.5+(p3.Y()*0.575);},0);
 +
        var p1 = b.node(function(){return 2.5-(p3.Y()*0.575);},0);
  
    var p3 = b.point(2.5,4.375,{fixed:false});
+
        var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
    var p2 = b.node(function(){return 2.5+(p3.Y()*0.575);},0);
+
        var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:0.5,fillOpacity:0.5,strokeWidth:1.6});
    var p1 = b.node(function(){return 2.5-(p3.Y()*0.575);},0);
+
        var ang2 = b.nonreflexangle(p3,p2,p1,{fillColor:'blue',radius:0.5,fillOpacity:0.5,strokeWidth:1.6});
 +
        var ang3 = b.nonreflexangle(p1,p3,p2,{fillColor:'blue',radius:0.5,fillOpacity:0.5,strokeWidth:1.6});
 +
        var dra3 = b.txt(p3.X(),p3.Y()+0.5,'<!--T:13--> Drag mig',{fontSize:1, mathMode:false});
 +
        var hat1 = b.hatch(pol.borders[0], 2);
 +
        var hat2 = b.hatch(pol.borders[1], 2);
 +
        var hat3 = b.hatch(pol.borders[2], 2);
 +
        var rad = ang1.Radius();
 +
        var pp1 = b.polarnode(p1,30,rad+0.1);
 +
        var pp2 = b.polarnode(p1,30,rad-0.1);
 +
        var pp3 = b.polarnode(p2,150,rad+0.1);
 +
        var pp4 = b.polarnode(p2,150,rad-0.1);
 +
        var pp5 = b.polarnode(p3,270,rad+0.1);
 +
        var pp6 = b.polarnode(p3,270,rad-0.1);
 +
        var seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 +
        var seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 +
        var seg3 = b.segment(pp5,pp6,{strokeWidth:2});
 +
        p3.on('drag',function(){
 +
            var l1 = pol.borders[0].L();
 +
            var l2 = pol.borders[1].L();
 +
            var l3 = pol.borders[2].L();
 +
            b.remove([seg1,seg2,seg3]);
 +
            shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 +
            checkBorder([p1,p2,p3]);
 +
            b.hide([dra3]);
 +
            b.hide([seg1,seg2,seg3]);
 +
            if(p3.X()!==2.5){
 +
                p3.moveTo([2.5,p3.Y()]);
 +
            }
 +
        });
 +
        var ready=true;
 +
        p3.on('up',function(){
 +
            b.remove([seg1,seg2,seg3]);
 +
            rad = ang1.Radius();
 +
            if(p3.Y()<=p1.Y()){
 +
                pp1 = b.polarnode(p1,30,-rad+0.1);
 +
                pp2 = b.polarnode(p1,30,-rad-0.1);
 +
                pp3 = b.polarnode(p2,150,-rad+0.1);
 +
                pp4 = b.polarnode(p2,150,-rad-0.1);
 +
                pp5 = b.polarnode(p3,270,-rad+0.1);
 +
                pp6 = b.polarnode(p3,270,-rad-0.1);
 +
            }else{
 +
                pp1 = b.polarnode(p1,30,rad+0.1);
 +
                pp2 = b.polarnode(p1,30,rad-0.1);
 +
                pp3 = b.polarnode(p2,150,rad+0.1);
 +
                pp4 = b.polarnode(p2,150,rad-0.1);
 +
                pp5 = b.polarnode(p3,270,rad+0.1);
 +
                pp6 = b.polarnode(p3,270,rad-0.1);
 +
            }
 +
            seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 +
            seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 +
            seg3 = b.segment(pp5,pp6,{strokeWidth:2});
  
    var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
+
        });
    var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:0.5,fillOpacity:0.5,strokeWidth:1.6});
+
         b.board.update();
    var ang2 = b.nonreflexangle(p3,p2,p1,{fillColor:'blue',radius:0.5,fillOpacity:0.5,strokeWidth:1.6});
 
    var ang3 = b.nonreflexangle(p1,p3,p2,{fillColor:'blue',radius:0.5,fillOpacity:0.5,strokeWidth:1.6});
 
    var dra3 = b.textA(0,0.3,'<!--T:13--> Drag mig',{anchor:p3,fontSize:1});
 
    var hat1 = b.hatch(pol.borders[0], 2);
 
    var hat2 = b.hatch(pol.borders[1], 2);
 
    var hat3 = b.hatch(pol.borders[2], 2);
 
    var rad = ang1.Radius();
 
    var pp1 = b.polarnode(p1,30,rad+0.1);
 
    var pp2 = b.polarnode(p1,30,rad-0.1);
 
    var pp3 = b.polarnode(p2,150,rad+0.1);
 
    var pp4 = b.polarnode(p2,150,rad-0.1);
 
    var pp5 = b.polarnode(p3,270,rad+0.1);
 
    var pp6 = b.polarnode(p3,270,rad-0.1);
 
    var seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 
    var seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 
    var seg3 = b.segment(pp5,pp6,{strokeWidth:2});
 
    p3.on('drag',function(){
 
        var l1 = pol.borders[0].L();
 
        var l2 = pol.borders[1].L();
 
        var l3 = pol.borders[2].L();
 
        b.remove([seg1,seg2,seg3]);
 
        shrinkAngle(ang1,ang2,ang3,l1,l2,l3);
 
        checkBorder([p1,p2,p3]);
 
        b.hide([dra3]);
 
         b.hide([seg1,seg2,seg3]);
 
        if(p3.X()!==2.5){
 
            p3.moveTo([2.5,p3.Y()]);
 
        }
 
 
     });
 
     });
    var ready=true;
 
    p3.on('up',function(){
 
        b.remove([seg1,seg2,seg3]);
 
        rad = ang1.Radius();
 
        if(p3.Y()<=p1.Y()){
 
            pp1 = b.polarnode(p1,30,-rad+0.1);
 
            pp2 = b.polarnode(p1,30,-rad-0.1);
 
            pp3 = b.polarnode(p2,150,-rad+0.1);
 
            pp4 = b.polarnode(p2,150,-rad-0.1);
 
            pp5 = b.polarnode(p3,270,-rad+0.1);
 
            pp6 = b.polarnode(p3,270,-rad-0.1);
 
        }else{
 
            pp1 = b.polarnode(p1,30,rad+0.1);
 
            pp2 = b.polarnode(p1,30,rad-0.1);
 
            pp3 = b.polarnode(p2,150,rad+0.1);
 
            pp4 = b.polarnode(p2,150,rad-0.1);
 
            pp5 = b.polarnode(p3,270,rad+0.1);
 
            pp6 = b.polarnode(p3,270,rad-0.1);
 
        }
 
        seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 
        seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 
        seg3 = b.segment(pp5,pp6,{strokeWidth:2});
 
  
 +
    mlg.af("triangleTypes.likben", function(){
 +
        b.remove();
 +
        var p3 = b.point(2.5,2,{fixed:false});
 +
        var p2 = b.node(5,0);
 +
        var p1 = b.node(0,0);
 +
        var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
 +
        var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 +
        var ang2 = b.nonreflexangle(p3,p2,p1,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 +
        var ang3 = b.nonreflexangle(p1,p3,p2,{visible:false,opacity:0,fillOpacity:0.5,strokeWidth:1.6});
 +
        var dra3 = b.textA(0,0.3,'<!--T:14--> Drag mig',{anchor:p3,fontSize:1});
 +
        var hat1 = b.hatch(pol.borders[2], 2);
 +
        var hat2 = b.hatch(pol.borders[1], 2);
 +
        var rad = ang1.Radius();
 +
        var pp1 = b.polarnode(p1,ang1.Value()/2,rad+0.1,{useRadians:true});
 +
        var pp2 = b.polarnode(p1,ang1.Value()/2,rad-0.1,{useRadians:true});
 +
        var pp3 = b.polarnode(p2,-ang2.Value()/2,-rad+0.1,{useRadians:true});
 +
        var pp4 = b.polarnode(p2,-ang2.Value()/2,-rad-0.1,{useRadians:true});
 +
        var seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 +
        var seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 +
        p3.on('drag',function(){
 +
            b.hide([dra3]);
 +
            b.remove([pp1,pp2,pp3,pp4,seg1,seg2]);
 +
            b.hide([seg1,seg2]);
 +
            if(p3.X()!==2.5){
 +
                p3.moveTo([2.5,p3.Y()]);
 +
            }
 +
            checkBorder([p3]);
 +
        });
 +
 +
        p3.on('up',function(){
 +
            ang1Val = ang1.Value()/2;
 +
            ang2Val = ang2.Value()/2;
 +
            b.remove([pp1,pp2,pp3,pp4,seg1,seg2]);
 +
            rad = ang1.Radius();
 +
            if(p3.Y()<=p1.Y()){
 +
                pp1 = b.polarnode(p1,-ang1Val,rad+0.1,{useRadians:true});
 +
                pp2 = b.polarnode(p1,-ang1Val,rad-0.1,{useRadians:true});
 +
                pp3 = b.polarnode(p2,ang2Val,-rad+0.1,{useRadians:true});
 +
                pp4 = b.polarnode(p2,ang2Val,-rad-0.1,{useRadians:true});
 +
            }else{
 +
                pp1 = b.polarnode(p1,ang1Val,rad+0.1,{useRadians:true});
 +
                pp2 = b.polarnode(p1,ang1Val,rad-0.1,{useRadians:true});
 +
                pp3 = b.polarnode(p2,-ang2Val,-rad+0.1,{useRadians:true});
 +
                pp4 = b.polarnode(p2,-ang2Val,-rad-0.1,{useRadians:true});
 +
            }
 +
            seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 +
            seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 +
        });
 +
        b.board.update();
 
     });
 
     });
    b.board.update();
 
});
 
  
mlg.af("triangleTypes.likben", function(){
+
     var shrinkAngle = function(ang1,ang2,ang3,l1,l2,l3){
    b.remove();
+
        if(l1<1.5||l2<1.5||l3<1.5||l1+l2<1.07*l3||l2+l3<1.07*l1||l3+l1<1.07*l2){
     var p3 = b.point(2.5,2,{fixed:false});
+
            ang1.setAttribute({visible:false});
    var p2 = b.node(5,0);
+
            ang2.setAttribute({visible:false});
    var p1 = b.node(0,0);
+
            ang3.setAttribute({visible:false});
    var pol = b.polygon([p1,p2,p3],{fillColor:'none',borders:{strokeWidth:2.1}});
 
    var ang1 = b.nonreflexangle(p2,p1,p3,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var ang2 = b.nonreflexangle(p3,p2,p1,{fillColor:'blue',radius:radiusSize,orthoType:'square',fillOpacity:0.5,strokeWidth:1.6});
 
    var ang3 = b.nonreflexangle(p1,p3,p2,{visible:false,opacity:0,fillOpacity:0.5,strokeWidth:1.6});
 
    var dra3 = b.textA(0,0.3,'<!--T:14--> Drag mig',{anchor:p3,fontSize:1});
 
    var hat1 = b.hatch(pol.borders[2], 2);
 
    var hat2 = b.hatch(pol.borders[1], 2);
 
    var rad = ang1.Radius();
 
    var pp1 = b.polarnode(p1,ang1.Value()/2,rad+0.1,{useRadians:true});
 
    var pp2 = b.polarnode(p1,ang1.Value()/2,rad-0.1,{useRadians:true});
 
    var pp3 = b.polarnode(p2,-ang2.Value()/2,-rad+0.1,{useRadians:true});
 
    var pp4 = b.polarnode(p2,-ang2.Value()/2,-rad-0.1,{useRadians:true});
 
    var seg1 = b.segment(pp1,pp2,{strokeWidth:2});
 
    var seg2 = b.segment(pp3,pp4,{strokeWidth:2});
 
    p3.on('drag',function(){
 
        b.hide([dra3]);
 
        b.remove([pp1,pp2,pp3,pp4,seg1,seg2]);
 
        b.hide([seg1,seg2]);
 
        if(p3.X()!==2.5){
 
            p3.moveTo([2.5,p3.Y()]);
 
 
         }
 
         }
         checkBorder([p3]);
+
         else{
    });
+
             ang1.setAttribute({visible:true});
 
+
             ang2.setAttribute({visible:true});
    p3.on('up',function(){
+
             ang3.setAttribute({visible:true});
        ang1Val = ang1.Value()/2;
 
        ang2Val = ang2.Value()/2;
 
        b.remove([pp1,pp2,pp3,pp4,seg1,seg2]);
 
        rad = ang1.Radius();
 
        if(p3.Y()<=p1.Y()){
 
            pp1 = b.polarnode(p1,-ang1Val,rad+0.1,{useRadians:true});
 
            pp2 = b.polarnode(p1,-ang1Val,rad-0.1,{useRadians:true});
 
            pp3 = b.polarnode(p2,ang2Val,-rad+0.1,{useRadians:true});
 
            pp4 = b.polarnode(p2,ang2Val,-rad-0.1,{useRadians:true});
 
        }else{
 
             pp1 = b.polarnode(p1,ang1Val,rad+0.1,{useRadians:true});
 
             pp2 = b.polarnode(p1,ang1Val,rad-0.1,{useRadians:true});
 
             pp3 = b.polarnode(p2,-ang2Val,-rad+0.1,{useRadians:true});
 
            pp4 = b.polarnode(p2,-ang2Val,-rad-0.1,{useRadians:true});
 
 
         }
 
         }
        seg1 = b.segment(pp1,pp2,{strokeWidth:2});
+
     };
        seg2 = b.segment(pp3,pp4,{strokeWidth:2});
+
     var evenSides = function(hat1,hat2,hat3,pol,l1,l2,l3){
    });
+
        hat1[0].setAttribute({opacity:0});
    b.board.update();
+
        hat2[0].setAttribute({opacity:0});
});
+
        hat3[0].setAttribute({opacity:0});
 
+
        if(l1 === l2){
var shrinkAngle = function(ang1,ang2,ang3,l1,l2,l3){
+
            hat1[0].setAttribute({opacity:1});
    if(l1<1.5||l2<1.5||l3<1.5||l1+l2<1.07*l3||l2+l3<1.07*l1||l3+l1<1.07*l2){
+
            hat2[0].setAttribute({opacity:1});
        ang1.setAttribute({visible:false});
 
        ang2.setAttribute({visible:false});
 
        ang3.setAttribute({visible:false});
 
    }
 
     else{
 
        ang1.setAttribute({visible:true});
 
        ang2.setAttribute({visible:true});
 
        ang3.setAttribute({visible:true});
 
     }
 
};
 
var evenSides = function(hat1,hat2,hat3,pol,l1,l2,l3){
 
    hat1[0].setAttribute({opacity:0});
 
    hat2[0].setAttribute({opacity:0});
 
    hat3[0].setAttribute({opacity:0});
 
    if(l1 === l2){
 
        hat1[0].setAttribute({opacity:1});
 
        hat2[0].setAttribute({opacity:1});
 
    }
 
    if(l2 === l3){
 
        hat2[0].setAttribute({opacity:1});
 
        hat3[0].setAttribute({opacity:1});
 
    }
 
    if(l3 === l1){
 
        hat3[0].setAttribute({opacity:1});
 
        hat1[0].setAttribute({opacity:1});
 
    }
 
};
 
 
 
var checkBorder = function(points){
 
    for (var el = 0; el < points.length; el++){
 
        if (points[el].X()>6) {
 
            points[el].setPositionDirectly(JXG.COORDS_BY_USER, [6,points[el].Y()]);
 
 
         }
 
         }
         if (points[el].X()<-1) {
+
         if(l2 === l3){
             points[el].setPositionDirectly(JXG.COORDS_BY_USER, [-1,points[el].Y()]);
+
            hat2[0].setAttribute({opacity:1});
 +
             hat3[0].setAttribute({opacity:1});
 
         }
 
         }
         if (points[el].Y()<-2) {
+
         if(l3 === l1){
             points[el].setPositionDirectly(JXG.COORDS_BY_USER, [points[el].X(),-2]);
+
             hat3[0].setAttribute({opacity:1});
 +
            hat1[0].setAttribute({opacity:1});
 
         }
 
         }
         if (points[el].Y()>5) {
+
    };
            points[el].setPositionDirectly(JXG.COORDS_BY_USER, [points[el].X(),5]);
+
 
 +
    var checkBorder = function(points){
 +
         for (var el = 0; el < points.length; el++){
 +
            if (points[el].X()>6) {
 +
                points[el].setPositionDirectly(JXG.COORDS_BY_USER, [6,points[el].Y()]);
 +
            }
 +
            if (points[el].X()<-1) {
 +
                points[el].setPositionDirectly(JXG.COORDS_BY_USER, [-1,points[el].Y()]);
 +
            }
 +
            if (points[el].Y()<-2) {
 +
                points[el].setPositionDirectly(JXG.COORDS_BY_USER, [points[el].X(),-2]);
 +
            }
 +
            if (points[el].Y()>5) {
 +
                points[el].setPositionDirectly(JXG.COORDS_BY_USER, [points[el].X(),5]);
 +
            }
 
         }
 
         }
     }
+
     };
};
+
    mlg.cf("triangleTypes.start");
mlg.cf("triangleTypes.start");
+
    var crop1 = b.node(-1,5);
var crop1 = b.node(-1,5);
+
    var crop2 = b.node(6,-2);
var crop2 = b.node(6,-2);
+
    b.cropA(0.5);
b.cropA(0.5);
+
 
 
</jsxgpre>
 
</jsxgpre>
  

Versionen från 21 februari 2020 kl. 23.39

Begrepp

Triangel

En triangel är en polygon med tre hörn, sammanbundna av tre raka sidor. Vinkelsumman är alltid Vissa sorters trianglar förekommer ofta och har därför fått egna namn.
  • Rätvinklig triangel: En vinkel är .
  • Liksidig triangel: Alla sidor är lika långa.
  • Likbent triangel: Två sidor är lika långa.
Fel uppstod: bilden kunde ej laddas.
Rätvinklig

Liksidig

Likbent

Återställ


När man räknar ut arean av en triangel använder man basen och höjden. Med triangelns bas menar man någon av sidorna, oftast den som är ritad horisontellt, och med höjden menar man det rätvinkliga avståndet från basen till motstående hörn.

Laddar innehåll