<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Keyhole Markup Language &#8211; stoimen&#039;s web log</title>
	<atom:link href="/tag/keyhole-markup-language/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>on web development</description>
	<lastBuildDate>Tue, 13 Feb 2018 08:18:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.0.3</generator>
	<item>
		<title>OpenLayers Can Be Faster!</title>
		<link>/2010/03/19/openlayers-can-be-faster/</link>
		<comments>/2010/03/19/openlayers-can-be-faster/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 09:22:35 +0000</pubDate>
		<dc:creator><![CDATA[Stoimen]]></dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[micro tutorial]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Geography]]></category>
		<category><![CDATA[Keyhole Markup Language]]></category>
		<category><![CDATA[openlayers]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Web mapping]]></category>

		<guid isPermaLink="false">/?p=1364</guid>
		<description><![CDATA[Put All The Markers at Once! The way OpenLayers puts markers on the stage is fine when they are not so much, but once you need more than 100, the library&#8217;s solution is not good. The question is is there a way to put all the markers faster than the built in method. Yes, There &#8230; <a href="/2010/03/19/openlayers-can-be-faster/" class="more-link">Continue reading <span class="screen-reader-text">OpenLayers Can Be Faster!</span> <span class="meta-nav">&#8594;</span></a><div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href="/2010/02/08/openlayers-extreme-optimization-cut-compress-and-deploy/" rel="bookmark" title="OpenLayers extreme optimization. Cut, compress and deploy!">OpenLayers extreme optimization. Cut, compress and deploy! </a></li>
<li><a href="/2010/02/09/optimizing-openlayers-speed-up-markers-load-time/" rel="bookmark" title="Optimizing OpenLayers. Speed up markers load time!">Optimizing OpenLayers. Speed up markers load time! </a></li>
<li><a href="/2010/01/14/optimizing-openlayers-make-it-smaller-and-faster/" rel="bookmark" title="Optimizing OpenLayers. Make it smaller and faster!">Optimizing OpenLayers. Make it smaller and faster! </a></li>
<li><a href="/2009/06/20/openlayers-disable-mouse-wheel-on-zoom/" rel="bookmark" title="OpenLayers disable mouse wheel on zoom">OpenLayers disable mouse wheel on zoom </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<h2>Put All The Markers at Once!</h2>
<p>The way OpenLayers puts markers on the stage is fine when they are not so much, but once you need more than 100, the library&#8217;s solution is not good. The question is is there a way to put all the markers faster than the built in method.</p>
<h2>Yes, There is a Way to Speed Up Markers Load</h2>
<p>I once wrote about how to speed up markers on <a title="OpenLayers" href="http://openlayers.org/" target="_blank">OpenLayers</a>, it is clear that my decision was to concatenate the DOM elements like a string after I&#8217;ve generated all the markers as markup with innerHTML as it&#8217;s faster than appendChild. The only question left is how to convert Longitude/Latitude pair in pixels.</p>
<h2>The Answer&#8217;s Given by OpenLayers</h2>
<p>There is a method called <strong>getLayerPxFromLonLat()</strong> which do the job. Let me show you a snippet:</p>
<pre lang="javascript">ll = map.getLayerPxFromLonLat(new OpenLayers.LonLat(lon,lat));
console.log(ll);</pre>
<p>You can see what&#8217;s inside the ll object. You can now reference the pixel as ll.y and ll.x.</p>
<div class='yarpp-related-rss'>
<p>Related posts:<ol>
<li><a href="/2010/02/08/openlayers-extreme-optimization-cut-compress-and-deploy/" rel="bookmark" title="OpenLayers extreme optimization. Cut, compress and deploy!">OpenLayers extreme optimization. Cut, compress and deploy! </a></li>
<li><a href="/2010/02/09/optimizing-openlayers-speed-up-markers-load-time/" rel="bookmark" title="Optimizing OpenLayers. Speed up markers load time!">Optimizing OpenLayers. Speed up markers load time! </a></li>
<li><a href="/2010/01/14/optimizing-openlayers-make-it-smaller-and-faster/" rel="bookmark" title="Optimizing OpenLayers. Make it smaller and faster!">Optimizing OpenLayers. Make it smaller and faster! </a></li>
<li><a href="/2009/06/20/openlayers-disable-mouse-wheel-on-zoom/" rel="bookmark" title="OpenLayers disable mouse wheel on zoom">OpenLayers disable mouse wheel on zoom </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>/2010/03/19/openlayers-can-be-faster/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>OpenLayers extreme optimization. Cut, compress and deploy!</title>
		<link>/2010/02/08/openlayers-extreme-optimization-cut-compress-and-deploy/</link>
		<comments>/2010/02/08/openlayers-extreme-optimization-cut-compress-and-deploy/#respond</comments>
		<pubDate>Mon, 08 Feb 2010 06:14:08 +0000</pubDate>
		<dc:creator><![CDATA[Stoimen]]></dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[micro tutorial]]></category>
		<category><![CDATA[Computing]]></category>
		<category><![CDATA[Geography]]></category>
		<category><![CDATA[Keyhole Markup Language]]></category>
		<category><![CDATA[openlayers]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Web mapping]]></category>

		<guid isPermaLink="false">/?p=1030</guid>
		<description><![CDATA[Make it really faster! Following several posts I wrote recently, this one will describe you a simple and robust tutorial how to optimize OpenLayers. My goal is pretty simple. I&#8217;d like smaller library but still with everything must work correctly. The fact is that OpenLayers comes with more that what I need so I&#8217;m going &#8230; <a href="/2010/02/08/openlayers-extreme-optimization-cut-compress-and-deploy/" class="more-link">Continue reading <span class="screen-reader-text">OpenLayers extreme optimization. Cut, compress and deploy!</span> <span class="meta-nav">&#8594;</span></a><div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href="/2010/03/19/openlayers-can-be-faster/" rel="bookmark" title="OpenLayers Can Be Faster!">OpenLayers Can Be Faster! </a></li>
<li><a href="/2010/01/14/optimizing-openlayers-make-it-smaller-and-faster/" rel="bookmark" title="Optimizing OpenLayers. Make it smaller and faster!">Optimizing OpenLayers. Make it smaller and faster! </a></li>
<li><a href="/2009/06/20/openlayers-disable-mouse-wheel-on-zoom/" rel="bookmark" title="OpenLayers disable mouse wheel on zoom">OpenLayers disable mouse wheel on zoom </a></li>
<li><a href="/2010/02/09/optimizing-openlayers-speed-up-markers-load-time/" rel="bookmark" title="Optimizing OpenLayers. Speed up markers load time!">Optimizing OpenLayers. Speed up markers load time! </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<h2>Make it really faster!</h2>
<p>Following several posts I wrote recently, this one will describe you a simple and robust tutorial how to optimize <a href="http://openlayers.org/" target="_blank">OpenLayers</a>. My goal is pretty simple. I&#8217;d like smaller library but still with everything must work correctly. The fact is that OpenLayers comes with more that what I need so I&#8217;m going to exclude some files from the build process.</p>
<h2>Step 1</h2>
<p>This procedure I found <a href="http://www.geowebguru.com/articles/212-optimizing-openlayers" target="_blank">here</a>, and what I made is to copy/paste the whole list described there. The problem is that immediately the application stopped working, but in the same time I could catch what errors were stopping it and simply I was able to include again those files needed by my application.</p>
<h2>Step 2</h2>
<p>Even when I excluded everything from the library, there are some files I don&#8217;t need but that enter the resulting build. That&#8217;s because they depend on classes I need and the builder is simply adding them. The solution, even stupid enough, is to comment them all.</p>
<p>Note that on every step you need to check if the application is still fully functional. That&#8217;s a bit annoying, but it comes on the price of faster app.</p>
<h2>Step 3</h2>
<p>Change the compiler! Actually now OpenLayers is using JSMin, but I personally use Google Closure Compiler with it&#8217;s default level of optimization. Thus the resulting OpenLayers is 312K and still fully functional. After GZip it becomes even smaller and the load time is pretty good.</p>
<div class='yarpp-related-rss'>
<p>Related posts:<ol>
<li><a href="/2010/03/19/openlayers-can-be-faster/" rel="bookmark" title="OpenLayers Can Be Faster!">OpenLayers Can Be Faster! </a></li>
<li><a href="/2010/01/14/optimizing-openlayers-make-it-smaller-and-faster/" rel="bookmark" title="Optimizing OpenLayers. Make it smaller and faster!">Optimizing OpenLayers. Make it smaller and faster! </a></li>
<li><a href="/2009/06/20/openlayers-disable-mouse-wheel-on-zoom/" rel="bookmark" title="OpenLayers disable mouse wheel on zoom">OpenLayers disable mouse wheel on zoom </a></li>
<li><a href="/2010/02/09/optimizing-openlayers-speed-up-markers-load-time/" rel="bookmark" title="Optimizing OpenLayers. Speed up markers load time!">Optimizing OpenLayers. Speed up markers load time! </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>/2010/02/08/openlayers-extreme-optimization-cut-compress-and-deploy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
