+void RestorePointsTo(std::vector<void *> & v, std::vector<void *> & s)
+{
+ std::vector<void *>::iterator i = s.begin();
+ std::vector<void *>::iterator j = v.begin();
+
+ for(; i!=s.end(); i++, j++)
+ {
+ Object * objS = (Object *)(*i);
+ Object * objV = (Object *)(*j);
+
+ if (objV->type == OTContainer)
+ {
+ RestorePointsTo(((Container *)objV)->objects, ((Container *)objS)->objects);
+ return;
+ }
+
+ objV->p[0] = objS->p[0];
+ objV->p[1] = objS->p[1];
+ objV->angle[0] = objS->angle[0];
+ objV->angle[1] = objS->angle[1];
+//we don't do this because we want to keep selected & friends from changing
+// memcpy(obj2, *j, sizeof(Object));
+ }
+}
+
+