Package org.jmol.util
Class MeshSlicer
java.lang.Object
org.jmol.util.MeshSlicer
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate MeshCapper
private boolean
private boolean
private boolean
private float
(package private) float[]
private int
private int
protected MeshSurface
(package private) javajs.util.V3
private javajs.util.P3[]
private int[]
(package private) float[]
private float
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) int
addIntersectionVertex
(javajs.util.T3 vertex, float value, int source, int set, Map<String, Integer> mapEdge, int i1, int i2) (package private) void
addTriangle
(int ipt1, int ipt2, int ipt3) from MeshCapperprivate float
checkSlab
(int tokType, javajs.util.T3 v, float val, float distance, javajs.util.BS bs) private javajs.util.P4[]
getBoxFacesFromOABC
(javajs.util.P3[] oabc) private boolean
getDE
(float[] fracs, int fD, int i1, int i2, int i3, boolean toss23) void
getIntersection
(float distance, javajs.util.P4 plane, javajs.util.P3[] ptCenters, javajs.util.Lst<javajs.util.P3[]> vData, float[] fData, javajs.util.BS bsSource, MeshSurface meshSurface, boolean andCap, boolean doClean, int tokType, boolean isGhost) (package private) String
getKey
(int i1, int i2) private javajs.util.P3
interpolateFraction
(javajs.util.T3 v1, javajs.util.T3 v2, float f, float val1, float val2, int i) private javajs.util.P3
interpolatePoint
(javajs.util.T3 v1, javajs.util.T3 v2, float d1, float d2, float val1, float val2, int i) private javajs.util.P3
interpolateSphere
(javajs.util.T3 v1, javajs.util.T3 v2, float d1, float d2, double absD, float val1, float val2, int i) (package private) MeshSlicer
set
(MeshSurface meshSurface) private static int
setPoint
(float[] fracs, int i, int i0, int i1) protected void
slabBrillouin
(javajs.util.P3[] unitCellPoints) "slabs" an isosurface into the first Brillouin zone moving points as necessary.boolean
slabPolygons
(Object[] slabObject, boolean allowCap)
-
Field Details
-
m
-
doCap
private boolean doCap -
doClear
private boolean doClear -
doGhost
private boolean doGhost -
iD
private int iD -
iE
private int iE -
sources
private int[] sources -
pts
private javajs.util.P3[] pts -
norm
javajs.util.V3 norm -
dPlane
private float dPlane -
values
float[] values -
fracs
float[] fracs -
capper
-
wPlane
private float wPlane
-
-
Constructor Details
-
MeshSlicer
public MeshSlicer()
-
-
Method Details
-
set
-
slabPolygons
- Parameters:
slabObject
- [0] Integer type, [1] object, [2] andCap, [3] colorDataallowCap
-- Returns:
- true if successful
-
getBoxFacesFromOABC
private javajs.util.P4[] getBoxFacesFromOABC(javajs.util.P3[] oabc) -
getIntersection
public void getIntersection(float distance, javajs.util.P4 plane, javajs.util.P3[] ptCenters, javajs.util.Lst<javajs.util.P3[]> vData, float[] fData, javajs.util.BS bsSource, MeshSurface meshSurface, boolean andCap, boolean doClean, int tokType, boolean isGhost) - Parameters:
distance
- a distance from a plane or pointplane
- a slabbing planeptCenters
- a set of atoms to measure distance fromvData
- when not null, this is a query, not an actual slabbingfData
- vertex values or other data to overlaybsSource
- TODOmeshSurface
- second surface; not implemented -- still some problems thereandCap
- to cap this off, crudely onlydoClean
- compact set - draw onlytokType
- type of slabisGhost
- translucent slab, so we mark slabbed triangles
-
getDE
private boolean getDE(float[] fracs, int fD, int i1, int i2, int i3, boolean toss23) -
setPoint
private static int setPoint(float[] fracs, int i, int i0, int i1) -
checkSlab
private float checkSlab(int tokType, javajs.util.T3 v, float val, float distance, javajs.util.BS bs) -
interpolateSphere
private javajs.util.P3 interpolateSphere(javajs.util.T3 v1, javajs.util.T3 v2, float d1, float d2, double absD, float val1, float val2, int i) -
interpolatePoint
private javajs.util.P3 interpolatePoint(javajs.util.T3 v1, javajs.util.T3 v2, float d1, float d2, float val1, float val2, int i) -
interpolateFraction
private javajs.util.P3 interpolateFraction(javajs.util.T3 v1, javajs.util.T3 v2, float f, float val1, float val2, int i) -
slabBrillouin
protected void slabBrillouin(javajs.util.P3[] unitCellPoints) "slabs" an isosurface into the first Brillouin zone moving points as necessary.- Parameters:
unitCellPoints
-
-
addIntersectionVertex
-
getKey
-
addTriangle
void addTriangle(int ipt1, int ipt2, int ipt3) from MeshCapper- Parameters:
ipt1
-ipt2
-ipt3
-
-