Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    classe tuple , array e assegnamento

    ciao.
    Ho deciso di creare una semplice classe tuple che oltre a immagazzinare dati ha nel costruttore(si chiama cosi in js?)delle funzioni utili e generiche(riutilizzabilità del codice) ad es :
    Esiste una funzione (m_gl.uniformx) che passato lo shader e il nome della costante dello shader linka un valore (ulteriore parametro) allo shader .

    Ecco queste funzioni sono diverse in webgl a seconda del size:
    codice:
     setConstantValue1f: function (constant, value1) {
            var vconstant = m_gl.getUniformLocation(this.ShaderProgram, constant);
            m_gl.uniform1f(vconstant, value1);
        },
        setConstantValue2f: function (constant, value1, value2) {
            var vconstant = m_gl.getUniformLocation(this.ShaderProgram, constant);
            m_gl.uniform2f(vconstant, value1, value2);
        },
        setConstantValue3f: function (constant, value1, value2, value3) {
            var vconstant = m_gl.getUniformLocation(this.ShaderProgram, constant);
            m_gl.uniform3f(vconstant, value1, value2, value3);
        },
        setConstantValue4f: function (constant, value1, value2, value3, value4) {
            var vconstant = m_gl.getUniformLocation(this.ShaderProgram, constant);
            m_gl.uniform4f(vconstant, value1, value2, value3, value4);
        },
    ecco, io vorrei inserire queste funzioni nel costruttore base della classe tuple da cui derivano le varie tuple1 tuple2 tuple3 , e tuple 4(a seconda del size).

    in pratica una volta dichiarata la tuple con il suo size ad es tuple3 chiamerà passandogli shaderProgram e nome costante la funzione "corretta" con quella dichiarazione (tuple3 o tuple4).

    il problema è che per fare questo devo incapsulare una classe array dentro a tuple per settare i dati.
    Ecco sembra una sciocchezza ma secondo me è comodo... l'overload degli operatori esiste in js?
    posso eseguire una funzione particolare per un dato operatore [] o + o / ?
    te lo chiedo per il futuro , ma in tanto sarebbe comodo utilizzare l'operatore [] per scavalcare il nome dell array tuple[0] o tuple[3] direttamente, senza tuple1.array[0]

    Grazie.

  2. #2
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Cerca di schematizzare il più possibile, così è tutto troppo caotico. Magari facendo delle funzioni di esempio semplificate con costruttori ex novo.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.