Заполнить Path

Ответить
Phoenix
Сообщения: 4
Зарегистрирован: 13 май 2013, 23:11
Откуда: Lviv

Заполнить Path

Сообщение Phoenix » 08 дек 2013, 01:24

Здраствуйте, учусь программировать для андроида, уже понемного вливаюсь в это дело, и недавно понадобилось нарисовать на 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, вот и вставил =) эффекта правда не увидел никакого

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

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

Сообщение KamiSempai » 09 дек 2013, 00:31

На stackoverflow советуют использовать Paint.Style.FILL вместо Paint.Style.FILL_AND_STROKE.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Phoenix
Сообщения: 4
Зарегистрирован: 13 май 2013, 23:11
Откуда: Lviv

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

Сообщение Phoenix » 10 дек 2013, 16:14

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

Ответить