public class SpringDrawing
extends processing.core.PApplet
processing.core.PApplet.RegisteredMethods, processing.core.PApplet.RendererChangeException
java.applet.Applet.AccessibleApplet
Modifier and Type | Field and Description |
---|---|
(package private) Jcg.geometry.Point_2 |
a |
(package private) Jcg.geometry.Point_2 |
b |
private int |
backgroundColor |
(package private) double |
boundaryThickness |
Jcg.geometry.Point_2 |
current |
private int |
edgeColor |
private int |
edgeOpacity |
static AdjacencyListGraph |
inputGraph
input graph to draw
|
FR91Layout |
layout
Layout algorithm
|
boolean |
runAllIterations |
Node |
selectedNode
node selected with mouse click (to show)
|
static int |
sizeX |
static int |
sizeY |
protected double |
xmax |
protected double |
xmin |
protected double |
ymax |
protected double |
ymin |
args, ARGS_BGCOLOR, ARGS_DISPLAY, ARGS_EDITOR_LOCATION, ARGS_EXCLUSIVE, ARGS_EXTERNAL, ARGS_HIDE_STOP, ARGS_LOCATION, ARGS_PRESENT, ARGS_SKETCH_FOLDER, ARGS_STOP_COLOR, DEFAULT_HEIGHT, DEFAULT_WIDTH, defaultSize, disposeMethods, dmouseX, dmouseY, drawMethods, emouseX, emouseY, exitCalled, EXTERNAL_MOVE, EXTERNAL_STOP, finished, firstMouse, focused, frame, frameCount, frameRate, frameRateLastNanos, frameRatePeriod, frameRateTarget, g, height, ICON_IMAGE, javaVersion, javaVersionName, key, keyCode, keyEvent, keyEventMethods, keyPressed, loadImageFormats, loadShapeFormats, looping, matchPatterns, MENU_SHORTCUT, MIN_WINDOW_HEIGHT, MIN_WINDOW_WIDTH, mouseButton, mouseEvent, mouseEventMethods, mousePressed, mouseX, mouseY, online, parentFrame, paused, pixels, platform, pmouseX, pmouseY, postMethods, preMethods, recorder, redraw, requestImageMax, screen, screenHeight, screenWidth, selectedFile, sizeMethods, sketchPath, useQuartz, width
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
A, AB, ADD, AG, ALPHA, ALPHA_MASK, ALT, AMBIENT, AR, ARC, ARGB, ARROW, B, BACKSPACE, BASELINE, BEEN_LIT, BEVEL, BILINEAR, BLEND, BLUE_MASK, BLUR, BOTTOM, BOX, BURN, CENTER, CENTER_DIAMETER, CENTER_RADIUS, CHATTER, CLAMP, CLOSE, CMYK, CODED, COMPLAINT, CONTROL, CORNER, CORNERS, CROSS, CUSTOM, DA, DARKEST, DB, DEG_TO_RAD, DELETE, DG, DIAMETER, DIFFERENCE, DILATE, DIRECTIONAL, DISABLE_ACCURATE_TEXTURES, DISABLE_DEPTH_MASK, DISABLE_DEPTH_SORT, DISABLE_DEPTH_TEST, DISABLE_NATIVE_FONTS, DISABLE_OPENGL_2X_SMOOTH, DISABLE_OPENGL_ERROR_REPORT, DODGE, DOWN, DR, DXF, DYNAMIC, EB, EDGE, EG, ELLIPSE, ENABLE_ACCURATE_TEXTURES, ENABLE_DEPTH_MASK, ENABLE_DEPTH_SORT, ENABLE_DEPTH_TEST, ENABLE_NATIVE_FONTS, ENABLE_OPENGL_2X_SMOOTH, ENABLE_OPENGL_4X_SMOOTH, ENABLE_OPENGL_ERROR_REPORT, ENTER, EPSILON, ER, ERODE, ERROR_BACKGROUND_IMAGE_FORMAT, ERROR_BACKGROUND_IMAGE_SIZE, ERROR_PUSHMATRIX_OVERFLOW, ERROR_PUSHMATRIX_UNDERFLOW, ERROR_TEXTFONT_NULL_PFONT, ESC, EXCLUSION, FIXED, G, GIF, GRAY, GREEN_MASK, HALF_PI, HAND, HARD_LIGHT, HAS_NORMAL, HINT_COUNT, HSB, IMAGE, INVERT, JAVA2D, JPEG, LEFT, LIGHTEST, LINE, LINE_LOOP, LINE_STRIP, LINEAR, LINES, LINUX, MACOSX, MAX_FLOAT, MAX_INT, MIN_FLOAT, MIN_INT, MITER, MODEL, MODELVIEW, MOVE, MULTIPLY, NORMAL, NORMALIZED, NX, NY, NZ, OPAQUE, OPEN, OPENGL, OPENGL2, ORTHOGRAPHIC, OTHER, OVERLAY, P2D, P3D, PATH, PDF, PERSPECTIVE, PI, platformNames, POINT, POINT_SPRITES, POINTS, POLYGON, POSTERIZE, PROBLEM, PROG_GL2, PROG_GL3, PROG_GL4, PROJECT, PROJECTION, QUAD, QUAD_STRIP, QUADRATIC, QUADS, QUARTER_PI, R, RAD_TO_DEG, RADIUS, RECT, RED_MASK, REPEAT, REPLACE, RETURN, RGB, RIGHT, ROUND, SA, SB, SCREEN, SG, SHAPE, SHIFT, SHINE, SOFT_LIGHT, SPB, SPG, SPHERE, SPOT, SPR, SQUARE, SR, STATIC, STREAM, SUBTRACT, SW, TAB, TARGA, TEXT, TEXTURE2D, THIRD_PI, THRESHOLD, TIFF, TOP, TRIANGLE, TRIANGLE_FAN, TRIANGLE_STRIP, TRIANGLES, TRILINEAR, TWO_PI, TX, TY, TZ, U, UP, V, VERTEX_FIELD_COUNT, VW, VX, VY, VZ, WAIT, WHITESPACE, WINDOWS, X, Y, Z
Constructor and Description |
---|
SpringDrawing() |
Modifier and Type | Method and Description |
---|---|
double[] |
boundingBox()
Return the current coordinates of the bounding box
|
void |
display2D()
Draw the skeleton of a graph in 2D using a Processing frame
|
void |
draw()
Main method for drawing the applet
|
void |
drawColoredSegment(Jcg.geometry.Point_2 u,
Jcg.geometry.Point_2 v,
int r,
int g,
int b)
Draw a colored edge (u, v)
|
void |
drawOptions() |
void |
drawSegment(Jcg.geometry.Point_2 u,
Jcg.geometry.Point_2 v)
Draw a gray edge (u, v)
|
void |
drawVertex(Node u,
double distortion,
double maxDistortion)
Draw a vertex u on the canvas
|
void |
drawVertexLabel(Node u)
Draw a vertex label on the canvas (close to the node location)
|
int[] |
getPoint(Jcg.geometry.Point_2 v)
Return the integer coordinates of a pixel corresponding to a given point
Warning: we must take care of the following parameters:
-) the size of the canvas
-) the size of bottom and left panels
-) the negative direction of y-coordinates (in java drawing)
|
java.lang.String |
getVertexLabel(Node u)
Compute the label of a vertex, from its index, spectral distortion and vertex age
|
void |
keyPressed()
Deal with keyboard events
|
static void |
main(java.lang.String[] args)
For running the PApplet as Java application
|
void |
mouseClicked() |
void |
mouseDragged() |
void |
mousePressed() |
void |
mouseReleased() |
void |
performOneIteration() |
Node |
selectNode(int i,
int j)
Select the vertex whose 2d projection is the closest to pixel (i, j)
|
void |
setup()
Initialize the frame
|
protected void |
update(double x,
double y)
Update of the bounding box
|
void |
updateBoundingBox()
Update the range of the drawing region (defined by corners points 'a' and 'b')
|
void |
zoom(double factor) |
abs, abs, acos, addListeners, alpha, ambient, ambient, ambient, ambientLight, ambientLight, append, append, append, append, append, append, applyMatrix, applyMatrix, applyMatrix, applyMatrix, applyMatrix, arc, arraycopy, arrayCopy, arraycopy, arrayCopy, arraycopy, arrayCopy, asin, atan, atan2, autoNormal, background, background, background, background, background, background, background, beginCamera, beginRaw, beginRaw, beginRecord, beginRecord, beginRecord, beginShape, beginShape, beginText, bezier, bezier, bezierDetail, bezierPoint, bezierTangent, bezierVertex, bezierVertex, binary, binary, binary, binary, blend, blend, blendColor, blue, box, box, breakShape, brightness, camera, camera, ceil, checkKeyEvent, checkMouseEvent, checkParentFrame, color, color, color, color, color, color, color, color, colorMode, colorMode, colorMode, colorMode, concat, concat, concat, concat, concat, concat, concat, constrain, constrain, copy, copy, cos, createDefaultFont, createFont, createFont, createFont, createGraphics, createGraphics, createImage, createImage, createInput, createInput, createInputRaw, createOutput, createOutput, createPath, createPath, createReader, createReader, createReader, createShape, createWriter, createWriter, createWriter, cursor, cursor, cursor, cursor, curve, curve, curveDetail, curvePoint, curveTangent, curveTightness, curveVertex, curveVertex, dataFile, dataPath, day, degrees, delay, delete, dequeueKeyEvents, dequeueMouseEvents, destroy, die, die, directionalLight, displayable, dispose, dist, dist, edge, ellipse, ellipseMode, emissive, emissive, emissive, endCamera, endRaw, endRecord, endShape, endShape, endText, enqueueKeyEvent, enqueueMouseEvent, exec, exit, exp, expand, expand, expand, expand, expand, expand, expand, expand, expand, expand, expand, expand, expand, expand, fill, fill, fill, fill, fill, fill, filter, filter, floor, flush, focusGained, focusGained, focusLost, focusLost, frameRate, frustum, get, get, get, getCache, getMatrix, getMatrix, getMatrix, getParams, green, handleDraw, handleKeyEvent, handleMouseEvent, hex, hex, hex, hex, hint, hintEnabled, hour, hue, image, image, image, imageMode, init, insertFrame, isRecording, join, join, keyPressed, keyReleased, keyReleased, keyTyped, keyTyped, lerp, lerpColor, lerpColor, lightFalloff, lights, lightSpecular, line, line, link, link, loadBytes, loadBytes, loadBytes, loadFont, loadImage, loadImage, loadImage, loadImage, loadImageIO, loadImageMT, loadImageTGA, loadPixels, loadShape, loadShape, loadStrings, loadStrings, loadStrings, log, loop, mag, mag, makeGraphics, map, mask, mask, match, matchAll, matrixMode, max, max, max, max, max, max, mergeShapes, method, millis, min, min, min, min, min, min, minute, modelX, modelY, modelZ, month, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mouseMoved, mousePressed, mouseReleased, nf, nf, nf, nf, nfc, nfc, nfc, nfc, nfp, nfp, nfp, nfp, nfs, nfs, nfs, nfs, noCursor, noFill, noise, noise, noise, noiseDetail, noiseDetail, noiseSeed, noLights, noLoop, norm, normal, noSmooth, noStroke, noTexture, noTint, open, open, openStream, ortho, ortho, ortho, paint, param, parseBoolean, parseBoolean, parseBoolean, parseBoolean, parseByte, parseByte, parseByte, parseByte, parseByte, parseByte, parseByte, parseByte, parseByte, parseChar, parseChar, parseChar, parseChar, parseFloat, parseFloat, parseFloat, parseFloat, parseFloat, parseFloat, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, parseInt, perspective, perspective, point, point, pointLight, popMatrix, popStyle, pow, print, print, print, print, print, print, print, printCamera, println, println, println, println, println, println, println, println, printMatrix, printProjection, pushMatrix, pushStyle, quad, quadVertex, quadVertex, radians, random, random, randomSeed, rect, rect, rect, rectMode, red, redraw, registerDispose, registerDraw, registerKeyEvent, registerMouseEvent, registerNoArgs, registerPost, registerPre, registerSize, registerWithArgs, removeCache, removeParams, requestImage, requestImage, requestImage, resetMatrix, resizeRenderer, reverse, reverse, reverse, reverse, reverse, reverse, reverse, rotate, rotate, rotateX, rotateY, rotateZ, round, run, runSketch, runSketch, runSketch, saturation, save, saveBytes, saveBytes, saveBytes, saveFile, saveFrame, saveFrame, savePath, saveStream, saveStream, saveStream, saveStream, saveStrings, saveStrings, saveStrings, scale, scale, scale, screenBlend, screenX, screenX, screenY, screenY, screenZ, second, selectFileImpl, selectFolder, selectFolder, selectInput, selectInput, selectOutput, selectOutput, set, set, setCache, setMatrix, setMatrix, setMatrix, setParams, setupExternalMessages, setupFrameResizeListener, shape, shape, shape, shapeMode, shapeName, shearX, shearY, shininess, shorten, shorten, shorten, shorten, shorten, shorten, shorten, showDepthWarning, showDepthWarningXYZ, showMethodWarning, showMissingWarning, showVariationWarning, sin, size, size, size, sketchFile, sketchHeight, sketchPath, sketchRenderer, sketchWidth, smooth, sort, sort, sort, sort, sort, sort, sort, sort, sort, sort, specular, specular, specular, sphere, sphereDetail, sphereDetail, splice, splice, splice, splice, splice, splice, splice, splice, splice, splice, splice, splice, splice, split, split, splitTokens, splitTokens, spotLight, sq, sqrt, start, status, stop, str, str, str, str, str, str, str, str, str, str, stroke, stroke, stroke, stroke, stroke, stroke, strokeCap, strokeJoin, strokeWeight, style, subset, subset, subset, subset, subset, subset, subset, subset, subset, subset, subset, subset, subset, subset, tan, text, text, text, text, text, text, text, text, text, text, text, text, text, text, textAlign, textAlign, textAscent, textDescent, textFont, textFont, textLeading, textMode, textSize, texture, texture, textureBlend, textureMode, textWidth, textWidth, textWidth, thread, tint, tint, tint, tint, tint, tint, translate, translate, triangle, trim, trim, unbinary, unhex, unregisterDispose, unregisterDraw, unregisterKeyEvent, unregisterMouseEvent, unregisterNoArgs, unregisterPost, unregisterPre, unregisterSize, unregisterWithArgs, update, updatePixels, updatePixels, vertex, vertex, vertex, vertex, vertex, vertexFields, year
getAccessibleContext, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, isValidateRoot, newAudioClip, play, play, resize, resize, setStub, showStatus
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected double xmin
protected double xmax
protected double ymin
protected double ymax
double boundaryThickness
private int backgroundColor
private int edgeColor
private int edgeOpacity
public boolean runAllIterations
public Node selectedNode
public Jcg.geometry.Point_2 current
public FR91Layout layout
public static AdjacencyListGraph inputGraph
public static int sizeX
public static int sizeY
Jcg.geometry.Point_2 a
Jcg.geometry.Point_2 b
public void setup()
setup
in class processing.core.PApplet
public void draw()
draw
in class processing.core.PApplet
public void keyPressed()
keyPressed
in class processing.core.PApplet
public void drawOptions()
public void performOneIteration()
public void zoom(double factor)
public void mouseClicked()
mouseClicked
in class processing.core.PApplet
public void mousePressed()
mousePressed
in class processing.core.PApplet
public void mouseReleased()
mouseReleased
in class processing.core.PApplet
public void mouseDragged()
mouseDragged
in class processing.core.PApplet
protected void update(double x, double y)
public void updateBoundingBox()
public double[] boundingBox()
public int[] getPoint(Jcg.geometry.Point_2 v)
public void drawSegment(Jcg.geometry.Point_2 u, Jcg.geometry.Point_2 v)
public void drawColoredSegment(Jcg.geometry.Point_2 u, Jcg.geometry.Point_2 v, int r, int g, int b)
public void drawVertex(Node u, double distortion, double maxDistortion)
public void drawVertexLabel(Node u)
public Node selectNode(int i, int j)
public void display2D()
public java.lang.String getVertexLabel(Node u)
public static void main(java.lang.String[] args)