gpt4 book ai didi

android - LibGDX ShapeRenderer 圆形绘图

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:11:14 30 4
gpt4 key购买 nike

我已经尝试了几种将圆圈绘制到生成坐标的解决方案。它不起作用,但我不知道 filledCircle 方法有什么问题?我该如何更换它?

留言:

FilledCircle cannot be resolved or is not a field

代码:

package com.example.game;

import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
import com.badlogic.gdx.graphics.glutils.ShapeRenderer.ShapeType;

public class MainClass extends ApplicationAdapter {
SpriteBatch batch;
OrthographicCamera camera;
ShapeRenderer shapeRenderer;
private Sprite sprite;

@Override
public void create () {
shapeRenderer = new ShapeRenderer();
batch = new SpriteBatch();
}

@Override
public void render () {

Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

Gdx.gl.glEnable(GL20.GL_BLEND);
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
Gdx.gl.glDisable(GL20.GL_BLEND);

batch.setProjectionMatrix(camera.combined);

batch.begin();
batch.draw(sprite, 200, 200, 64, 64);
shapeRenderer.begin(ShapeType.FilledCircle);
shapeRenderer.filledCircle(50, 50, 32);
shapeRenderer.setColor(Color.BLACK);
shapeRenderer.end();
batch.end();
}


}

最佳答案

begin(ShapeRenderer.ShapeType type) 方法接受一个 ShapeType。有 3 Shapetypes :填充,线和点。没有像您正在使用的 FilledCircle(这就是错误消息告诉您的内容)。

因此,您应该使用 shapeRenderer.begin(ShapeType.Filled);

另外,没有filledCircle() 方法。试试 shapeRenderer.circle(50, 50, 32);

编辑:

这是您的代码,没有一些错误。您需要理解它并完成一些部分,复制粘贴是行不通的。

@Override
public void create () {
shapeRenderer = new ShapeRenderer();
batch = new SpriteBatch();

camera = new OrthographicCamera(300, 480); //FILL THE VALUES HERE
sprite = new Sprite(new Texture(Gdx.files.internal("badlogic.jpg"))); //FILL THE VALUES HERE

sprite.setBounds(200, 200, 64, 64);
}


@Override
public void render () {

Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

Gdx.gl.glEnable(GL20.GL_BLEND);
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
Gdx.gl.glDisable(GL20.GL_BLEND);

batch.setProjectionMatrix(camera.combined);

batch.begin();
sprite.draw(batch);
batch.end();

shapeRenderer.setColor(Color.BLACK);
shapeRenderer.begin(ShapeType.Filled);
shapeRenderer.circle(50, 50, 32);
shapeRenderer.end();
}

关于android - LibGDX ShapeRenderer 圆形绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26715986/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com