<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ar">
	<id>https://3rabica.org/index.php?action=history&amp;feed=atom&amp;title=%D9%82%D8%A7%D9%84%D8%A8%3ALocation_map%2Fmodulo_math_details</id>
	<title>قالب:Location map/modulo math details - تاريخ المراجعة</title>
	<link rel="self" type="application/atom+xml" href="https://3rabica.org/index.php?action=history&amp;feed=atom&amp;title=%D9%82%D8%A7%D9%84%D8%A8%3ALocation_map%2Fmodulo_math_details"/>
	<link rel="alternate" type="text/html" href="https://3rabica.org/index.php?title=%D9%82%D8%A7%D9%84%D8%A8:Location_map/modulo_math_details&amp;action=history"/>
	<updated>2026-06-05T22:19:44Z</updated>
	<subtitle>تاريخ التعديل لهذه الصفحة في الويكي</subtitle>
	<generator>MediaWiki 1.43.7</generator>
	<entry>
		<id>https://3rabica.org/index.php?title=%D9%82%D8%A7%D9%84%D8%A8:Location_map/modulo_math_details&amp;diff=123610&amp;oldid=prev</id>
		<title>عبد العزيز: بوت: إصلاح أخطاء فحص أرابيكا من 1 إلى 104</title>
		<link rel="alternate" type="text/html" href="https://3rabica.org/index.php?title=%D9%82%D8%A7%D9%84%D8%A8:Location_map/modulo_math_details&amp;diff=123610&amp;oldid=prev"/>
		<updated>2023-06-29T13:58:55Z</updated>

		<summary type="html">&lt;p&gt;بوت: إصلاح أخطاء فحص أرابيكا من 1 إلى 104&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحة جديدة&lt;/b&gt;&lt;/p&gt;&lt;div&gt;For a map using an [[إسقاط متساوي المستطيلات]] which does not cross +/-180 longitude, or +/-90 latitude, the following expressions can be used:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;x = 100*(&amp;#039;&amp;#039;long&amp;#039;&amp;#039; - &amp;#039;&amp;#039;left&amp;#039;&amp;#039;)/(&amp;#039;&amp;#039;right&amp;#039;&amp;#039; - &amp;#039;&amp;#039;left&amp;#039;&amp;#039;)&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;y = 100*(&amp;#039;&amp;#039;lat&amp;#039;&amp;#039; - &amp;#039;&amp;#039;top&amp;#039;&amp;#039;)/(&amp;#039;&amp;#039;bottom&amp;#039;&amp;#039; - &amp;#039;&amp;#039;top&amp;#039;&amp;#039;)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;#039;&amp;#039;lat&amp;#039;&amp;#039; and &amp;#039;&amp;#039;long&amp;#039;&amp;#039; are the degrees latitude and longitude respectively. Here, &amp;#039;&amp;#039;top&amp;#039;&amp;#039; and &amp;#039;&amp;#039;bottom&amp;#039;&amp;#039; are the degrees latitude of the top and bottom edges of the map, &amp;#039;&amp;#039;left&amp;#039;&amp;#039; and &amp;#039;&amp;#039;right&amp;#039;&amp;#039; are the degrees latitude of the left and right edges of the map.&lt;br /&gt;
&lt;br /&gt;
Things are a bit more complicated when the map crosses +/-180 longitude, and some sort of &amp;quot;modulo arithmetic&amp;quot; is required. Here, we add 360 if the longitude is less than 0, then use a mapping based on positive coordinates. The following table can be used to check if the expressions are working as desired:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! location !! lat !! long !! (x,y) test !! (x,y) exact&lt;br /&gt;
|-&lt;br /&gt;
| top/left || {{{top|0}}} ||{{{left|0}}}|| &amp;lt;includeonly&amp;gt;({{#expr:{{{{BASEPAGENAME}}|x|{{{top|0}}} |{{{left|0}}}}} round 1}},{{#expr:{{{{BASEPAGENAME}}|y|{{{top|0}}} |{{{left|0}}}}} round 1}})&amp;lt;/includeonly&amp;gt; || (0,0)&lt;br /&gt;
|-&lt;br /&gt;
| top/right || {{{top|0}}} ||{{{right|100}}}|| &amp;lt;includeonly&amp;gt;({{#expr:{{{{BASEPAGENAME}}|x|{{{top|0}}} |{{{right|100}}}}} round 1}},{{#expr:{{{{BASEPAGENAME}}|y|{{{top|0}}} |{{{right|100}}}}} round 1}})&amp;lt;/includeonly&amp;gt; || (100,0)&lt;br /&gt;
|-&lt;br /&gt;
| bottom/left || {{{bottom|100}}} ||{{{left|0}}}|| &amp;lt;includeonly&amp;gt;({{#expr:{{{{BASEPAGENAME}}|x|{{{bottom|100}}} |{{{left|0}}}}} round 1}},{{#expr:{{{{BASEPAGENAME}}|y|{{{bottom|100}}} |{{{left|0}}}}} round 1}})&amp;lt;/includeonly&amp;gt; || (0,100)&lt;br /&gt;
|-&lt;br /&gt;
| bottom/right || {{{bottom|100}}} ||{{{right|100}}}|| &amp;lt;includeonly&amp;gt;({{#expr:{{{{BASEPAGENAME}}|x|{{{bottom|100}}} |{{{right|100}}}}} round 1}},{{#expr:{{{{BASEPAGENAME}}|y|{{{bottom|100}}} |{{{right|100}}}}} round 1}})&amp;lt;/includeonly&amp;gt; || (100,100)&lt;br /&gt;
|-&lt;br /&gt;
| center || {{#expr:({{{top|0}}} + {{{bottom|100}}})/2}} ||{{#expr:({{{left|0}}} + {{{right|100}}} {{#ifexpr:{{{right|100}}}&amp;lt;{{{left|0}}}|+360}})/2}}|| &amp;lt;includeonly&amp;gt;({{#expr:{{{{BASEPAGENAME}}|x|{{#expr:({{{top|0}}} + {{{bottom|100}}})/2}}|{{#expr:({{{left|0}}} + {{{right|100}}} {{#ifexpr:{{{right|100}}}&amp;lt;{{{left|0}}}|+360}})/2}}}} round 1}},{{#expr:{{{{BASEPAGENAME}}|y|{{#expr:({{{top|0}}} + {{{bottom|100}}})/2}}|{{#expr:({{{left|0}}} + {{{right|100}}} {{#ifexpr:{{{right|100}}}&amp;lt;{{{left|0}}}|+360}})/2}}}} round 1}})&amp;lt;/includeonly&amp;gt; || (50,50)&lt;br /&gt;
|}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{توثيق|content=&lt;br /&gt;
This subtemplate of {{قا|خريطة مواقع}} is used to explain and check the arithmetical logic used by Location map&amp;#039;s which cross the 180 degree meridian.  It is intended to be used on the documentation page as&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{Location map/modulo math details|top = |bottom = |left = |right = }}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;, where left/right are the longitude coordinates of the left/right map border, and top/bottom are the latitude coordinates of the top/bottom map border.&lt;br /&gt;
}}&lt;br /&gt;
[[تصنيف:Location map templates crossing 180th meridian|τ]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>عبد العزيز</name></author>
	</entry>
</feed>