use of org.concord.energy3d.model.Mirror in project energy3d by concord-consortium.
the class ChangeTargetForAllHeliostatsCommand method undo.
@Override
public void undo() throws CannotUndoException {
super.undo();
final int n = mirrors.size();
newValues = new Foundation[n];
for (int i = 0; i < n; i++) {
final Mirror m = mirrors.get(i);
newValues[i] = m.getReceiver();
m.setReceiver(oldValues[i]);
m.draw();
if (oldValues[i] != null) {
oldValues[i].drawSolarReceiver();
}
if (newValues[i] != null) {
newValues[i].drawSolarReceiver();
}
}
SceneManager.getInstance().refresh();
}
use of org.concord.energy3d.model.Mirror in project energy3d by concord-consortium.
the class SetSizeForAllHeliostatsCommand method undo.
@Override
public void undo() throws CannotUndoException {
super.undo();
final int n = mirrors.size();
newWidths = new double[n];
newHeights = new double[n];
for (int i = 0; i < n; i++) {
final Mirror m = mirrors.get(i);
newWidths[i] = m.getMirrorWidth();
m.setMirrorWidth(oldWidths[i]);
newHeights[i] = m.getMirrorHeight();
m.setMirrorHeight(oldHeights[i]);
m.draw();
}
SceneManager.getInstance().refresh();
}
use of org.concord.energy3d.model.Mirror in project energy3d by concord-consortium.
the class SetSizeForAllHeliostatsCommand method redo.
@Override
public void redo() throws CannotRedoException {
super.redo();
final int n = mirrors.size();
for (int i = 0; i < n; i++) {
final Mirror m = mirrors.get(i);
m.setMirrorWidth(newWidths[i]);
m.setMirrorHeight(newHeights[i]);
m.draw();
}
SceneManager.getInstance().refresh();
}
use of org.concord.energy3d.model.Mirror in project energy3d by concord-consortium.
the class SetPartSizeCommand method redo.
@Override
public void redo() throws CannotRedoException {
super.redo();
if (part instanceof Mirror) {
final Mirror m = (Mirror) part;
m.setMirrorWidth(newWidth);
m.setMirrorHeight(newHeight);
} else if (part instanceof ParabolicTrough) {
final ParabolicTrough t = (ParabolicTrough) part;
t.setApertureWidth(newWidth);
t.setTroughLength(newHeight);
t.setModuleLength(newModuleLength);
} else if (part instanceof ParabolicDish) {
final ParabolicDish d = (ParabolicDish) part;
d.setRimRadius(newWidth);
} else if (part instanceof FresnelReflector) {
final FresnelReflector t = (FresnelReflector) part;
t.setModuleWidth(newWidth);
t.setLength(newHeight);
t.setModuleLength(newModuleLength);
} else if (part instanceof Rack) {
final Rack r = (Rack) part;
r.setRackWidth(newWidth);
r.setRackHeight(newHeight);
} else if (part instanceof Window) {
final Window w = (Window) part;
w.setWindowWidth(newWidth);
w.setWindowHeight(newHeight);
w.getContainer().draw();
} else if (part instanceof Door) {
final Door d = (Door) part;
d.setDoorWidth(newWidth);
d.setDoorHeight(newHeight);
d.getContainer().draw();
}
part.draw();
SceneManager.getInstance().refresh();
}
use of org.concord.energy3d.model.Mirror in project energy3d by concord-consortium.
the class ChangeTiltAngleForAllHeliostatsCommand method undo.
@Override
public void undo() throws CannotUndoException {
super.undo();
final int n = mirrors.size();
newValues = new double[n];
for (int i = 0; i < n; i++) {
final Mirror m = mirrors.get(i);
newValues[i] = m.getTiltAngle();
m.setTiltAngle(oldValues[i]);
m.draw();
}
SceneManager.getInstance().refresh();
}
Aggregations