|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Друзья, добрый вечер, помогите пожалуйста разобраться в проблеме прорисовки линий.
Проблема показана в изображении (ниже) Реализация класса: package { import flash.display.MovieClip; import flash.display.Sprite; import flash.display.LineScaleMode; import flash.display.CapsStyle; public class HPanel extends MovieClip { private var _ширина : Number=0; private var _высота : Number=0; private var _X : Number=0; private var _Y : Number=0; private var _смещениеЛинии: Number=0; private var _толщинаЛинии : Number=0; private var _цветЛинии : Number=0; public function HPanel(ширина_, высота_, смещениеЛинии_, толщинаЛинии_, цветЛинии_:Number=0) { // ---[ сохраняем настройки ]------------------------------------------------------------------------------------------------------------ this._X = 0; // X this._Y = 0; // Y this._ширина = ширина_; // длинна диалогового окна; this._высота = высота_; // высота диалогового окна; this._смещениеЛинии = смещениеЛинии_; // отступ между линиями; this._толщинаЛинии = толщинаЛинии_; // толщина линии; this._цветЛинии = цветЛинии_; // цвет линий; Init(); // инициализания; } public function Init():void { var X0:Number =0; var Y0:Number =0; var X1:Number =0; var Y1:Number =0; while(true) { Y0+=this._смещениеЛинии; X1+=this._смещениеЛинии; if( Y0> this._высота){X0+=this._смещениеЛинии; Y0=this._высота;} if( X1> this._ширина){Y1+=this._смещениеЛинии; X1=this._ширина;} if((X1>=this._ширина-1) && (Y1>=this._высота-1)){break;} // супер выход из цикла; var рисуемЛинии: Sprite =new Sprite(); рисуемЛинии. graphics.lineStyle(this._толщинаЛинии, this._цветЛинии, 1,false, LineScaleMode.NORMAL, CapsStyle.SQUARE); // показали стиль; рисуемЛинии. graphics.moveTo(X0, Y0); рисуемЛинии. graphics.lineTo(X1, Y1); trace("(",X0,",",Y0,") - (", X1,",",Y1,")"); this.addChild(рисуемЛинии); } // while } // function } // class } // package ...ну согласен, как бы - да, кривая математика. Последний раз редактировалось wvxvw; 16.08.2009 в 22:47. |
|
|||||
Modus ponens
|
Вы бы еще обфускатором по коду прошлись, а потом выложили на форум...
А идея - вообще издевательство... отрисуйте небольшой кусочек в битмапдату и заливайте ею... зачем плодить кучу спрайтов?
__________________
Hell is the possibility of sanity |
|
|||||
Ну так нада Долго рассказывать все нюансы, проблема на данный момент в теме топика.
|
|
|||||
Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
|
предлагаю передать данный код в надежные руки, вот сюда: http://govnokod.ru
|
|
|||||
Предлагаю не пиарить ресурсы типа http://govnokod.ru, и по мочь по делу! Именно для этого форум и существует.
|
|
|||||
Регистрация: Jan 2009
Сообщений: 1,651
|
2wvxvw: по-моему такую текстуру клонировать - больше затрахаешься, чем нарисовать штрихами. по крайней мере - такие уголочки не получатся. В левом верхнем и правом нижнем еще по одному делению должно быть.
автору: реально лень разбираться. Похоже, что ошибка где-то здесь: |
|
|||||
Modus ponens
|
Как бы алгоритм будет по разному работать если высота и ширина четные / нечетные, а кроме того используются натуральные а не целые числа, изза этого тоже будет погрешность.
Не вижу абсолютно ничего сложного в отрисовке такой текстуры даже в том же фотошопе и потом - заливке... и быстрее гораздо получится, и быглядеть будет лучше.
__________________
Hell is the possibility of sanity |
|
|||||
Друзья,
Посмотрите пожалуйста пример сайта, и тогда вы поймете почему я не могу залить какой нибудь rectangle какой нибудь текстурой: http://www.massiveattack.co.uk |
|
|||||
Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
|
Цитата:
пытался честно но так и не понял почему нельзя сделать как предложили... |
|
|||||
Открыл для себя новинку - спрайт можно заливать .png текстурой с элементами прозрачности. При этом прозрачность сохраняется.
Остановлюсь всетаки на заливке Всем спасибо! Последний раз редактировалось ERrorMAKros; 17.08.2009 в 16:24. |
Часовой пояс GMT +4, время: 03:05. |
|
« Предыдущая тема | Следующая тема » |
Теги |
graphics , linestyle , lineTo , moveTo |
Опции темы | |
Опции просмотра | |
|
|