![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с расчетом координат.
Ssergy © (2002-11-07 18:32:00)Мастера, помогите пожалуйста.
Есть замкнутый контур, заданный точкам.
Необходимо получит контур, находящийся внутри данного, на расстоянии k от каждой из сторон. (т.е надо получить пропорционально уменьшеный контур внутри данного).
Хоть какие - либо идеи please.
Заранее спасибо.
Ssergy (2002-11-08 09:58:00) [21]А как найти центр совершенно произвольного контура???
Ketmar (2002-11-08 09:45:00) [22]господа, вы что, с дубов попадали? я же уже ответил!
>Если уменьшать координаты контура на необходимую величину, новый контур не будет находиться внутри заданного, он сместится, а необходимо, что-бы он находился внутри.
вы чего, совсем думать не желаете? а принять за начало координат центр вашего первичного контура моральные принципы не позволяют? начало координат есмь штука неприкосновенная, да?
единственно, мой ответ подразумевал, что "контур" - это "полигон". причем неважно, какой: convex или concave. чем отличается полигон от фигуры Alex"а44, надеюсь, все знают.
Satanas Nobiscum! 08-Nov-XXXVII A.S.
Alex44 (2002-11-08 01:59:00) [23]Esli contur ne vypuklyj, ne ochen" ponyatno, chto est" "vnutri".
1 2
__________
\ /
\ /
\ /
\ /
\/
/\
/__\
3 4
Esli eto resheno (skazhem, contur orientirovan), to ostal"noe elementarno: kazhdaya pryamaya sdvigaetsya po perpendiculyaru na nuzhnoe rasstoyanie (sm. freshman calculus), a potom vershiny nahodyatsya, kak tochki peresecheniya sosednih reber (linejnaya algebra).
Ssergy (2002-11-07 23:25:00) [24]ZrenBy пожалуйста, если можно поподробнее.
По моему в точке x1,y1 метод работать не будет, т.к вектор- бисектриса буде напралена вне контура.
/------
/ |
\ |
\ |
\ |
(x1,y1). |
/ |
/ |
/_______|
\-------/
LestatRE (2002-11-07 21:24:00) [25]Example
__________
/\ /\
/ \ / \
/ \ / \
/ \ / \
/________\/________\
\ /\ /
\ / \ /
\ / \ /
\ / \ /
\/________\/
Пересечение прямых внутри фигуры вызывает центральную точку.
Если отмерить точки на этих прямых, равноудаленные внутрь
от границ многоугольника и соединить их между собой прямыми, то получится необходимый результат : фигура, меньшая исходной на значение величины k. Однако действует этот способ не везде. В остальном, я думаю, можно разобраться .
ZrenBy (2002-11-07 20:30:00) [26]Выбираешь систему координат.
Берешь точку (x1,y1)
находишь два вектора из нее к соседним точкам
определяешь вектор-биссектрису к расчетной точке
находишь длину этого вектора, так чтобы расчетная точка
была на заданном удалении
Определяешь координаты расчетной точки.
Фу. кажется так, только формулы надо вывести.
Ssergy (2002-11-07 20:23:00) [27]Если уменьшать координаты контура на необходимую величину, новый контур не будет находиться внутри заданного, он смститься, а необходимо, что-бы он находился внутри.
Ketmar (2002-11-07 19:31:00) [28]элементарно, Ватсон. %-) уменьшить размер исходного контура на необходимую величину.
Satanas Nobiscum! 07-Nov-XXXVII A.S.