Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Как начертить вертикальную линию? Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
Alexander



Зарегистрирован: 17.01.2008
Сообщения: 14

СообщениеДобавлено: Ср Апр 30, 2008 3:10 pm Ответить с цитатой Вернуться к началу

Доброго Всем времени суток!
Искал на Пауке-Амиброкер. Там есть вертикалки для отрисовки границ по месяцам. А мне бы надо внутри цикла for(). Типа при таком то условии и т.д. Горизонтальные линии без проблем в цикле чертятся на LineArray().
Олег, Вы писали на Пауке что это невозможно. Может счас что изменилось? Устроит любой пример.
Line=LineArray(BarCount-2, C[BarCount-1], BarCount-1, C[BarCount-1]*1.01);
Plot(Line,"Line",7,1);
В этом примере рисует косую линию. Стоит поставить х0=BarCount-1 и здрасте.

P.S. Низкоуровневое черчение в АМИ вроде не поможет т.к. прямоугольник должен быть привязан к ценам.
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Ср Апр 30, 2008 5:04 pm Ответить с цитатой Вернуться к началу

Не очень помню, что я там на пауке писал. Если нужны вертикальные линии через весь график, то проблем не вижу.
В цикле формируем массив, везде нули а там, где нужна вертикальная линия - единицы. Потом выводим его вот таким макаром
Код:

Plot(qqqqqqqqqqqq, "", ColorRed, 2 + 32768 + 4096, Minvalue = 0, Maxvalue = 1);

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Alexander



Зарегистрирован: 17.01.2008
Сообщения: 14

СообщениеДобавлено: Ср Апр 30, 2008 10:20 pm Ответить с цитатой Вернуться к началу

000 писал(а):
В цикле формируем массив, везде нули а там, где нужна вертикальная линия - единицы. Потом выводим его вот таким макаром
Код:

Plot(qqqqqqqqqqqq, "", ColorRed, 2 + 32768 + 4096, Minvalue = 0, Maxvalue = 1);

Олег, благодарю за наводку. Буду подумать как это реализовать в моем коде.
Еще один вопрос. Можно ли обойтись БЕЗ ЦИКЛОВ или есть ли другие варианты для вывода вертикальных линий от одной конкретной точки до другой? Просто непосредственно на ценовом графике надо вывести прямоугольники.
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Ср Апр 30, 2008 10:39 pm Ответить с цитатой Вернуться к началу

Цитата:
Просто непосредственно на ценовом графике надо вывести прямоугольники.

Тогда мой способ не подходит. Может сойдут закрашенные прямоугольники? Такие можно сделать.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Alexander



Зарегистрирован: 17.01.2008
Сообщения: 14

СообщениеДобавлено: Ср Апр 30, 2008 10:46 pm Ответить с цитатой Вернуться к началу

000 писал(а):
Может сойдут закрашенные прямоугольники? Такие можно сделать.

Согласен на любые прямоугольники Smile если они отрисовываются по координатам их же собственных четырех точек.
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Ср Апр 30, 2008 10:59 pm Ответить с цитатой Вернуться к началу

Вот такие можно
Image

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Ср Апр 30, 2008 11:03 pm Ответить с цитатой Вернуться к началу

Там не совсем по координатам 4х точек. Проводишь верхнюю и нижнюю линии. А пространство между ними закрашиваешь при помощи StyleCloud функции PlotOHLC()
Код:

top = ValueWhen(Day() == 1, H+(H-L)/2);
bot = ValueWhen(Day() == 1, L-(H-L)/2);
top = IIf(Day() < 12, top, Null);
bot = IIf(Day() < 12, bot, Null);

PlotOHLC(top, top, bot, bot, "", colorLightOrange, styleCloud);

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen