Package org.jmol.g3d

Class TriangleRenderer

  • All Implemented Interfaces:
    G3DRenderer

    public class TriangleRenderer
    extends PrecisionRenderer
    implements G3DRenderer
    renders triangles

    currently only renders flat triangles

    will probably need performance tuning

    Author:
    Miguel, miguel@jmol.org
    • Field Detail

      • ax

        private int[] ax
      • ay

        private int[] ay
      • az

        private int[] az
      • aa

        private float[] aa
      • bb

        private float[] bb
      • axW

        private int[] axW
      • azW

        private int[] azW
      • axE

        private int[] axE
      • azE

        private int[] azE
      • rgb16sW

        private Rgb16[] rgb16sW
      • rgb16sE

        private Rgb16[] rgb16sE
      • rgb16sGouraud

        private Rgb16[] rgb16sGouraud
      • rgb16t1

        private final Rgb16 rgb16t1
      • rgb16t2

        private final Rgb16 rgb16t2
    • Constructor Detail

      • TriangleRenderer

        public TriangleRenderer()
    • Method Detail

      • reallocRgb16s

        private Rgb16[] reallocRgb16s​(Rgb16[] rgb16s,
                                      int n)
      • setGouraud

        void setGouraud​(int rgbA,
                        int rgbB,
                        int rgbC)
      • fillTriangle

        void fillTriangle​(javajs.util.P3i screenA,
                          javajs.util.P3i screenB,
                          javajs.util.P3i screenC,
                          boolean useGouraud)
      • generateRaster

        private void generateRaster​(int dy,
                                    int iN,
                                    int iS,
                                    int[] axRaster,
                                    int[] azRaster,
                                    int iRaster,
                                    Rgb16[] gouraud)