Package org.jmol.util

Class GData

    • Field Detail

      • translucentCoverOnly

        public boolean translucentCoverOnly
      • currentlyRendering

        public boolean currentlyRendering
      • antialiasEnabled

        public boolean antialiasEnabled
      • windowWidth

        protected int windowWidth
      • windowHeight

        protected int windowHeight
      • displayMinX

        protected int displayMinX
      • displayMaxX

        protected int displayMaxX
      • displayMinY

        protected int displayMinY
      • displayMaxY

        protected int displayMaxY
      • displayMinX2

        protected int displayMinX2
      • displayMaxX2

        protected int displayMaxX2
      • displayMinY2

        protected int displayMinY2
      • displayMaxY2

        protected int displayMaxY2
      • antialiasThisFrame

        protected boolean antialiasThisFrame
      • inGreyscaleMode

        protected boolean inGreyscaleMode
      • changeableColixMap

        protected short[] changeableColixMap
      • backgroundImage

        protected java.lang.Object backgroundImage
      • newWindowWidth

        protected int newWindowWidth
      • newWindowHeight

        protected int newWindowHeight
      • newAntialiasing

        protected boolean newAntialiasing
      • bgcolor

        public int bgcolor
      • xLast

        public int xLast
      • yLast

        public int yLast
      • slab

        public int slab
      • depth

        public int depth
      • width

        public int width
      • height

        public int height
      • ambientOcclusion

        public int ambientOcclusion
      • colixCurrent

        protected short colixCurrent
      • argbCurrent

        public int argbCurrent
      • ht3

        protected int ht3
      • isPass2

        public boolean isPass2
      • textY

        protected int textY
      • bufferSize

        public int bufferSize
      • shader

        public Shader shader
      • ENDCAPS_OPEN_TO_SPHERICAL

        public static final byte ENDCAPS_OPEN_TO_SPHERICAL
        See Also:
        Constant Field Values
      • ENDCAPS_FLAT_TO_SPHERICAL

        public static final byte ENDCAPS_FLAT_TO_SPHERICAL
        See Also:
        Constant Field Values
      • graphicsForMetrics

        protected java.lang.Object graphicsForMetrics
      • currentFont

        protected Font currentFont
      • argbNoisyUp

        public int argbNoisyUp
      • argbNoisyDn

        public int argbNoisyDn
      • transformedVectors

        protected javajs.util.V3[] transformedVectors
      • normixCount

        protected static short normixCount
    • Constructor Detail

      • GData

        public GData()
        It is possible to instantiate this class with no Graphics3D. This will happen in the case of WebGL.
    • Method Detail

      • setDepth

        public void setDepth​(int depthValue)
        clipping from the front and the back

        the plane is defined as a percentage from the back of the image to the front

        for depth values:

        • 0 means 100% is shown
        • 25 means the back 25% is not shown
        • 50 means the back half is not shown
        • 100 means that nothing is shown

        Parameters:
        depthValue - rear clipping percentage [0,100]
      • setSlab

        public void setSlab​(int slabValue)
        clipping from the front and the back

        the plane is defined as a percentage from the back of the image to the front

        For slab values:

        • 100 means 100% is shown
        • 75 means the back 75% is shown
        • 50 means the back half is shown
        • 0 means that nothing is shown

        Specified by:
        setSlab in interface JmolGraphicsInterface
        Parameters:
        slabValue - front clipping percentage [0,100]
      • setSlabAndZShade

        public void setSlabAndZShade​(int slab,
                                     int depth,
                                     int zSlab,
                                     int zDepth,
                                     int zPower)
        Specified by:
        setSlabAndZShade in interface JmolGraphicsInterface
        Parameters:
        zSlab - for zShade
        zDepth - for zShade
        zPower -
      • setAmbientOcclusion

        public void setAmbientOcclusion​(int value)
      • isAntialiased

        public boolean isAntialiased()
        is full scene / oversampling antialiasing in effect
        Specified by:
        isAntialiased in interface JmolGraphicsInterface
        Returns:
        the answer
      • getChangeableColix

        public short getChangeableColix​(int id,
                                        int argb)
      • changeColixArgb

        public void changeColixArgb​(int id,
                                    int argb)
      • getColorArgbOrGray

        public int getColorArgbOrGray​(short colix)
      • getShades

        public int[] getShades​(short colix)
      • setGreyscaleMode

        public void setGreyscaleMode​(boolean greyscaleMode)
        controls greyscale rendering
        Parameters:
        greyscaleMode - Flag for greyscale rendering
      • getSpecularPower

        public int getSpecularPower()
      • setSpecularPower

        public void setSpecularPower​(int val)
        fractional distance to white for specular dot
        Parameters:
        val -
      • getSpecularPercent

        public int getSpecularPercent()
      • setSpecularPercent

        public void setSpecularPercent​(int val)
        sf in I = df * (N dot L) + sf * (R dot V)^p not a percent of anything, really
        Parameters:
        val -
      • getSpecularExponent

        public int getSpecularExponent()
      • setSpecularExponent

        public void setSpecularExponent​(int val)
        log_2(p) in I = df * (N dot L) + sf * (R dot V)^p for faster calculation of shades
        Parameters:
        val -
      • getPhongExponent

        public int getPhongExponent()
      • setPhongExponent

        public void setPhongExponent​(int val)
        p in I = df * (N dot L) + sf * (R dot V)^p
        Parameters:
        val -
      • getDiffusePercent

        public int getDiffusePercent()
      • setDiffusePercent

        public void setDiffusePercent​(int val)
        df in I = df * (N dot L) + sf * (R dot V)^p
        Parameters:
        val -
      • getAmbientPercent

        public int getAmbientPercent()
      • setAmbientPercent

        public void setAmbientPercent​(int val)
        fractional distance from black for ambient color
        Parameters:
        val -
      • getSpecular

        public boolean getSpecular()
      • setSpecular

        public void setSpecular​(boolean val)
      • setCel

        public void setCel​(boolean val)
      • getCel

        public boolean getCel()
      • getCelPower

        public int getCelPower()
      • setCelPower

        public void setCelPower​(int celPower)
      • getLightSource

        public javajs.util.V3 getLightSource()
      • isClipped3

        public boolean isClipped3​(int x,
                                  int y,
                                  int z)
      • isClipped

        public boolean isClipped​(int x,
                                 int y)
      • isClippedZ

        public boolean isClippedZ​(int z)
      • clipCode3

        public int clipCode3​(int x,
                             int y,
                             int z)
      • clipCode

        public int clipCode​(int z)
      • getFont3D

        public Font getFont3D​(float fontSize)
      • getFont3DFS

        public Font getFont3DFS​(java.lang.String fontFace,
                                float fontSize)
      • getFontFidFS

        public int getFontFidFS​(java.lang.String fontFace,
                                float fontSize)
      • getFont3DFSS

        public Font getFont3DFSS​(java.lang.String fontFace,
                                 java.lang.String fontStyle,
                                 float fontSize)
      • getFont3DScaled

        public Font getFont3DScaled​(Font font,
                                    float scale)
      • getFontFidI

        public int getFontFidI​(float fontSize)
      • getFont3DCurrent

        public Font getFont3DCurrent()
      • setFont

        public void setFont​(Font font3d)
        Parameters:
        font3d -
      • setFontBold

        public void setFontBold​(java.lang.String fontFace,
                                float fontSize)
      • setBackgroundTransparent

        public void setBackgroundTransparent​(boolean TF)
        Parameters:
        TF -
      • setBackgroundArgb

        public void setBackgroundArgb​(int argb)
        sets background color to the specified argb value
        Parameters:
        argb - an argb value with alpha channel
      • setBackgroundImage

        public void setBackgroundImage​(java.lang.Object image)
      • setWindowParameters

        public void setWindowParameters​(int width,
                                        int height,
                                        boolean antialias)
      • setWinParams

        protected void setWinParams​(int width,
                                    int height,
                                    boolean antialias)
      • setNewWindowParametersForExport

        public void setNewWindowParametersForExport()
      • setWidthHeight

        protected void setWidthHeight​(boolean isAntialiased)
      • beginRendering

        public void beginRendering​(javajs.util.M3 stereoRotationMatrix,
                                   boolean translucentMode,
                                   boolean isImageWrite,
                                   boolean renderLow)
        Parameters:
        stereoRotationMatrix -
        translucentMode -
        isImageWrite -
        renderLow - TODO
      • endRendering

        public void endRendering()
      • snapshotAnaglyphChannelBytes

        public void snapshotAnaglyphChannelBytes()
      • getScreenImage

        public java.lang.Object getScreenImage​(boolean isImageWrite)
        Parameters:
        isImageWrite -
        Returns:
        image object
      • releaseScreenImage

        public void releaseScreenImage()
      • applyAnaglygh

        public void applyAnaglygh​(STER stereoMode,
                                  int[] stereoColors)
        Parameters:
        stereoMode -
        stereoColors -
      • setPass2

        public boolean setPass2​(boolean antialias)
        Parameters:
        antialias -
        Returns:
        true if need a second (translucent) pass
      • destroy

        public void destroy()
      • clearFontCache

        public void clearFontCache()
      • drawQuadrilateralBits

        public void drawQuadrilateralBits​(JmolRendererInterface jmolRenderer,
                                          short colix,
                                          javajs.util.P3 screenA,
                                          javajs.util.P3 screenB,
                                          javajs.util.P3 screenC,
                                          javajs.util.P3 screenD)
      • drawTriangleBits

        public void drawTriangleBits​(JmolRendererInterface renderer,
                                     javajs.util.P3 screenA,
                                     short colixA,
                                     javajs.util.P3 screenB,
                                     short colixB,
                                     javajs.util.P3 screenC,
                                     short colixC,
                                     int check)
      • plotImage

        public void plotImage​(int x,
                              int y,
                              int z,
                              java.lang.Object image,
                              JmolRendererInterface jmolRenderer,
                              short bgcolix,
                              int width,
                              int height)
        Parameters:
        x -
        y -
        z -
        image -
        jmolRenderer -
        bgcolix -
        width -
        height -
      • plotText

        public void plotText​(int x,
                             int y,
                             int z,
                             int colorArgbOrGray,
                             int bgColor,
                             java.lang.String text,
                             Font font3d,
                             JmolRendererInterface jmolRenderer)
        Parameters:
        x -
        y -
        z -
        colorArgbOrGray -
        bgColor - TODO
        text -
        font3d -
        jmolRenderer -
      • renderBackground

        public void renderBackground​(JmolRendererInterface jmolRenderer)
        Parameters:
        jmolRenderer -
      • setColor

        public void setColor​(int argb)
      • setC

        public boolean setC​(short colix)
        Parameters:
        colix -
        Returns:
        TRUE if correct pass (translucent or opaque)
      • isDirectedTowardsCamera

        public boolean isDirectedTowardsCamera​(short normix)
        Parameters:
        normix -
        Returns:
        true if front
      • roundInt

        public static int roundInt​(int a)
        JavaScript won't really have an integer here after integer division. So we need to round it to the integer between it and zero.
        Parameters:
        a -
        Returns:
        number closest to zero
      • clear

        public void clear()
      • addRenderer

        public void addRenderer​(int tok)
        Parameters:
        tok -
      • getHermiteList

        public static void getHermiteList​(int tension,
                                          javajs.util.T3 p0,
                                          javajs.util.T3 p1,
                                          javajs.util.T3 p2,
                                          javajs.util.T3 p3,
                                          javajs.util.T3 p4,
                                          javajs.util.T3[] list,
                                          int index0,
                                          int n,
                                          boolean isPt)
        Used by Navigator, BioShapeRenderer, and DrawRenderer
        Parameters:
        tension -
        p0 -
        p1 -
        p2 -
        p3 -
        p4 -
        list -
        index0 -
        n -
        isPt -
      • setTextPosition

        public void setTextPosition​(int y)
      • getTextPosition

        public int getTextPosition()
      • getTransformedVertexVectors

        public javajs.util.V3[] getTransformedVertexVectors()
      • drawLinePixels

        public void drawLinePixels​(javajs.util.P3i sA,
                                   javajs.util.P3i sB,
                                   int z,
                                   int zslab)
        Specified by:
        drawLinePixels in interface JmolGraphicsInterface