Показать сообщение отдельно
Старый 09.05.2013, 03:51
studentsimf вне форума Посмотреть профиль Отправить личное сообщение для studentsimf Найти все сообщения от studentsimf
  № 3  
Ответить с цитированием
studentsimf

Регистрация: May 2013
Сообщений: 6
Цитата:
Сообщение от Idon'tKnow Посмотреть сообщение
Вот есть идея. Просто перерисовывать линию белую, если нужно стереть. Не подходит такой вариант?
Не, белая линия тоже не подходит т.к. у меня не белый фон а прозрачный.
Надо именно резать векторную линию и удалять фрагмент ее.

Сейчас пробую пробегаться по векторному массиву... и удалять точки которые попадаются под руку)) но такое это кривое решение)))

Код AS1/AS2:
var v:Vector.<IGraphicsData>;
v = conrainerPaint.graphics.readGraphicsData(true);
 
for (var i : int = 0; i < v.length; i++) 
{
        if (String(v[i]) ==  "[object GraphicsPath]")
	{ 
		if (GraphicsPath(v[i]).data.indexOf(int(conrainerPaint.mouseX)) != -1 && GraphicsPath(v[i]).data.indexOf(int(conrainerPaint.mouseY)) != -1)
		{
			 v.splice(i, 1);
			 conrainerPaint.graphics.clear();
			 conrainerPaint.graphics.drawGraphicsData(v); 
			 return;
		}	
	}	
}