File:Closest pair of points.svg
Материал из Викисклада, хранилища свободных медиафайлов
Перейти к навигации
Перейти к поиску
Размер этого PNG-превью для исходного SVG-файла: 256 × 256 пкс. Другие разрешения: 240 × 240 пкс | 480 × 480 пкс | 768 × 768 пкс | 1024 × 1024 пкс | 2048 × 2048 пкс.
Исходный файл (SVG-файл, номинально 256 × 256 пкс, размер файла: 1 КБ)
Сведения о файле
Структурированные данные
Краткие подписи
Краткое описание
[править]ОписаниеClosest pair of points.svg |
English: Closest pair of points shown in red. |
Дата | |
Источник | Собственная работа |
Автор | Qef |
Другие версии | Bitmap version: file:ClosestPair.png |
Лицензирование
[править]Этот файл доступен на условиях Creative Commons CC0 1.0 Универсальной передачи в общественное достояние (Universal Public Domain Dedication). | |
Лица, связанные с работой над этим произведением, решили передать данное произведение в общественное достояние, отказавшись от всех прав на произведение по всему миру в рамках закона об авторских правах (а также связанных и смежных прав), в той степени, которую допускает закон. Вы можете копировать, изменять, распространять, исполнять данное произведение в любых целях, в том числе в коммерческих, без получения на это разрешения автора.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse |
Source code
[править]The SVG was generated by running the Lua program given below. It deliberately fails if the closest points would be overlapping in the image, because that would be confusing.
local WD, HT, NUM_POINTS = 256, 256, 16 local COLOR = { normal = '#000', closest = '#f00' } local RADIUS = 5 math.randomseed(os.time()) local P = {} for _ = 1, NUM_POINTS do P[#P+1] = { x = RADIUS + (WD - 2*RADIUS) * math.random(), y = RADIUS + (HT - 2*RADIUS) * math.random() } end -- Find closest pair, using naive algorithm. local closest_a, closest_b local min_dist for i, p in ipairs(P) do for j, q in ipairs(P) do if i ~= j then local dist = math.sqrt((p.x - q.x)^2 + (p.y - q.y)^2) if not min_dist or dist < min_dist then min_dist = dist closest_a, closest_b = i, j end end end end if min_dist < RADIUS then error("points on top of each other, run me again") end io.write('<?xml version="1.0" encoding="UTF-8" standalone="no"?>\n', '<svg svg="http://www.w3.org/2000/svg" version="1.0"', ' width="', WD, '" height="', HT, '">\n') for i, p in ipairs(P) do local color = COLOR.normal if i == closest_a or i == closest_b then color = COLOR.closest end io.write(' <circle cx="', RADIUS + p.x, '" cy="', RADIUS + p.y, '" r="', RADIUS, '" style="fill:', color, '"/>\n') end io.write('</svg>\n')
История файла
Нажмите на дату/время, чтобы увидеть версию файла от того времени.
Дата/время | Миниатюра | Размеры | Участник | Примечание | |
---|---|---|---|---|---|
текущий | 04:03, 22 июня 2009 | 256 × 256 (1 КБ) | Qef (обсуждение | вклад) | {{Information |Description={{en|1=Closest pair of points shown in red.}} |Source=Own work by uploader |Author=Qef |Date=2009-06-22 |Permission= |other_versions=Bitmap version: file:ClosestPair.png }} <!--{{ImageUpload|full}}--> [[Catego |
Вы не можете перезаписать этот файл.
Использование файла
Следующая страница использует этот файл:
Глобальное использование файла
Данный файл используется в следующих вики:
- Использование в ar.wikipedia.org
- Использование в de.wikipedia.org
- Использование в de.wikiversity.org
- Использование в en.wikipedia.org
- Использование в es.wikipedia.org
- Использование в fa.wikipedia.org
- Использование в fr.wikipedia.org
- Использование в ko.wikipedia.org
- Использование в nl.wikipedia.org
- Использование в ru.wikipedia.org
- Использование в sr.wikipedia.org
- Использование в uk.wikipedia.org