Class CyclicOrganicMoleculeBuilder


  • public final class CyclicOrganicMoleculeBuilder
    extends OrganicMoleculeBuilder
    Provides a convenient way to construct and render cyclic organic molecules. You do not need to use this class.
    
       SSSS TTTTT  OOO  PPPP  !
      S       T   O   O P   P !
       SSS    T   O   O PPPP  !
          S   T   O   O P     !
      SSSS    T    OOO  P     !
     
    Do not modify this class! Changes will be overwritten during official grading.
    • Constructor Detail

      • CyclicOrganicMoleculeBuilder

        public CyclicOrganicMoleculeBuilder​(int setCycleLength)
        Creates a builder for a cyclic molecule containing the given number of carbons in the ring.
        Parameters:
        setCycleLength - The number (at least 3) of carbons in the ring.
    • Method Detail

      • finishBackbone

        protected void finishBackbone​(BondedAtom first,
                                      BondedAtom[] firstBonds,
                                      BondedAtom last,
                                      BondedAtom[] lastBonds)
        Makes the molecule cyclic by linking the first and last backbone carbons.
        Specified by:
        finishBackbone in class OrganicMoleculeBuilder
        Parameters:
        first - The first backbone carbon.
        firstBonds - The first carbon's connected atoms.
        last - The last backbone carbon.
        lastBonds - The last carbon's connected atoms.
      • freeValence

        protected int freeValence​(int position)
        Gets how many bonds a core carbon can make after inclusion in the backbone.
        Specified by:
        freeValence in class OrganicMoleculeBuilder
        Parameters:
        position - The zero-based carbon index.
        Returns:
        Always two, since carbons in the ring are guaranteed two links.