|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|
Нарисовать график с фигурами свечей, свечи должны заливаться градиентом разного цвета21.12.2012, 11:05. Показов 7264. Ответов 20
Метки нет (Все метки)
Доброго времени суток гос-да.
Я только начал осваивать С#, сейчас появилась потребность рисовать. И вот что интересно, "погуглив" пару часов, ничего не нашёл о том как к примеру использовать GUIPlus в С# !Задача рисовать график с фигурами свечей, свечи должны заливаться градиентом разного цвета, плюс ещё нужно выводить текст и прямые линии на этом графике, ну и конечно он будет сдвигаться влево. Помогите пожалуйста с примерами кода. Как рисовать то на С# ?! ![]() P.S. В архиве пример программки как должно быть в итоге. Написал на Autoit, но этот язык создан для ботов. К стати "бегущая строка" реализована в этом примере тоже с помощью GUI+. Но к сожалению программа "ломается" через 9-15 минут после старта (где то не хватает памяти наверное).
0
|
|
| 21.12.2012, 11:05 | |
|
Ответы с готовыми решениями:
20
|
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
||||||
| 22.12.2012, 01:35 [ТС] | ||||||
|
форум большой, а толку ноль
![]() целый день тема висит, но почему то никто не ответил, или все кто см. сами не умеют, либо им лень писать ![]() Добавлено через 1 час 11 минут научился рисовать линии, но всё ещё чувствую себя "обезьяной с клавиатурой", все примеры и уроки в инете описывают очень малую часть, ну вот к примеру:
мне не надо красный или зелёный или ещё какой то, который уже имеет название и цвет, мне к примеру надо какой нибудь серобуромалинофиолетовый в крапинку, но 100% что в библиотеке нет такого названия цвета, значит надо сперва его создать, а затем присвоить в переменную с соответствующим именем, но вот как это сделать нигде нет, никаких примеров или хотя бы что нибудь, что бы можно было посмотреть и на этом примере написать своё. P.S. мб где то и есть то что надо, но я ещё и с английским не дружу почти, а на русском языке к сожалению ничего не нашёл ![]() Добавлено через 2 часа 6 минут в первом сообщении опечатка "GUIPlus" и "GUI+", правильно - GDIPlus, GDI+.
0
|
||||||
|
3 / 3 / 1
Регистрация: 17.07.2012
Сообщений: 12
|
|
| 22.12.2012, 12:48 | |
|
читайте на MSDN о пространстве имен System.Windows.Forms.DataVisualization.C harting. там найдете и свечи, и цвет для них "серо-буро-малиновый", и еще много чего полезного..
http://msdn.microsoft.com/ru-r... 89065.aspx
0
|
|
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|||||||
| 22.12.2012, 13:56 [ТС] | |||||||
|
v.egorov, Большое спасибо за ссылку, но я так и не нашёл примера создания своего цвета,
что то типа такого: Global $PenBlue = _GDIPlus_PenCreate(0xFF0066FF,2) ; создаёт перо с указанным цветом и толщиной для линии (пример из др. языка программирования) как написать подобное создание в C#? в этой строке к примеру:
осталось только научиться задавать свой цвет и сдвигать рисунок влево Добавлено через 3 минуты
0
|
|||||||
|
3 / 3 / 1
Регистрация: 17.07.2012
Сообщений: 12
|
||||||
| 22.12.2012, 14:13 | ||||||
|
наверное, так
1
|
||||||
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|
| 22.12.2012, 14:18 [ТС] | |
|
v.egorov, Ещё раз спасибо!
Вот это дело, то что нужно
0
|
|
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
||||||
| 26.12.2012, 03:26 [ТС] | ||||||
|
Продолжая тему ... .
Как возможно рисовать, не стирая при перерисовке уже нарисованное в области для рисования? При вызове:
![]() Рисую на картинке, установленной фоном области для рисования. Всё что нашёл в поисковике, не подходит, во всех примерах нет фоновой картинки при создании графического пространства для рисования. Покажите пожалуйста как рисовать на картинке, не стирая нарисованное при вызове перерисовки области, ну или как сделать прозрачной зону для рисования, чтобы под неё поместить картинку. Заранее спасибо.
0
|
||||||
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
|
| 26.12.2012, 05:15 | |
|
Все что, рисуешь, должно быть зафиксировано где-то в данных. И затем просто перерисовывается в paint.
К примеру, массив точек и т.д.
0
|
|
|
|
|
| 26.12.2012, 08:06 | |
|
Автор, тут форум, а не учебник. Вся прорисовка - это лишь несколько методов класса Graphics, но они не помогут, если не знаешь сам язык, а если ты его знаешь, то с MSDN в руках можно решить любую проблему.
Для рисования графика функции может помочь класс GraphicsPath, в котором можно задать гладкую кривую по точкам.
0
|
|
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|
| 26.12.2012, 08:35 [ТС] | |
|
Вот именно! Тут форум. А не подскажите уважаемый, зачем форумы существуют в инете?!
И да, если бы я знал язык, тогда бы и не убивал драгоценное время на простые (как это кажется "умникам", которые сами ни хрена не знают, ну судя по предоставленным примерам по теме и исчерпывающим ответам) вопросы! ![]() Добавлено через 16 минут Что бы не занимать попусту место под пустые советы, можно хотя бы посмотреть мой пример программки в прикреплённом архиве, чуть выше в теме, всё существующее, придуманное для рисования графика, это не то что надо.
0
|
|
|
|
|
| 26.12.2012, 08:43 | |
|
Я изучал первый язык, когда мне было 7 лет, потом изучил еще пять языков без всяких форумов - просто по книжке или вообще без книжки, а по брошюре, где тупо перечислены функции языка, а у тебя есть возможность использовать MSDN и скачать сотню толстых томов в интернете или купить в магазине.
А запускать EXEшники непонятного происхождения я не буду. Если у вас есть вопрос - формулируйте его и мы ответим.
0
|
|
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|
| 26.12.2012, 09:18 [ТС] | |
|
Когда мне было уже 14 лет, в моей образцово-показательной школе №76, ещё не преподавали информатику, по этому я и не изучал программирование и языки, хотя тогда были уже ассемблер и бейсик. И даже стали появляться первые, персональные машины, типа "БК" и "Синклер"(ZX Spectrum).
Теперь (в моём возрасте) не очень легко даётся освоение всего нового, и в частности C#, хотя Autoit понял за неделю. P.S. По поводу запуска .exe файлов, насмешили Вы меня. Повторюсь, читать я умею, но всё что попадается, это очень не внятное, с примерами без комментариев к строкам, ну или оч. не подробными комментариями, которые можно было бы совсем не писать, пользы от них ноль. Книжку Герберта Шилдта "С# 3.0, 4.0 Полное руководство" начал по второму кругу. Это единственное (пока) что попалось из нормального и понятного.
0
|
|
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
|
| 26.12.2012, 09:23 | |
|
Есть Эндрю Троелсена книги. Тоже понятно пишет.
При желании глубже уйти в недра .NET - Джеффри Рихтер: CLR via C#.
0
|
|
|
|
|
| 26.12.2012, 09:24 | |
|
Не по теме: Собственно с БК-0010 я и начал, там был язык Фокал, позже бейсик. Могу порекомендовать книгу, это единственная, которую я использую: Pro C# 2008 and the .NET 3.5 Platform, Fourth Edition Здесь есть очень много примеров на многие темы, правда на английском. Со страницы 985 есть примеры работы с графикой.
0
|
|
|
4694 / 2702 / 734
Регистрация: 02.08.2011
Сообщений: 7,228
|
|
| 26.12.2012, 09:25 | |
|
просто копайся в System.Drawing, System.Drawing.2D (object explorer) + msdn
0
|
|
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|
| 26.12.2012, 10:02 [ТС] | |
|
Гос-да, спс за рекомендации по книгам. Буду читать, но практика обязательна, и тема не закрыта.
По прежнему хотелось бы увидеть пример кода, как рисовать на фоновой картинке, не стирая при перерисовке уже нарисованное. ![]() P.S.Сейчас начал читать про WPF, думаю это больше подходит для моих целей. Добавлено через 26 минут Отказался(пока) от WPF.
0
|
|
|
|
||||||
| 26.12.2012, 10:30 | ||||||
Далее можете написать свои методы для рисования, используя g.
1
|
||||||
|
0 / 0 / 0
Регистрация: 07.10.2012
Сообщений: 60
|
|
| 26.12.2012, 10:38 [ТС] | |
|
Doomer3D, Большое спасибо!
0
|
|
|
1057 / 864 / 195
Регистрация: 31.03.2010
Сообщений: 2,521
|
|
| 26.12.2012, 12:03 | |
|
Graphics - это наш мольберт с холстом(листом) и инструментами сразу.
Для того чтоб что-то нарисовать необходимо создать объект Graphics для указанного холста. Методы Paint дают e.Graphics привязанный к холсту, который на фоне вызвавшего контрола. В вашем случае необходимо создать свой собственный холст. Bitmap bmp = new Bitmap(width, heiht);//глобальная переменная чтоб рисунок сохранялся с каждым шагом Graphics g = Graphics.FromImage(bmp); //рисуем на нашем холсте что хотим //выводим рисунок при помощи PictureBox необходимо сместить график? применяем g.TranslateTransform(смещение по х, смещение по у); Эта функция как бы сдвигает рисунок относительно холста. и дорисовываем в конец холста новые данные. снова выводим наш холст Bitmap в PictureBox
1
|
|
|
|
||
| 26.12.2012, 12:20 | ||
0
|
||
| 26.12.2012, 12:20 | |
|
Помогаю со студенческими работами здесь
20
Нарисовать набор звёзд разного цвета, центры которых образуют окружность Выгрузка японских свечей на график Рисование квадратов разного размера, разного цвета и появляющихся в произвольных местах экрана Изобразить три вертикальные полосы разного цвета на экране, которые меняют свои цвета Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|