abstract class BioShapeRenderer extends MeshRenderer
Modifier and Type | Field and Description |
---|---|
private AxisAngle4f |
aa |
private static int |
ABSOLUTE_MIN_MESH_SIZE |
private float |
aspectRatio |
private BS |
bsRenderMesh |
private BS |
bsTemp |
protected BS |
bsVisible |
protected boolean |
cartoonsFancy |
protected short |
colixBack |
protected short[] |
colixes |
protected short[] |
colixesBack |
private P3[] |
controlHermites |
protected P3[] |
controlPoints |
protected P3i[] |
controlPointScreens |
private int |
diameterBeg |
private int |
diameterEnd |
private int |
diameterMid |
private boolean |
doCap0 |
private boolean |
doCap1 |
private boolean |
haveControlPointScreens |
private int |
hermiteLevel |
private int |
iNext |
private int |
iNext2 |
private int |
iNext3 |
private boolean |
invalidateMesh |
private boolean |
invalidateSheets |
private int |
iPrev |
protected boolean |
isCarbohydrate |
private boolean |
isHighRes |
protected boolean |
isNucleic |
protected boolean |
isPass2 |
private boolean |
isTraceAlpha |
protected int[] |
leadAtomIndices |
protected short[] |
mads |
private Matrix3f |
mat |
private Mesh[] |
meshes |
private boolean[] |
meshReady |
private static int |
MIN_MESH_RENDER_SIZE |
private static int |
MODE_ELLIPTICAL |
private static int |
MODE_FLAT |
private static int |
MODE_NONELLIPTICAL |
private static int |
MODE_TUBE |
protected int |
monomerCount |
protected Monomer[] |
monomers |
private V3 |
norm |
private V3 |
norml |
private P3 |
pointT |
private P3 |
pt |
private P3 |
pt1 |
private P3 |
ptNext |
private P3 |
ptPrev |
private P3[] |
radiusHermites |
private BS |
reversed |
private boolean |
ribbonBorder |
protected P3i[] |
ribbonBottomScreens |
protected P3i[] |
ribbonTopScreens |
private P3i |
screenArrowBot |
private P3i |
screenArrowBotPrev |
private P3i |
screenArrowTop |
private P3i |
screenArrowTopPrev |
private float |
sheetSmoothing |
protected EnumStructure[] |
structureTypes |
private V3 |
wing |
private V3 |
wing1 |
private V3[] |
wingHermites |
private V3 |
wingT |
protected V3[] |
wingVectors |
antialias, bsPolygons, bsPolygonsToExport, diameter, exportPass, frontOnly, haveBsDisplay, imageFontScaling, isGhostPass, isTranslucent, isTranslucentInherit, latticeOffset, mesh, needTranslucent, normixes, pt1f, pt1i, pt2f, pt2i, pt3i, scalePixelsPerMicron, screens, selectedPolyOnly, thePlane, transformedVectors, vertexCount, vertices, volumeRender, width
colix, exportType, g3d, isExport, mad, madBeg, madEnd, madMid, modelSet, myVisibilityFlag, shape, shapeID, viewer
Constructor and Description |
---|
BioShapeRenderer() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
adjustCartoonSeamNormals(int i,
int nPer)
Matches normals for adjacent mesh sections to create a seamless overall
mesh.
|
private void |
calc1Screen(P3 center,
V3 vector,
short mad,
float offset_1000,
P3i screen) |
protected void |
calcScreenControlPoints(P3[] points) |
protected P3i[] |
calcScreens(float offsetFraction)
calculate screen points based on control points and wing positions
(cartoon, strand, meshRibbon, and ribbon)
|
private boolean |
checkDiameter(int d) |
private boolean |
createMesh(int i,
int madBeg,
int madMid,
int madEnd,
float aspectRatio) |
private void |
freeTempArrays() |
protected short |
getLeadColix(int i) |
protected short |
getLeadColixBack(int i) |
protected void |
getScreenControlPoints() |
private boolean |
initializePolymer(BioShape bioShape) |
protected boolean |
isHelix(int i) |
protected boolean |
render() |
protected abstract void |
renderBioShape(BioShape bioShape) |
protected void |
renderHermiteArrowHead(int i) |
protected void |
renderHermiteConic(int i,
boolean thisTypeOnly) |
protected void |
renderHermiteCylinder(P3i[] screens,
int i) |
protected void |
renderHermiteRibbon(boolean doFill,
int i,
boolean thisTypeOnly) |
private void |
renderMeshes() |
protected boolean |
setBioColix(short colix) |
private boolean |
setMads(int i,
boolean thisTypeOnly)
set diameters for a bioshape
|
private void |
setNeighbors(int i) |
private void |
setStructureTypes() |
checkNormals, drawLine, drawTriangle, exportSurface, isPolygonDisplayable, render2, render2b, renderMesh, renderMesh2, renderPoints, renderTriangles, setColix
initRenderer, renderShape, setViewerG3dShapeID
private boolean invalidateMesh
private boolean invalidateSheets
private boolean isHighRes
private boolean isTraceAlpha
private boolean ribbonBorder
private boolean haveControlPointScreens
private float aspectRatio
private int hermiteLevel
private float sheetSmoothing
protected boolean cartoonsFancy
private Mesh[] meshes
private boolean[] meshReady
private BS bsRenderMesh
protected int monomerCount
protected Monomer[] monomers
protected boolean isNucleic
protected boolean isCarbohydrate
protected BS bsVisible
protected P3i[] ribbonTopScreens
protected P3i[] ribbonBottomScreens
protected P3[] controlPoints
protected P3i[] controlPointScreens
protected int[] leadAtomIndices
protected V3[] wingVectors
protected short[] mads
protected short[] colixes
protected short[] colixesBack
protected EnumStructure[] structureTypes
protected boolean isPass2
private final P3 pointT
private int iPrev
private int iNext
private int iNext2
private int iNext3
private int diameterBeg
private int diameterMid
private int diameterEnd
private boolean doCap0
private boolean doCap1
protected short colixBack
private BS reversed
private final P3i screenArrowTop
private final P3i screenArrowTopPrev
private final P3i screenArrowBot
private final P3i screenArrowBotPrev
private static final int ABSOLUTE_MIN_MESH_SIZE
private static final int MIN_MESH_RENDER_SIZE
private P3[] controlHermites
private V3[] wingHermites
private P3[] radiusHermites
private V3 norm
private final V3 wing
private final V3 wing1
private final V3 wingT
private final AxisAngle4f aa
private final P3 pt
private final P3 pt1
private final P3 ptPrev
private final P3 ptNext
private final Matrix3f mat
private static final int MODE_TUBE
private static final int MODE_FLAT
private static final int MODE_ELLIPTICAL
private static final int MODE_NONELLIPTICAL
private BS bsTemp
private final V3 norml
protected abstract void renderBioShape(BioShape bioShape)
protected boolean render()
render
in class MeshRenderer
protected boolean setBioColix(short colix)
private void freeTempArrays()
private boolean initializePolymer(BioShape bioShape)
private void setStructureTypes()
protected boolean isHelix(int i)
protected void getScreenControlPoints()
protected void calcScreenControlPoints(P3[] points)
protected P3i[] calcScreens(float offsetFraction)
offsetFraction
- private void calc1Screen(P3 center, V3 vector, short mad, float offset_1000, P3i screen)
protected short getLeadColix(int i)
protected short getLeadColixBack(int i)
private void setNeighbors(int i)
private boolean setMads(int i, boolean thisTypeOnly)
i
- thisTypeOnly
- true for Cartoon but not MeshRibbonprivate boolean checkDiameter(int d)
protected void renderHermiteCylinder(P3i[] screens, int i)
protected void renderHermiteConic(int i, boolean thisTypeOnly)
protected void renderHermiteRibbon(boolean doFill, int i, boolean thisTypeOnly)
doFill
- i
- thisTypeOnly
- true for Cartoon but not MeshRibbonprotected void renderHermiteArrowHead(int i)
private boolean createMesh(int i, int madBeg, int madMid, int madEnd, float aspectRatio)
i
- madBeg
- madMid
- madEnd
- aspectRatio
- void adjustCartoonSeamNormals(int i, int nPer)
i
- nPer
- private void renderMeshes()