Class TopoCifParser.TLink

  • Enclosing class:
    TopoCifParser

    private class TopoCifParser.TLink
    extends Bond
    A class to hold the TOPOL_LINK data item information and transform it as needed. A key field is the primitives array of TopoPrimitives. These structures allow us to create a set of "primitive" operation results that operate specifically on the links themselves. Rather than showing those links (as with the Jmol script commented at the end of this class), we choose to first create the standard Jmol atom set using, for example, load hcb.cif PACKED or load xxx.cif {1 1 1} or load xxx.cif {444 666 1}, etc. Then we match those atoms with link edges by unitizing the atom back to its unit cell 555 site and then comparing with the primitive associated with a given operator.
    • Field Detail

      • id

        java.lang.String id
      • nodeIds

        java.lang.String[] nodeIds
      • nodeLabels

        java.lang.String[] nodeLabels
      • symops

        int[] symops
      • translations

        javajs.util.P3[] translations
      • netID

        java.lang.String netID
      • netLabel

        java.lang.String netLabel
      • type

        java.lang.String type
      • multiplicity

        int multiplicity
      • topoOrder

        int topoOrder
      • voronoiAngle

        float voronoiAngle
      • cartesianDistance

        float cartesianDistance
      • idx

        int idx
      • typeBondOrder

        int typeBondOrder
      • bsAtoms

        javajs.util.BS bsAtoms
      • bsBonds

        javajs.util.BS bsBonds
      • line

        private java.lang.String line
      • finalized

        boolean finalized
      • mf

        private java.lang.String mf
    • Constructor Detail

      • TLink

        public TLink()
    • Method Detail

      • setLink

        boolean setLink​(int[] t1,
                        int[] t2,
                        java.lang.String line)
      • finalizeLink

        void finalizeLink()
                   throws java.lang.Exception
        Take all actions prior to applying symmetry. Specifically, create any nodes and atoms
        Throws:
        java.lang.Exception
      • getMolecularFormula

        public java.lang.String getMolecularFormula()
      • finalizeLinkNode

        private void finalizeLinkNode​(int index)
                               throws java.lang.Exception
        Parameters:
        index - 0 or 1
        Throws:
        java.lang.Exception
      • getNodeWithSym

        private TopoCifParser.TNode getNodeWithSym​(java.lang.String nodeID,
                                                   java.lang.String nodeLabel,
                                                   int op,
                                                   javajs.util.P3 trans)
        Find a node that already matches this id and symmetry
        Parameters:
        nodeID -
        nodeLabel -
        op - a symmetry operation [9...N-1] or -1 to ignore op and trans
        trans - the translation, ignored if op < 0
        Returns:
        found node or null
      • getLinkInfo

        java.util.Map<java.lang.String,​java.lang.Object> getLinkInfo()
      • info

        java.lang.String info()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class Bond