func (e newStyle) StructureBow(lib fragbag.StructureLibrary) bow.Bow { bag := bow.NewBow(lib.Size()) for _, chain := range e.Chains { for _, model := range chain.Models { bag = bag.Add(bow.StructureBow(lib, model.CaAtoms())) } } return bag }
func (fmap *FragmentMap) StructureBow(lib fragbag.StructureLibrary) bow.Bowed { bag := bow.NewBow(lib.Size()) for _, fragGroup := range fmap.Segments { for _, frag := range fragGroup.Frags { bag = bag.Add(bow.StructureBow(lib, frag.CaAtoms)) } } return bow.Bowed{Id: fmap.Name, Bow: bag} }
func (e oldStyle) StructureBow(lib fragbag.StructureLibrary) bow.Bow { smushed := make([]structure.Coords, 0) for _, chain := range e.Chains { for _, model := range chain.Models { smushed = append(smushed, model.CaAtoms()...) } } return bow.StructureBow(lib, smushed) }