if (rotateBondIndex >= 0 && x != Integer.MIN_VALUE) {
actionRotateBond(deltaX, deltaY, x, y);
} else {
bsSelected = setMovableBitSet(bsSelected, !dragAtoms);
if (isTranslation) {
Point3f ptCenter = getAtomSetCenter(bsSelected);
Point3i ptScreen = transformPoint(ptCenter);
Point3f ptScreenNew = new Point3f(ptScreen.x + deltaX + 0.5f,
ptScreen.y + deltaY + 0.5f, ptScreen.z);
Point3f ptNew = new Point3f();
transformManager.finalizeTransformParameters();
unTransformPoint(ptScreenNew, ptNew);
// script("draw ID 'pt" + Math.random() + "' " + Escape.escape(ptNew));
ptNew.sub(ptCenter);
modelSet.setAtomCoordRelative(ptNew, bsSelected);
} else {
transformManager.rotateXYBy(deltaX, deltaY, bsSelected);
}
}