Прикрепить холст нарисованную линию к сцене в Android

Я хотел бы прикрепить линию, нарисованную холстом к сцене. Я использую андегин библиотеку.

Я знаю, что andengine предоставляет линейные объекты, которые можно нарисовать и прикрепить к сцене, но это не вариант для меня, потому что я пытаюсь сделать красивую линию свечения.

Вот как линия андегина прикрепляется к сцене.

public class MainActivity extends SimpleBaseGameActivity implements OnClickListener {
//--Declaration and implementation of all overrides, etc.--
    @Override
        protected Scene onCreateScene() {
        final Line line = new Line(50,75,CAMERA_WIDTH,89,20,vbom);
        line.setColor(248, 255, 255, 255);
        line.setLineWidth(5f);
        final Line line2 = new Line(50,75,CAMERA_WIDTH,89,50,vbom);
        line2.setColor(235, 74, 138, 255);
        line2.setLineWidth(10f);
        scene.attachChild(line2);
        scene.attachChild(line);
        return scene;
    }
}

Вот так это выглядит и, как вы можете видеть, это не очень хорошо, или, может быть, тот факт, что я не применяю надлежащие стили, я буду рад, если вы уведомите меня.

Но если я попробую с холстом, он выглядит идеальной линией свечения.

public class DrawingView extends View {
    @Override
    protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    canvas.drawColor(Color.BLACK);

    Paint _paintSimple = new Paint();
    _paintSimple.setAntiAlias(true);
    _paintSimple.setDither(true);
    _paintSimple.setColor(Color.argb(248, 255, 255, 255));
    _paintSimple.setStrokeWidth(5f);
    _paintSimple.setStyle(Paint.Style.STROKE);
    _paintSimple.setStrokeJoin(Paint.Join.ROUND);
    _paintSimple.setStrokeCap(Paint.Cap.ROUND);

    Paint _paintBlur = new Paint();
    _paintBlur.set(_paintSimple);
    _paintBlur.setColor(Color.argb(235, 74, 138, 255));
    _paintBlur.setStrokeWidth(10f);
    _paintBlur.setMaskFilter(new BlurMaskFilter(15, BlurMaskFilter.Blur.NORMAL));

    canvas.drawLine(100, 150, 400, 150, _paintBlur);
    canvas.drawLine(100, 150, 400, 150, _paintSimple);
    }
}

Я хотел, чтобы идеальная линия свечения была прикреплена к моей сцене. Я делаю так, потому что я также использую OnClickListener с объектами спрайтов. Любое предложение или помощь мне очень помогут. Благодарю.

0 ответов

Другие вопросы по тегам