Ich bin sehr neu zu Open GL. Mein Motto ist Freihandzeichnen mit dem offenen GL. Dies versuche ich durch Verbinden von Scheitelpunkten auf Drag zu erreichen. Mein Problem ist, sobald ich irgendwo auf dem Bildschirm tippe, wird eine Linie vom Bildschirm des Zentrums zu diesem Punkt gezeichnet. Ich bin nicht in der Lage, herauszufinden, warum? Bitte helfen Sie. DieseOpen GL Line Draw android
ist, was ich tue zu ziehen:
@Override
public void onDrawFrame(GL10 gl) {
gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
glUniform4f(uColorLocation, 1.0f, 0.0f, 0.0f, 1.0f);
vertexData.put(toFloatarray(points));
vertexData.clear();
for (int i = last_size; i < points.size(); i++) {
glDrawArrays(GL_LINES, i , 2);
last_size = points.size();
}
}
I for-Schleife wissen, ist nicht der beste Weg, und das ist das Problem, aber ich bin nicht in der Lage, darüber hinwegzukommen.
EDIT:
Dies ist, wie ich
public void handleTouchDrag(float normalizedX, float normalizedY) {
points.add(normalizedX);
points.add(normalizedY);
}
wo Punkte Array bin Zugabe:
final float normalizedX = (event.getX()/(float) v.getWidth()) * 2 - 1;
final float normalizedY = -((event.getY()/(float) v.getHeight()) * 2 - 1);
https://developer.android.com/training/graphics/opengl/draw.html –
siehe diesen Link http://stackoverflow.com/questions/16650419/draw-in-canvas-by-finger-android –
@AndroidDeveloper danke, aber ich muss es in Open gl nicht Canvas tun – Payal