public class SurfaceTool
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private float |
anglefromZ |
private int |
angleUnits |
private java.lang.String[] |
angleUnitsList |
private float |
angleXY |
private javajs.util.V3 |
boxVec |
private boolean |
capOn |
private javajs.util.P3 |
center |
(package private) static int |
CIRCLE_FRACTION |
(package private) static int |
DEGREES |
private boolean |
ghostOn |
(package private) static int |
GRADIANS |
private SurfaceToolGUI |
gui |
private boolean |
leftOn |
private javajs.util.P3 |
negCorner |
private javajs.util.P3 |
posCorner |
private float |
position |
private float |
positionMin |
(package private) static int |
RADIANS |
private boolean |
rightOn |
private Slice |
slice |
private java.util.List<SurfaceStatus> |
surfaces |
private float |
thickness |
private float |
thicknessMax |
(package private) static int |
UNITS_PI |
(package private) boolean |
useGUI |
private boolean |
useMolecular |
private boolean |
usePercent |
protected JmolViewer |
vwr |
Constructor and Description |
---|
SurfaceTool(JmolViewer vwr,
HistoryFile hfile,
java.lang.String winName,
boolean useGUI) |
Modifier and Type | Method and Description |
---|---|
private boolean |
checkMesh(Mesh m) |
(package private) BoxInfo |
checkMeshBB(Shape[] shapes,
int kind,
BoxInfo box) |
private void |
chooseBestBoundBox() |
private void |
drawSlicePlane(javajs.util.SB cmd,
int side,
boolean on) |
(package private) float |
getAnglefromZ() |
(package private) int |
getAngleUnits() |
(package private) java.lang.String[] |
getAngleUnitsList() |
(package private) javajs.util.V3 |
getBoxVec() |
(package private) boolean |
getCapOn() |
(package private) javajs.util.P3 |
getCenter() |
(package private) boolean |
getGhostOn() |
(package private) javajs.util.P3 |
getNegCorner() |
(package private) javajs.util.P3 |
getPosCorner() |
(package private) float |
getPositionMin() |
(package private) float |
getSliceAngleXY() |
(package private) javajs.util.P4 |
getSliceMiddle() |
(package private) float |
getSlicePosition() |
(package private) float |
getSliceThickness() |
java.util.List<SurfaceStatus> |
getSurfaces() |
(package private) float |
getThicknessMax() |
(package private) boolean |
getUseMolecular() |
private void |
initSlice() |
(package private) void |
setAngleUnits(int units) |
(package private) void |
setCapOn(boolean b) |
(package private) void |
setGhostOn(boolean b) |
(package private) void |
setSlice(float angleXY,
float anglefromZ,
float position,
float thickness)
Defines a slice within which isosurfaces (and in future? atoms) are
displayed.
|
(package private) void |
setSliceAnglefromZ(float angle) |
(package private) void |
setSliceAngleXY(float angle) |
(package private) void |
setSlicePosition(float where) |
(package private) void |
setSliceThickness(float width) |
(package private) void |
setSurfaceToolParam() |
private void |
setSyncStarting() |
(package private) void |
setUseMolecular(boolean on) |
(package private) void |
showSliceBoundaryPlanes(boolean onOrOff) |
(package private) void |
sliceObject(java.lang.String objectName,
int kind) |
private void |
syncDone() |
void |
toFront() |
(package private) void |
toFrontOrGotFocus() |
private void |
updateMeshInfo(Shape[] shapes,
int kind) |
(package private) void |
updateSlices() |
private void |
updateSurfaceInfo() |
private SurfaceToolGUI gui
boolean useGUI
protected JmolViewer vwr
private final javajs.util.P3 negCorner
private final javajs.util.P3 posCorner
private final javajs.util.P3 center
private final javajs.util.V3 boxVec
private final java.util.List<SurfaceStatus> surfaces
static final int DEGREES
static final int RADIANS
static final int GRADIANS
static final int CIRCLE_FRACTION
static final int UNITS_PI
private int angleUnits
private java.lang.String[] angleUnitsList
private float angleXY
private float anglefromZ
private float positionMin
private float position
private float thickness
private float thicknessMax
private Slice slice
private boolean leftOn
private boolean rightOn
private boolean ghostOn
private boolean capOn
private boolean useMolecular
private boolean usePercent
public SurfaceTool(JmolViewer vwr, HistoryFile hfile, java.lang.String winName, boolean useGUI)
public void toFront()
void toFrontOrGotFocus()
private void chooseBestBoundBox()
void setSurfaceToolParam()
private void updateSurfaceInfo()
private void setSyncStarting()
private void syncDone()
private void updateMeshInfo(Shape[] shapes, int kind)
private boolean checkMesh(Mesh m)
void setAngleUnits(int units)
javajs.util.P3 getNegCorner()
javajs.util.P3 getPosCorner()
private void initSlice()
void showSliceBoundaryPlanes(boolean onOrOff)
void setSlice(float angleXY, float anglefromZ, float position, float thickness)
angleXY
- (float)angle in radians from X-axis to projection in XY planeanglefromZ
- (float)angle in radians from z-axis to vectorposition
- (float) position along direction vector in absolute unitsthickness
- (float) thickness of slice in absolute unitsvoid setSliceAngleXY(float angle)
angle
- (float) angle from X-axis of projection on XY plane in radians.float getSliceAngleXY()
void setSliceAnglefromZ(float angle)
angle
- (float) angle of vector from Z axis in radians.float getAnglefromZ()
void setSlicePosition(float where)
where
- (float) position of slice center along direction vector.float getSlicePosition()
void setSliceThickness(float width)
width
- (float) thickness of slice.float getSliceThickness()
void updateSlices()
void sliceObject(java.lang.String objectName, int kind)
private void drawSlicePlane(javajs.util.SB cmd, int side, boolean on)
int getAngleUnits()
boolean getGhostOn()
void setGhostOn(boolean b)
b
- (boolean) true for ghost on.boolean getUseMolecular()
void setUseMolecular(boolean on)
float getPositionMin()
float getThicknessMax()
javajs.util.P3 getCenter()
javajs.util.V3 getBoxVec()
javajs.util.P4 getSliceMiddle()
java.lang.String[] getAngleUnitsList()
boolean getCapOn()
void setCapOn(boolean b)
public java.util.List<SurfaceStatus> getSurfaces()