Страница 1 из 1

Заполнить Path

Добавлено: 08 дек 2013, 01:24
Phoenix
Здраствуйте, учусь программировать для андроида, уже понемного вливаюсь в это дело, и недавно понадобилось нарисовать на canvas заполненный треугольник, вроде бы простейшая задача, но появились сложности, ( сначала вообще не знал как его "правильно" нарисовать так как просто линиями нехотелось стороны рисовать + в результате получился бы треугольник но пустой внутри). Начал искать решение в гугле, там сказали что рисуют такие формы с помощью Path обьекта, немного покопался, разобрался врода как с Path, но появилась другая проблема, треугольник никак не хотел закрашиваться изменял paint.setStyle(Style.FILL_AND_STROKE); и на FILL , не помогло, треугольник просто исчезал. Вот код, буду благодарен за помощь в закрашивании треугольника :) .
обьявление Path и Paint обьектов:

Код: Выделить всё

paint = new Paint();
path = new Path();
рисование:

Код: Выделить всё

	
		paint.setStyle(Style.FILL_AND_STROKE);
		paint.setColor(Color.YELLOW);
             // path.setFillType(Path.FillType.EVEN_ODD);
	    path.moveTo(width/2, Math.round(height * 0.1));
		path.lineTo(width/2 + 50, Math.round(height * 0.1));
		path.moveTo(width/2 + 50, Math.round(height * 0.1));
	    path.lineTo(width/2 - 50, Math.round(height * 0.1)); 
	    path.moveTo(width/2 - 50, Math.round(height * 0.1));
	    path.lineTo(width/2, Math.round(height * 0.1));
	    path.close();
	    
	    canvas.drawPath(path, paint); 
P.S: что такое path.setFillType(Path.FillType.EVEN_ODD); так и не понял, видел в гугле что кое кто использует для заполнение Path, вот и вставил =) эффекта правда не увидел никакого

Re: Заполнить Path

Добавлено: 09 дек 2013, 00:31
KamiSempai
На stackoverflow советуют использовать Paint.Style.FILL вместо Paint.Style.FILL_AND_STROKE.

Re: Заполнить Path

Добавлено: 10 дек 2013, 16:14
Phoenix
KamiSempai писал(а):На stackoverflow советуют использовать Paint.Style.FILL вместо Paint.Style.FILL_AND_STROKE.
когда использую Paint.Style.FILL треугольник вообще не отображается