Ejemplo n.º 1
0
    static public Polynome2D operator +(Polynome2D a, Polynome2D b)
    {
        Polynome2D result = new Polynome2D();

        foreach (Term2D xyTerm in a.m_xyTerms)
        {
            result += xyTerm;
        }
        foreach (Term1D xTerm in a.m_xTerms)
        {
            result.AddXTerm(xTerm);
        }
        foreach (Term1D yTerm in a.m_yTerms)
        {
            result.AddYTerm(yTerm);
        }

        foreach (Term2D xyTerm in b.m_xyTerms)
        {
            result += xyTerm;
        }
        foreach (Term1D xTerm in b.m_xTerms)
        {
            result.AddXTerm(xTerm);
        }
        foreach (Term1D yTerm in b.m_yTerms)
        {
            result.AddYTerm(yTerm);
        }

        result.m_k = a.m_k + b.m_k;

        return(result);
    }
Ejemplo n.º 2
0
    static public Polynome2D MultiplyXYPolygones(Polynome1D xPolygon, Polynome1D yPolygon)
    {
        Polynome2D result = new Polynome2D();

        for (int x = 0; x < xPolygon.termCount; x++)
        {
            Term1D xTerm = xPolygon.terms[x];

            for (int y = 0; y < yPolygon.termCount; y++)
            {
                Term1D yTerm = yPolygon.terms[y];

                Term2D xyTerm = Term2D.MultiplyXYTerms(xTerm, yTerm);

                result += xyTerm;
            }

            result.AddXTerm(xTerm * yPolygon.constant);
        }

        for (int y = 0; y < yPolygon.termCount; y++)
        {
            Term1D yTerm = yPolygon.terms[y];

            result.AddYTerm(yTerm * xPolygon.constant);
        }

        result.m_k = xPolygon.constant * yPolygon.constant;

        return(result);
    }
Ejemplo n.º 3
0
    public MeshVolumeFormula(List <Term1D> xTerms, List <Term1D> yTerms, List <Term2D> xyTerms, float k, MeshID id, float relativeVolume)
    {
        m_formula = new Polynome2D(k);

        foreach (Term1D term in xTerms)
        {
            m_formula.AddXTerm(term);
        }
        foreach (Term1D term in yTerms)
        {
            m_formula.AddYTerm(term);
        }
        foreach (Term2D term in xyTerms)
        {
            m_formula.AddXYTerm(term);
        }

        m_id             = id;
        m_relativeVolume = relativeVolume;
    }
Ejemplo n.º 4
0
    public MeshVolumeFormula(Polynome2D formula, MeshID id, float relativeVolume)
    {
        m_formula = new Polynome2D(formula.k);

        foreach (Term1D term in formula.xTerms)
        {
            m_formula.AddXTerm(term);
        }
        foreach (Term1D term in formula.yTerms)
        {
            m_formula.AddYTerm(term);
        }
        foreach (Term2D term in formula.xyTerms)
        {
            m_formula.AddXYTerm(term);
        }

        m_id             = id;
        m_relativeVolume = relativeVolume;
    }