Revision: 5148
Author: hansonr
Date: 2006-05-19 16:14:40 -0700 (Fri, 19 May 2006)
ViewCVS: http://svn.sourceforge.net/jmol/?rev=5148&view=rev
Log Message:
-----------
bob200603 adds
set rangeSelected
which allows a variable range for
color temperature
based on the current selection set rather than the whole file.
In relation to Brian Foley's work, but with wide generality.
Modified Paths:
--------------
branches/bob200603/Jmol/src/org/jmol/viewer/Eval.java
branches/bob200603/Jmol/src/org/jmol/viewer/Frame.java
branches/bob200603/Jmol/src/org/jmol/viewer/ModelManager.java
branches/bob200603/Jmol/src/org/jmol/viewer/Viewer.java
Modified: branches/bob200603/Jmol/src/org/jmol/viewer/Eval.java
===================================================================
--- branches/bob200603/Jmol/src/org/jmol/viewer/Eval.java 2006-05-19
21:28:56 UTC (rev 5147)
+++ branches/bob200603/Jmol/src/org/jmol/viewer/Eval.java 2006-05-19
23:14:40 UTC (rev 5148)
@@ -1575,11 +1575,14 @@
case Token.shapely:
case Token.chain:
case Token.type:
- case Token.temperature:
case Token.fixedtemp:
case Token.altloc:
case Token.insertion:
break;
+ case Token.temperature:
+ if (viewer.isRangeSelected())
+ viewer.clearBfactorRange();
+ break;
case Token.group:
viewer.calcSelectedGroupsCount();
break;
@@ -1936,6 +1939,7 @@
break;
case Token.dollarsign:
// $drawObject
+ isInternal = true;
axisID = objectNameParameter(++i);
rotCenter = viewer.getDrawObjectCenter(axisID);
rotAxis = viewer.getDrawObjectAxis(axisID);
Modified: branches/bob200603/Jmol/src/org/jmol/viewer/Frame.java
===================================================================
--- branches/bob200603/Jmol/src/org/jmol/viewer/Frame.java 2006-05-19
21:28:56 UTC (rev 5147)
+++ branches/bob200603/Jmol/src/org/jmol/viewer/Frame.java 2006-05-19
23:14:40 UTC (rev 5148)
@@ -2130,28 +2130,44 @@
}
void calcBfactorRange() {
+ calcBfactorRange(null);
+ }
+
+ void clearBfactorRange() {
+ hasBfactorRange = false;
+ System.out.println("clearBfactorRange");
+ }
+
+ void calcBfactorRange(BitSet bs) {
if (!hasBfactorRange) {
- bfactor100Lo = bfactor100Hi = atoms[0].getBfactor100();
- for (int i = atomCount; --i > 0;) {
- int bf = atoms[i].getBfactor100();
- if (bf < bfactor100Lo)
- bfactor100Lo = bf;
- else if (bf > bfactor100Hi)
- bfactor100Hi = bf;
- }
+ bfactor100Lo = Integer.MAX_VALUE;
+ bfactor100Hi = Integer.MIN_VALUE;
+ for (int i = atomCount; --i > 0;)
+ if (bs == null || bs.get(i)) {
+ int bf = atoms[i].getBfactor100();
+ if (bf < bfactor100Lo)
+ bfactor100Lo = bf;
+ else if (bf > bfactor100Hi)
+ bfactor100Hi = bf;
+ }
+ System.out.println("calcbfactor " + bfactor100Lo + " " + bfactor100Hi);
hasBfactorRange = true;
}
}
int getBfactor100Lo() {
- if (!hasBfactorRange)
- calcBfactorRange();
+ if (!hasBfactorRange) {
+ if (viewer.isRangeSelected()) {
+ calcBfactorRange(viewer.getSelectionSet());
+ } else {
+ calcBfactorRange(null);
+ }
+ }
return bfactor100Lo;
}
int getBfactor100Hi() {
- if (!hasBfactorRange)
- calcBfactorRange();
+ getBfactor100Lo();
return bfactor100Hi;
}
Modified: branches/bob200603/Jmol/src/org/jmol/viewer/ModelManager.java
===================================================================
--- branches/bob200603/Jmol/src/org/jmol/viewer/ModelManager.java
2006-05-19 21:28:56 UTC (rev 5147)
+++ branches/bob200603/Jmol/src/org/jmol/viewer/ModelManager.java
2006-05-19 23:14:40 UTC (rev 5148)
@@ -1430,5 +1430,12 @@
return;
}
+ void clearBfactorRange(){
+ if (frame == null)
+ return;
+ frame.clearBfactorRange();
+ }
+
+
}
Modified: branches/bob200603/Jmol/src/org/jmol/viewer/Viewer.java
===================================================================
--- branches/bob200603/Jmol/src/org/jmol/viewer/Viewer.java 2006-05-19
21:28:56 UTC (rev 5147)
+++ branches/bob200603/Jmol/src/org/jmol/viewer/Viewer.java 2006-05-19
23:14:40 UTC (rev 5148)
@@ -1220,6 +1220,10 @@
return modelManager.frame != null;
}
+ void clearBfactorRange(){
+ modelManager.clearBfactorRange();
+ }
+
BitSet getModelAtomBitSet(int modelIndex) {
return modelManager.getModelAtomBitSet(modelIndex);
}
@@ -1456,6 +1460,16 @@
windowCenteredFlag = TF;
}
+ boolean rangeSelected = false;
+
+ boolean isRangeSelected() {
+ return rangeSelected;
+ }
+
+ void setRangeSelected(boolean TF) {
+ rangeSelected = TF;
+ }
+
boolean allowCameraMoveFlag = true;
boolean allowCameraMove() {
@@ -2466,6 +2480,10 @@
setWindowCentered(value);
return;
}
+ if (key.equalsIgnoreCase("rangeSelected")) {
+ setRangeSelected(value);
+ return;
+ }
if (key.equalsIgnoreCase("cameraMove")) {
setAllowCameraMove(value);
return;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Jmol-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-commits