![]() |
![]() |
|
Построение прямой по точкам C# | ☑ | ||
---|---|---|---|---|
0
micha
01.11.09
✎
21:24
|
Прошу помощи в решении следующей задачи,
Из нижнего центра экрана (формы) мне нужно нарисовать линию (прямую по точкам), причем условия следующие. Экран допустим 300x300 Начало рисования линии равно A(150,300) По экрану (форме) щелкая мышью вызываю событие Form1_MouseDown, которое передает процедуре risovanie(double x2, double y2) напровление (вектор) прямой которую мне нужно нарисовать. Т.Е Form1_MouseDown предает вектор напровления прямой которая будет рисоваться например пока не кончиться форма. private void Form1_MouseDown(object sender, MouseEventArgs e) { sovanie(e.X, e.Y); } private void risovanie(double x2, double y2) { } Сложность задачи в том что известные мне методы построения базируються на постороение прямой по функции извесным двум точкам, начальной и конечной. У меня же проблема в том что конечная точка не известна в момент посторения прямой. Щелкая по экрану мы лишь задаем напровление построения обьекта. А в момент построения обьекта будет постоянно проверяться условие на границы формы и на наличие другого обьекта в области построения прямой. |
|||
1
H A D G E H O G s
01.11.09
✎
21:27
|
Я тебя не понял.
|
|||
2
micha
01.11.09
✎
21:30
|
Что именно не понятно? Нужно нарисовать прямую, по точкам. Графики по точкам задаються функцией, задаеться шаг определенный, затем все это выводиться на экран. Проблема в том что я немного затупил, создовая функцию. Прошу помощи.
|
|||
3
micha
01.11.09
✎
21:34
|
По сути в задаче известна начальная точка, и вектор напровления. Я не нашел в google описания данного алгоритма. Так же поискал задачи свои, когдая учил в универе. На Pascal я в свое время строил такие вещи по 2-м точкам. Сдесь 2-й точки нет, Есть вектор.
|
|||
4
H A D G E H O G s
01.11.09
✎
21:40
|
как дикость:
1) Перейти в полярные координаты 2) Увеличить величину p до бесконечности 3) Перейти в Декартовы обратно... |
|||
5
H A D G E H O G s
01.11.09
✎
21:40
|
||||
6
ShoGUN
01.11.09
✎
21:41
|
(4) Нафига? :) Вектор-то как задан?
|
|||
7
micha
01.11.09
✎
21:42
|
я ссылок могу куча надовать, я прошу конкретного решения конкретной проблемы
|
|||
8
H A D G E H O G s
01.11.09
✎
21:42
|
Правда, я не знаю, как себя ведет Холст (Canvas) в С шарпе, в Дельфи бесконечно большие координаты покатят
|
|||
9
Дарлок
01.11.09
✎
21:42
|
||||
10
H A D G E H O G s
01.11.09
✎
21:43
|
(6) У него есть отрезок, по 2-м точкам, его надо продолжить до конца окна (холста), сделать "луч"
|
|||
11
ShoGUN
01.11.09
✎
21:47
|
(10) Не судьба уравнение прямой заюзать? :) Потом просто найти точку, где прямая пересекается с границей канвы(таких по идее 2, нужно выбрать одну из них) и использовать эту точку для построения.
|
|||
12
ShoGUN
01.11.09
✎
21:47
|
границей холста, чтоб вас всех ))
|
|||
13
H A D G E H O G s
01.11.09
✎
21:54
|
(11) Полярные координаты круче!
|
|||
14
ShoGUN
01.11.09
✎
21:58
|
(13) Черт, и не поспоришь толком!)
|
|||
15
micha
02.11.09
✎
07:27
|
Есть еще мысли по решению данной проблемы?
|
|||
16
Rie
02.11.09
✎
07:35
|
(12) А в чём проблема-то?
Учебник геометрии - там есть уравнение прямой. Учебник алгебры - расскажет о методах решения систем линейных уравнений с двумя неизвестными. |
|||
17
ShoGUN
02.11.09
✎
07:43
|
(15) Тебе уже две правильных мысли привели. Если ты не знаешь азы аналитической геометрии из школьной программы - чего ты от нас-то хочешь?
|
|||
18
dk
02.11.09
✎
07:44
|
(15) Что ты под вектором-то понимаешь? и откуда его берешь?
|
|||
19
fellow
02.11.09
✎
07:45
|
Координаты всех точек, через которые пройдёт линия, можно получить по алгоритму Брезенхема, после чего проверить эти точки на принадлежность границе окна или границе другого объекта. Получив требуемую точку, можно уже рисовать линию от начальной до конечной.
|
|||
20
Rie
02.11.09
✎
07:47
|
(19) Зачем получать _все_ точки, если можно легко и непринуждённо найти граничные точки из уравнения?
|
|||
21
fellow
02.11.09
✎
07:48
|
(20) Очевидно, что топикстартер не хочет простого решения. Пусть решает тупо, в лоб.
|
|||
22
ShoGUN
02.11.09
✎
07:50
|
(21) Это ОЧЕНЬ тупо :) Прямая задается двумя точками, нафига больше-то?
|
|||
23
fellow
02.11.09
✎
07:51
|
(22) Ну и зачем вы с (20) взяли и всю малину обоср.. испортили :о)
|
|||
24
DrZombi
гуру
02.11.09
✎
07:52
|
Походу автор хочет реализовать 3Д продукт :)
|
|||
25
supremum
02.11.09
✎
07:54
|
(22) согласен. задача как раз в том что бы найти эти две точки.
а мне больше нравятся параболические координаты :) |
|||
26
ShoGUN
02.11.09
✎
07:55
|
(25) "Нет уж. Лучше вы к нам!"(с)
:) |
|||
27
micha
02.11.09
✎
08:02
|
Из учебника геометрия - Любой вектор можно задать началом, и любой точкой в пространстве которая лежит на нем
|
|||
28
supremum
02.11.09
✎
08:03
|
если векторно то
r=r0+v*t параметрическая форма задания прямой где r - радиус вектор r0 - вектор сдвига v - вектор направления координаты можно будет узнать просто по кооффициентам соответствующих орт. если в декартовых координатах то получаем (x*i,y*j)=(x0*i,y0*j)+(v*i,v*j)*t, где i, j орты |
|||
29
micha
02.11.09
✎
08:04
|
мне по суте надо построить этот вектор (забегая в перед, этот вектор является траекторией движения тела)
|
|||
30
dk
02.11.09
✎
08:07
|
(27) капец, двоишник
Уравнение прямой вывести не можешь из вектора? |
|||
31
supremum
02.11.09
✎
08:07
|
(29) v=dr/dt => v~(r-r0) - если движение равномерное по прямой
|
|||
32
Rie
02.11.09
✎
08:08
|
(29) Построить вектор по концам отрезка?
Вычти из координат второй точки координаты начала - вот тебе и координаты вектора. По вектору получаешь уравнение прямой (его тебе уже привели в (28)). А теперь - о, чудо! границы экрана - это тоже прямые. С уравнениями x=const и y=const. Находишь точки пересечения твоей прямой с границами экрана - и вперёд. Или ты хотел чего-то другого? |
|||
33
ShoGUN
02.11.09
✎
08:09
|
(27) Уравнение прямой по двум точкам берешь из того же учебника:
http://upload.wikimedia.org/math/d/3/8/d38db0a192f94ce9fb7902481a22cd00.png Находишь пересечение с краями холста, для этого решаешь систему. По полученной точке и одной из первоначальных - стоишь свой луч. |
|||
34
supremum
02.11.09
✎
08:10
|
r=r0+(r1-r0)*t где r1 -координаты клика мыши, t - параметр
|
|||
35
micha
02.11.09
✎
09:44
|
Как (28) и (32) реализовать программно?
|
|||
36
Rie
02.11.09
✎
09:54
|
(35) "Я ху.ею, дорогая редакция..."
Расскажи лучше, а как ты попытался реализовать это программно, что у тебя получилось, а что - нет. (Тут готовы помочь, но выполнять за тебя домашние задания - как то настроения нет). |
|||
37
micha
02.11.09
✎
10:01
|
Я тоже фигею
То что мне нужно описано выше, как сделать информацию пока получил только общию Повторяю что известна начальная точка, и точка на векторе. Так же известны координаты границ. Цикл (Условие проверка на наличие обьекта и границ формы) Шаг = Шаг + 1; Сдесь дожна быть некая формула типа Y(x) = (тара -ра) НарисоватьТочку(X,Y); КонецЦикла Вопрос (тара - ра) -????????????????????? |
|||
38
micha
02.11.09
✎
10:02
|
(x*i,y*j)=(x0*i,y0*j)+(v*i,v*j)*t, где i, j орты
В этом виде подставить нельзя |
|||
39
Filin396
02.11.09
✎
10:03
|
(16) Я бы добавил еще учебник русского языка. А то "напровление", "мне по суте","только общию"...
|
|||
40
Rie
02.11.09
✎
10:06
|
(38) Чтобы преобразовать из этого вида в код - необходимо подключить brain.dll.
Какие у тебя есть идеи по программной реализации этого? Хотя бы одна? |
|||
41
H A D G E H O G s
02.11.09
✎
10:10
|
(37) Убери руки с клавиатуры, включи мозг.
Самое примитивное - имхо - перевод "точки вектора" в полярные координаты, величение величины p и перевод новой "точки вектора" в декартовы... З.Ы. Не забудь, что началом координат у тебя будет не точка (0,0), а точка "начала вектора", "Начало рисования линии равно A(150,300)" |
|||
42
Salimbek
02.11.09
✎
10:11
|
(0) Чей-та я не верю в твои 27 лет, скорее в 86-й год...
|
|||
43
micha
02.11.09
✎
10:11
|
Да и еще, надо не забывать что координаты у компьютера перевернутые
точка (0,0) находиться в верхнем левом углу |
|||
44
Rie
02.11.09
✎
10:12
|
(41) В полярные - не обязательно. Всё прекрасно считается и в декартовых.
А строить можно уже упоминавшимся здесь Брезенхемом. |
|||
45
Rie
02.11.09
✎
10:13
|
(43) Вот это - абсолютно ни на что не влияет.
|
|||
46
Rie
02.11.09
✎
10:14
|
(38) (x*i,y*j)=(x0*i,y0*j)+(v*i,v*j)*t - это то же самое, что
x = x0+v*t; y = y0+v*t; |
|||
47
H A D G E H O G s
02.11.09
✎
10:15
|
(43) Для метода "полярные координаты" - монопенисуально.
|
|||
48
H A D G E H O G s
02.11.09
✎
10:15
|
(44) Просто там - готовые формулы, думать не надо.
|
|||
49
supremum
02.11.09
✎
10:16
|
Блин Поправка
x = x0+vx*t; y = y0+vy*t; |
|||
50
грязный
02.11.09
✎
10:21
|
А в чем проблема??
Координата нижнего правого угда: int cx = ClientSize.Width; int cy = ClientSize.Height; Координата положения мыши: private void Form1_MouseMove(object sender, MouseEventArgs e) { mX = e.X; center.Y = e.Y; } |
|||
51
грязный
02.11.09
✎
10:22
|
Вместо center.Y = e.Y; надо mY = e.Y;
|
|||
52
micha
02.11.09
✎
10:25
|
Я в свое время много таких задач, решал по моделированию физических процессов.
Там все было просто задаешь функцию (формулу). Задаешь приращение (допустим OX) и получаешь OY. Рисуешь точку. Чем меньше шаг тем точнее график, тем дольше расчет. Я пытаюсь к этой задаче подойти так же. Мне не понятно что нужно прирощать OX или Вектор. Я думаю что добавлять вектор и рассчитывать координаты OX OY это было бы более правильно (49) x = x0+vx*t; y = y0+vy*t; разве решает мою проблему? x0,y0 - известны vx vy - ? t - ? Какое значение можно взять за приращение ? наверное t ? |
|||
53
supremum
02.11.09
✎
10:25
|
(52)
из (49) => y=y0+[(y1-y0)/(x1-x0)]*(x-x0) x, y - координаты y0, x0 - начала рисования y1 x1 - куда мышка кликнула |
|||
54
micha
02.11.09
✎
10:26
|
да (52) не подходит, я это писал в самом начале, по условию неизвестнf координата конца прямой
|
|||
55
supremum
02.11.09
✎
10:28
|
(54)
из (31) => vx=x1-x0 vy=y1-y0 +граничные условия 0<=y<=ymax 0<=x<=xmax ymax и xmax высота и ширина формы |
|||
56
micha
02.11.09
✎
10:29
|
извеняюсь (53) не подходит
y=y0+[(y1-y0)/(x1-x0)]*(x-x0) x, y - координаты y0, x0 - начала рисования y1 x1 - куда мышка кликнула |
|||
57
micha
02.11.09
✎
10:31
|
Хорошо, Что тако t,
Граничное условие еще раз повторяю не известно (на пути движения обьекта может появиться другой обьект который изменит траекторию) |
|||
58
Rie
02.11.09
✎
10:31
|
(52) Уравнение прямой известно?
А координаты конца прямой - это те точки, удовлетворяющие этому уравнению, у которых x=0 или x=300, или же y=0 или y=300. Подставляешь эти 0 и 300 в уравнение прямой и получаешь координаты конца. Что именно подставлять - можно определить заранее, сравнивая x0 с x1, y0 с y1. |
|||
59
Rie
02.11.09
✎
10:33
|
(57) t - просто некоторая (математическая) переменная. И не более.
Для построения прямой на экране - почитай алгоритм Брезенхема. |
|||
60
micha
02.11.09
✎
10:34
|
Можно конечно тупо проверять точки из 0 .. 300 лежат ли они на прямой, но это все лишнии расчеты и тормоза программы. я хочу это избежать.
|
|||
61
грязный
02.11.09
✎
10:35
|
а сколько промежуточных точек будет? Может graphics.DrawBezier(Pen,point,point,point,point); подойдет?
|
|||
62
supremum
02.11.09
✎
10:36
|
(60) так в чем задача? найти точки пересечения нескольких прямых?
|
|||
63
micha
02.11.09
✎
10:37
|
Все таки разве нельзя задать некую формулу, по тем начальным условиям которые я дал в самом начале. Затем выводя точку проверять на наличие объекта в данной точке и границы формулы.
(61) Отрезков может быть сколь угодно - все зависит от размера шага |
|||
64
Ненавижу 1С
гуру
02.11.09
✎
10:37
|
найди уравнение прямой по 2 точкам
найди пересечения ее с прямыми границы, те точки пересечения, которые будут лежать на границе области, и будут концами вашего отрезка |
|||
65
Rie
02.11.09
✎
10:39
|
(63) Ты (33) внимательно прочитал?
|
|||
66
micha
02.11.09
✎
10:41
|
(62)
Вывести объект который будит двигаться по траектории (прямой) Таких объектов в форме будет дофига. Все они хаотично двигаются, сталкиваются, изменяют траекторию движения (65) я это внимательно прочитал, как мне это программно выразить? |
|||
67
грязный
02.11.09
✎
10:42
|
Первый клик - рисует прямую из угла в место клика.
Второй клик - рисует гладкую кривую из угла в место второго клика, при этом кривая проходит через место первого клика. И так далее. Тебе это нужно, или я не догоняю? |
|||
68
micha
02.11.09
✎
10:43
|
(67)
нет. не это. клик это направление в которое выстрелит пушка ядром. что на пути будет ядра то и разлетиться |
|||
69
supremum
02.11.09
✎
10:44
|
я понял, задача об упругом столкновении :)
|
|||
70
supremum
02.11.09
✎
10:45
|
(68) а масса и форма ядра учитыватся?
|
|||
71
micha
02.11.09
✎
10:45
|
ДА типо того. Я пишу поигрулену. Хочу что бы объекты двигались правильно (с точки зрения физики)
|
|||
72
micha
02.11.09
✎
10:45
|
масса и форма пока не учитываеться
|
|||
73
supremum
02.11.09
✎
10:46
|
тогда смотри механику (точнее кинематику твердого тела) упругое столконовение
|
|||
74
Rie
02.11.09
✎
10:46
|
(66) _Что именно_ тебе нужно выразить программно?
Тебе нужно на каждом шаге проверять, не столнулись ли с другим объектом или с краем экрана? Ну так и задавай для каждого объекта текущие координаты x, y, а также вектор направления dx, dy. На каждом шаге x += dx; y += dy; и проверяй, не столкнулись ли с кем. А ещё лучше - первым проходом определи x1, y1 для всех объектов, и проверь, а не пересекаются ли отрезки ((x,y),(x1,y1)) для каких-либо объектов. |
|||
75
YauheniL
02.11.09
✎
10:47
|
А если так попробовать: делаешь клик мышкой, есть точка в стороне от прямой. Определяешь проекцию этой точки на свою прямую. Есть вторая точка, определяешь длину своего вектора, строишь прямую... кликаешь второй раз: если проекция точки попадает на "пустое место", повторяешь описанное, иначе DoNothing()
|
|||
76
micha
02.11.09
✎
10:48
|
Народ, реально уже весь инет перерыл для поиска решения данного примитивного куска.
(75) Второй раз кликать не надо. надо сделать с первого раза |
|||
77
Andry888
02.11.09
✎
10:49
|
(0) ну есть простая формула y=k*y+b, где b=150 (середина экрана), далее
k=(x-150)/y, где x=f(Xmouse) y=f(Ymouse)... подставляешь в простую формулу коэффициент k+ в y подставляешь высоту экрана и находишь x... |
|||
78
Andry888
02.11.09
✎
10:50
|
(77) ой формула X=k*y+b...
|
|||
79
Rie
02.11.09
✎
10:50
|
(76) Говорю же - ищи brain.dll, без которой эта задача в принципе неразрешима.
|
|||
80
supremum
02.11.09
✎
10:53
|
как вариант смотри http://uc.jinr.ru/mirea/classmex/gl_mex_5.pdf
|
|||
81
грязный
02.11.09
✎
10:53
|
на данный момент у тебя чтото реализовано? ядро вылетает вообще?
|
|||
82
Lama12
02.11.09
✎
10:53
|
(0)Мне б твои проблемы... По вектору находишь коэффициенты в уравнении прямой, а потом строишь прямую из любой точки путем смещения координат.
Задачка для 8 класса школы. |
|||
83
Rie
02.11.09
✎
10:54
|
Нет, вот так посмотришь - какой же я был сволочью, когда студентам давал задачу за одну пару броуновское движение изобразить на экране...
|
|||
84
YauheniL
02.11.09
✎
10:55
|
(76) Тогда еще проще: процедура будет с одной итерацией
|
|||
85
micha
02.11.09
✎
11:14
|
Вы (79) крутой спец, с опытом, студентов учили чему то. А на конкретную задачу так и не ответили. Посмотри туда почитай это - это не ответ!
|
|||
86
supremum
02.11.09
✎
11:17
|
(85) самый простой вариант рассмотреть систему точечных частиц. тогда достаточно будет взять два уравнения движения - r1(t), r2(t). Далее взять, если в момент времени t траектории пересекаются, посмотреть их угол соударения, и под тем же углом их развести
|
|||
87
supremum
02.11.09
✎
11:19
|
а вообще, с наскоку, не зная механики, не зная математики, достаточно сложно будет.
|
|||
88
micha
02.11.09
✎
11:23
|
Я на время t заморачиваться не хочу, еденицей времени будет элементарная задержка в цикле потока delay(200)
|
|||
89
micha
02.11.09
✎
11:24
|
Не ужели не кто не решал подобную проблему?????????
|
|||
90
Rie
02.11.09
✎
11:26
|
(85) На конкретную задачу я могу ответить вполне конкретным кодом.
Но - не хочу. Поскольку вся необходимая информация Вам уже была дана. В частности, в (33), (74), (80). Дальше можно сделать одно из двух - либо написать _вместо Вас_ код, который Вашу задачу решает (вот только зачем это надо); либо убедить Вас, что надо и своей головой чуток думать (вот как это сделать - не представляю). |
|||
91
bvn13
02.11.09
✎
11:29
|
(0) все не читал, но...
насколько помню школьный курс алгебры и геометрии, для построения прямой достаточно получить функцию y(x), а потом уже простой цикл для x, вычисляем для этого х у и ставим в координаты (х,у) точку... на экране совокупность этих точек и будет прямая... |
|||
92
Andry888
02.11.09
✎
11:31
|
(89) тебе уже сто вариантов предложили, а ты все ждешь когда на блюдичке принесут...
|
|||
93
грязный
02.11.09
✎
11:31
|
(0) ты можешь для начала сделать чтобы просто "ядро" летало по форме и отскакивало от краев формы? Если да, то не понятно в чем проблема.
|
|||
94
micha
02.11.09
✎
11:32
|
(85) на самом деле я с вами не согласен,
то что я от вас прошу, это то что я не могу найти. Подсказав мне решение (правильное) - сформирует в мозгу алгоритм решения. И в дальнейшем при возникновении данной проблемы этот алгоритм будет использован. А то что вы сказали что (33), (74), (80) - это решение, обсалютно не факт. (92) Да я жду от вас решения |
|||
95
Mort
02.11.09
✎
11:35
|
Т.е. на форме точка которая с определенной скоростью рисует линию и текущее направление можно задать нажатием мышки?
В пятом классе на бэйсике писали, автор не позорься. |
|||
96
Torquader
02.11.09
✎
11:36
|
Автору непомешает почитать учебник компьютерной графики каких-нить "лохматых" годов, где обсуждаются вопросы рисования прямой линии по точкам с максимальной быстротой - там можно найти ответ на поставленный вопрос.
Кратко можно сказать так: Есть точка начала A и точка, задающая вектор B. Нужно нарисовать луч AB. При этом, сначала определяем уравнение прямой AB и находим точки пересечения этой прямой с горизонтальными осями (X=0 и X=MaxScreen) и вертикальными осями (Y=0 и Y=MaxScreen) потом определить, какая точка нам нужна (то есть встретится ранее и на нужном нам луче AB, а не на луче BA). После этого мы имеем координаты двух точек A и E (найденная точка пересечения) по которым нужно провести прямую. Теперь определяем угол наклона прямой - если он меньше 45 градусов, то перебор точек ведём по горизонтальной оси, а по вертикальной проставляем из уравнения, если же он больше 45 градусов, то проставляем точки по вертикальной оси (каждую), а по горизонтальной ставим из уравнения. Получаем нашу замечательную прямую. |
|||
97
Rie
02.11.09
✎
11:42
|
(94) Алгоритм простой:
Из курса физики известно, что движущаяся в плоскости материальная точка характеризуется 4-мя параметрами: координатами (x,y) и импульсом (px,py). (Поскольку массы пока не рассматриваем, импульс можно заменить на скорость (vx,vy). Это ляжет в основу класса МатериальнаяТочка. По данным двум точкам (начальной и куда мышью щёлкнули) и уравнений из курса геометрии определяем вектор скорости (vx,vy). Далее за каждый шаг (единицу времени, выбранную Вами) изменяем координаты точки на vx,vy и смотрим, не врезались ли куда при этом. Если не врезались - отрисовываем точку. Если врезались - изменяем vx,vy в соответствии с законами механики для упругого столкновения. Вот теперь - какие _конкретно_ вопросы у Вас есть? Или же, если я неверно понял стоящую перед Вами задачу, - сформулируйте _корректно_ эту задачу. Если сложности вызывает реализация именно на C# - то _какие именно_ сложности? |
|||
98
Andry888
02.11.09
✎
11:52
|
(94) я тебе его привел...
|
|||
99
micha
17.11.09
✎
09:51
|
Все ответы приведенные выше не помогли мне.
Решение проблемы на языке Delphi begin t:=0; v0:= 1; repeat x:= x1+v0*t*(x2-x1)/sqrt( (x2-x1)*(x2-x1)+(y2 -y1)*(y2 -y1)); y:= y1+v0*t*(y2-y1)/sqrt( (x2-x1)*(x2-x1)+(y2 -y1)*(y2 -y1)); Form1.Image1.Left:= round(x); Form1.Image1.Top:= round(y); inc(t); until ((x < 0) or (y < 0) or (x > form1.Panel1.Width - form1.Image1.Width)or(y > form1.Panel1.Height - form1.Image1.Height)); PS: Спасибо за помощь Георгию (физику из Челябинска) Физмат - Форева!!!!!!!!!!!!!!!!!! |
|||
100
Нуф-Нуф
17.11.09
✎
09:52
|
100
|
|||
101
Rie
17.11.09
✎
10:03
|
(99) Приятно и радостно видеть тему "Построение прямой по точкам C#" в сочетании с "Решение проблемы на языке Delphi".
А вот "Все ответы приведенные выше не помогли мне" - означает, что ты думать совсем не умеешь. Поскольку в (99) просто расписано _чуть_ более подробно решение из (49). |
|||
102
ЗлобнийМальчик
17.11.09
✎
10:12
|
боже мой, в (0) клинический идиот какой то...
на 100 постов рисование прямой |
|||
103
kitt
17.11.09
✎
10:16
|
(102) меня больше порадовало описание задачи:
...нарисовать линию между двумя точками.. при том что ... " проблема в том что конечная точка не известна в момент посторения прямой ". Тоесть в конечном итоги необходимо нарисовать прямую между одной точкой. Прям как "хлопок одной ладонью" в Дзене )) |
|||
104
ЗлобнийМальчик
17.11.09
✎
10:18
|
(103) а как Вам понравился "нижний центр формы"?
|
|||
105
Rie
17.11.09
✎
10:19
|
(102) Не 100 постов, а 17 дней.
|
|||
106
ShoGUN
17.11.09
✎
10:23
|
Паноптикум... Челябинские физики настолько суровы, что даже таких долдонов могут научить рисовать прямые в C#.
|
|||
107
ЗлобнийМальчик
17.11.09
✎
10:25
|
(106) попрошу заметить - в дельфях, а не в С#
|
|||
108
forforumandspam
17.11.09
✎
10:27
|
(0) Ты точно в институте учился?
|
|||
109
ShoGUN
17.11.09
✎
10:29
|
(107) А, пардон :) Действительно, в дельфях...
|
|||
110
Жан Пердежон
17.11.09
✎
10:49
|
сабж - одна из лаб предмета "Компьютерная графика" по специальностям "Прикладная информатика", "Программное обеспечение" и "Информационные системы в экономике". По "резиновая нить" и "брезенхем" вполне можно было нагуглить уже готовое решение.
|
|||
111
0xFFFFFF
17.11.09
✎
10:50
|
sovanie(e.X, e.Y);
кхм... Сование :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |