![]() |
|
||||||||||
|
|
|
|||||
|
Начал делать простой растовый графический редактор.
И вот есть такой код, что бы рисовать пиксели: private function startDraw(evt:MouseEvent)
{
//addEventListener(Event.ENTER_FRAME,drawing)
setInterval(drawing,1);
}
private function drawing(evt:Event=null)
{
var pX=Math.floor(mouseX);
var pY=Math.floor(mouseY);
for(var i=-1;i<=1;i++)
for(var j=-1;j<=1;j++)
primary.bitmapData.setPixel(pX+i,pY+j,curColor);
}
|
|
|||||
|
Человек и Здание
|
Считать расстояние между старым и новым положением, и если оно больше х, в цикле расставлять там точки от старого положения до нового, с заданной плотностью.
ВыШШий пилотаж - это строить кривую безье из нескольких предыдущих точек измерений, и расставлять новые точки на дорисуемом отрезке не по линии, а по кривой, но это уже скорее всего передоЗ.
__________________
Регардсы. |
|
|||||
|
Регистрация: May 2006
Сообщений: 79
|
1. onMouseMove
2. рисовать линию между последней и предпоследней точкой. |
|
|||||
|
Я так тоже думал. Но вот в случае с кривой, как найти пунты по которым её построить? Если написать функцию которая заганяет их в массив, то она тоже будет выполнятся с интервалом... Тут нужен цикл покуда мышу не отожмёшь, но вот как его сделать???
|
|
|||||
|
можно рисовать линию в шейпе, а сам шейп копировать в битмап на каждой итерации
|
|
|||||
|
Цитата:
![]()
__________________
Дело не в тебе |
|
|||||
|
Регистрация: Jun 2007
Сообщений: 374
|
AL.exe, алгоритм, как пририсовать к кривой безье (которая уже нарисована) новую кривую безье (которая ведет к новой точке) и чтобы они были сглажены, не подскажете?
![]() Я голову сломал, но так и не сделал это ( |
|
|||||
|
|
![]() |
![]() |
Часовой пояс GMT +4, время: 07:03. |
|
|
« Предыдущая тема | Следующая тема » |
|
|