0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
1 | |
Как в делфи нарисовать множество точек?21.04.2009, 14:10. Показов 10021. Ответов 22
Метки нет (Все метки)
Здрасте вам! Мне нужно нарисовать множество точек на форме (штук 10). Координаты 3-мя способами ввести: с клавиатуры, рандомом и из файла. Спасибо! И если есть где-то литература по этой теме совсем для чайников, ткните меня туда носом. Искал - не нашел.
0
|
21.04.2009, 14:10 | |
Ответы с готовыми решениями:
22
Нарисовать на экране заданное множество точек как нарисовать Elipse в делфи 7 Как нарисовать квадрат в делфи? Как нарисовать график массива точек x[i]? |
3189 / 870 / 39
Регистрация: 29.12.2008
Сообщений: 952
|
|||||||||||
21.04.2009, 14:54 | 2 | ||||||||||
Чтобы поставить точку на форме, нужно просто закрасить пиксель определенным цветом. Это так делается (допустим, красным цветом точку с коорд. Х и Y):
как рисовать на канве в Delphi.
2
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
||||||
21.04.2009, 17:07 [ТС] | 3 | |||||
Спасибо! С этим разобрался. Вот точки бы пожирнее сделать. И у задачи этой продолжение есть: Из этих точек выбрать две различные точки так, чтобы окружности заданного радиуса с центрами в этих точках содержали внутри себя одинаковое количество заданных точек.
Добавлено через 34 минуты 34 секунды И еще. Когда пытаюсь вводить координаты точек с клавиатуры использую striggrid. В одну колонку ввожу координаты по Х в другую по У. И по нажатии кнопки, должны появляться точки.
Project Project1.exe raised exception class EConvertError with message '''is not a valid integer value'. Process stopped. Use step or run to continue. что это? подскажите
0
|
3189 / 870 / 39
Регистрация: 29.12.2008
Сообщений: 952
|
||||||
21.04.2009, 17:47 | 4 | |||||
В StringGrid нумерация начинается с нуля. Т.е. те серенькие клетки имеют индекс ноль. А ошибка эта потому что среди клеток StringGrida попались незаполненные и функция StrToInt не смогла их преобразовать. Я немного поправил код. Пусть на форме лежит StringGrid, с настройками ColCount:=3 и RowCount:=11.(скорей всего у тебя так и есть):
1
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
21.04.2009, 18:48 [ТС] | 5 |
И че было самому не догадаться? Спасибо огромное!
Добавлено через 57 минут 49 секунд А чтобы данные из файлп взять, чем и как лучше воспользоваться?
0
|
3189 / 870 / 39
Регистрация: 29.12.2008
Сообщений: 952
|
||||||
21.04.2009, 19:21 | 6 | |||||
Я бы так сделал: пусть имеем файл fail.txt, а в нем числа, например, (чтобы были точки (10,24), (23,19)...) такие:
Код
10 24 23 19 ...
1
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
21.04.2009, 19:24 [ТС] | 7 |
а можно этим же способом считывать не пары, а допустим, тройки, четверки и т.д. чисел? Когда доберусь до окружностей с центрами в этих точках, было бы удобно. И все таки пожирнее бы точки сделать. Что-то слышал про TPoint, но пользоваться им не умею...
0
|
3189 / 870 / 39
Регистрация: 29.12.2008
Сообщений: 952
|
|||||||||||
21.04.2009, 19:32 | 8 | ||||||||||
В таком варианте - да, в файле с проектом, но если он лежит не там, то всё равно можно его использовать файл, но прописывать его полное имя, например:
1
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
21.04.2009, 19:34 [ТС] | 9 |
Спасибо! Очень доступно объясняешь. Прочти мое предыдущее сообщение, я там исправил маленько
0
|
3189 / 870 / 39
Регистрация: 29.12.2008
Сообщений: 952
|
||||||
21.04.2009, 19:45 | 10 | |||||
Насчет точек пожирнее, даже не знаю. Точка по сути это и есть 1 пиксель. Настроек чтобы они больше были кажется нет. Наверно лучше сделать игру фона, чтобы их выделить - белые точки на черной форме, как-то так.
0
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
22.04.2009, 08:36 [ТС] | 11 |
А как мне в stringgrid на сереньких клетках подписи замутить?
Добавлено через 17 минут 36 секунд Еще пара вопросов есть. Мне нужно выбрать из этих точек две такие, чтобы окружности с центрами в этих точках содержали в себе одинаковое количество оставшихся точек. Рисовать окружности надо в этом же цикле от 1 до 10, да? Добавлено через 2 часа 9 минут 28 секунд И еще. Рисую окружности, с радиусами в этих точках, а они получаются закрашеными в цвет формы. Как их прозрачными сделать? чтобы было видно точку, вокруг которой она нарисована Добавлено через 1 час 11 минут 2 секунды Ух ты! Сам разобрался! А надо было всего лишь поменять очередность рисования кружков и точек
0
|
3189 / 870 / 39
Регистрация: 29.12.2008
Сообщений: 952
|
||||||
22.04.2009, 09:46 | 12 | |||||
Так же как и на беленьких. Просто обращаешься к нулевым индексам:
А чтобы решить задачу, полезно нарисовать всё на бумаге и прикинуть как это сделать.
0
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
22.04.2009, 10:11 [ТС] | 13 |
В массив Tpoint я уже переделал. Как решать тоже придумал. Надо наверна взять радиус одной окружности и сравнивать его с расстояниями от центра этой окружности до остальных точек. Если расстояние до точки меньше радиуса, то значит точка внутри окружности. Потом переходить ко второй окружности. И так же проверять. А вот как это в коде написать? Здесь-то по-любому какой-то цикл нужен, да? или вручную перебирать. Я даже формулу нашел, по которой расстояние между точками находить
Добавлено через 9 минут 49 секунд И еще. Что надо поменять, чтобы окружности не были залиты цветом?
0
|
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
|
|
22.04.2009, 12:26 | 14 |
0
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
22.04.2009, 12:29 [ТС] | 15 |
0
|
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
|
||||||
22.04.2009, 12:44 | 16 | |||||
Да хоть и Ellipse, если не дать команду залить, то с чего они залитыми будут?
Вот пример жирных точек.
1
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
||||||
22.04.2009, 12:52 [ТС] | 17 | |||||
0
|
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
|
||||||
22.04.2009, 14:15 | 18 | |||||
Чтобы эллипсы не заливались, надо выбрать стиль bsClear.
Вот процедурка рисует 10 точек и 2 окружности.
1
|
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 11
|
|
23.04.2009, 08:43 [ТС] | 19 |
А с остальной задачей мне поможете? "... выбрать две точки так, чтобы окружности с центрами в этих точках, содержали в себе одинаковое количество заданных точек.
0
|
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
|
||||||
23.04.2009, 11:13 | 20 | |||||
Что-то поговорку вспомнил. Дайте воды попить, а то так есть хочется, что переночевать негде.
Вот посмотри.
2
|
23.04.2009, 11:13 | |
23.04.2009, 11:13 | |
Помогаю со студенческими работами здесь
20
Множество. (Делфи 7) Множество точек Множество точек Множество точек и круг Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |