Class MolFragLoader

java.lang.Object
chemaxon.marvin.util.MolFragLoader

@PublicAPI public class MolFragLoader extends Object
Molecule fragment loader. Fragments can be added to the root structure or to R-group definitions as members.
Since:
Marvin 5.2
  • Field Details

    • FILTER_ONE_ATTACHMENT

      public static final MolFilter FILTER_ONE_ATTACHMENT
      Filter object for accepting fragments with one attachment point.
    • FILTER_TWO_ATTACHMENTS

      public static final MolFilter FILTER_TWO_ATTACHMENTS
      Filter object for accepting fragments with two attachment points.
  • Constructor Details

    • MolFragLoader

      public MolFragLoader()
      Constructor.
    • MolFragLoader

      public MolFragLoader(MolImporter importer)
      Constructor: sets the molecule fragment iterator from the specified importer.
      Parameters:
      importer - the fragment importer
    • MolFragLoader

      public MolFragLoader(MoleculeIterator iterator)
      Constructor: sets the molecule fragment iterator.
      Parameters:
      iterator - the fragment iterator
      Since:
      Marvin 5.4
  • Method Details

    • setImporter

      public void setImporter(MolImporter importer)
      Sets the fragment iterator from the specified importer.
      Parameters:
      importer - the fragment importer
    • setIterator

      public void setIterator(MoleculeIterator iterator)
      Sets the fragment iterator.
      Parameters:
      iterator - the fragment iterator
      Since:
      Marvin 5.4
    • setRange

      public void setRange(chemaxon.common.util.IntRange range)
      Sets the (1-based) fragment index range to be loaded. The range is assumed to be sorted in ascending order.
      Parameters:
      range - the fragment index range
    • setFilter

      public void setFilter(MolFilter filter)
      Sets the fragment filter. Only those fragments will be added which pass this filter. For example, the filter may accept only structures with one R-group attachment point (FILTER_ONE_ATTACHMENT), or structures with two R-group attachment points (FILTER_TWO_ATTACHMENTS), checking attachment point types. (By default, all loaded fragments will be added.)
      Parameters:
      filter - the fragment filter
      See Also:
    • loadFrags

      public Molecule loadFrags()
      Loads fragments, fuses them and returns the resulting molecule. If a fragment is an RgMolecule then its root structure (structure without R-definitions) is used. Arranges fragments if needed.
      Returns:
      the resulting molecule
      Since:
      Marvin 5.3
    • loadFrags

      public Molecule loadFrags(boolean arrange)
      Loads fragments, fuses them and returns the resulting molecule. If a fragment is an RgMolecule then its root structure (structure without R-definitions) is used.
      Parameters:
      arrange - is true if fragment coordinates should be shifted to avoid overlappings
      Returns:
      the resulting molecule
      Since:
      Marvin 5.3
    • loadFrags

      public void loadFrags(MoleculeGraph mol, boolean arrange)
      Loads fragments, fuses them to the specified molecule. If a fragment is an RgMolecule then its root structure (structure without R-definitions) is used.
      Parameters:
      mol - the base molecule
      arrange - is true if fragment coordinates should be shifted to avoid overlappings
    • loadFrags

      public void loadFrags(MoleculeGraph mol, int dim, boolean arrange)
      Loads fragments, fuses them to the specified molecule. If a fragment is an RgMolecule then its root structure (structure without R-definitions) is used.
      Parameters:
      mol - the base molecule
      dim - the cleaning dim, -1 for automatic (dim of first fragment)
      arrange - is true if fragment coordinates should be shifted to avoid overlappings
      Since:
      Marvin 5.3
    • loadRgroupMembers

      public void loadRgroupMembers(RgMolecule mol, int rgroupID)
      Loads fragments and adds them as R-group definition members in the specified molecule. If a fragment is an RgMolecule then its root structure (structure without R-definitions) is used.
      Parameters:
      mol - the base molecule
      rgroupID - the R-group ID, 0 for unnumbered R-group
    • arrangeRgroupMembers

      public void arrangeRgroupMembers(RgMolecule mol)
      Arranges R-group definition member coordinates. Shifts members to avoid overlappings after one or more invokation of loadRgroupMembers(chemaxon.struc.RgMolecule, int).
      Parameters:
      mol - the molecule