在Android中实现线段相交渲染

4
在我的Android应用程序中,我将从服务器检索数据,其中一些坐标将被返回。然后,我使用这些坐标创建线条并在视图中绘制它们。
我希望以不同的方式渲染线条。例如:线条渲染
顶部的线是原始线,我希望将其呈现为下面的形状。
还有一些相互交叉的线。然后可以如下所示呈现交叉点:
左侧的交叉点呈现方式是我想要的。
因此,我想知道Android图形API是否支持这些类型的操作?
1个回答

2

如果您正在使用Android画布进行绘图,则可以使用不同的笔触大小和颜色将路径绘制两次。以下是一个示例,它创建了一个位图,类似于您想要的图像:

    // Creates a 256*256 px bitmap
    Bitmap bitmap = Bitmap.createBitmap(256, 256, Config.ARGB_8888);

    // creates a Canvas which draws on the Bitmap
    Canvas c = new Canvas(bitmap);

    // Creates a path (draw an X)
    Path path = new Path();
    path.moveTo(64, 64);
    path.lineTo(192, 192);
    path.moveTo(64, 192);
    path.lineTo(192, 64);

    // the Paint to draw the path
    Paint paint = new Paint();
    paint.setStyle(Style.STROKE);

    // First pass : draws the "outer" border in red
    paint.setColor(Color.argb(255, 255, 0, 0));
    paint.setStrokeWidth(40);
    c.drawPath(path, paint);

    // Second pass : draws the inner border in pink
    paint.setColor(Color.argb(255, 255, 192, 192));
    paint.setStrokeWidth(30);
    c.drawPath(path, paint);

    // Use the bitmap in the layout
    ((ImageView) findViewById(R.id.image1)).setImageBitmap(bitmap);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接