org.jmol.g3d

Class Triangle3D

class Triangle3D extends Object

renders triangles

currently only renders flat triangles

will probably need performance tuning

Author: Miguel, miguel@jmol.org

Field Summary
int[]ax
int[]axE
int[]axW
int[]ay
int[]az
int[]azE
int[]azW
static intDEFAULT
Graphics3Dg3d
Line3Dline3d
Rgb16[]rgb16sE
Rgb16[]rgb16sGouraud
Rgb16[]rgb16sW
Rgb16rgb16t1
Rgb16rgb16t2
static booleanVERIFY
Constructor Summary
Triangle3D(Graphics3D g3d)
Method Summary
voidadjustVertex(int[] t, float factor)
voiddrawfillTriangle(int xA, int yA, int zA, int xB, int yB, int zB, int xC, int yC, int zC, boolean useGouraud)
voidfillRaster(int y, int numLines, boolean useGouraud, boolean isClipped, int correction)
voidfillTriangle(int xScreenA, int yScreenA, int zScreenA, int xScreenB, int yScreenB, int zScreenB, int xScreenC, int yScreenC, int zScreenC, boolean useGouraud)
voidfillTriangle(Point3i screenA, Point3i screenB, Point3i screenC, boolean useGouraud)
voidfillTriangle(Point3f screenA, Point3f screenB, Point3f screenC, boolean useGouraud)
voidfillTriangle(Point3i screenA, Point3i screenB, Point3i screenC, float factor, boolean useGouraud)
voidfillTriangle(boolean useGouraud)
voidgenerateRaster(int dy, int iN, int iS, int[] axRaster, int[] azRaster, int iRaster, Rgb16[] gouraud)
voidreallocRasterArrays(int n)
Rgb16[]reallocRgb16s(Rgb16[] rgb16s, int n)
voidsetGouraud(int rgbA, int rgbB, int rgbC)

Field Detail

ax

int[] ax

axE

int[] axE

axW

int[] axW

ay

int[] ay

az

int[] az

azE

int[] azE

azW

int[] azW

DEFAULT

private static final int DEFAULT

g3d

final Graphics3D g3d

line3d

final Line3D line3d

rgb16sE

Rgb16[] rgb16sE

rgb16sGouraud

Rgb16[] rgb16sGouraud

rgb16sW

Rgb16[] rgb16sW

rgb16t1

final Rgb16 rgb16t1

rgb16t2

final Rgb16 rgb16t2

VERIFY

private static final boolean VERIFY

Constructor Detail

Triangle3D

Triangle3D(Graphics3D g3d)

Method Detail

adjustVertex

private void adjustVertex(int[] t, float factor)

drawfillTriangle

void drawfillTriangle(int xA, int yA, int zA, int xB, int yB, int zB, int xC, int yC, int zC, boolean useGouraud)

fillRaster

private void fillRaster(int y, int numLines, boolean useGouraud, boolean isClipped, int correction)

fillTriangle

void fillTriangle(int xScreenA, int yScreenA, int zScreenA, int xScreenB, int yScreenB, int zScreenB, int xScreenC, int yScreenC, int zScreenC, boolean useGouraud)

fillTriangle

void fillTriangle(Point3i screenA, Point3i screenB, Point3i screenC, boolean useGouraud)

fillTriangle

void fillTriangle(Point3f screenA, Point3f screenB, Point3f screenC, boolean useGouraud)

fillTriangle

void fillTriangle(Point3i screenA, Point3i screenB, Point3i screenC, float factor, boolean useGouraud)

fillTriangle

private void fillTriangle(boolean useGouraud)

generateRaster

private void generateRaster(int dy, int iN, int iS, int[] axRaster, int[] azRaster, int iRaster, Rgb16[] gouraud)

reallocRasterArrays

private void reallocRasterArrays(int n)

reallocRgb16s

Rgb16[] reallocRgb16s(Rgb16[] rgb16s, int n)

setGouraud

void setGouraud(int rgbA, int rgbB, int rgbC)