Class Export3D

    • Constructor Summary

      Constructors 
      Constructor Description
      Export3D()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addRenderer​(int tok)  
      boolean checkTranslucent​(boolean isAlphaTranslucent)  
      int clipCode​(int x, int y, int z)  
      void drawAtom​(Atom atom, float radius)  
      void drawBond​(javajs.util.P3 atomA, javajs.util.P3 atomB, short colixA, short colixB, byte endcaps, short mad, int bondOrder)  
      void drawCircle​(short colix, int diameter, int x, int y, int z, boolean doFill)
      draws a simple circle (draw circle)
      void drawDashedLineBits​(int run, int rise, javajs.util.P3 pointA, javajs.util.P3 pointB)  
      boolean drawEllipse​(javajs.util.P3 ptAtom, javajs.util.P3 ptX, javajs.util.P3 ptY, boolean fillArc, boolean wireframeOnly)  
      void drawFilledCircle​(short colixRing, short colixFill, int diameter, int x, int y, int z)
      draws a screened circle ...
      void drawHermite4​(int tension, javajs.util.P3 s0, javajs.util.P3 s1, javajs.util.P3 s2, javajs.util.P3 s3)  
      void drawHermite7​(boolean fill, boolean border, int tension, javajs.util.P3 s0, javajs.util.P3 s1, javajs.util.P3 s2, javajs.util.P3 s3, javajs.util.P3 s4, javajs.util.P3 s5, javajs.util.P3 s6, javajs.util.P3 s7, int aspectRatio, short colixBack)  
      private void drawHLine​(int x, int y, int z, int w)  
      void drawImage​(java.lang.Object objImage, int x, int y, int z, int zSlab, short bgcolix, int width, int height)  
      void drawLine​(short colixA, short colixB, int xA, int yA, int zA, int xB, int yB, int zB)  
      void drawLineAB​(javajs.util.P3 pointA, javajs.util.P3 pointB)  
      void drawLineBits​(short colixA, short colixB, javajs.util.P3 pointA, javajs.util.P3 pointB)  
      void drawLineBits​(javajs.util.P3 screenA, javajs.util.P3 screenB, short colixA, short colixB)  
      void drawLineXYZ​(int x1, int y1, int z1, int x2, int y2, int z2)  
      void drawPixel​(int x, int y, int z)  
      void drawPoints​(int count, int[] coordinates, int scale)  
      void drawRect​(int x, int y, int z, int zSlab, int rWidth, int rHeight)
      draws a rectangle
      void drawString​(java.lang.String str, javajs.awt.Font font3d, int xBaseline, int yBaseline, int z, int zSlab, short bgcolix)
      draws the specified string in the current font.
      void drawStringNoSlab​(java.lang.String str, javajs.awt.Font font3d, int xBaseline, int yBaseline, int z, short bgcolix)
      draws the specified string in the current font.
      void drawSurface​(MeshSurface meshSurface, short colix)  
      void drawTriangle3C​(javajs.util.P3i screenA, short colixA, javajs.util.P3i screenB, short colixB, javajs.util.P3i screenC, short colixC, int check)  
      private void drawVLine​(int x, int y, int z, int h)  
      void fillConeScreen3f​(byte endcap, int screenDiameter, javajs.util.P3 pointBase, javajs.util.P3 screenTip, boolean isBarb)  
      void fillCylinder​(byte endcaps, int diameter, javajs.util.P3i pointA, javajs.util.P3i pointB)  
      void fillCylinderBits​(byte endcaps, int diameter, javajs.util.P3 pointA, javajs.util.P3 pointB)  
      void fillCylinderBits2​(short colixA, short colixB, byte endcaps, int mad, javajs.util.P3 screenA, javajs.util.P3 screenB)  
      void fillCylinderScreen3I​(byte endcaps, int diameter, javajs.util.P3 pointA, javajs.util.P3 pointB, javajs.util.P3 pt0f, javajs.util.P3 pt1f, float radius)  
      void fillCylinderXYZ​(short colixA, short colixB, byte endcaps, int mad, int xA, int yA, int zA, int xB, int yB, int zB)  
      void fillEllipsoid​(javajs.util.P3 center, javajs.util.P3[] points, int x, int y, int z, int diameter, javajs.util.M3 mToEllipsoidal, double[] coef, javajs.util.M4 mDeriv, int selectedOctant, javajs.util.P3[] octantPoints)  
      void fillHermite​(int tension, int diameterBeg, int diameterMid, int diameterEnd, javajs.util.P3 s0, javajs.util.P3 s1, javajs.util.P3 s2, javajs.util.P3 s3)  
      void fillQuadrilateral​(javajs.util.P3 pointA, javajs.util.P3 pointB, javajs.util.P3 pointC, javajs.util.P3 pointD, boolean isSolid)  
      void fillSphereBits​(int diameter, javajs.util.P3 center)
      fills a solid sphere
      void fillSphereI​(int diameter, javajs.util.P3i center)
      fills a solid sphere
      void fillSphereXYZ​(int diameter, int x, int y, int z)
      fills a solid sphere
      void fillTextRect​(int x, int y, int z, int zSlab, int widthFill, int heightFill)
      fills background rectangle for label
      void fillTriangle3CN​(javajs.util.P3i pointA, short colixA, short normixA, javajs.util.P3i pointB, short colixB, short normixB, javajs.util.P3i pointC, short colixC, short normixC)  
      void fillTriangle3CNBits​(javajs.util.P3 pA, short colixA, short nA, javajs.util.P3 pB, short colixB, short nB, javajs.util.P3 pC, short colixC, short nC, boolean twoSided)  
      void fillTriangle3f​(javajs.util.P3 pointA, javajs.util.P3 pointB, javajs.util.P3 pointC, boolean setNoisy)  
      void fillTriangle3i​(javajs.util.P3 screenA, javajs.util.P3 screenB, javajs.util.P3 screenC, javajs.util.T3 ptA0, javajs.util.T3 ptB0, javajs.util.T3 ptC0, boolean doShade)  
      void fillTriangleTwoSided​(short normix, javajs.util.P3 a, javajs.util.P3 b, javajs.util.P3 c)  
      java.lang.String finalizeOutput()  
      java.lang.String getExportName()  
      int getExportType()  
      double getPrivateKey()  
      boolean haveTranslucentObjects()  
      java.lang.Object initializeExporter​(Viewer vwr, double privateKey, GData gdata, java.util.Map<java.lang.String,​java.lang.Object> params)  
      boolean initializeOutput​(Viewer vwr, double privateKey, java.util.Map<java.lang.String,​java.lang.Object> params)  
      boolean isAntialiased()
      is full scene / oversampling antialiasing in effect
      protected boolean isClipped​(int x, int y)  
      boolean isClipped​(int x, int y, int z)  
      boolean isClippedXY​(int diameter, int x, int y)  
      boolean isInDisplayRange​(int x, int y)  
      boolean isWebGL()  
      void plotImagePixel​(int argb, int x, int y, int z, byte shade, int bgargb, int width, int height, int[] pbuf, java.lang.Object p, int transpLog)  
      (package private) void plotPixelClipped​(int x, int y, int z)  
      void plotPixelClippedP3i​(javajs.util.P3i screen)  
      void renderAllStrings​(java.lang.Object jr)  
      void renderBackground​(JmolRendererInterface me)  
      void renderCrossHairs​(int[] minMax, int screenWidth, int screenHeight, javajs.util.P3 navigationOffset, float navigationDepthPercent)  
      boolean setC​(short colix)
      sets current color from colix color index
      void setSlab​(int slabValue)  
      void setSlabAndZShade​(int slabValue, int depthValue, int zSlab, int zDepth, int zPower)  
      void volumeRender​(boolean TF)  
      void volumeRender4​(int diam, int x, int y, int z)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • privateKey

        private double privateKey
      • gdata

        private GData gdata
      • colix

        private short colix
      • width

        private int width
      • height

        private int height
      • slab

        private int slab
      • depth

        private int depth
      • exportName

        java.lang.String exportName
      • webGL

        private boolean webGL
      • isCartesian

        private boolean isCartesian
      • ptA

        private javajs.util.P3 ptA
      • ptB

        private javajs.util.P3 ptB
      • ptC

        private javajs.util.P3 ptC
      • ptD

        private javajs.util.P3 ptD
    • Constructor Detail

      • Export3D

        public Export3D()
    • Method Detail

      • initializeOutput

        public boolean initializeOutput​(Viewer vwr,
                                        double privateKey,
                                        java.util.Map<java.lang.String,​java.lang.Object> params)
        Specified by:
        initializeOutput in interface JmolRendererInterface
      • setSlabAndZShade

        public void setSlabAndZShade​(int slabValue,
                                     int depthValue,
                                     int zSlab,
                                     int zDepth,
                                     int zPower)
        Specified by:
        setSlabAndZShade in interface JmolGraphicsInterface
      • drawRect

        public void drawRect​(int x,
                             int y,
                             int z,
                             int zSlab,
                             int rWidth,
                             int rHeight)
        draws a rectangle
        Specified by:
        drawRect in interface JmolRendererInterface
        Parameters:
        x - upper left x
        y - upper left y
        z - upper left z
        zSlab - z for slab check (for set labelsFront)
        rWidth - pixel count
        rHeight - pixel count
      • drawHLine

        private void drawHLine​(int x,
                               int y,
                               int z,
                               int w)
        Parameters:
        x -
        y -
        z -
        w -
      • drawVLine

        private void drawVLine​(int x,
                               int y,
                               int z,
                               int h)
        Parameters:
        x -
        y -
        z -
        h -
      • drawFilledCircle

        public void drawFilledCircle​(short colixRing,
                                     short colixFill,
                                     int diameter,
                                     int x,
                                     int y,
                                     int z)
        draws a screened circle ... every other dot is turned on
        Specified by:
        drawFilledCircle in interface JmolRendererInterface
        Parameters:
        colixRing -
        colixFill -
        diameter -
        x - center x
        y - center y
        z - center z
      • drawCircle

        public void drawCircle​(short colix,
                               int diameter,
                               int x,
                               int y,
                               int z,
                               boolean doFill)
        draws a simple circle (draw circle)
        Parameters:
        colix - the color index
        diameter - the pixel diameter
        x - center x
        y - center y
        z - center z
        doFill - (not implemented in exporters)
      • fillSphereXYZ

        public void fillSphereXYZ​(int diameter,
                                  int x,
                                  int y,
                                  int z)
        fills a solid sphere
        Specified by:
        fillSphereXYZ in interface JmolRendererInterface
        Parameters:
        diameter - pixel count
        x - center x
        y - center y
        z - center z
      • fillSphereI

        public void fillSphereI​(int diameter,
                                javajs.util.P3i center)
        fills a solid sphere
        Specified by:
        fillSphereI in interface JmolRendererInterface
        Parameters:
        diameter - pixel count
        center - javax.vecmath.Point3i defining the center
      • fillSphereBits

        public void fillSphereBits​(int diameter,
                                   javajs.util.P3 center)
        fills a solid sphere
        Specified by:
        fillSphereBits in interface JmolRendererInterface
        Parameters:
        diameter - pixel count
        center - a javax.vecmath.Point3f ... floats are casted to ints
      • fillTextRect

        public void fillTextRect​(int x,
                                 int y,
                                 int z,
                                 int zSlab,
                                 int widthFill,
                                 int heightFill)
        fills background rectangle for label

        Specified by:
        fillTextRect in interface JmolRendererInterface
        Parameters:
        x - upper left x
        y - upper left y
        z - upper left z
        zSlab - z value for slabbing
        widthFill - pixel count
        heightFill - pixel count
      • drawString

        public void drawString​(java.lang.String str,
                               javajs.awt.Font font3d,
                               int xBaseline,
                               int yBaseline,
                               int z,
                               int zSlab,
                               short bgcolix)
        draws the specified string in the current font. no line wrapping -- axis, labels, measures
        Specified by:
        drawString in interface JmolRendererInterface
        Parameters:
        str - the String
        font3d - the Font3D
        xBaseline - baseline x
        yBaseline - baseline y
        z - baseline z
        zSlab - z for slab calculation
        bgcolix -
      • drawStringNoSlab

        public void drawStringNoSlab​(java.lang.String str,
                                     javajs.awt.Font font3d,
                                     int xBaseline,
                                     int yBaseline,
                                     int z,
                                     short bgcolix)
        draws the specified string in the current font. no line wrapping -- echo, frank, hover, molecularOrbital, uccage
        Specified by:
        drawStringNoSlab in interface JmolRendererInterface
        Parameters:
        str - the String
        font3d - the Font3D
        xBaseline - baseline x
        yBaseline - baseline y
        z - baseline z
        bgcolix -
      • drawImage

        public void drawImage​(java.lang.Object objImage,
                              int x,
                              int y,
                              int z,
                              int zSlab,
                              short bgcolix,
                              int width,
                              int height)
        Specified by:
        drawImage in interface JmolRendererInterface
      • plotPixelClipped

        void plotPixelClipped​(int x,
                              int y,
                              int z)
      • drawDashedLineBits

        public void drawDashedLineBits​(int run,
                                       int rise,
                                       javajs.util.P3 pointA,
                                       javajs.util.P3 pointB)
        Specified by:
        drawDashedLineBits in interface JmolRendererInterface
      • drawLine

        public void drawLine​(short colixA,
                             short colixB,
                             int xA,
                             int yA,
                             int zA,
                             int xB,
                             int yB,
                             int zB)
        Specified by:
        drawLine in interface JmolRendererInterface
      • drawLineBits

        public void drawLineBits​(short colixA,
                                 short colixB,
                                 javajs.util.P3 pointA,
                                 javajs.util.P3 pointB)
        Specified by:
        drawLineBits in interface JmolRendererInterface
      • drawBond

        public void drawBond​(javajs.util.P3 atomA,
                             javajs.util.P3 atomB,
                             short colixA,
                             short colixB,
                             byte endcaps,
                             short mad,
                             int bondOrder)
        Specified by:
        drawBond in interface JmolRendererInterface
      • fillCylinderXYZ

        public void fillCylinderXYZ​(short colixA,
                                    short colixB,
                                    byte endcaps,
                                    int mad,
                                    int xA,
                                    int yA,
                                    int zA,
                                    int xB,
                                    int yB,
                                    int zB)
        Specified by:
        fillCylinderXYZ in interface JmolRendererInterface
      • fillCylinderScreen3I

        public void fillCylinderScreen3I​(byte endcaps,
                                         int diameter,
                                         javajs.util.P3 pointA,
                                         javajs.util.P3 pointB,
                                         javajs.util.P3 pt0f,
                                         javajs.util.P3 pt1f,
                                         float radius)
        Specified by:
        fillCylinderScreen3I in interface JmolRendererInterface
      • fillCylinder

        public void fillCylinder​(byte endcaps,
                                 int diameter,
                                 javajs.util.P3i pointA,
                                 javajs.util.P3i pointB)
        Specified by:
        fillCylinder in interface JmolRendererInterface
      • fillCylinderBits

        public void fillCylinderBits​(byte endcaps,
                                     int diameter,
                                     javajs.util.P3 pointA,
                                     javajs.util.P3 pointB)
        Specified by:
        fillCylinderBits in interface JmolRendererInterface
      • fillConeScreen3f

        public void fillConeScreen3f​(byte endcap,
                                     int screenDiameter,
                                     javajs.util.P3 pointBase,
                                     javajs.util.P3 screenTip,
                                     boolean isBarb)
        Specified by:
        fillConeScreen3f in interface JmolRendererInterface
      • drawHermite4

        public void drawHermite4​(int tension,
                                 javajs.util.P3 s0,
                                 javajs.util.P3 s1,
                                 javajs.util.P3 s2,
                                 javajs.util.P3 s3)
        Specified by:
        drawHermite4 in interface JmolRendererInterface
      • fillHermite

        public void fillHermite​(int tension,
                                int diameterBeg,
                                int diameterMid,
                                int diameterEnd,
                                javajs.util.P3 s0,
                                javajs.util.P3 s1,
                                javajs.util.P3 s2,
                                javajs.util.P3 s3)
        Specified by:
        fillHermite in interface JmolRendererInterface
      • drawTriangle3C

        public void drawTriangle3C​(javajs.util.P3i screenA,
                                   short colixA,
                                   javajs.util.P3i screenB,
                                   short colixB,
                                   javajs.util.P3i screenC,
                                   short colixC,
                                   int check)
        Specified by:
        drawTriangle3C in interface JmolRendererInterface
      • drawLineBits

        public void drawLineBits​(javajs.util.P3 screenA,
                                 javajs.util.P3 screenB,
                                 short colixA,
                                 short colixB)
      • fillCylinderBits2

        public void fillCylinderBits2​(short colixA,
                                      short colixB,
                                      byte endcaps,
                                      int mad,
                                      javajs.util.P3 screenA,
                                      javajs.util.P3 screenB)
        Specified by:
        fillCylinderBits2 in interface JmolRendererInterface
      • fillTriangle3CNBits

        public void fillTriangle3CNBits​(javajs.util.P3 pA,
                                        short colixA,
                                        short nA,
                                        javajs.util.P3 pB,
                                        short colixB,
                                        short nB,
                                        javajs.util.P3 pC,
                                        short colixC,
                                        short nC,
                                        boolean twoSided)
        Specified by:
        fillTriangle3CNBits in interface JmolRendererInterface
      • fillTriangle3CN

        public void fillTriangle3CN​(javajs.util.P3i pointA,
                                    short colixA,
                                    short normixA,
                                    javajs.util.P3i pointB,
                                    short colixB,
                                    short normixB,
                                    javajs.util.P3i pointC,
                                    short colixC,
                                    short normixC)
        Specified by:
        fillTriangle3CN in interface JmolRendererInterface
      • fillTriangle3f

        public void fillTriangle3f​(javajs.util.P3 pointA,
                                   javajs.util.P3 pointB,
                                   javajs.util.P3 pointC,
                                   boolean setNoisy)
        Specified by:
        fillTriangle3f in interface JmolRendererInterface
      • fillTriangle3i

        public void fillTriangle3i​(javajs.util.P3 screenA,
                                   javajs.util.P3 screenB,
                                   javajs.util.P3 screenC,
                                   javajs.util.T3 ptA0,
                                   javajs.util.T3 ptB0,
                                   javajs.util.T3 ptC0,
                                   boolean doShade)
        Specified by:
        fillTriangle3i in interface JmolRendererInterface
      • fillQuadrilateral

        public void fillQuadrilateral​(javajs.util.P3 pointA,
                                      javajs.util.P3 pointB,
                                      javajs.util.P3 pointC,
                                      javajs.util.P3 pointD,
                                      boolean isSolid)
        Specified by:
        fillQuadrilateral in interface JmolRendererInterface
      • fillEllipsoid

        public void fillEllipsoid​(javajs.util.P3 center,
                                  javajs.util.P3[] points,
                                  int x,
                                  int y,
                                  int z,
                                  int diameter,
                                  javajs.util.M3 mToEllipsoidal,
                                  double[] coef,
                                  javajs.util.M4 mDeriv,
                                  int selectedOctant,
                                  javajs.util.P3[] octantPoints)
        Specified by:
        fillEllipsoid in interface JmolRendererInterface
      • drawEllipse

        public boolean drawEllipse​(javajs.util.P3 ptAtom,
                                   javajs.util.P3 ptX,
                                   javajs.util.P3 ptY,
                                   boolean fillArc,
                                   boolean wireframeOnly)
        Specified by:
        drawEllipse in interface JmolRendererInterface
      • isAntialiased

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

        public boolean setC​(short colix)
        sets current color from colix color index
        Specified by:
        setC in interface JmolRendererInterface
        Parameters:
        colix - the color index
        Returns:
        true or false if this is the right pass
      • clipCode

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

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

        protected boolean isClipped​(int x,
                                    int y)
      • getPrivateKey

        public double getPrivateKey()
      • renderCrossHairs

        public void renderCrossHairs​(int[] minMax,
                                     int screenWidth,
                                     int screenHeight,
                                     javajs.util.P3 navigationOffset,
                                     float navigationDepthPercent)
        Specified by:
        renderCrossHairs in interface JmolRendererInterface
      • plotImagePixel

        public void plotImagePixel​(int argb,
                                   int x,
                                   int y,
                                   int z,
                                   byte shade,
                                   int bgargb,
                                   int width,
                                   int height,
                                   int[] pbuf,
                                   java.lang.Object p,
                                   int transpLog)
        Specified by:
        plotImagePixel in interface JmolRendererInterface
      • drawHermite7

        public void drawHermite7​(boolean fill,
                                 boolean border,
                                 int tension,
                                 javajs.util.P3 s0,
                                 javajs.util.P3 s1,
                                 javajs.util.P3 s2,
                                 javajs.util.P3 s3,
                                 javajs.util.P3 s4,
                                 javajs.util.P3 s5,
                                 javajs.util.P3 s6,
                                 javajs.util.P3 s7,
                                 int aspectRatio,
                                 short colixBack)
        Specified by:
        drawHermite7 in interface JmolRendererInterface