|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object GeomRep.TriangulatedObject
public class TriangulatedObject
Class for storing meshed objects having a surface mesh.
Object meed not have a triangle surface mesh, the mesh elements could be any convex polygon.
GeomObject
Field Summary | |
---|---|
private int |
iNumPoints
|
private float[] |
mCentroid
|
private float[] |
mColorComponents
|
private float |
mDelta
|
private java.awt.Color |
mEdgeColor
|
private Face[] |
mFaces
Array of faces forming the surface mesh on the object. |
private java.lang.String |
mFileName
|
private float |
mMaxX
|
private float |
mMaxY
|
private float |
mMaxZ
|
private float |
mMinX
|
private float |
mMinY
|
private float |
mMinZ
|
private int[] |
mOutBuf
Array used in internal code. |
private OutputPanelInterface |
mOutPanel
|
private java.awt.Color |
mSurfaceColor
|
private Vertex[] |
mVertices
Array of vertices forming the surface mesh on the object. |
private int[] |
mXPoints
|
private int[] |
mYPoints
|
Constructor Summary | |
---|---|
TriangulatedObject()
Class constructor (default). |
|
TriangulatedObject(int fcNum,
int numVt)
Class constructor. |
Method Summary | |
---|---|
private void |
ApplyTransform(int vertex,
float[] transMatrix,
float[] transPoint)
Use the transform to get transformed coordinates of a point. |
void |
ComputeFaceNormals()
Compute face normal for the faces. |
void |
ComputeMaximumDelta()
|
void |
CopyFaces(java.util.List<Face> faceList)
|
void |
CopyVertices(java.util.List<Vertex> vertexList)
|
void |
CutAcrossLine(float[] transMatrix,
float slope,
float intercept)
|
void |
CutAcrossPlane(float[] plane_coeff,
boolean retainPositive)
|
void |
DrawCameraImage(DrawingCanvasInterface canvas,
java.awt.Graphics g,
float[] transMatrix,
boolean onlySurface)
Draws the surface model viewed through camera .All camera related information has been baked into transMatrix (transformation matrix). |
void |
DrawCrinkleCut(DrawingCanvasInterface canvas,
java.awt.Graphics g,
float[] plane,
float[] transMatrix)
Draws the surface of this object cut by a cutting plane. |
void |
DrawSurface(DrawingCanvasInterface canvas,
java.awt.Graphics g,
float[] transMatrix)
Draws the surface model of this object. |
void |
DrawSurfaceOnly(DrawingCanvasInterface canvas,
java.awt.Graphics g,
float[] transMatrix)
Draws only the surface model (without any edges) for this object. |
void |
DrawWireFrame(DrawingCanvasInterface canvas,
java.awt.Graphics g,
float[] transMatrix)
Draws the wireframe model of this object. |
float[] |
GetCentroidCoor()
|
float |
GetCentroidX()
|
float |
GetCentroidY()
|
float |
GetCentroidZ()
|
java.awt.Color |
GetEdgeColor()
|
Face |
GetFace(int num)
Get the face by index number in face array (@see mFaces). |
java.lang.String |
GetFileName()
|
float |
GetMaxDelta()
|
float |
GetMinX()
|
float |
GetMinY()
|
float |
GetMinZ()
|
java.awt.Color |
GetSurfaceColor()
|
Vertex |
GetVertex(int num)
Get the vertex by index number in vertex array (@see mVertices). |
void |
SetEdgeColor(java.awt.Color col)
|
void |
SetFace(Face fc,
int fcNum)
|
void |
SetFileName(java.lang.String fileName)
|
void |
SetNumFaces(int num)
Set number of faces. |
void |
SetNumVertices(int num)
Set number of vertices. |
void |
SetOutputPanel(OutputPanelInterface outPanel)
|
void |
SetSurfaceColor(java.awt.Color col)
|
void |
SetVertex(Vertex vt,
int vtNum)
|
private void |
TransformPoint(float[] coord,
float[] transMatrix,
float[] transPoint)
|
private void |
UpdateTriangulatedObjAfterCut()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private Face[] mFaces
Face
private Vertex[] mVertices
Vertex
private int[] mOutBuf
private float mMaxX
private float mMinX
private float mMaxY
private float mMinY
private float mMaxZ
private float mMinZ
private float mDelta
private float[] mCentroid
private OutputPanelInterface mOutPanel
private int[] mXPoints
private int[] mYPoints
private int iNumPoints
private java.lang.String mFileName
private java.awt.Color mSurfaceColor
private java.awt.Color mEdgeColor
private float[] mColorComponents
Constructor Detail |
---|
public TriangulatedObject(int fcNum, int numVt)
fcNum
- Number of faces.numVt
- Number of vertices.public TriangulatedObject()
Method Detail |
---|
public void SetOutputPanel(OutputPanelInterface outPanel)
SetOutputPanel
in interface GeomObject
public void ComputeFaceNormals()
Face.ComputeFaceNormals(Vertex[])
public void SetFileName(java.lang.String fileName)
SetFileName
in interface GeomObject
public java.lang.String GetFileName()
GetFileName
in interface GeomObject
public void SetSurfaceColor(java.awt.Color col)
SetSurfaceColor
in interface GeomObject
public java.awt.Color GetSurfaceColor()
GetSurfaceColor
in interface GeomObject
public void SetEdgeColor(java.awt.Color col)
SetEdgeColor
in interface GeomObject
public java.awt.Color GetEdgeColor()
GetEdgeColor
in interface GeomObject
public void SetNumFaces(int num)
num
- Number of faces.public void SetNumVertices(int num)
num
- Number of vertices.public Face GetFace(int num)
num
- Index number of face.
java.lang.ArrayIndexOutOfBoundsException
public void SetFace(Face fc, int fcNum)
public Vertex GetVertex(int num)
num
- Index number of vertex.
java.lang.ArrayIndexOutOfBoundsException
public void CopyFaces(java.util.List<Face> faceList)
public void CopyVertices(java.util.List<Vertex> vertexList)
public void SetVertex(Vertex vt, int vtNum)
public void DrawWireFrame(DrawingCanvasInterface canvas, java.awt.Graphics g, float[] transMatrix)
DrawWireFrame
in interface GeomObject
canvas
- Instance of DrawingCanvas (@see GridView#DrawingCanvas) on which drawing is drawn.g
- Graphics instance used in drawing.transMatrix
- Transformatin matrix.DrawingCanvasInterface
public void DrawSurface(DrawingCanvasInterface canvas, java.awt.Graphics g, float[] transMatrix)
DrawSurface
in interface GeomObject
canvas
- Instance of DrawingCanvas on which drawing is drawn.g
- Graphics instance used in drawing.transMatrix
- Transformatin matrix.DrawingCanvasInterface
,
DrawingCanvas
public void DrawSurfaceOnly(DrawingCanvasInterface canvas, java.awt.Graphics g, float[] transMatrix)
DrawSurfaceOnly
in interface GeomObject
canvas
- Instance of DrawingCanvas on which drawing is drawn.g
- Graphics instance used in drawing.transMatrix
- Transformatin matrix.DrawingCanvasInterface
,
DrawingCanvas
public void DrawCameraImage(DrawingCanvasInterface canvas, java.awt.Graphics g, float[] transMatrix, boolean onlySurface)
The screen is along XY plane. Features behind the screen are not drawn. This function is useful for trajectory based internal visualization
DrawCameraImage
in interface GeomObject
canvas
- Instance of DrawingCanvas on which drawing is drawn.g
- Graphics instance used in drawing.transMatrix
- Transformatin matrix.
Coordinates are in physical dimensions (not transformed)onlySurface
- true if only surface (no edges) are to be drawn,
false otherwiseDrawingCanvasInterface
,
DrawingCanvas
public void DrawCrinkleCut(DrawingCanvasInterface canvas, java.awt.Graphics g, float[] plane, float[] transMatrix)
DrawCrinkleCut
in interface GeomObject
canvas
- Instance of DrawingCanvas (@see GridView#DrawingCanvas) on which drawing is drawn.g
- Graphics instance used in drawing.plane
- Coefficient matrix defining the cuting plane.transMatrix
- Transformatin matrix.DrawingCanvasInterface
private void ApplyTransform(int vertex, float[] transMatrix, float[] transPoint)
vertex
- Vertex number in the array (@see mVertices).transMatrix
- Transformation matrix.transPoint
- Transformed coordinates of the vertex (output).private void TransformPoint(float[] coord, float[] transMatrix, float[] transPoint)
private void UpdateTriangulatedObjAfterCut()
public void ComputeMaximumDelta()
ComputeMaximumDelta
in interface GeomObject
public void CutAcrossPlane(float[] plane_coeff, boolean retainPositive)
CutAcrossPlane
in interface GeomObject
public void CutAcrossLine(float[] transMatrix, float slope, float intercept)
CutAcrossLine
in interface GeomObject
public float GetMinX()
GetMinX
in interface GeomObject
public float GetMinY()
GetMinY
in interface GeomObject
public float GetMinZ()
GetMinZ
in interface GeomObject
public float GetMaxDelta()
GetMaxDelta
in interface GeomObject
public float GetCentroidX()
GetCentroidX
in interface GeomObject
public float GetCentroidY()
GetCentroidY
in interface GeomObject
public float GetCentroidZ()
GetCentroidZ
in interface GeomObject
public float[] GetCentroidCoor()
GetCentroidCoor
in interface GeomObject
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |