igeo.p
Class PIGraphics3D

java.lang.Object
  extended by processing.core.PImage
      extended by processing.core.PGraphics
          extended by processing.opengl.PGraphicsOpenGL
              extended by processing.opengl.PGraphics3D
                  extended by igeo.p.PIGraphics3D
All Implemented Interfaces:
IGraphics, IGraphics3D, IPane, java.lang.Cloneable, processing.core.PConstants

public class PIGraphics3D
extends processing.opengl.PGraphics3D
implements IGraphics3D, IPane

A child class of Processing's PGraphic to draw on Processing using P3D. This class also manages the IServer to manage all the objects in iGeo.

Author:
Satoru Sugihara

Nested Class Summary
 
Nested classes/interfaces inherited from class processing.opengl.PGraphicsOpenGL
processing.opengl.PGraphicsOpenGL.BaseShader, processing.opengl.PGraphicsOpenGL.ColorShader, processing.opengl.PGraphicsOpenGL.GLResource, processing.opengl.PGraphicsOpenGL.IndexCache, processing.opengl.PGraphicsOpenGL.InGeometry, processing.opengl.PGraphicsOpenGL.LightShader, processing.opengl.PGraphicsOpenGL.LineShader, processing.opengl.PGraphicsOpenGL.PointShader, processing.opengl.PGraphicsOpenGL.Tessellator, processing.opengl.PGraphicsOpenGL.TessGeometry, processing.opengl.PGraphicsOpenGL.TexCache, processing.opengl.PGraphicsOpenGL.TexlightShader, processing.opengl.PGraphicsOpenGL.TextureShader
 
Field Summary
 IColor[][] bgColorCache
           
 processing.core.PImage bgImage
           
 java.awt.Color borderColor
           
 java.awt.BasicStroke borderStroke
           
 float borderWidth
           
 boolean enableDepthSort
           
 boolean finished
           
 boolean firstDraw
           
(package private) static boolean keepColorMode
          preserve Procesing's color mode or not
 boolean looping
           
 INavigator navigator
           
 int origColorMode
           
 float origColorModeA
           
 float origColorModeX
           
 float origColorModeY
           
 float origColorModeZ
           
 boolean overrideDepthSort
          when number of objects exceeds IConfig.maxObjectNumberForDepthSort, depth sort is overwritten to be disabled
 boolean overridePAppletFinish
          To show iGeo correctly in Processing's basic mode, this needs to be true.
 boolean overridePAppletLoop
          To show iGeo correctly in Processing's basic mode, this needs to be true.
 IPanel panel
           
 int screenX
           
 int screenY
           
 PIGraphics3D[][] subGraphics
           
 IView view
           
 IVec viewDirection
          cache of view.frontDirection()
 IVec viewLocation
          cache of view.location()
 boolean visible
           
 
Fields inherited from class processing.opengl.PGraphicsOpenGL
anisoSamplingSupported, autoMipmapGenSupported, blendEqSupported, breakShape, camera, cameraAspect, cameraEyeX, cameraEyeY, cameraEyeZ, cameraFar, cameraFOV, cameraInv, cameraInvStack, cameraNear, cameraStack, cameraX, cameraY, cameraZ, clearColorBuffer, clearColorBuffer0, clip, clipRect, colorShader, currentFramebuffer, currentLightFalloffConstant, currentLightFalloffLinear, currentLightFalloffQuadratic, currentLightSpecular, defaultEdges, defColorShader, defColorShaderFragURL, defColorShaderVertURL, defLightShader, defLightShaderVertURL, defLineShader, defLineShaderFragURL, defLineShaderVertURL, defPointShader, defPointShaderFragURL, defPointShaderVertURL, defTexlightShader, defTexlightShaderVertURL, defTextureShader, defTextureShaderFragURL, defTextureShaderVertURL, depthBits, drawFramebuffer, drawing, EDGE_CLOSE, EDGE_MIDDLE, EDGE_SINGLE, EDGE_START, EDGE_STOP, FB_STACK_DEPTH, fboMultisampleSupported, fbStack, fbStackDepth, filterImage, filterTexture, floatBuffer, FLUSH_CONTINUOUSLY, FLUSH_WHEN_FULL, flushMode, fontMap, glFrameBuffers, glLineAttrib, glLineColor, glLineIndex, glLineVertex, glModelview, glNormal, glParamsRead, glPointAttrib, glPointColor, glPointIndex, glPointVertex, glPolyAmbient, glPolyColor, glPolyEmissive, glPolyIndex, glPolyNormal, glPolyShininess, glPolySpecular, glPolyTexcoord, glPolyVertex, glProjection, glProjmodelview, glRenderBuffers, GLSL_VERSION, glslFragmentShaders, glslPrograms, glslVertexShaders, glTextureObjects, glVertexBuffers, identity, IMMEDIATE, inGeo, INIT_INDEX_BUFFER_SIZE, INIT_VERTEX_BUFFER_SIZE, initialized, intBuffer, lastBlendMode, lastSmoothCall, lightAmbient, lightCount, lightDiffuse, lightFalloffCoefficients, lightNormal, lightPosition, lights, lightsAllocated, lightShader, lightSpecular, lightSpotParameters, lightType, lineBuffersContext, lineBuffersCreated, lineShader, manipulatingCamera, maskShader, maskShaderFragURL, matricesAllocated, MATRIX_STACK_DEPTH, MAX_POINT_ACCURACY, maxAnisoAmount, maxLineWidth, maxPointSize, maxSamples, maxTextureSize, MIN_POINT_ACCURACY, modelview, modelviewInv, modelviewInvStack, modelviewStack, modelviewStackDepth, multisampleFramebuffer, nativePixelBuffer, nativePixels, npotTexSupported, offscreenFramebuffer, offscreenMultisample, OP_NONE, OP_READ, OP_WRITE, openContour, OPENGL_EXTENSIONS, OPENGL_RENDERER, OPENGL_VENDOR, OPENGL_VERSION, packedDepthStencilSupported, pgCurrent, pgl, pgPrimary, pixelBuffer, pixelsOp, pixOpChangedFB, POINT_ACCURACY_FACTOR, pointBuffersContext, pointBuffersCreated, pointShader, polyBuffersContext, polyBuffersCreated, projection, projectionStack, projectionStackDepth, projmodelview, ptexture, QUAD_POINT_SIGNS, readFramebuffer, restoreSurface, RETAINED, setgetPixels, shaderWarningsEnabled, sized, smoothCallCount, smoothDisabled, stencilBits, tessellator, tessGeo, texCache, texlightShader, texture, textureImage0, textureSampling, textureShader, textureWrap, viewport
 
Fields inherited from class processing.core.PGraphics
A, AB, AG, ambientB, ambientColor, ambientG, ambientR, AR, autoNormal, B, backgroundA, backgroundAi, backgroundAlpha, backgroundB, backgroundBi, backgroundColor, backgroundG, backgroundGi, backgroundR, backgroundRi, BEEN_LIT, bezierBasisInverse, bezierBasisMatrix, bezierDetail, bezierDrawMatrix, bezierInited, blendMode, cacheMap, calcA, calcAi, calcAlpha, calcB, calcBi, calcColor, calcG, calcGi, calcR, calcRi, canvas, colorMode, colorModeA, colorModeX, colorModeY, colorModeZ, cosLUT, curveBasisMatrix, curveDetail, curveDrawMatrix, curveInited, curveTightness, curveToBezierMatrix, curveVertexCount, curveVertices, DA, DB, DEFAULT_STROKE_CAP, DEFAULT_STROKE_JOIN, DEFAULT_STROKE_WEIGHT, DEFAULT_VERTICES, DG, DR, EB, edge, EDGE, EG, ellipseMode, emissiveB, emissiveColor, emissiveG, emissiveR, ER, fill, fillA, fillAi, fillAlpha, fillB, fillBi, fillColor, fillG, fillGi, fillR, fillRi, G, HAS_NORMAL, hints, image, imageMode, NORMAL_MODE_AUTO, NORMAL_MODE_SHAPE, NORMAL_MODE_VERTEX, normalMode, normalX, normalY, normalZ, NX, NY, NZ, path, pixelCount, primarySurface, quality, R, raw, reapplySettings, rectMode, SA, SB, setAmbient, settingsInited, SG, shape, shapeMode, SHINE, shininess, SINCOS_LENGTH, SINCOS_PRECISION, sinLUT, smooth, SPB, specularB, specularColor, specularG, specularR, SPG, sphereDetailU, sphereDetailV, sphereX, sphereY, sphereZ, SPR, SR, stroke, strokeA, strokeAi, strokeAlpha, strokeB, strokeBi, strokeCap, strokeColor, strokeG, strokeGi, strokeJoin, strokeR, strokeRi, strokeWeight, SW, textAlign, textAlignY, textBreakCount, textBreakStart, textBreakStop, textBuffer, textFont, textLeading, textMode, textSize, textureImage, textureMode, textureU, textureV, textWidthBuffer, tint, tintA, tintAi, tintAlpha, tintB, tintBi, tintColor, tintG, tintGi, tintR, tintRi, TX, TY, TZ, U, V, VERTEX_FIELD_COUNT, vertexCount, vertices, VW, VX, VY, VZ, warnings
 
Fields inherited from class processing.core.PImage
ALPHA_MASK, BLUE_MASK, format, GREEN_MASK, height, loaded, modified, mx1, mx2, my1, my2, parent, pixels, RED_MASK, saveImageFormats, width
 
Fields inherited from interface processing.core.PConstants
ADD, ALPHA, ALT, AMBIENT, ARC, ARGB, ARROW, BACKSPACE, BASELINE, BEVEL, BEZIER_VERTEX, BLEND, BLUR, BOTTOM, BOX, BREAK, BURN, CENTER, CHATTER, CHORD, CLAMP, CLOSE, CODED, COMPLAINT, CONTROL, CORNER, CORNERS, CROSS, CURVE_VERTEX, CUSTOM, DARKEST, DEG_TO_RAD, DELETE, DIAMETER, DIFFERENCE, DILATE, DIRECTIONAL, DISABLE_DEPTH_MASK, DISABLE_DEPTH_SORT, DISABLE_DEPTH_TEST, DISABLE_NATIVE_FONTS, DISABLE_OPENGL_ERRORS, DISABLE_OPTIMIZED_STROKE, DISABLE_RETINA_PIXELS, DISABLE_STROKE_PERSPECTIVE, DISABLE_STROKE_PURE, DISABLE_TEXTURE_MIPMAPS, DODGE, DOWN, DXF, ELLIPSE, ENABLE_DEPTH_MASK, ENABLE_DEPTH_SORT, ENABLE_DEPTH_TEST, ENABLE_NATIVE_FONTS, ENABLE_OPENGL_ERRORS, ENABLE_OPTIMIZED_STROKE, ENABLE_RETINA_PIXELS, ENABLE_STROKE_PERSPECTIVE, ENABLE_STROKE_PURE, ENABLE_TEXTURE_MIPMAPS, ENTER, EPSILON, ERODE, ERROR_BACKGROUND_IMAGE_FORMAT, ERROR_BACKGROUND_IMAGE_SIZE, ERROR_PUSHMATRIX_OVERFLOW, ERROR_PUSHMATRIX_UNDERFLOW, ERROR_TEXTFONT_NULL_PFONT, ESC, EXCLUSION, GIF, GRAY, GROUP, HALF_PI, HAND, HARD_LIGHT, HINT_COUNT, HSB, IMAGE, INVERT, JAVA2D, JPEG, LANDSCAPE, LEFT, LIGHTEST, LINE, LINE_LOOP, LINE_STRIP, LINES, LINUX, MACOSX, MAX_FLOAT, MAX_INT, MIN_FLOAT, MIN_INT, MITER, MODEL, MODELVIEW, MOVE, MULTIPLY, NORMAL, OPAQUE, OPEN, OPENGL, ORTHOGRAPHIC, OTHER, OVERLAY, P2D, P3D, PATH, PDF, PERSPECTIVE, PI, PIE, platformNames, POINT, POINTS, POLYGON, PORTRAIT, POSTERIZE, PROBLEM, PROJECT, PROJECTION, QUAD, QUAD_BEZIER_VERTEX, QUAD_STRIP, QUADRATIC_VERTEX, QUADS, QUARTER_PI, RAD_TO_DEG, RADIUS, RECT, REPEAT, REPLACE, RETURN, RGB, RIGHT, ROUND, SCREEN, SHAPE, SHIFT, SOFT_LIGHT, SPHERE, SPOT, SQUARE, SUBTRACT, TAB, TARGA, TAU, TEXT, THIRD_PI, THRESHOLD, TIFF, TOP, TRIANGLE, TRIANGLE_FAN, TRIANGLE_STRIP, TRIANGLES, TWO_PI, UP, VERTEX, WAIT, WHITESPACE, WINDOWS, X, Y, Z
 
Constructor Summary
PIGraphics3D()
           
 
Method Summary
 void ambient(float[] rgba)
           
 void ambient(float r, float g, float b)
           
 void ambient(float r, float g, float b, float a)
           
 void ambient(IColor c)
           
 void close()
           
 void clr(float[] rgba)
          fill color (array of 4 float in order of r, g, b, a)
 void clr(float r, float g, float b)
          fill color (float 0-255)
 void clr(float r, float g, float b, float a)
          fill color (float 0-255)
 void clr(IColor c)
          fill color
 boolean contains(int x, int y)
           
 processing.core.PImage createBGImage(int w, int h, IView v)
           
 void diffuse(float[] rgba)
           
 void diffuse(float r, float g, float b)
           
 void diffuse(float r, float g, float b, float a)
          diffuse color is same with color(Color c)
 void diffuse(IColor c)
           
 void disableLight()
           
 void draw()
           
 void draw(java.util.ArrayList<IGraphicI> objects, IView v)
           
 void draw(IGraphics g)
           
 void drawBG(IView view)
           
 void drawIG()
          Drawing all the iGeo objects through IPanel.
 void drawLineLoop(IVec[] p)
           
 void drawLines(IVec[] p)
           
 void drawLineStrip(IVec[] p)
           
 void drawPoint(IVec p)
           
 void drawPoints(IVec[] p)
           
 void drawPolygon(IVec[] p)
           
 void drawPolygon(IVec[] p, IVec[] n)
           
 void drawQuadMatrix(IVec[][] pts)
           
 void drawQuadMatrix(IVec[][] pts, IVec[][] nml)
           
 void drawQuads(IVec[] p)
           
 void drawQuads(IVec[] p, IVec[] n)
           
 void drawQuadStrip(IVec[] p)
           
 void drawQuadStrip(IVec[] p, IVec[] n)
           
 void drawTriangleFan(IVec[] p)
           
 void drawTriangleFan(IVec[] p, IVec[] n)
           
 void drawTriangles(IVec[] p)
           
 void drawTriangles(IVec[] p, IVec[] n)
           
 void drawTriangleStrip(IVec[] p)
           
 void drawTriangleStrip(IVec[] p, IVec[] n)
           
 void drawView(IView view)
           
 void emissive(float[] rgba)
           
 void emissive(float r, float g, float b)
           
 void emissive(float r, float g, float b, float a)
           
 void emissive(IColor c)
           
 void enableLight()
           
 boolean firstDraw()
          check if this is the first time frame to draw
 void firstDraw(boolean f)
          set the first draw flag
 void focus()
          Focus view on objects
 void focus(java.util.ArrayList<IObject> e)
          Focus view on objects
 void focusGained(java.awt.event.FocusEvent e)
           
 void focusLost(java.awt.event.FocusEvent e)
           
 int getBorderColor()
           
 java.awt.Stroke getBorderStroke()
           
 float getBorderWidth()
           
 int getHeight()
           
 IPanelI getPanel()
           
 IView getView()
           
 int getWidth()
           
 float getX()
           
 float getY()
           
 boolean isDefaultColorMode()
          default color mode for IG
 boolean isInFront(IVec p)
           
 boolean isVisible()
           
 void keyPressed(IKeyEvent e)
           
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(IKeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(IKeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
 void loop()
           
 void mouseClicked(IMouseEvent e)
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(IMouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseEntered(IMouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(IMouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(IMouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(IMouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(IMouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void mouseWheelMoved(IMouseWheelEvent e)
           
 void mouseWheelMoved(java.awt.event.MouseWheelEvent e)
           
 INavigator navigator()
           
 void noLoop()
           
 void normal(IVec n)
           
 void pointSize(float sz)
           
 void popColorMode()
           
 void post()
           
 void pre()
           
 void pushColorMode()
           
 void setBorderColor(java.awt.Color c)
           
 void setBorderColor(int r, int b, int g, int a)
           
 void setBorderWidth(float b)
           
 void setBounds(int x, int y, int w, int h)
           
 void setLocation(int x, int y)
          implementation of IPane
 void setPanel(IPanelI p)
           
 void setParent(processing.core.PApplet parent)
          setParent is called by Processing in the initialization process of Processing.
 void setParentPGraphics3D(processing.core.PApplet parent)
           
 void setSize(int w, int h)
           
 void setView(IView v)
           
 void setVisible(boolean b)
           
 void shininess(float s)
           
 void specular(float[] rgba)
           
 void specular(float r, float g, float b)
           
 void specular(float r, float g, float b, float a)
           
 void specular(IColor c)
           
 void start()
           
 void stop()
           
 void stroke(float[] rgba)
          stroke color (array of 4 float in order of r, g, b, a)
 void stroke(float r, float g, float b)
          stroke color (float 0-255)
 void stroke(float r, float g, float b, float a)
          stroke color (float 0-255)
 void stroke(IColor c)
          stroke (line) color
 IGraphicMode.GraphicType type()
          implementation of IGraphics3D
 void vertex(float x, float y, float z)
           
 void vertex(IVec p)
           
 void vertex(IVec[] p)
           
 void vertex(IVec[] p, IVec[] n)
           
 IView view()
           
 void weight(float w)
           
 
Methods inherited from class processing.opengl.PGraphics3D
begin2D, createShape, createShape, createShape, createShape, createShapeImpl, createShapeImpl, defaultCamera, defaultPerspective, end2D, is2D, is3D, isSupportedExtension, loadShapeImpl
 
Methods inherited from class processing.opengl.PGraphicsOpenGL
addTexture, addTexture, allocate, allocatePixels, ambientLight, ambientLight, applyMatrix, applyMatrix, applyMatrix, applyMatrix, applyMatrixImpl, applyProjection, applyProjection, arcImpl, backgroundImpl, backgroundImpl, beginCamera, beginContour, beginDraw, beginOffscreenDraw, beginOnscreenDraw, beginPGL, beginPixelsOp, beginShape, bezierVertex, bezierVertex, bezierVertexImpl, bindFrontTexture, blendModeImpl, box, camera, camera, camera, canDraw, checkGLThread, checkTexture, clipImpl, colorShaderCheck, copy, copy, createFrameBufferObject, createGLSLFragShaderObject, createGLSLProgramObject, createGLSLVertShaderObject, createLineBuffers, createPointBuffers, createPolyBuffers, createPTexture, createRenderBufferObject, createTextureObject, createVertexBufferObject, curveVertex, curveVertex, curveVertexImpl, defaultSettings, deleteAllFrameBufferObjects, deleteAllGLSLFragShaderObjects, deleteAllGLSLProgramObjects, deleteAllGLSLVertShaderObjects, deleteAllRenderBufferObjects, deleteAllTextureObjects, deleteAllVertexBufferObjects, deleteDefaultShaders, deleteFinalizedFrameBufferObjects, deleteFinalizedGLResources, deleteFinalizedGLSLFragShaderObjects, deleteFinalizedGLSLProgramObjects, deleteFinalizedGLSLVertShaderObjects, deleteFinalizedRenderBufferObjects, deleteFinalizedTextureObjects, deleteFinalizedVertexBufferObjects, deleteFrameBufferObject, deleteGLSLFragShaderObject, deleteGLSLProgramObject, deleteGLSLVertShaderObject, deleteLineBuffers, deletePointBuffers, deletePolyBuffers, deleteRenderBufferObject, deleteSurfaceTextures, deleteTextureObject, deleteVertexBufferObject, diff, directionalLight, disableLighting, dispose, drawPixels, drawPTexture, drawTexture, drawTexture, ellipseImpl, enableLighting, endCamera, endContour, endDraw, endOffscreenDraw, endOnscreenDraw, endPGL, endPixelsOp, endShape, endShape, expandArraySize, fillFromCalc, filter, filter, filter, finalize, finalizeFrameBufferObject, finalizeGLSLFragShaderObject, finalizeGLSLProgramObject, finalizeGLSLVertShaderObject, finalizeRenderBufferObject, finalizeTextureObject, finalizeVertexBufferObject, flush, flushLines, flushPixels, flushPoints, flushPolys, frustum, get, getFontTexture, getGLParameters, getHint, getImpl, getLineShader, getMatrix, getMatrix, getPointShader, getPolyShader, getShaderType, getTexture, getTexture, hint, initCache, initOffscreen, initPrimary, invScale, invTranslate, isGL, lightAmbient, lightDiffuse, lightFalloff, lightFalloff, lightNormal, lightPosition, lights, lightShaderCheck, lightSpecular, lightSpecular, lightSpot, line, line, lineBufferContextIsOutdated, lineImpl, loadPixels, loadShader, loadShader, loadShape, loadTexture, loadTextureImpl, mask, modelX, modelY, modelZ, newInGeometry, newTessGeometry, newTexCache, noClip, noLightAmbient, noLightDiffuse, noLightFalloff, noLights, noLightSpecular, noLightSpot, nonOrthoProjection, nonZero, noSmooth, ortho, ortho, ortho, orthoProjection, perspective, perspective, point, point, pointBuffersContextIsOutdated, pointImpl, pointLight, polyBuffersContextIsOutdated, popFramebuffer, popMatrix, popProjection, printCamera, printMatrix, printProjection, pushFramebuffer, pushMatrix, pushProjection, quad, quadraticVertex, quadraticVertex, quadraticVertexImpl, readPixels, removeFontTexture, removeFrameBufferObject, removeGLSLFragShaderObject, removeGLSLProgramObject, removeGLSLVertShaderObject, removeRenderBufferObject, removeTextureObject, removeVertexBufferObject, report, requestDraw, requestFocus, resetMatrix, resetProjection, resetShader, resetShader, resize, restartPGL, restoreGL, restoreSurfaceFromPixels, rotate, rotate, rotateImpl, rotateX, rotateY, rotateZ, same, saveSurfaceToPixels, scale, scale, scale, scaleImpl, screenX, screenX, screenXImpl, screenXImpl, screenY, screenY, screenYImpl, screenYImpl, screenZ, screenZImpl, screenZImpl, set, setDrawDefaults, setFlushMode, setFontTexture, setFramebuffer, setFrameRate, setImpl, setMatrix, setMatrix, setPrimary, setProjection, setViewport, shader, shader, shaderWarnings, shape, shape, shearX, shearY, smooth, smooth, sphere, spotLight, strokeCap, strokeJoin, strokeWeight, swapOffscreenTextures, tessellate, tessellate, texlightShaderCheck, textAscent, textCharImpl, textCharModelImpl, textCharShapeImpl, textDescent, textLineImpl, textModeCheck, textureSampling, textureShaderCheck, textureWrap, textWidthImpl, translate, translate, translateImpl, triangle, unbindFrontTexture, unbindLineBuffers, unbindPointBuffers, unbindPolyBuffers, updateDisplay, updateGLModelview, updateGLNormal, updateGLProjection, updateGLProjmodelview, updateLineBuffers, updatePointBuffers, updatePolyBuffers, updateProjmodelview, updateTexture, updateTexture, updateTexture, vertex, vertex, vertex, vertexCode, vertexImpl, wrapTexture, zero
 
Methods inherited from class processing.core.PGraphics
alpha, ambient, ambient, ambientFromCalc, applyMatrix, arc, arc, background, background, background, background, background, background, background, backgroundFromCalc, beginRaw, beginShape, bezier, bezier, bezierDetail, bezierInit, bezierInitCheck, bezierPoint, bezierTangent, bezierVertexCheck, bezierVertexCheck, blendMode, blue, box, brightness, checkSettings, clear, clip, color, color, color, color, color, color, color, color, color, colorCalc, colorCalc, colorCalc, colorCalc, colorCalc, colorCalc, colorCalcARGB, colorMode, colorMode, colorMode, colorMode, curve, curve, curveDetail, curveInit, curveInitCheck, curvePoint, curveTangent, curveTightness, curveVertexCheck, curveVertexCheck, curveVertexSegment, curveVertexSegment, defaultFontOrDeath, defaultFontOrDeath, displayable, edge, ellipse, ellipseMode, emissive, emissive, emissiveFromCalc, endRaw, endShape, fill, fill, fill, fill, fill, fill, getCache, getMatrix, getRaw, getStyle, getStyle, green, haveRaw, hue, image, image, image, imageImpl, imageMode, lerpColor, lerpColor, loadShape, noFill, normal, noStroke, noTexture, noTint, popStyle, pushStyle, reapplySettings, rect, rect, rect, rectImpl, rectImpl, rectMode, red, removeCache, saturation, setCache, setMatrix, setPath, shape, shape, shape, shapeMode, showDepthWarning, showDepthWarningXYZ, showException, showMethodWarning, showMissingWarning, showVariationWarning, showWarning, showWarning, specular, specular, specularFromCalc, sphereDetail, sphereDetail, splineForward, stroke, stroke, stroke, stroke, strokeFromCalc, style, text, text, text, text, text, text, text, text, text, text, text, textAlign, textAlign, textCharModelImpl, textCharScreenImpl, textFont, textFont, textLeading, textLineAlignImpl, textMode, textSentence, textSentenceBreak, textSize, texture, textureMode, textWidth, textWidth, textWidth, tint, tint, tint, tint, tint, tint, tintFromCalc, vertex, vertexCheck, vertexTexture
 
Methods inherited from class processing.core.PImage
blend, blend, blendColor, blurAlpha, blurARGB, blurRGB, buildBlurKernel, checkAlpha, clone, dilate, get, get, getImage, getModifiedX1, getModifiedX2, getModifiedY1, getModifiedY2, getNative, init, isLoaded, isModified, loadTIFF, mask, save, saveImageIO, saveTGA, saveTIFF, set, setLoaded, setLoaded, setModified, setModified, updatePixels, updatePixels
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

keepColorMode

static boolean keepColorMode
preserve Procesing's color mode or not


panel

public IPanel panel

view

public IView view

viewDirection

public IVec viewDirection
cache of view.frontDirection()


viewLocation

public IVec viewLocation
cache of view.location()


origColorMode

public int origColorMode

origColorModeX

public float origColorModeX

origColorModeY

public float origColorModeY

origColorModeZ

public float origColorModeZ

origColorModeA

public float origColorModeA

overridePAppletFinish

public boolean overridePAppletFinish
To show iGeo correctly in Processing's basic mode, this needs to be true.


finished

public boolean finished

overridePAppletLoop

public boolean overridePAppletLoop
To show iGeo correctly in Processing's basic mode, this needs to be true.


looping

public boolean looping

enableDepthSort

public boolean enableDepthSort

overrideDepthSort

public boolean overrideDepthSort
when number of objects exceeds IConfig.maxObjectNumberForDepthSort, depth sort is overwritten to be disabled


firstDraw

public boolean firstDraw

screenX

public int screenX

screenY

public int screenY

borderWidth

public float borderWidth

borderStroke

public java.awt.BasicStroke borderStroke

borderColor

public java.awt.Color borderColor

navigator

public INavigator navigator

visible

public boolean visible

bgImage

public processing.core.PImage bgImage

bgColorCache

public IColor[][] bgColorCache

subGraphics

public PIGraphics3D[][] subGraphics
Constructor Detail

PIGraphics3D

public PIGraphics3D()
Method Detail

setParent

public void setParent(processing.core.PApplet parent)
setParent is called by Processing in the initialization process of Processing. Here the initialization proces of iGeo is also done.

Overrides:
setParent in class processing.core.PGraphics
Parameters:
parent - parent PApplet of Processing.

setParentPGraphics3D

public void setParentPGraphics3D(processing.core.PApplet parent)

pre

public void pre()

draw

public void draw()

vertex

public void vertex(float x,
                   float y,
                   float z)
Overrides:
vertex in class processing.opengl.PGraphicsOpenGL

drawIG

public void drawIG()
Drawing all the iGeo objects through IPanel. Overlay is also used to draw 2D graphics on top of OpenGL 3D graphics.


post

public void post()

loop

public void loop()

noLoop

public void noLoop()

start

public void start()

stop

public void stop()

type

public IGraphicMode.GraphicType type()
implementation of IGraphics3D

Specified by:
type in interface IGraphics

view

public IView view()
Specified by:
view in interface IGraphics

createBGImage

public processing.core.PImage createBGImage(int w,
                                            int h,
                                            IView v)

drawBG

public void drawBG(IView view)

drawView

public void drawView(IView view)

draw

public void draw(java.util.ArrayList<IGraphicI> objects,
                 IView v)
Specified by:
draw in interface IGraphics

firstDraw

public boolean firstDraw()
Description copied from interface: IGraphics
check if this is the first time frame to draw

Specified by:
firstDraw in interface IGraphics

firstDraw

public void firstDraw(boolean f)
Description copied from interface: IGraphics
set the first draw flag

Specified by:
firstDraw in interface IGraphics

isDefaultColorMode

public boolean isDefaultColorMode()
default color mode for IG


pushColorMode

public void pushColorMode()

popColorMode

public void popColorMode()

clr

public void clr(IColor c)
Description copied from interface: IGraphics
fill color

Specified by:
clr in interface IGraphics

clr

public void clr(float r,
                float g,
                float b)
Description copied from interface: IGraphics
fill color (float 0-255)

Specified by:
clr in interface IGraphics

clr

public void clr(float r,
                float g,
                float b,
                float a)
Description copied from interface: IGraphics
fill color (float 0-255)

Specified by:
clr in interface IGraphics

clr

public void clr(float[] rgba)
Description copied from interface: IGraphics
fill color (array of 4 float in order of r, g, b, a)

Specified by:
clr in interface IGraphics

stroke

public void stroke(IColor c)
Description copied from interface: IGraphics
stroke (line) color

Specified by:
stroke in interface IGraphics

stroke

public void stroke(float r,
                   float g,
                   float b,
                   float a)
Description copied from interface: IGraphics
stroke color (float 0-255)

Specified by:
stroke in interface IGraphics
Overrides:
stroke in class processing.core.PGraphics

stroke

public void stroke(float r,
                   float g,
                   float b)
Description copied from interface: IGraphics
stroke color (float 0-255)

Specified by:
stroke in interface IGraphics
Overrides:
stroke in class processing.core.PGraphics

stroke

public void stroke(float[] rgba)
Description copied from interface: IGraphics
stroke color (array of 4 float in order of r, g, b, a)

Specified by:
stroke in interface IGraphics

weight

public void weight(float w)
Specified by:
weight in interface IGraphics

diffuse

public void diffuse(float r,
                    float g,
                    float b,
                    float a)
Description copied from interface: IGraphics3D
diffuse color is same with color(Color c)

Specified by:
diffuse in interface IGraphics3D

diffuse

public void diffuse(float r,
                    float g,
                    float b)
Specified by:
diffuse in interface IGraphics3D

diffuse

public void diffuse(IColor c)
Specified by:
diffuse in interface IGraphics3D

diffuse

public void diffuse(float[] rgba)
Specified by:
diffuse in interface IGraphics3D

ambient

public void ambient(float r,
                    float g,
                    float b,
                    float a)
Specified by:
ambient in interface IGraphics3D

ambient

public void ambient(float r,
                    float g,
                    float b)
Specified by:
ambient in interface IGraphics3D
Overrides:
ambient in class processing.core.PGraphics

ambient

public void ambient(float[] rgba)
Specified by:
ambient in interface IGraphics3D

ambient

public void ambient(IColor c)
Specified by:
ambient in interface IGraphics3D

specular

public void specular(float r,
                     float g,
                     float b,
                     float a)
Specified by:
specular in interface IGraphics3D

specular

public void specular(float r,
                     float g,
                     float b)
Specified by:
specular in interface IGraphics3D
Overrides:
specular in class processing.core.PGraphics

specular

public void specular(float[] rgba)
Specified by:
specular in interface IGraphics3D

specular

public void specular(IColor c)
Specified by:
specular in interface IGraphics3D

emissive

public void emissive(float r,
                     float g,
                     float b,
                     float a)
Specified by:
emissive in interface IGraphics3D

emissive

public void emissive(float r,
                     float g,
                     float b)
Specified by:
emissive in interface IGraphics3D
Overrides:
emissive in class processing.core.PGraphics

emissive

public void emissive(float[] rgba)
Specified by:
emissive in interface IGraphics3D

emissive

public void emissive(IColor c)
Specified by:
emissive in interface IGraphics3D

shininess

public void shininess(float s)
Specified by:
shininess in interface IGraphics3D
Overrides:
shininess in class processing.core.PGraphics

enableLight

public void enableLight()
Specified by:
enableLight in interface IGraphics3D

disableLight

public void disableLight()
Specified by:
disableLight in interface IGraphics3D

pointSize

public void pointSize(float sz)
Specified by:
pointSize in interface IGraphics3D

isInFront

public boolean isInFront(IVec p)

vertex

public void vertex(IVec p)

vertex

public void vertex(IVec[] p)

vertex

public void vertex(IVec[] p,
                   IVec[] n)

normal

public void normal(IVec n)

drawPoint

public void drawPoint(IVec p)
Specified by:
drawPoint in interface IGraphics3D

drawPoints

public void drawPoints(IVec[] p)
Specified by:
drawPoints in interface IGraphics3D

drawLines

public void drawLines(IVec[] p)
Specified by:
drawLines in interface IGraphics3D

drawLineStrip

public void drawLineStrip(IVec[] p)
Specified by:
drawLineStrip in interface IGraphics3D

drawLineLoop

public void drawLineLoop(IVec[] p)
Specified by:
drawLineLoop in interface IGraphics3D

drawPolygon

public void drawPolygon(IVec[] p)
Specified by:
drawPolygon in interface IGraphics3D

drawPolygon

public void drawPolygon(IVec[] p,
                        IVec[] n)
Specified by:
drawPolygon in interface IGraphics3D

drawQuads

public void drawQuads(IVec[] p)
Specified by:
drawQuads in interface IGraphics3D

drawQuads

public void drawQuads(IVec[] p,
                      IVec[] n)
Specified by:
drawQuads in interface IGraphics3D

drawQuadStrip

public void drawQuadStrip(IVec[] p)
Specified by:
drawQuadStrip in interface IGraphics3D

drawQuadStrip

public void drawQuadStrip(IVec[] p,
                          IVec[] n)
Specified by:
drawQuadStrip in interface IGraphics3D

drawQuadMatrix

public void drawQuadMatrix(IVec[][] pts)
Specified by:
drawQuadMatrix in interface IGraphics3D

drawQuadMatrix

public void drawQuadMatrix(IVec[][] pts,
                           IVec[][] nml)
Specified by:
drawQuadMatrix in interface IGraphics3D

drawTriangles

public void drawTriangles(IVec[] p)
Specified by:
drawTriangles in interface IGraphics3D

drawTriangles

public void drawTriangles(IVec[] p,
                          IVec[] n)
Specified by:
drawTriangles in interface IGraphics3D

drawTriangleStrip

public void drawTriangleStrip(IVec[] p)
Specified by:
drawTriangleStrip in interface IGraphics3D

drawTriangleStrip

public void drawTriangleStrip(IVec[] p,
                              IVec[] n)
Specified by:
drawTriangleStrip in interface IGraphics3D

drawTriangleFan

public void drawTriangleFan(IVec[] p)
Specified by:
drawTriangleFan in interface IGraphics3D

drawTriangleFan

public void drawTriangleFan(IVec[] p,
                            IVec[] n)
Specified by:
drawTriangleFan in interface IGraphics3D

setLocation

public void setLocation(int x,
                        int y)
implementation of IPane

Specified by:
setLocation in interface IPane

setSize

public void setSize(int w,
                    int h)
Specified by:
setSize in interface IPane
Overrides:
setSize in class processing.opengl.PGraphicsOpenGL

setBounds

public void setBounds(int x,
                      int y,
                      int w,
                      int h)
Specified by:
setBounds in interface IPane

getX

public float getX()
Specified by:
getX in interface IPane

getY

public float getY()
Specified by:
getY in interface IPane

getWidth

public int getWidth()
Specified by:
getWidth in interface IPane

getHeight

public int getHeight()
Specified by:
getHeight in interface IPane

isVisible

public boolean isVisible()
Specified by:
isVisible in interface IPane

setVisible

public void setVisible(boolean b)
Specified by:
setVisible in interface IPane

contains

public boolean contains(int x,
                        int y)
Specified by:
contains in interface IPane

setPanel

public void setPanel(IPanelI p)
Specified by:
setPanel in interface IPane

getPanel

public IPanelI getPanel()
Specified by:
getPanel in interface IPane

setBorderWidth

public void setBorderWidth(float b)
Specified by:
setBorderWidth in interface IPane

getBorderWidth

public float getBorderWidth()
Specified by:
getBorderWidth in interface IPane

getBorderStroke

public java.awt.Stroke getBorderStroke()

setBorderColor

public void setBorderColor(int r,
                           int b,
                           int g,
                           int a)
Specified by:
setBorderColor in interface IPane

setBorderColor

public void setBorderColor(java.awt.Color c)

getBorderColor

public int getBorderColor()
Specified by:
getBorderColor in interface IPane

navigator

public INavigator navigator()
Specified by:
navigator in interface IPane

setView

public void setView(IView v)
Specified by:
setView in interface IPane

getView

public IView getView()
Specified by:
getView in interface IPane

draw

public void draw(IGraphics g)
Specified by:
draw in interface IPane

focus

public void focus()
Focus view on objects

Specified by:
focus in interface IPane

focus

public void focus(java.util.ArrayList<IObject> e)
Focus view on objects

Specified by:
focus in interface IPane

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)

mouseWheelMoved

public void mouseWheelMoved(java.awt.event.MouseWheelEvent e)

keyPressed

public void keyPressed(java.awt.event.KeyEvent e)

keyReleased

public void keyReleased(java.awt.event.KeyEvent e)

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)

mousePressed

public void mousePressed(IMouseEvent e)
Specified by:
mousePressed in interface IPane

mouseReleased

public void mouseReleased(IMouseEvent e)
Specified by:
mouseReleased in interface IPane

mouseClicked

public void mouseClicked(IMouseEvent e)
Specified by:
mouseClicked in interface IPane

mouseEntered

public void mouseEntered(IMouseEvent e)
Specified by:
mouseEntered in interface IPane

mouseExited

public void mouseExited(IMouseEvent e)
Specified by:
mouseExited in interface IPane

mouseMoved

public void mouseMoved(IMouseEvent e)
Specified by:
mouseMoved in interface IPane

mouseDragged

public void mouseDragged(IMouseEvent e)
Specified by:
mouseDragged in interface IPane

mouseWheelMoved

public void mouseWheelMoved(IMouseWheelEvent e)
Specified by:
mouseWheelMoved in interface IPane

keyPressed

public void keyPressed(IKeyEvent e)
Specified by:
keyPressed in interface IPane

keyReleased

public void keyReleased(IKeyEvent e)
Specified by:
keyReleased in interface IPane

keyTyped

public void keyTyped(IKeyEvent e)
Specified by:
keyTyped in interface IPane

focusLost

public void focusLost(java.awt.event.FocusEvent e)

focusGained

public void focusGained(java.awt.event.FocusEvent e)

close

public void close()