- File:
-
- 1 edited
-
src/Actions/WorldAction/RepeatBoxAction.cpp (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Actions/WorldAction/RepeatBoxAction.cpp
rd74077 r952f38 11 11 #include "Actions/ActionRegistry.hpp" 12 12 #include "atom.hpp" 13 #include " log.hpp"13 #include "Helpers/Log.hpp" 14 14 #include "molecule.hpp" 15 #include " vector.hpp"16 #include " Matrix.hpp"17 #include " verbose.hpp"15 #include "LinearAlgebra/Vector.hpp" 16 #include "LinearAlgebra/Matrix.hpp" 17 #include "Helpers/Verbose.hpp" 18 18 #include "World.hpp" 19 19 #include "Box.hpp" … … 21 21 #include <iostream> 22 22 #include <string> 23 #include <vector>24 23 25 24 using namespace std; … … 27 26 #include "UIElements/UIFactory.hpp" 28 27 #include "UIElements/Dialog.hpp" 29 #include " UIElements/ValueStorage.hpp"28 #include "Actions/ValueStorage.hpp" 30 29 #include "Descriptors/MoleculeDescriptor.hpp" 31 30 #include "Descriptors/MoleculePtrDescriptor.hpp" … … 45 44 }; 46 45 47 Dialog * WorldRepeatBoxAction:: createDialog() {48 Dialog *dialog = UIFactory::getInstance().makeDialog();46 Dialog * WorldRepeatBoxAction::fillDialog(Dialog *dialog) { 47 ASSERT(dialog,"No Dialog given when filling action dialog"); 49 48 50 49 dialog->queryVector(NAME, false, ValueStorage::getInstance().getDescription(NAME)); … … 91 90 92 91 molecule *newmol = NULL; 93 std::vector<Vector> vectors;92 Vector ** vectors = NULL; 94 93 for (n[0] = 0; n[0] < Repeater[0]; n[0]++) { 95 94 y[0] = n[0]; … … 106 105 if (count != 0) { // if there is more than none 107 106 Elements = new const element *[count]; 108 vectors .resize(count);107 vectors = new Vector *[count]; 109 108 j = 0; 110 109 for(molecule::iterator AtomRunner = mol->begin(); AtomRunner != mol->end(); ++AtomRunner) { 111 Elements[j] = (*AtomRunner)-> getType();112 vectors[j] = (*AtomRunner)->getPosition();110 Elements[j] = (*AtomRunner)->type; 111 vectors[j] = &(*AtomRunner)->x; 113 112 j++; 114 113 } … … 121 120 for (int k=count;k--;) { // go through every atom of the original cell 122 121 Walker = World::getInstance().createAtom(); // create a new body 123 Walker-> setPosition((vectors[k]) + x);124 Walker-> setType(Elements[k]); // insert original element122 Walker->x = (*vectors[k]) + x; 123 Walker->type = Elements[k]; // insert original element 125 124 cout << "new atom is " << *Walker << endl; 126 125 newmol->AddAtom(Walker); // and add to the molecule (which increments ElementsInMolecule, AtomCount, ...) … … 128 127 // free memory 129 128 delete[](Elements); 129 delete[](vectors); 130 130 } else { 131 131 DoLog(1) && (Log() << Verbose(1) << "\t ... is empty." << endl);
Note:
See TracChangeset
for help on using the changeset viewer.
