<?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>a32.Blog &#187; portfolio</title>
	<atom:link href="http://a32.me/category/portfolio/feed/" rel="self" type="application/rss+xml" />
	<link>http://a32.me</link>
	<description>It&#039;s all about. IT and &#34;stuff&#34; :)</description>
	<lastBuildDate>Fri, 04 May 2012 07:14:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Position custom and fancy overlay dialog on Google Maps V3</title>
		<link>http://a32.me/2012/03/position-custom-and-fancy-overlay-dialog-on-google-maps-v3/</link>
		<comments>http://a32.me/2012/03/position-custom-and-fancy-overlay-dialog-on-google-maps-v3/#comments</comments>
		<pubDate>Tue, 20 Mar 2012 10:28:48 +0000</pubDate>
		<dc:creator>Constantin Bosneaga</dc:creator>
				<category><![CDATA[dev]]></category>
		<category><![CDATA[portfolio]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://a32.me/?p=2251</guid>
		<description><![CDATA[Nowadays many sites uses embedded map from Google for purposes like showing object location, drive-in way or more complex stuff. Recent Google Maps Version3 (V3) API becomes very powerful, but remained very clear and easy to use. While developing site for real estate company I faced with necessity to display fancy, complex overlays on top of the [...]]]></description>
			<content:encoded><![CDATA[<p>Nowadays many sites uses embedded map from Google for purposes like showing object location, drive-in way or more complex stuff. Recent Google Maps Version3 (V3) API becomes very powerful, but remained very clear and easy to use.</p>
<p>While developing site for real estate company I faced with necessity to display fancy, complex overlays on top of the map when user clicks on the marker.</p>
<p>There are some standard ways of showing so called info-windows. The problem is that it is not possible put complex formatting there or catch mouse clicks events.</p>
<p>To solve it I have to to dig into API internals and recent version V3 has some surprises here.</p>
<p><span id="more-2251"></span></p>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<p>The easiest way to show custom overlay is to determine coordinates of clicked marker and position DIV over the map to right position. Sounds easy.</p>
<h2>API V2 code, that does not work in V3</h2>
<p>I found some code that should do the trick, but it does not work. It was designed for V2 API.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> overlay <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">OverlayView</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
overlay.<span style="color: #660066;">draw</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
overlay.<span style="color: #660066;">setMap</span><span style="color: #009900;">&#40;</span>map<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> proj <span style="color: #339933;">=</span> overlay.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> pos <span style="color: #339933;">=</span> marker.<span style="color: #660066;">getPosition</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> p <span style="color: #339933;">=</span> proj.<span style="color: #660066;">fromLatLngToContainerPixel</span><span style="color: #009900;">&#40;</span>pos<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>After some API digging and googling, I found out that <strong>there are no documented ways of determiniting pixel position</strong> of GoogleMap point. Thats sad.</p>
<h2>API V3 code, marker to pixel position</h2>
<p>Here is the semi-hacked code that actually does the trick</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> topRight<span style="color: #339933;">=</span>gmap.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fromLatLngToPoint</span><span style="color: #009900;">&#40;</span>gmap.<span style="color: #660066;">getBounds</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">getNorthEast</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> bottomLeft<span style="color: #339933;">=</span>gmap.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fromLatLngToPoint</span><span style="color: #009900;">&#40;</span>gmap.<span style="color: #660066;">getBounds</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">getSouthWest</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> scale<span style="color: #339933;">=</span>Math.<span style="color: #660066;">pow</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">2</span><span style="color: #339933;">,</span>gmap.<span style="color: #660066;">getZoom</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> worldPoint<span style="color: #339933;">=</span>gmap.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fromLatLngToPoint</span><span style="color: #009900;">&#40;</span>marker.<span style="color: #660066;">getPosition</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> point <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Point</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>worldPoint.<span style="color: #660066;">x</span><span style="color: #339933;">-</span>bottomLeft.<span style="color: #660066;">x</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>scale<span style="color: #339933;">,</span><span style="color: #009900;">&#40;</span>worldPoint.<span style="color: #660066;">y</span><span style="color: #339933;">-</span>topRight.<span style="color: #660066;">y</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>scale<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Where</p>
<ul>
<li>gmap - is GoogleMap object</li>
<li>marker - is GoogleMap marker object</li>
<li>point - returned object contains maker coordinates related to upper-left corner of GoogleMap area</li>
</ul>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<h2>Overlay position on GoogleMap - Example</h2>
<p>Below you can find working example, I made overlay window simple, but since it is DIV there is no limits of pushing it.<br />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false">// <![CDATA[</p>
<p>// ]]&gt;</script><br />
<script type="text/javascript" src="http://a32.me/other/gmap/gmap.overlay.js">// <![CDATA[</p>
<p>// ]]&gt;</script></p>
<h2>Overlay position on GoogleMap - View Code</h2>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;div id=&quot;overlay&quot; style=&quot;z-index: 1000; position: absolute;display:none;width:200px;height:100px;background-color:white;border:1px solid grey;padding:10px;&quot;&gt;ANY CUSTOM FANCY OVERLAY HERE&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;#&quot; id=&quot;close&quot;&gt;close&lt;/a&gt;&lt;/div&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;div id=&quot;map&quot; style=&quot;width:500px; height:500px;&quot;&gt;&lt;/div&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #006600; font-style: italic;">// Get center</span>
<span style="color: #003366; font-weight: bold;">var</span> map_center <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">LatLng</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">50.1700235000</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">4.7319823000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #006600; font-style: italic;">// Load google map</span>
<span style="color: #003366; font-weight: bold;">var</span> map <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Map</span><span style="color: #009900;">&#40;</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;map&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>  <span style="color: #009900;">&#123;</span>
	zoom<span style="color: #339933;">:</span> <span style="color: #CC0000;">3</span><span style="color: #339933;">,</span>
	center<span style="color: #339933;">:</span> map_center<span style="color: #339933;">,</span>
	mapTypeId<span style="color: #339933;">:</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">MapTypeId</span>.<span style="color: #660066;">HYBRID</span><span style="color: #339933;">,</span>
	panControl<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span>
	streetViewControl<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span>
	mapTypeControl<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">var</span> pos<span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">var</span> marker_list <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">for</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> i <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span> <span style="color: #339933;">;</span> i <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">10</span> <span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	pos <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">LatLng</span><span style="color: #009900;">&#40;</span>Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span>Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span><span style="color: #CC0000;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span>Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span><span style="color: #CC0000;">50</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	marker_list.<span style="color: #660066;">push</span><span style="color: #009900;">&#40;</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Marker</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
		position<span style="color: #339933;">:</span> pos<span style="color: #339933;">,</span> 
		map<span style="color: #339933;">:</span> map<span style="color: #339933;">,</span> 
		title<span style="color: #339933;">:</span> <span style="color: #3366CC;">'Title'</span><span style="color: #339933;">,</span>
		icon<span style="color: #339933;">:</span> <span style="color: #3366CC;">'/other/gmap/marker.gif'</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> storyClick <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> <span style="color: #003366; font-weight: bold;">Function</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;event&quot;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;markerClick(&quot;</span><span style="color: #339933;">+</span>i<span style="color: #339933;">+</span><span style="color: #3366CC;">&quot;);&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">event</span>.<span style="color: #660066;">addListener</span><span style="color: #009900;">&#40;</span>marker_list<span style="color: #009900;">&#91;</span>i<span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'click'</span><span style="color: #339933;">,</span> storyClick<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> markerClick<span style="color: #009900;">&#40;</span>num<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #003366; font-weight: bold;">var</span> topRight<span style="color: #339933;">=</span>map.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fromLatLngToPoint</span><span style="color: #009900;">&#40;</span>map.<span style="color: #660066;">getBounds</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">getNorthEast</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> bottomLeft<span style="color: #339933;">=</span>map.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fromLatLngToPoint</span><span style="color: #009900;">&#40;</span>map.<span style="color: #660066;">getBounds</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">getSouthWest</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    	<span style="color: #003366; font-weight: bold;">var</span> scale<span style="color: #339933;">=</span>Math.<span style="color: #660066;">pow</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">2</span><span style="color: #339933;">,</span>map.<span style="color: #660066;">getZoom</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> worldPoint<span style="color: #339933;">=</span>map.<span style="color: #660066;">getProjection</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">fromLatLngToPoint</span><span style="color: #009900;">&#40;</span>marker_list<span style="color: #009900;">&#91;</span>num<span style="color: #009900;">&#93;</span>.<span style="color: #660066;">getPosition</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #003366; font-weight: bold;">var</span> point <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Point</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>worldPoint.<span style="color: #660066;">x</span><span style="color: #339933;">-</span>bottomLeft.<span style="color: #660066;">x</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>scale<span style="color: #339933;">,</span><span style="color: #009900;">&#40;</span>worldPoint.<span style="color: #660066;">y</span><span style="color: #339933;">-</span>topRight.<span style="color: #660066;">y</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>scale<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
	    left<span style="color: #339933;">:</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#map&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">position</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">left</span> <span style="color: #339933;">+</span> point.<span style="color: #660066;">x</span> <span style="color: #339933;">-</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">width</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">/</span><span style="color: #CC0000;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
	    top<span style="color: #339933;">:</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#map&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">position</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">top</span> <span style="color: #339933;">+</span> point.<span style="color: #660066;">y</span> <span style="color: #339933;">-</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">height</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">50</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">show</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#close'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    e.<span style="color: #660066;">preventDefault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hide</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">event</span>.<span style="color: #660066;">addListener</span><span style="color: #009900;">&#40;</span>map<span style="color: #339933;">,</span> <span style="color: #3366CC;">'center_changed'</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hide</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">event</span>.<span style="color: #660066;">addListener</span><span style="color: #009900;">&#40;</span>map<span style="color: #339933;">,</span> <span style="color: #3366CC;">'zoom_changed'</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#overlay&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">hide</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;</pre></div></div>


				<div class="mr_social_sharing_wrapper">
				<!-- Social Sharing Toolkit v2.0.8 | http://www.active-bits.nl/support/social-sharing-toolkit/ --><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fa32.me%2F2012%2F03%2Fposition-custom-and-fancy-overlay-dialog-on-google-maps-v3%2F&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:90px; height:21px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="http://a32.me/2012/03/position-custom-and-fancy-overlay-dialog-on-google-maps-v3/" data-text="Position custom and fancy overlay dialog on Google Maps V3">Tweet</a></span><span class="mr_social_sharing"><script type="IN/Share" data-url="http://a32.me/2012/03/position-custom-and-fancy-overlay-dialog-on-google-maps-v3/"></script></span><span class="mr_social_sharing"><a href="mailto:?subject=Position custom and fancy overlay dialog on Google Maps V3&amp;body=http://a32.me/2012/03/position-custom-and-fancy-overlay-dialog-on-google-maps-v3/"><img src="http://a32.me/wp-content/plugins/social-sharing-toolkit/images/buttons/email.png" alt="Share via email" title="Share via email"/></a></span></div>]]></content:encoded>
			<wfw:commentRss>http://a32.me/2012/03/position-custom-and-fancy-overlay-dialog-on-google-maps-v3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Find the latitude and longitude of address using Geocoding API example</title>
		<link>http://a32.me/2011/12/find-the-latitude-and-longitude-of-address-using-geocoding-api/</link>
		<comments>http://a32.me/2011/12/find-the-latitude-and-longitude-of-address-using-geocoding-api/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 13:03:35 +0000</pubDate>
		<dc:creator>Constantin Bosneaga</dc:creator>
				<category><![CDATA[dev]]></category>
		<category><![CDATA[portfolio]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://a32.me/?p=2099</guid>
		<description><![CDATA[In my recent project I faced the task of doing translation of property address in form we usually use it into global coordinates, that can be plotted on the map. Using Google API services this task is quite easy. You can check example and source code below Geocoding API javascript example Enter any address below [...]]]></description>
			<content:encoded><![CDATA[<p>In my recent project I faced the task of doing translation of property address in form we usually use it into global coordinates, that can be plotted on the map. Using Google API services this task is quite easy. You can check example and source code below</p>
<p><span id="more-2099"></span><br />
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<h1>Geocoding API javascript example</h1>
<p>Enter any address below to locate it on the map<br />
<script type="text/javascript" src="http://a32.me/other/gmap/gmap.geocoding.js">// <![CDATA[</p>
<p>// ]]&gt;</script></p>
<h1>Using JavaScript</h1>
<p>Example above is using JavaScript version of Geocoding API, so it is possible to call it through the browser. Source code is below:<br />
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;script src=&quot;http://maps.google.com/maps/api/js?sensor=false&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;div style=&quot;padding-bottom:10px;&quot;&gt;&lt;input type=&quot;text&quot; name=&quot;address&quot; value=&quot;O. J. Brochs g 16a, Bergen&quot; style=&quot;width:400px;border:1px solid black&quot;&gt;&lt;input type=&quot;button&quot; name=&quot;search&quot; value=&quot;Geocode&quot;&gt;&lt;/div&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;div id=&quot;coords&quot;&gt;&lt;/div&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;div id=&quot;gmap&quot; style=&quot;width:570px; height:500px;&quot;&gt;&lt;/div&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #006600; font-style: italic;">// Load google map</span>
	<span style="color: #003366; font-weight: bold;">var</span> map <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Map</span><span style="color: #009900;">&#40;</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;gmap&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>  <span style="color: #009900;">&#123;</span>
		center<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">LatLng</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">0</span><span style="color: #339933;">,</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
		zoom<span style="color: #339933;">:</span> <span style="color: #CC0000;">3</span><span style="color: #339933;">,</span>
		mapTypeId<span style="color: #339933;">:</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">MapTypeId</span>.<span style="color: #660066;">ROADMAP</span><span style="color: #339933;">,</span>
		panControl<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span>
		streetViewControl<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span>
		mapTypeControl<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">false</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
&nbsp;
	$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'input[name=search]'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #003366; font-weight: bold;">var</span> geocoder <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Geocoder</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
		geocoder.<span style="color: #660066;">geocode</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
				address <span style="color: #339933;">:</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'input[name=address]'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> 
				region<span style="color: #339933;">:</span> <span style="color: #3366CC;">'no'</span> 
			<span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span>
		    <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>results<span style="color: #339933;">,</span> <span style="color: #000066;">status</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		    	<span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000066;">status</span>.<span style="color: #660066;">toLowerCase</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">==</span> <span style="color: #3366CC;">'ok'</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
					<span style="color: #006600; font-style: italic;">// Get center</span>
					<span style="color: #003366; font-weight: bold;">var</span> coords <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">LatLng</span><span style="color: #009900;">&#40;</span>
						results<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'geometry'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'location'</span><span style="color: #009900;">&#93;</span>.<span style="color: #660066;">lat</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
						results<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'geometry'</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'location'</span><span style="color: #009900;">&#93;</span>.<span style="color: #660066;">lng</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
					<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#coords'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">html</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Latitute: '</span> <span style="color: #339933;">+</span> coords.<span style="color: #660066;">lat</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">'    Longitude: '</span> <span style="color: #339933;">+</span> coords.<span style="color: #660066;">lng</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
					map.<span style="color: #660066;">setCenter</span><span style="color: #009900;">&#40;</span>coords<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
					map.<span style="color: #660066;">setZoom</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">18</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
					<span style="color: #006600; font-style: italic;">// Set marker also</span>
					marker <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> google.<span style="color: #660066;">maps</span>.<span style="color: #660066;">Marker</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
						position<span style="color: #339933;">:</span> coords<span style="color: #339933;">,</span> 
						map<span style="color: #339933;">:</span> map<span style="color: #339933;">,</span> 
						title<span style="color: #339933;">:</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'input[name=address]'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
					<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		    	<span style="color: #009900;">&#125;</span>
			<span style="color: #009900;">&#125;</span>
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
&nbsp;</pre></div></div>

<p><a href="http://a32.me/other/gmap/gmap.geocoding.js" target="_blank">Download geocoding source code here</a></p>
<h1>Using HTTP</h1>
<p>Another way to use Geocoding API is though HTTP GET request. This way is more suitable to beused in PHP scripts. All is needed is to make request to the URl below, substituting the real address.</p>
<p><span class="Apple-style-span" style="font-family: Consolas, Monaco, monospace; font-size: 12px; line-height: 18px; white-space: pre;">http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&amp;sensor=true_or_false</span></p>
<p>Response is JSON encoded object, you can see more sample at <a href="http://code.google.com/apis/maps/documentation/geocoding/" target="_blank">Google Geocoding API help page</a></p>

				<div class="mr_social_sharing_wrapper">
				<!-- Social Sharing Toolkit v2.0.8 | http://www.active-bits.nl/support/social-sharing-toolkit/ --><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fa32.me%2F2011%2F12%2Ffind-the-latitude-and-longitude-of-address-using-geocoding-api%2F&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:90px; height:21px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="http://a32.me/2011/12/find-the-latitude-and-longitude-of-address-using-geocoding-api/" data-text="Find the latitude and longitude of address using Geocoding API example">Tweet</a></span><span class="mr_social_sharing"><script type="IN/Share" data-url="http://a32.me/2011/12/find-the-latitude-and-longitude-of-address-using-geocoding-api/"></script></span><span class="mr_social_sharing"><a href="mailto:?subject=Find the latitude and longitude of address using Geocoding API example&amp;body=http://a32.me/2011/12/find-the-latitude-and-longitude-of-address-using-geocoding-api/"><img src="http://a32.me/wp-content/plugins/social-sharing-toolkit/images/buttons/email.png" alt="Share via email" title="Share via email"/></a></span></div>]]></content:encoded>
			<wfw:commentRss>http://a32.me/2011/12/find-the-latitude-and-longitude-of-address-using-geocoding-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpMyDict &#8211; Stardict web backend with PHP</title>
		<link>http://a32.me/2010/06/phpmydict-stardict-web-backend-with-php/</link>
		<comments>http://a32.me/2010/06/phpmydict-stardict-web-backend-with-php/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 15:27:41 +0000</pubDate>
		<dc:creator>Constantin Bosneaga</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[portfolio]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://a32.me/?p=459</guid>
		<description><![CDATA[Stardict is a popular open source dictionary program as well as file format for storing dictionaries. There are alternatives of StarDict, some of them better, some worse. But I never meet some WEB application to use dictionaries in StarDict format and interface through the web browser. I found this little interesting and created one... It is written in [...]]]></description>
			<content:encoded><![CDATA[<p>Stardict is a popular open source dictionary program as well as file format for storing dictionaries. There are alternatives of StarDict, some of them better, some worse. But I never meet some WEB application to use dictionaries in StarDict format and interface through the web browser. I found this little interesting and created one...</p>
<p><span id="more-459"></span></p>
<p>It is written in PHP and uses MySQL as database backend, client part uses jQuery for AJAX queries. Dictionaries are indexed in admin part for quick access. By now searches through 2 mil words takes about half of the second. Interface is as simple as possible and was inspired by GoldenDict. For sample usage it contains Russian-English and English-Russian dictionary(Universal, Computer, Oil, Gas...)</p>
<p>Try to access it here <a href="http://a32.me/other/dict/">http://a32.me/other/dict/</a></p>
<p>Comments are welcome. If I have more time and some interest to it, will release it open-source .There might be interest to use it in intranet environment.</p>
<p>Additional free dictionaries can be found here:</p>
<ul>
<li><a href="http://en.wikipedia.org/wiki/DICT" target="_blank">http://en.wikipedia.org/wiki/DICT</a></li>
<li><a href="http://xdxf.revdanica.com/" target="_blank">http://xdxf.revdanica.com/</a></li>
</ul>

				<div class="mr_social_sharing_wrapper">
				<!-- Social Sharing Toolkit v2.0.8 | http://www.active-bits.nl/support/social-sharing-toolkit/ --><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fa32.me%2F2010%2F06%2Fphpmydict-stardict-web-backend-with-php%2F&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:90px; height:21px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="http://a32.me/2010/06/phpmydict-stardict-web-backend-with-php/" data-text="phpMyDict – Stardict web backend with PHP">Tweet</a></span><span class="mr_social_sharing"><script type="IN/Share" data-url="http://a32.me/2010/06/phpmydict-stardict-web-backend-with-php/"></script></span><span class="mr_social_sharing"><a href="mailto:?subject=phpMyDict – Stardict web backend with PHP&amp;body=http://a32.me/2010/06/phpmydict-stardict-web-backend-with-php/"><img src="http://a32.me/wp-content/plugins/social-sharing-toolkit/images/buttons/email.png" alt="Share via email" title="Share via email"/></a></span></div>]]></content:encoded>
			<wfw:commentRss>http://a32.me/2010/06/phpmydict-stardict-web-backend-with-php/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>AdvMan</title>
		<link>http://a32.me/2010/01/advman/</link>
		<comments>http://a32.me/2010/01/advman/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 10:50:08 +0000</pubDate>
		<dc:creator>Constantin Bosneaga</dc:creator>
				<category><![CDATA[portfolio]]></category>

		<guid isPermaLink="false">http://a32.me/?p=337</guid>
		<description><![CDATA[AdvMan - Advertisement Manager, application for adv company to help planning of commercial spots on TV, radio, newspaper. Year: 2002 Used technologies: Delphi, Firebird(Interbase) Stats: 53 - *.pas files, 49 - *.dfm files. Basic program features: Media planner Multiuser/multirole access Edit and exchange of  broadcast program list Reports See program screen shots below: Tweet]]></description>
			<content:encoded><![CDATA[<p>AdvMan - Advertisement Manager, application for adv company to help planning of commercial spots on TV, radio, newspaper.</p>
<p><span id="more-337"></span></p>
<p>Year: 2002</p>
<p>Used technologies: Delphi, Firebird(Interbase)</p>
<p>Stats: 53 - *.pas files, 49 - *.dfm files.</p>
<p>Basic program features:</p>
<ul>
<li>Media planner</li>
<li>Multiuser/multirole access</li>
<li>Edit and exchange of  broadcast program list</li>
<li>Reports</li>
</ul>
<p>See program screen shots below:</p>

<div class="ngg-galleryoverview" id="ngg-gallery-1-337">

	<!-- Slideshow link -->
	<div class="slideshowlink">
		<a class="slideshowlink" href="http://a32.me/2010/01/advman/?show=slide">
			[Show as slideshow]		</a>
	</div>

	<!-- Piclense link -->
	<div class="piclenselink">
		<a class="piclenselink" href="javascript:PicLensLite.start({feedUrl:'http://a32.me/wp-content/plugins/nextgen-gallery/xml/media-rss.php?gid=1&amp;mode=gallery'});">
			[View with PicLens]		</a>
	</div>
	
	<!-- Thumbnails -->
		
	<div id="ngg-image-1" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman0.png" title=" " class="shutterset_set_1" >
								<img title="advman0" alt="advman0" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman0.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-2" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman1.png" title=" " class="shutterset_set_1" >
								<img title="advman1" alt="advman1" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman1.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-3" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman10.png" title=" " class="shutterset_set_1" >
								<img title="advman10" alt="advman10" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman10.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-4" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman11.png" title=" " class="shutterset_set_1" >
								<img title="advman11" alt="advman11" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman11.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-5" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman12.png" title=" " class="shutterset_set_1" >
								<img title="advman12" alt="advman12" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman12.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-6" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman13.png" title=" " class="shutterset_set_1" >
								<img title="advman13" alt="advman13" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman13.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-7" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman14.png" title=" " class="shutterset_set_1" >
								<img title="advman14" alt="advman14" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman14.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-8" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman15.png" title=" " class="shutterset_set_1" >
								<img title="advman15" alt="advman15" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman15.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-9" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman16.png" title=" " class="shutterset_set_1" >
								<img title="advman16" alt="advman16" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman16.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-10" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman17.png" title=" " class="shutterset_set_1" >
								<img title="advman17" alt="advman17" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman17.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-11" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman18.png" title=" " class="shutterset_set_1" >
								<img title="advman18" alt="advman18" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman18.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-12" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman19.png" title=" " class="shutterset_set_1" >
								<img title="advman19" alt="advman19" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman19.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-13" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman2.png" title=" " class="shutterset_set_1" >
								<img title="advman2" alt="advman2" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman2.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-14" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman20.png" title=" " class="shutterset_set_1" >
								<img title="advman20" alt="advman20" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman20.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-15" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman21.png" title=" " class="shutterset_set_1" >
								<img title="advman21" alt="advman21" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman21.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-16" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman22.png" title=" " class="shutterset_set_1" >
								<img title="advman22" alt="advman22" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman22.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-17" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman23.png" title=" " class="shutterset_set_1" >
								<img title="advman23" alt="advman23" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman23.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-18" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman24.png" title=" " class="shutterset_set_1" >
								<img title="advman24" alt="advman24" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman24.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-19" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman25.png" title=" " class="shutterset_set_1" >
								<img title="advman25" alt="advman25" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman25.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 		
	<div id="ngg-image-20" class="ngg-gallery-thumbnail-box"  >
		<div class="ngg-gallery-thumbnail" >
			<a href="http://a32.me/wp-content/gallery/advman/advman26.png" title=" " class="shutterset_set_1" >
								<img title="advman26" alt="advman26" src="http://a32.me/wp-content/gallery/advman/thumbs/thumbs_advman26.png" width="100" height="75" />
							</a>
		</div>
	</div>
	
		
 	 	
	<!-- Pagination -->
 	<div class='ngg-navigation'><span class="current">1</span><a class="page-numbers" href="http://a32.me/2010/01/advman/?nggpage=2">2</a><a class="next" id="ngg-next-2" href="http://a32.me/2010/01/advman/?nggpage=2">&#9658;</a></div> 	
</div>



				<div class="mr_social_sharing_wrapper">
				<!-- Social Sharing Toolkit v2.0.8 | http://www.active-bits.nl/support/social-sharing-toolkit/ --><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fa32.me%2F2010%2F01%2Fadvman%2F&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:90px; height:21px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="http://a32.me/2010/01/advman/" data-text="AdvMan">Tweet</a></span><span class="mr_social_sharing"><script type="IN/Share" data-url="http://a32.me/2010/01/advman/"></script></span><span class="mr_social_sharing"><a href="mailto:?subject=AdvMan&amp;body=http://a32.me/2010/01/advman/"><img src="http://a32.me/wp-content/plugins/social-sharing-toolkit/images/buttons/email.png" alt="Share via email" title="Share via email"/></a></span></div>]]></content:encoded>
			<wfw:commentRss>http://a32.me/2010/01/advman/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Petri Net Plus</title>
		<link>http://a32.me/2009/11/visual-petri-net-plus/</link>
		<comments>http://a32.me/2009/11/visual-petri-net-plus/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 20:11:32 +0000</pubDate>
		<dc:creator>Constantin Bosneaga</dc:creator>
				<category><![CDATA[portfolio]]></category>

		<guid isPermaLink="false">http://a32.me/?p=207</guid>
		<description><![CDATA[By this article I start publishing all interesting stuff I've made. Kind of portfolio. Visual Petri Net Plus (VPNP)  was thesis of my diploma work at Technical University of Moldova(2000-2002). It is Petri Net designer, simulator and calculator. It has nice graphical engine that help to draw Petri net quite easy. Theory of Petri Nets [...]]]></description>
			<content:encoded><![CDATA[<p>By this article I start publishing all interesting stuff I've made. Kind of portfolio.</p>
<p>Visual Petri Net Plus (VPNP)  was thesis of my diploma work at Technical University of Moldova(2000-2002). It is Petri Net designer, simulator and calculator. It has nice graphical engine that help to draw Petri net quite easy.</p>
<p>Theory of Petri Nets is intresting, you can find a lot of information on the net.</p>
<p>My work was to do graphical designer, save/load and simulation.</p>
<p>Tools used: Delphi 5.</p>
<p><span id="more-207"></span><br />
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<h2>Designer interface</h2>
<p>Interface was inspired by standard Delphi interface.</p>
<h2><a href="http://a32.me/wp-content/uploads/2009/11/panel.gif"><img title="design panel" src="http://a32.me/wp-content/uploads/2009/11/panel.gif" alt="design panel" /></a></h2>
<h2>Element property editor</h2>
<p>Looks like standard delphi Object Inspector, but it is not. It is custom written.</p>
<p><a href="http://a32.me/wp-content/uploads/2009/11/inspector.gif"><img class="alignnone size-full wp-image-210" title="property inspector" src="http://a32.me/wp-content/uploads/2009/11/inspector.gif" alt="property inspector" width="201" height="468" /></a><br />
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<h2>Sample nets drawings</h2>
<p><a href="http://a32.me/wp-content/uploads/2009/11/net01.gif"><img class="alignnone size-full wp-image-211" title="net01" src="http://a32.me/wp-content/uploads/2009/11/net01.gif" alt="net01" /></a></p>
<p><a href="http://a32.me/wp-content/uploads/2009/11/net02.gif"><img class="aligncenter size-full wp-image-212" title="net02" src="http://a32.me/wp-content/uploads/2009/11/net02.gif" alt="net02" /></a></p>
<p style="text-align: center;"><a href="http://a32.me/wp-content/uploads/2009/11/net03.gif"><img class="aligncenter size-full wp-image-213" title="net03" src="http://a32.me/wp-content/uploads/2009/11/net03.gif" alt="net03" /></a></p>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-4139588230521520";
/* Intest */
google_ad_slot = "1267310946";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<h2>Simulation</h2>
<p>This is most attractive part in this project.</p>
<h3>Simulation control panel</h3>
<p>Allows to add graphs to see progress during simulation.</p>
<p><a href="http://a32.me/wp-content/uploads/2009/11/simu.gif"><img class="aligncenter size-full wp-image-214" title="simu" src="http://a32.me/wp-content/uploads/2009/11/simu.gif" alt="simu" width="427" height="365" /></a></p>
<h3>Live simulation</h3>
<p>It was recorded from real example. Flash plug-in required to view.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="333" height="433" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="/wp-content/uploads/2009/11/vpnp-animation.swf" /><param name="wmode" value="transparent" /><param name="quality" value="low" /><embed type="application/x-shockwave-flash" width="333" height="433" src="/wp-content/uploads/2009/11/vpnp-animation.swf" quality="low" wmode="transparent"></embed></object></p>
<h2>Downloads</h2>
<p><a href="http://a32.me/wp-content/uploads/2009/11/vpnp-release1.zip" target="_self">Download executable and some sample</a> to play with.</p>
<p>Source codes are available on request.</p>
<h3>References</h3>
<ul>
<li>[1]. E. Gutuleac, C. Bosneaga, A. Reilean. <em>VPNP - Software Tool for Modeling and Performance Evaluation Using Generalized Stochastic Petri Nets</em>. 6th International Conference on DAS - 2002, Suceava, Romania, May 23-25, 2002.</li>
</ul>

				<div class="mr_social_sharing_wrapper">
				<!-- Social Sharing Toolkit v2.0.8 | http://www.active-bits.nl/support/social-sharing-toolkit/ --><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fa32.me%2F2009%2F11%2Fvisual-petri-net-plus%2F&amp;layout=button_count&amp;show_faces=false&amp;width=90&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:90px; height:21px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="http://a32.me/2009/11/visual-petri-net-plus/" data-text="Visual Petri Net Plus">Tweet</a></span><span class="mr_social_sharing"><script type="IN/Share" data-url="http://a32.me/2009/11/visual-petri-net-plus/"></script></span><span class="mr_social_sharing"><a href="mailto:?subject=Visual Petri Net Plus&amp;body=http://a32.me/2009/11/visual-petri-net-plus/"><img src="http://a32.me/wp-content/plugins/social-sharing-toolkit/images/buttons/email.png" alt="Share via email" title="Share via email"/></a></span></div>]]></content:encoded>
			<wfw:commentRss>http://a32.me/2009/11/visual-petri-net-plus/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

