- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified src/Actions/WorldAction/RepeatBoxAction.cpp ¶
r952f38 rbf3817 5 5 * Author: heber 6 6 */ 7 8 // include config.h 9 #ifdef HAVE_CONFIG_H 10 #include <config.h> 11 #endif 7 12 8 13 #include "Helpers/MemDebug.hpp" … … 21 26 #include <iostream> 22 27 #include <string> 28 #include <vector> 23 29 24 30 using namespace std; … … 90 96 91 97 molecule *newmol = NULL; 92 Vector ** vectors = NULL;98 std::vector<Vector> vectors; 93 99 for (n[0] = 0; n[0] < Repeater[0]; n[0]++) { 94 100 y[0] = n[0]; … … 105 111 if (count != 0) { // if there is more than none 106 112 Elements = new const element *[count]; 107 vectors = new Vector *[count];113 vectors.resize(count); 108 114 j = 0; 109 115 for(molecule::iterator AtomRunner = mol->begin(); AtomRunner != mol->end(); ++AtomRunner) { 110 Elements[j] = (*AtomRunner)-> type;111 vectors[j] = &(*AtomRunner)->x;116 Elements[j] = (*AtomRunner)->getType(); 117 vectors[j] = (*AtomRunner)->getPosition(); 112 118 j++; 113 119 } … … 120 126 for (int k=count;k--;) { // go through every atom of the original cell 121 127 Walker = World::getInstance().createAtom(); // create a new body 122 Walker-> x = (*vectors[k]) + x;123 Walker-> type = Elements[k]; // insert original element128 Walker->setPosition((vectors[k]) + x); 129 Walker->setType(Elements[k]); // insert original element 124 130 cout << "new atom is " << *Walker << endl; 125 131 newmol->AddAtom(Walker); // and add to the molecule (which increments ElementsInMolecule, AtomCount, ...) … … 127 133 // free memory 128 134 delete[](Elements); 129 delete[](vectors);130 135 } else { 131 136 DoLog(1) && (Log() << Verbose(1) << "\t ... is empty." << endl);
Note:
See TracChangeset
for help on using the changeset viewer.