Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Andrey Romanov                       2:5052/13.10   29 Jul 2001  02:43:06
 To :  Sandro (Vladimir Uryvaev)
 Subject : Упрощение контура двумерного полигона
 -------------------------------------------------------------------------------- 
 
 28 Jul 01 20:47, Sandro (Vladimir Uryvaev) wrote to All:
 
  A>> Есть двумерный полигон как последовательность вершин. Hаложили на
  A>> битмап-карту (ячейка = находится в ней полигон или нет). После этого
  A>> отследили контур заполненной области этой карты, и получили другой
  SU> полигон,
  A>> который повторяет форму исходного, но в котором гораздо больше
  A>> вершин.
  SU> Куча
  A>> мелких отрезков перпендикулярных друг другу.
  A>> Hадо его упростить, что бы он по форме и по количеству вершин (или
  SU> отрезков)
  A>> был максимально близок к исходному.
  A>> Просьба поделиться мыслями, на эту тему.
 
  SU> Пришла мысль о скашивании линий.
 
  SU>   x | x | x | x          x | x | x | x   # - угол
  SU> #=======#---+-+-       #==____-+---+---
  SU>   o | o H x | x    ==>   o | o---x___x
  SU>  ---+---#=======#       ---+---+---+-==#
  SU>   o | o | o | o          o | o | o | o
 
  SU> Линия после преобразования так проходит?
  SU> тода можно находить такие ломаные, при замене которых на прямую
  SU> не потребовалось бы перекраски ни одной ячейки
  SU> это надо?
  SU> кстати, если ломаную 1-2-3 нельзя заменить на 1-3, это не значит, что
  SU> нельзя ломаную 1-2-3-4 заменить на 1-4
  SU> можно придумать что нибудь с перемещение узлов на +- 0.5 пиксела
 
  Опять изобретаем велосипед :-(
  Для человека с достyпом в интернет, это мягко говоря, некрасиво...
  Всего то ведь надо спросить любой поисковик о Curve/Polygon
 simplification/approximation.
 
  Идyщий ниже текст, цитата из статьи Garland'а.
       EUROGRAPHICS '99
       Multiresolution Modeling: Survey & Future Opportunities
       Michael Garland
       Computer Science Department, Carnegie Mellon University
       Pittsburgh, PA 15213, USA
       garland@cs.cmu.edu
 
 Perhaps the most widely used algorithm for curve simplification
 is a simple refinement algorithm, commonly referred
 to as the Douglas-Peucker algorithm. This algorithm begins
 with with some minimal approximation, normally a single
 line segment from the first to last vertex. This segment
 is split at the point on the original curve which is furthest
 from the approximation. Each of the two new subsegments
 can be recursively split until the approximation meets some
 termination criteria. This is evidently a rather natural algorithm
 for curve approximation, since it was independently
 invented by a number of people.
 
 Andrey
 
 --- GoldED 3.00.Beta1+
  * Origin:   (2:5052/13.10)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Упрощение контура двумерного полигона   Andrey   24 Jul 2001 23:37:20 
 Re: Упрощение контура двумерного полигона    Sandro (Vladimir Uryvaev)   28 Jul 2001 20:47:05 
 Упрощение контура двумерного полигона   Andrey Romanov   29 Jul 2001 02:43:06 
Архивное /ru.algorithms/32353b6378d6.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional