Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776

    Javascript e oggetti, parere se ho rispettato la metodologia di programmazione ad oggetti

    Ciao a tutti,

    potreste darmi dei pareri su questo script, secondo voi c'e' qualche cosa che non va bene sulla definizione degli oggetti e dei metodi che si dovrebbe modificare?
    ...a parte il fatto che l'oggetto Palla cambia solo di dimensione (colore e bordi sono sempre uguali).


    Grazie,
    Roberto

    codice:
    <html>
    <head>
        <title></title>
        <meta charset="utf-8">
        <script type="text/javascript">
        function Punto(cX,cY){
        var x=cX;
        var y=cY;
        this.setPunto=function (coordinataX,CoordinataY){
            var x=coordinataX;
            var y=coordinataY;
        };
        this.getX=function(){
            return x;
        };
        this.getY=function(){
            return y;
        };
    }
    
    
    function Palla(punto,raggio){
        var p=punto;
        var r=raggio;
        var x=punto.getX();
        var y=punto.getY();
        this.getRaggio=function (){return r;};
        this.getPunto=function(){return p};
        this.getX=function(){return x};
        this.getY=function(){return y};
        this.disegna=function(foglio){
        var f1=foglio.getFoglio();
        f1.beginPath();
        f1.arc(p.getX(), p.getY(), r, 0, 2*Math.PI, false);
        f1.fillStyle = '#333';
        f1.fill();
        f1.stroke();
    };
        
    }
    
    
    function Foglio(idElemento,larghezza,altezza){
        var idE=idElemento;
        var canvas = document.getElementById(idE);
        if (canvas==undefined){
            console.error("Errore, non esiste alcun elemento con id '"+idE+"'.");
        }
        canvas.style.width=larghezza+"px";
        canvas.style.height=altezza;+"px";
         var c = canvas.getContext('2d');
         this.getFoglio=function(){return c};
         this.getIdElemento=function(){return idE};
          
    
    
     }
    
    
     window.onload=function(){
         var punto=new Punto(400,150);
         var palla=new Palla(punto,50);
         var punto1=new Punto(200,100);
         var palla1=new Palla(punto1,30);
         var foglio=new Foglio("disegno",800,400);
         palla.disegna(foglio);
         palla1.disegna(foglio);
     }
    
    
    
    
        </script>
    
    
    </head>
    <body>
        <div style="border:solid black 2px;width:800px;height:400px">
            <canvas width="800" height="400" id="disegno" style="border:1px solid #d3d3d3;"></canvas>
        </div>
        <br>
    
    
    
    
    
    
    </body>
    
    
    </html>
    Ultima modifica di robynosse; 12-05-2014 a 20:36

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    776
    C'erano degli errori nell'oggetto punto:

    codice:
    function Punto(cX,cY){
        var x=cX;
        var y=cY;
        this.setPunto=function (coordinataX,coordinataY){
            x=coordinataX;
            y=coordinataY;
        };
        this.getX=function(){
            return x;
        };
        this.getY=function(){
            return y;
        };
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.