Прямолинейный многоугольник — это многоугольник , все стороны которого пересекаются под прямым углом . Таким образом, внутренний угол в каждой вершине равен либо 90°, либо 270°. Прямолинейные многоугольники являются частным случаем изотетических многоугольников .
Во многих случаях предпочтительнее другое определение: прямолинейный многоугольник — это многоугольник со сторонами, параллельными осям декартовых координат . Различие становится решающим, когда речь идет о наборах многоугольников: последнее определение означало бы, что стороны всех многоугольников в наборе выровнены по одним и тем же осям координат. В рамках второго определения естественно говорить о горизонтальных ребрах и вертикальных ребрах прямолинейного многоугольника.
Прямолинейные многоугольники также известны как ортогональные многоугольники . Другие используемые термины — изоориентированные , выровненные по осям и ориентированные по осям многоугольники . Эти прилагательные менее запутанны, когда многоугольники этого типа являются прямоугольниками , и термин выровненный по осям прямоугольник предпочтительнее, хотя ортогональный прямоугольник и прямолинейный прямоугольник также используются.
Важность класса прямолинейных многоугольников вытекает из следующего.
Прямолинейный многоугольник имеет ребра двух типов: горизонтальные и вертикальные .
Прямолинейный многоугольник имеет углы двух типов: углы, в которых меньший угол (90°) является внутренним по отношению к многоугольнику, называются выпуклыми , а углы, в которых больший угол (270°) является внутренним, называются вогнутыми . [1]
Выступ — это ребро, две конечные точки которого являются выпуклыми углами. Антивыступ — это ребро, две конечные точки которого являются вогнутыми углами. [1]
Прямолинейный многоугольник, который также является простым, также называется бездырочным, потому что у него нет отверстий — только одна непрерывная граница. Он обладает несколькими интересными свойствами:
Прямолинейный многоугольник может быть покрыт конечным числом квадратов или прямоугольников с ребрами, параллельными ребрам многоугольника (см. Покрытие многоугольника ). Можно выделить несколько типов квадратов/прямоугольников, содержащихся в определенном прямолинейном многоугольнике P : [1]
Максимальный квадрат в многоугольнике P — это квадрат в P , который не содержится ни в каком другом квадрате в P. Аналогично, максимальный прямоугольник — это прямоугольник, не содержащийся ни в каком другом прямоугольнике в P.
Квадрат s максимален в P , если каждая пара смежных ребер s пересекает границу P. Доказательство обеих сторон от противного:
Первое направление также верно для прямоугольников, то есть: если прямоугольник s максимален, то каждая пара смежных сторон s пересекает границу P. Второе направление не обязательно верно: прямоугольник может пересекать границу P даже по 3 смежным сторонам и все равно не быть максимальным, так как его можно растянуть по четвертой стороне.
Следствие: каждый максимальный квадрат/прямоугольник в P имеет по крайней мере две точки на двух противоположных сторонах, которые пересекают границу P.
Угловой квадрат — это максимальный квадрат s в многоугольнике P, такой, что по крайней мере один угол s перекрывает выпуклый угол P. Для каждого выпуклого угла существует ровно один максимальный (угловой) квадрат, покрывающий его, но один максимальный квадрат может покрывать более одного угла. Для каждого угла может существовать множество различных максимальных прямоугольников, покрывающих его.
Разделительный квадрат в многоугольнике P — это квадрат s в P, такой что P − s не связан.
Квадрат -континуатор — это квадрат s в многоугольнике P, такой, что пересечение границы s и границы P непрерывно. Максимальный континуатор всегда является угловым квадратом. Более того, максимальный континуатор всегда содержит выступ. Следовательно, число континуаторов всегда конечно и ограничено числом выступов.
Существует несколько различных типов континуаторов, в зависимости от количества содержащихся в них ручек и их внутренней структуры (см. рисунок). Балкон континуатора определяется как его точки, которые не покрыты никаким другим максимальным квадратом (см. рисунок).
Никакой квадрат не может быть одновременно и континуатором, и разделителем. В общих многоугольниках могут быть квадраты, которые не являются ни континуаторами, ни разделителями, но в простых многоугольниках этого не может быть: [1]
Существует интересная аналогия между максимальными квадратами в простом многоугольнике и узлами в дереве: континуатор аналогичен листовому узлу, а разделитель аналогичен внутреннему узлу.
Простейшим прямоугольным многоугольником является выровненный по осям прямоугольник — прямоугольник с 2 сторонами, параллельными оси x, и 2 сторонами, параллельными оси y. См. также: Минимальный ограничивающий прямоугольник .
Голигон — это прямоугольный многоугольник, длины сторон которого в последовательности представляют собой последовательные целые числа .
Прямолинейный многоугольник, не являющийся прямоугольником, никогда не является выпуклым , но может быть ортогонально выпуклым. См. Ортогонально выпуклый прямолинейный многоугольник .
Монотонный прямолинейный многоугольник — это монотонный многоугольник , который также является прямолинейным.
Рейсбука — это фрактал , полученный из последовательности прямолинейных многоугольников с интересными свойствами.
Большинство из них можно сформулировать и для общих полигонов, но ожидание более эффективных алгоритмов требует отдельного рассмотрения.
Особый интерес для прямолинейных многоугольников представляют задачи разложения заданного прямолинейного многоугольника на простые единицы - обычно прямоугольники или квадраты. Существует несколько типов задач разложения: