List of usage examples for com.badlogic.gdx.graphics.glutils ShapeRenderer curve
public void curve(float x1, float y1, float cx1, float cy1, float cx2, float cy2, float x2, float y2, int segments)
From source file:com.hindelid.ld.thirtyfour.Fish.java
License:Apache License
public void render(ShapeRenderer aShapeRenderer) { aShapeRenderer.circle(mPos.x, mPos.y, mRadus, 30); // Body aShapeRenderer.circle(mPos.x - 0.25f, mPos.y + 0.15f, 0.06f, 30); // Eye aShapeRenderer.line(mPos.x + mTailOffset.x, mPos.y + mTailOffset.y, mPos.x + 1f, mPos.y - 0.4f); // \ aShapeRenderer.line(mPos.x + mTailOffset.x, mPos.y - mTailOffset.y, mPos.x + 1f, mPos.y + 0.4f); // / aShapeRenderer.line(mPos.x + 1f, mPos.y - 0.4f, mPos.x + 1f, mPos.y + 0.4f); // | aShapeRenderer.line(mPos.x - mLampOffset.x, mPos.y + mLampOffset.y, mPos.x - mLampOffset.x * 2f, mPos.y + mLampOffset.y * 2f); aShapeRenderer.line(mPos.x - mLampOffset.x * 3.3f, mPos.y + mLampOffset.y, mPos.x - mLampOffset.x * 2f, mPos.y + mLampOffset.y * 2f); aShapeRenderer.circle(mPos.x - mLampOffset.x * 3.3f, mPos.y + mLampOffset.y - 0.08f, 0.08f, 30); aShapeRenderer.curve(mPos.x - mTailOffset.x, mPos.y - mTailOffset.y, mPos.x - mTailOffset.x, mPos.y - mTailOffset.y * 1.6f, mPos.x, mPos.y - mTailOffset.y * 1.5f, mPos.x - mTailOffset.x / 2f, mPos.y - mTailOffset.y / 2f, 30); // aShapeRenderer.rect(mBoundingBox.x, mBoundingBox.y, mBoundingBox.width, mBoundingBox.height); }
From source file:com.hindelid.ld.thirtyfour.Octopus.java
License:Apache License
public void render(ShapeRenderer aShapeRenderer) { aShapeRenderer.curve(mPos.x, mPos.y, mPos.x + 0.5f, mPos.y + 1f, mPos.x + 0.5f, mPos.y + 1f, mPos.x + 1f, mPos.y, 30);/*from ww w . j ava 2 s .com*/ aShapeRenderer.line(mPos.x, mPos.y, mPos.x + 1f, mPos.y); aShapeRenderer.triangle( // Left eye mPos.x + 0.3f, mPos.y + 0.4f, mPos.x + 0.35f, mPos.y + 0.45f, mPos.x + 0.45f, mPos.y + 0.32f); aShapeRenderer.triangle( // Right eye mPos.x + 0.7f, mPos.y + 0.4f, mPos.x + 0.65f, mPos.y + 0.45f, mPos.x + 0.55f, mPos.y + 0.32f); aShapeRenderer.line(mPos.x + 0.1f, mPos.y, mPos.x - 0.1f, mPos.y - 0.6f); aShapeRenderer.line(mPos.x + 0.4f, mPos.y, mPos.x + 0.35f, mPos.y - 0.6f); aShapeRenderer.line(mPos.x + 0.6f, mPos.y, mPos.x + 0.65f, mPos.y - 0.6f); aShapeRenderer.line(mPos.x + 0.9f, mPos.y, mPos.x + 1.1f, mPos.y - 0.6f); }
From source file:pl.kotcrab.jdialogue.editor.components.ConnectionRenderer.java
License:Open Source License
public int renderLines(ShapeRenderer shapeRenderer, DComponent comp, boolean ignoreInvisible) { rendered = 0;//from w w w . ja v a 2 s . c om if (ignoreInvisible == false && comp instanceof RelayComponent) { if ((boolean) comp.getTableModel().data[0][1] == true) return rendered; } Connector[] outputs = comp.getOutputs(); for (int i = 0; i < outputs.length; i++) { Connector con = outputs[i]; Connector target = con.getTarget(); if (target == null) continue; float x1 = con.getX() + 6; float y1 = con.getY() + 6; float x2 = target.getX() + 6; float y2 = target.getY() + 6; float startX; if (x2 > x1) { startX = x1; shapeRenderer.setColor(Color.BLACK); } else { shapeRenderer.setColor(Color.BLUE); startX = x2; } float startY; if (y2 > y1) startY = y1; else startY = y2; if (cameraRect.overlaps(new Rectangle(startX, startY, Math.abs(x2 - x1), Math.abs(y2 - y1))) == false) continue; float d = 0; if (renderCurves) { d = Math.abs(y1 - y2); if (d > 100) d = 100; // limit } if (renderCurves) shapeRenderer.curve(x1, y1, x1 + d, y1, x2 - d, y2, x2, y2, 32); // connection line else shapeRenderer.line(x1, y1, x2 - 12, y2); rendered++; } return rendered; }
From source file:pl.kotcrab.jdialogue.editor.components.ConnectionRenderer.java
License:Open Source License
public void render(ShapeRenderer shapeRenderer, Connector selectedConnection, float x2, float y2) { shapeRenderer.begin(ShapeType.Line); shapeRenderer.setColor(Color.ORANGE); float x1 = selectedConnection.getX() + 6; float y1 = selectedConnection.getY() + 6; float d = 0;/* www. ja v a 2s. c om*/ if (renderCurves) { d = Math.abs(y1 - y2); if (d > 100) d = 100; // limit } if (selectedConnection.isInput() == true) // swaping values because curve will look weird without this { float temp = x1; x1 = x2; x2 = temp; temp = y1; y1 = y2; y2 = temp; } if (renderCurves) shapeRenderer.curve(x1, y1, x1 + d, y1, x2 - d, y2, x2, y2, 32); else shapeRenderer.line(x1, y1, x2, y2); shapeRenderer.end(); }