<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>Bing Maps Showcase</title><link>http://bingmaps.codeplex.com/project/feeds/rss</link><description>This is a community showcase of sample Bing Maps for Enterprise implementations, with articles and links to additional resources.</description><item><title>Source code checked in, #99885</title><link>http://bingmaps.codeplex.com/SourceControl/changeset/changes/99885</link><description>Upgrade&amp;#58; New Version of LabDefaultTemplate.xaml. To upgrade your build definitions, please visit the following link&amp;#58; http&amp;#58;&amp;#47;&amp;#47;go.microsoft.com&amp;#47;fwlink&amp;#47;&amp;#63;LinkId&amp;#61;254563</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:24:31 GMT</pubDate><guid isPermaLink="false">Source code checked in, #99885 20121001092431P</guid></item><item><title>Source code checked in, #99884</title><link>http://bingmaps.codeplex.com/SourceControl/changeset/changes/99884</link><description>Checked in by server upgrade</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:16:08 GMT</pubDate><guid isPermaLink="false">Source code checked in, #99884 20121001091608P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=8</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;
&lt;h2&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190874"&gt;&lt;img title="image" border="0" alt="image" align="right" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190875" width="354" height="268" style="border-right-width:0px; margin:0px 0px 15px 15px; padding-left:0px; padding-right:0px; display:inline; float:right; border-top-width:0px; border-bottom-width:0px; border-left-width:0px; padding-top:0px"&gt;&lt;/a&gt;Introduction&lt;/h2&gt;
&lt;p&gt;There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible
 and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/"&gt;
JSON (JavaScript Object Notation)&lt;span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br&gt;
&lt;br&gt;
This sample application shows how easy it is to call a normal WCF web service from javascript using the
&lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx"&gt;MS Ajax Client Script Library&lt;span&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map
 events. &lt;/p&gt;
&lt;p&gt;We have tried to keep this sample as simple as possible, whilst still producing code suitable for production usage.
&lt;br&gt;
&lt;/p&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;
The sample is now complete and shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data
 for the map to display. &lt;br&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;
&lt;p&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot; Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;
&lt;/p&gt;
&lt;h2&gt;What is simplified for the sample?&lt;/h2&gt;
&lt;p&gt;There are a few things that are simplified, or just not done, that should be before putting into production&amp;quot;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The javascript files are not compressed at all, I recommend looking at &lt;a href="http://chirpy.codeplex.com/"&gt;
http://chirpy.codeplex.com/&lt;/a&gt; for automating this &lt;/li&gt;&lt;li&gt;The javascript files are not combined into one script, again look at chirpy to help with this
&lt;/li&gt;&lt;li&gt;The asp.net site is still set in debug &lt;/li&gt;&lt;li&gt;The pushpins in the example overlap at higher zoom levels, you should look at clustering them (hopefully a future sample) if your data suffers from this to ensure performance and usability
&lt;/li&gt;&lt;li&gt;The infobox control is very simple, hopefully in time the community will create a better one if an official one doesn’t arrive soon
&lt;/li&gt;&lt;li&gt;GZip compression is not setup specifically in the web.config file as this is dependant on what version of IIS you install it on. Enabling GZip compression will mean the JSON data from the webservice will be compressed massively increasing your applications
 data transfer performance &lt;br&gt;
&lt;/li&gt;&lt;/ol&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;
Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code which is pretty well commented.
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Tue, 28 Dec 2010 16:53:06 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101228045306P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=7</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;
&lt;h2&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190874"&gt;&lt;img title="image" border="0" alt="image" align="right" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190875" width="354" height="268" style="border-right-width:0px; margin:0px 0px 15px 15px; padding-left:0px; padding-right:0px; display:inline; float:right; border-top-width:0px; border-bottom-width:0px; border-left-width:0px; padding-top:0px"&gt;&lt;/a&gt;Introduction&lt;/h2&gt;
&lt;p&gt;There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible
 and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/"&gt;
JSON (JavaScript Object Notation)&lt;span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br&gt;
&lt;br&gt;
This sample application shows how easy it is to call a normal WCF web service from javascript using the
&lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx"&gt;MS Ajax Client Script Library&lt;span&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map
 events. &lt;/p&gt;
&lt;p&gt;We have tried to keep this sample as simple as possible, whilst still producing code suitable for production usage.
&lt;br&gt;
&lt;/p&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;
The sample is now complete and shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data
 for the map to display. &lt;br&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;
&lt;p&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot; Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;
&lt;/p&gt;
&lt;h2&gt;What is simplified for the sample?&lt;/h2&gt;
&lt;p&gt;There are a few things that are simplified, or just not done, that should be before putting into production&amp;quot;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The javascript files are not compressed at all, I recommend looking at &lt;a href="http://chirpy.codeplex.com/"&gt;
http://chirpy.codeplex.com/&lt;/a&gt; for automating this &lt;/li&gt;&lt;li&gt;The javascript files are not combined into one script, again look at chirpy to help with this
&lt;/li&gt;&lt;li&gt;The asp.net site is still set in debug &lt;/li&gt;&lt;li&gt;The pushpins in the example overlap at higher zoom levels, you should look at clustering them (hopefully a future sample) if your data suffers from this to ensure performance and usability
&lt;/li&gt;&lt;li&gt;The infobox control is very simple, hopefully in time the community will create a better one if an official one doesn’t arrive soon
&lt;br&gt;
&lt;/li&gt;&lt;/ol&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;
Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code which is pretty well commented.
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Tue, 28 Dec 2010 16:44:06 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101228044406P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;
&lt;h2&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190874"&gt;&lt;img title="image" border="0" alt="image" align="right" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190875" width="354" height="268" style="border-right-width:0px; margin:0px 0px 15px 15px; padding-left:0px; padding-right:0px; display:inline; float:right; border-top-width:0px; border-bottom-width:0px; border-left-width:0px; padding-top:0px"&gt;&lt;/a&gt;Introduction&lt;/h2&gt;
&lt;p&gt;There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible
 and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/"&gt;
JSON (JavaScript Object Notation)&lt;span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br&gt;
&lt;br&gt;
This sample application shows how easy it is to call a normal WCF web service from javascript using the
&lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx"&gt;MS Ajax Client Script Library&lt;span&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map
 events. &lt;/p&gt;
&lt;p&gt;We have tried to keep this sample as simple as possible, whilst still producing code suitable for production usage.
&lt;br&gt;
&lt;/p&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;
The sample is now complete and shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data
 for the map to display. &lt;br&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;
&lt;p&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot; Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;
&lt;/p&gt;
&lt;p&gt;What is simplified for the sample?&lt;/p&gt;
&lt;p&gt;There are a few things that are simplified, or just not done, that should be before putting into production&amp;quot;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The javascript files are not compressed at all, I recommend looking at &lt;a href="http://chirpy.codeplex.com/"&gt;
http://chirpy.codeplex.com/&lt;/a&gt; for automating this &lt;/li&gt;&lt;li&gt;The javascript files are not combined into one script, again look at chirpy to help with this
&lt;/li&gt;&lt;li&gt;The asp.net site is still set in debug &lt;/li&gt;&lt;li&gt;The pushpins in the example overlap at higher zoom levels, you should look at clustering them (hopefully a future sample) if your data suffers from this to ensure performance and usability
&lt;/li&gt;&lt;li&gt;The infobox control is very simple, hopefully in time the community will create a better one if an official one doesn’t arrive soon
&lt;br&gt;
&lt;/li&gt;&lt;/ol&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;
Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code which is pretty well commented.
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Tue, 28 Dec 2010 16:42:11 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101228044211P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=5</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;
&lt;h2&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190874"&gt;&lt;img title="image" border="0" alt="image" align="right" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190875" width="354" height="268" style="border-right-width:0px; margin:0px 0px 15px 15px; padding-left:0px; padding-right:0px; display:inline; float:right; border-top-width:0px; border-bottom-width:0px; border-left-width:0px; padding-top:0px"&gt;&lt;/a&gt;Introduction&lt;/h2&gt;
There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible
 and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/"&gt;
JSON (JavaScript Object Notation)&lt;span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br&gt;
&lt;br&gt;
This sample application shows how easy it is to call a normal WCF web service from javascript using the
&lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx"&gt;MS Ajax Client Script Library&lt;span&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map
 events. &lt;br&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;
The sample is now complete and shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data
 for the map to display. &lt;br&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;
&lt;p&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot; Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;
&lt;/p&gt;
&lt;p&gt;What is simplified for the sample?&lt;/p&gt;
&lt;p&gt;There are a few things that are simplified, or just not done, that should be before putting into production&amp;quot;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The javascript files are not compressed at all, I recommend looking at &lt;a href="http://chirpy.codeplex.com/"&gt;
http://chirpy.codeplex.com/&lt;/a&gt; for automating this &lt;/li&gt;&lt;li&gt;The javascript files are not combined into one script, again look at chirpy to help with this
&lt;/li&gt;&lt;li&gt;The asp.net site is still set in debug &lt;/li&gt;&lt;li&gt;The pushpins in the example overlap at higher zoom levels, you should look at clustering them (hopefully a future sample) if your data suffers from this to ensure performance and usability
&lt;/li&gt;&lt;li&gt;The infobox control is very simple, hopefully in time the community will create a better one if an official one doesn’t arrive soon
&lt;br&gt;
&lt;/li&gt;&lt;/ol&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;
Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code which is pretty well commented.
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Tue, 28 Dec 2010 16:38:56 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101228043856P</guid></item><item><title>Source code checked in, #82482</title><link>http://bingmaps.codeplex.com/SourceControl/changeset/changes/82482</link><description>completing pushpin data loading, sample now complete</description><author>earthware</author><pubDate>Tue, 28 Dec 2010 16:31:21 GMT</pubDate><guid isPermaLink="false">Source code checked in, #82482 20101228043121P</guid></item><item><title>Source code checked in, #82433</title><link>http://bingmaps.codeplex.com/SourceControl/changeset/changes/82433</link><description>starting to add basic infobox, not completed but working</description><author>earthware</author><pubDate>Mon, 27 Dec 2010 22:54:43 GMT</pubDate><guid isPermaLink="false">Source code checked in, #82433 20101227105443P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=4</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;
&lt;h2&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190874"&gt;&lt;img title="image" border="0" alt="image" align="right" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=190875" width="354" height="268" style="border-bottom:0px; border-left:0px; margin:0px 0px 15px 15px; padding-left:0px; padding-right:0px; display:inline; float:right; border-top:0px; border-right:0px; padding-top:0px"&gt;&lt;/a&gt;Introduction&lt;/h2&gt;
There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible
 and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/"&gt;
JSON (JavaScript Object Notation)&lt;span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;br&gt;
&lt;br&gt;
This sample application shows how easy it is to call a normal WCF web service from javascript using the
&lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx"&gt;MS Ajax Client Script Library&lt;span&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map
 events. &lt;br&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;
Currently the sample is not complete (map popups are not currently added) but it shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service
 which is called via javascript and returns JSON data for the map to display. &lt;br&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;
To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot; Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;
&lt;br&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;
Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code which is pretty well commented.
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:31:56 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101225103156P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=3</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;&lt;h2&gt;Introduction&lt;/h2&gt;There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/" class="externalLink"&gt;JSON (JavaScript Object Notation)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This sample application shows how easy it is to call a normal WCF web service from javascript using the &lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx" class="externalLink"&gt;MS Ajax Client Script Library&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map events.&lt;br /&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;Currently the sample is not complete (map popups are not currently added) but it shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data for the map to display.&lt;br /&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot;	Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;&lt;br /&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code which is pretty well commented.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:27:28 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101225102728P</guid></item><item><title>Updated Wiki: Temporary Post Used For Theme Detection (ba99dca4-0739-43b2-8b73-a17343925e95 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)</title><link>http://bingmaps.codeplex.com/wikipage?title=Temporary Post Used For Theme Detection (ba99dca4-0739-43b2-8b73-a17343925e95 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;p&gt;This is a temporary post that was not deleted. Please delete this manually. (c38657cb-db3d-4aee-923e-ab2b6b344aea - 3bfe001a-32de-4114-a6b4-4005b770f6d7)&lt;/p&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:25:01 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Temporary Post Used For Theme Detection (ba99dca4-0739-43b2-8b73-a17343925e95 - 3bfe001a-32de-4114-a6b4-4005b770f6d7) 20101225102501P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=2</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;&lt;h2&gt;Introduction&lt;/h2&gt;There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/" class="externalLink"&gt;JSON (JavaScript Object Notation)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This sample application shows how easy it is to call a normal WCF web service from javascript using the &lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx" class="externalLink"&gt;MS Ajax Client Script Library&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map events.&lt;br /&gt;
&lt;h2&gt;What exactly does the sample do?&lt;/h2&gt;Currently the sample is not complete (map popups are not currently added) but it shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data for the map to display.&lt;br /&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot;	Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;&lt;br /&gt;
&lt;h2&gt;Understanding the code&lt;/h2&gt;Hopefully, over the next few months there will be a set of tutorial blog posts created that will walk you through writing this application. Until then feel free to download and browse the code.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:23:06 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101225102306P</guid></item><item><title>Updated Wiki: Getting Started in Web Services</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in Web Services&amp;version=1</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;Getting Started in Web Services&lt;/h1&gt;&lt;h2&gt;Introduction&lt;/h2&gt;There are many different approaches to loading data into the Bing Maps Ajax API, some of which are never recommend (creating dynamic javascript code on the server side) and others which make sense in different situations. One of the most scalable, flexible and powerful is loading your maps data using web services via &lt;a href="http://www.json.org/" class="externalLink"&gt;JSON (JavaScript Object Notation)&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This sample application shows how easy it is to call a normal WCF web service from javascript using the &lt;a href="http://msdn.microsoft.com/en-us/library/bb386453.aspx" class="externalLink"&gt;MS Ajax Client Script Library&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; as well as showing a best practice approach to writing Object Orientated javascript (again using the MS Ajax Library) to load the map and handle map events.&lt;br /&gt;&lt;br /&gt;!!What exactly does the sample do?&lt;br /&gt;Currently the sample is not complete but it shows how to load map data (of some schools in the UK) from an SQL 2008 database using a datalayer built using Entity Framework 4 (ORM). The datalayer is used by a WCF service which is called via javascript and returns JSON data for the map to display.&lt;br /&gt;
&lt;h2&gt;Getting Started&lt;/h2&gt;To get started with this sample you will need to have VS 2010 and SQL Express 2008 installed. Once you have those installed you can download the sample from the source code tab in the path &amp;quot;	Samples/Getting Started in Web Services/WebserviceBingMaps&amp;quot;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:20:33 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in Web Services 20101225102033P</guid></item><item><title>Updated Wiki: Home</title><link>http://bingmaps.codeplex.com/wikipage?version=15</link><description>&lt;div class="wikidoc"&gt;&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;This is a community showcase of sample Bing Maps for Enterprise implementations, with articles and links to additional resources.&lt;br /&gt;&lt;br /&gt;We are working to provide a comprehensive list of documentation resources available, both within this site and external, for Bing Maps for Enterprise. You can find links below to documentation sections as we create them.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Getting Started
&lt;ul&gt;&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20JavaScript%20%2f%20Ajax&amp;referringTitle=Home"&gt;Getting Started in JavaScript &amp;#47; Ajax&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20Silverlight&amp;referringTitle=Home"&gt;Getting Started in Silverlight&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20Web%20Services&amp;referringTitle=Home"&gt;Getting Started in Web Services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Getting Started in Windows Phone 7&lt;/li&gt;
&lt;li&gt;Getting Started with Bing Maps Apps&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20with%20Bing%20Maps%203D&amp;referringTitle=Home"&gt;Getting Started with Bing Maps 3D&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;In Depth Guides
&lt;ul&gt;&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Adding%203D%20Models%20to%20Bing%20Maps&amp;referringTitle=Home"&gt;Adding 3D Models to Bing Maps&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;Official Microsoft Resources
&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/product/overview.aspx" class="externalLink"&gt;Bing Maps Platform Overview&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd877180.aspx" class="externalLink"&gt;Bing Maps APIs&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/isdk/ajax" class="externalLink"&gt;AJAX Interactive SDK&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/isdk/silverlight" class="externalLink"&gt;Silverlight Interactive SDK&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb545001.aspx" class="externalLink"&gt;Developer Articles&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bing.com/community/blogs/maps" class="externalLink"&gt;Bing Maps Blog&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/vemapcontroldev/threads" class="externalLink"&gt;Bing Maps Forums&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://channel9.msdn.com/tags/Bing+Maps" class="externalLink"&gt;Bing Maps on Channel 9&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/product/licensing.aspx" class="externalLink"&gt;Licensing&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;While this site is being populated with content, you can also view the &lt;a href="http://pietschsoft.com/page/Bing-Maps-for-Enterprise-Developer-Resources.aspx" class="externalLink"&gt;Bing Maps for Enterprise Developer Resources List maintained by Chris Pietschmann&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for a large list of articles on how to do various things with the Bing Maps platform.&lt;br /&gt;
&lt;h2&gt;Disclaimer&lt;/h2&gt;
This site/project is not maintained or affiliated with Microsoft. This is a community created project that is meant to assist others in building applications that utilize Bing Maps for Enterprise.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:06:32 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20101225100632P</guid></item><item><title>Source code checked in, #82353</title><link>http://bingmaps.codeplex.com/SourceControl/changeset/changes/82353</link><description>first checkin of basic bingmaps 7 &amp;#47;wcf web service example</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:05:03 GMT</pubDate><guid isPermaLink="false">Source code checked in, #82353 20101225100503P</guid></item><item><title>Source code checked in, #82352</title><link>http://bingmaps.codeplex.com/SourceControl/changeset/changes/82352</link><description>creating</description><author>earthware</author><pubDate>Sat, 25 Dec 2010 22:02:37 GMT</pubDate><guid isPermaLink="false">Source code checked in, #82352 20101225100237P</guid></item><item><title>Updated Wiki: Home</title><link>http://bingmaps.codeplex.com/wikipage?version=14</link><description>&lt;div class="wikidoc"&gt;&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;This is a community showcase of sample Bing Maps for Enterprise implementations, with articles and links to additional resources.&lt;br /&gt;&lt;br /&gt;We are working to provide a comprehensive list of documentation resources available, both within this site and external, for Bing Maps for Enterprise. You can find links below to documentation sections as we create them.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Getting Started
&lt;ul&gt;&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20JavaScript%20%2f%20Ajax&amp;referringTitle=Home"&gt;Getting Started in JavaScript &amp;#47; Ajax&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20Silverlight&amp;referringTitle=Home"&gt;Getting Started in Silverlight&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Getting Started in Web Services&lt;/li&gt;
&lt;li&gt;Getting Started in Windows Phone 7&lt;/li&gt;
&lt;li&gt;Getting Started with Bing Maps Apps&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20with%20Bing%20Maps%203D&amp;referringTitle=Home"&gt;Getting Started with Bing Maps 3D&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;In Depth Guides
&lt;ul&gt;&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Adding%203D%20Models%20to%20Bing%20Maps&amp;referringTitle=Home"&gt;Adding 3D Models to Bing Maps&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;Official Microsoft Resources
&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/product/overview.aspx" class="externalLink"&gt;Bing Maps Platform Overview&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd877180.aspx" class="externalLink"&gt;Bing Maps APIs&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/isdk/ajax" class="externalLink"&gt;AJAX Interactive SDK&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/isdk/silverlight" class="externalLink"&gt;Silverlight Interactive SDK&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb545001.aspx" class="externalLink"&gt;Developer Articles&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bing.com/community/blogs/maps" class="externalLink"&gt;Bing Maps Blog&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/vemapcontroldev/threads" class="externalLink"&gt;Bing Maps Forums&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://channel9.msdn.com/tags/Bing+Maps" class="externalLink"&gt;Bing Maps on Channel 9&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/product/licensing.aspx" class="externalLink"&gt;Licensing&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;While this site is being populated with content, you can also view the &lt;a href="http://pietschsoft.com/page/Bing-Maps-for-Enterprise-Developer-Resources.aspx" class="externalLink"&gt;Bing Maps for Enterprise Developer Resources List maintained by Chris Pietschmann&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for a large list of articles on how to do various things with the Bing Maps platform.&lt;br /&gt;
&lt;h2&gt;Disclaimer&lt;/h2&gt;
This site/project is not maintained or affiliated with Microsoft. This is a community created project that is meant to assist others in building applications that utilize Bing Maps for Enterprise.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>tanoshimi</author><pubDate>Wed, 20 Oct 2010 16:44:46 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20101020044446P</guid></item><item><title>Updated Wiki: Home</title><link>http://bingmaps.codeplex.com/wikipage?version=13</link><description>&lt;div class="wikidoc"&gt;&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;This is a community showcase of sample Bing Maps for Enterprise implementations, with articles and links to additional resources.&lt;br /&gt;&lt;br /&gt;We are working to provide a comprehensive list of documentation resources available, both within this site and external, for Bing Maps for Enterprise. You can find links below to documentation sections as we create them.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Getting Started
&lt;ul&gt;&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20JavaScript%20%2f%20Ajax&amp;referringTitle=Home"&gt;Getting Started in JavaScript &amp;#47; Ajax&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20in%20Silverlight&amp;referringTitle=Home"&gt;Getting Started in Silverlight&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Getting Started in Web Services&lt;/li&gt;
&lt;li&gt;Getting Started in Windows Phone 7&lt;/li&gt;
&lt;li&gt;Getting Started with Bing Maps Apps&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Getting%20Started%20with%20Bing%20Maps%203D&amp;referringTitle=Home"&gt;Getting Started with Bing Maps 3D&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;

&lt;ul&gt;&lt;li&gt;Official Microsoft Resources
&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/product/overview.aspx" class="externalLink"&gt;Bing Maps Platform Overview&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd877180.aspx" class="externalLink"&gt;Bing Maps APIs&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/isdk/ajax" class="externalLink"&gt;AJAX Interactive SDK&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/isdk/silverlight" class="externalLink"&gt;Silverlight Interactive SDK&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb545001.aspx" class="externalLink"&gt;Developer Articles&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bing.com/community/blogs/maps" class="externalLink"&gt;Bing Maps Blog&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/vemapcontroldev/threads" class="externalLink"&gt;Bing Maps Forums&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://channel9.msdn.com/tags/Bing+Maps" class="externalLink"&gt;Bing Maps on Channel 9&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/maps/product/licensing.aspx" class="externalLink"&gt;Licensing&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;While this site is being populated with content, you can also view the &lt;a href="http://pietschsoft.com/page/Bing-Maps-for-Enterprise-Developer-Resources.aspx" class="externalLink"&gt;Bing Maps for Enterprise Developer Resources List maintained by Chris Pietschmann&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; for a large list of articles on how to do various things with the Bing Maps platform.&lt;br /&gt;
&lt;h2&gt;Disclaimer&lt;/h2&gt;
This site/project is not maintained or affiliated with Microsoft. This is a community created project that is meant to assist others in building applications that utilize Bing Maps for Enterprise.&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>crpietschmann</author><pubDate>Sun, 17 Oct 2010 16:11:12 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20101017041112P</guid></item><item><title>Updated Wiki: Adding 3D Models to Bing Maps</title><link>http://bingmaps.codeplex.com/wikipage?title=Adding 3D Models to Bing Maps&amp;version=7</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;Adding 3D Models to Bing Maps&lt;/h1&gt;
&lt;p&gt;In addition to navigating around a three-dimensional model of the earth, Bing Maps 3D gives you the ability to import your own custom 3D models and place them anywhere in the virtual world.&lt;/p&gt;
&lt;p&gt;Currently, Bing Maps supports models saved in the Wavefront object file format (file extension .obj, hereafter referred to as OBJ). This is a well-established, common format for 3D data, and models in the OBJ format can be opened, edited, and saved by almost all popular 3D modelling software, including 3D Studio, Blender, Caligari TrueSpace, and Google Sketchup Pro. The information inside an OBJ file is stored as plain ASCII text, which means you can even create and edit simple OBJ files using any basic text editor, such as Windows Notepad.    &lt;br&gt;This guide will provide an overview of the structure of the OBJ format and explain the elements that can be used to create 3D models in Bing Maps. I'll then show you how to make a simple model file and import that into the Bing Maps 3D world. We'll then look at how to change the appearance of that model, using texture and lighting, and adjusting its size, position, and orientation.&lt;/p&gt;
&lt;h3&gt;Platform&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Bing Maps Javascript Map Control v6.2 &lt;/li&gt;
&lt;li&gt;Bing Maps 3D (http://www.microsoft.com/Downloads/details.aspx?FamilyID=e9298080-50c4-4f2e-9fc4-4009074996ba) &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Difficulty&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Intermediate &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Topics Covered&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;VEMap.SetMapMode() &lt;/li&gt;
&lt;li&gt;VEMap.Import3DModel() &lt;/li&gt;
&lt;li&gt;VEModelSourceSpecification &lt;/li&gt;
&lt;li&gt;VEModelStatusCode &lt;/li&gt;
&lt;li&gt;VEModelFormat &lt;/li&gt;
&lt;li&gt;VEModelOrientation &lt;/li&gt;
&lt;li&gt;VEModelScale &lt;/li&gt;
&lt;li&gt;VEModelScaleUnit&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;Creating a Simple OBJ Model&lt;/h1&gt;
&lt;p&gt;Bing Maps 3D supports a subset of the OBJ file specification. The supported elements provide a syntax for the creation of coloured, textured, models created from a set of flat surfaces, which can be imported and placed anywhere in the Bing Maps 3D world. Some of the more advanced geometric features of the full OBJ standard are not supported, including the creation of curved surfaces. Furthermore, the materials used to render 3D objects in Bing Maps are limited to ambient and diffuse colour and texture. Nevertheless, with clever design, it is possible to create detailed, accurate models using the basic commands available.&lt;/p&gt;
&lt;p&gt;In fact, when designing 3D models for web-applications, it is often the case that &amp;quot;less is more&amp;quot; &amp;ndash; complex, high-definition models required significantly more time to download and render than simple models, and in many cases their increased accuracy offers little additional value in the sorts of applications for which Bing Maps 3D is likely to be used. Creating effective, simple low-polygon models is a discipline in itself, and very good practice in the art of good design.&lt;/p&gt;
&lt;h2&gt;Defining Geometric Vertices and Faces&lt;/h2&gt;
&lt;p&gt;Every 3D model is formed from vertices and faces.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;vertex&lt;/strong&gt; (plural, vertices) is a point in three-dimensional space, specified using x, y, z coordinates. In general, the x-axis extends to the right, the y-axis extends upwards, and the z-axis extends forwards out of the screen, as shown in Figure 1. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157583"&gt;&lt;img style="background-image:none;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;border-width:0px" title="3D_Fig1" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157585" border=0 alt="3D_Fig1" width=113 height=138&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Figure 1. x, y, and z axes in 3-dimensional space&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;face&lt;/strong&gt; is a single-sided, flat surface drawn between a set of vertices. A face that joins three vertices is a triangle, and a face that joins four vertices is called a quad. Faces may also join more than four vertices, in which case they are called polygons, or n-gons, however these types of faces are not supported by all 3D rendering engines, and are generally not recommended. In order to ensure compatibility across different programs, polygonal faces may be subdivided into several smaller triangular faces &amp;ndash; a process known as triangulation. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In the OBJ file format, each vertex is listed using the v character followed by the coordinate values of that vertex listed in x, y, z order, separated by spaces. The following demonstrates the syntax required to define a single vertex located at coordinates (0,0,0):    &lt;br&gt;&amp;lt;pre&amp;gt;v 0 0 0&amp;lt;/ore&amp;gt;     &lt;br&gt;The coordinate of each vertex in the OBJ file should be listed on a new line, with each line beginning with v. By using this list-based approach, every vertex can implicitly be assigned an index number, according to the order in which they are listed. Vertex indexes begin at 1, so the first line beginning with v defines the coordinates that represent vertex 1, the next line of coordinates will be vertex 2, and so on. It is common for all of the vertex data to be listed together in one block at the top of the OBJ file, but this does not have to be the case. The index numbering increases sequentially throughout the entire file, even when lines containing vertex data are separated by other data.     &lt;br&gt;Having defined two or more vertexes, we can define a face by using the f keyword followed by the index numbers of the vertexes to which that face joins. The following example creates a triangular face joining the first three vertices listed in the file:     &lt;br&gt;&amp;lt;pre&amp;gt;f 1 2 3&amp;lt;/pre&amp;gt;     &lt;br&gt;As with vertices, each face should be listed on a separate line. In addition to defining vertex coordinates (v), each face may optionally specify texture coordinates (vt) and normals (vn), which will be discussed later on.&lt;/p&gt;
&lt;h2&gt;Creating a Simple Box&lt;/h2&gt;
&lt;p&gt;Having considered the basic syntax required to define models in the OBJ format, let's illustrate these concepts by creating a simple box. Remember that OBJ files are just text files, so fire up your favourite text editor (Windows Notepad will do just fine), and create a new document.    &lt;br&gt;We will create a model representing the box illustrated in Figure 2. This model contains 6 faces (labeled A &amp;ndash; F), defined between 8 vertices (labeled 1 &amp;ndash; 8). The box is 5 units wide, 3 units high, and 2 units deep. Note that the coordinate values listed in an OBJ file do not have any associated unit of measurement, so this model could represent an object 5 metres wide, 5 feet wide, or 5 miles wide! The scale of a model is determined at the point that it is imported into Bing Maps 3D, using the VEModelScale class and VEModelScaleUnit enumeration, which will be discussed later in this guide. To make life easier for yourself when creating your own models, I recommend ensuring that you base your coordinates on a standard unit of measurement (such as the metre), and that you use the same scale unit for all three axes.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&lt;span style="color:#ff0000"&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157586"&gt;&lt;img style="background-image:none;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;border-width:0px" title=18296f0303scrap src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157587" border=0 alt=18296f0303scrap width=195 height=131&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#ff0000"&gt;&amp;nbsp;&lt;/span&gt;Figure 2. A three-dimensional model of a box&lt;/p&gt;
&lt;p&gt;&lt;br&gt;To create the vertices and faces of this box, enter the following into your new text file:&lt;/p&gt;
&lt;pre&gt;&lt;span style="font-size:x-small"&gt;#Define the x, y, z coordinates of the geometric vertices from 1 - 8
&lt;/span&gt;&lt;p&gt;&lt;span style="font-size:x-small"&gt;v 0.0 0.0 0.0&lt;br&gt;v 5.0 0.0 0.0&lt;br&gt;v 5.0 3.0 0.0&lt;br&gt;v 0.0 3.0 0.0&lt;br&gt;v 0.0 0.0 2.0&lt;br&gt;v 5.0 0.0 2.0&lt;br&gt;v 5.0 3.0 2.0&lt;br&gt;v 0.0 3.0 2.0&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:x-small"&gt;&amp;nbsp;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;span style="font-size:x-small"&gt;#Define the quad faces from A - F
&lt;/span&gt;&lt;p&gt;&lt;span style="font-size:x-small"&gt;f 5 6 7 8&lt;br&gt;f 6 2 3 7&lt;br&gt;f 2 1 4 3&lt;br&gt;f 1 5 8 4  &lt;br&gt;f 8 7 3 4  &lt;br&gt;f 1 2 6 5&lt;/span&gt;&lt;/p&gt;&lt;/pre&gt;
&lt;p&gt;Let's take a moment to review some important points from the above code listing:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You can include comments in a .obj file by using the hash (#) symbol at the beginning of a line. This will comment out the whole of that line. &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;The coordinates of each vertex are given as floating point numbers. Even though we are using whole units for each coordinate point in this example, I've deliberately included the decimal place to signify that a sub-unit precision can be stated. &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;I've deliberately listed the vertices of each face in counter-clockwise order, starting with the vertex at the bottom left corner as you look straight-on at the face. This is not necessary, but it does make things a lot easier when you come to mapping textures onto the faces, as we will do later in this guide. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That is all that's required to define a basic box, so save the file as box.obj, and we'll move onto how to import this box into Bing Maps.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Caution&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Make sure that you save the .obj file using ANSI encoding, not Unicode (UTF-8 or UTF-16), or else Bing Maps 3D will not be able to load the file.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;Importing the Model&lt;/h1&gt;
&lt;p&gt;Before getting into the details of how to import our model, let's first create a simple webpage that displays a Bing Maps 3D map. Create a new file and enter the following code:&lt;/p&gt;
&lt;pre&gt;&lt;span style="font-size:x-small"&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;&amp;nbsp;&amp;nbsp; &amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;gt;&lt;br&gt;&amp;lt;html&amp;gt;&lt;br&gt;&amp;lt;head&amp;gt;&lt;br&gt; &amp;lt;title&amp;gt;Importing 3D Models&amp;lt;/title&amp;gt;&lt;br&gt; &amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=utf-8&amp;quot;&amp;gt;&lt;br&gt; &amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;nbsp; src=&lt;a href="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.3"&gt;http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.3&lt;/a&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;br&gt; &amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; var map = null;&lt;br&gt;&amp;nbsp;&amp;nbsp; function getMap() {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new VEMap('divMap');&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.LoadMap(new VELatLong(52.6, 1.3), 19, VEMapStyle.Aerial, false, VEMapMode.Mode3D);&lt;br&gt;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; function disposeMap() {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.Dispose();&lt;br&gt;&amp;nbsp;&amp;nbsp; }&lt;br&gt; &amp;lt;/script&amp;gt;&lt;br&gt;&lt;br&gt;&amp;lt;/head&amp;gt;&lt;br&gt;&amp;lt;body onload=&amp;quot;getMap();&amp;quot; onunload=&amp;quot;disposeMap();&amp;quot;&amp;gt;&lt;br&gt; &amp;lt;div id=&amp;quot;divMap&amp;quot; style=&amp;quot;position: relative; width: 800px; height: 600px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;&amp;lt;/body&amp;gt;&lt;br&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;There's nothing unusual in this code listing &amp;ndash; we simply use the LoadMap() method to initialize a new Bing map, and place it in the divMap element on the page. Notice that we specify the VEMapMode.Mode3D enumeration as the fifth parameter of the LoadMap() method, so that the map initially loads up in 3D mode. Save this file using the .htm file extension (for simplicity, I'll assume that you name the file HTMLPage.htm) and load it in your browser. The page should appear as shown in Figure 3.&lt;/p&gt;
&lt;hr&gt;
&lt;div&gt;
&lt;p&gt;&lt;strong&gt;Tip &lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For details on all the parameters that can be supplied to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;LoadMap()&lt;/span&gt;&lt;/span&gt; method, please see &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;http://msdn.microsoft.com/en-us/library/bb412546.aspx&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;p&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157588"&gt;&lt;img style="background-image:none;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;border:0px" title="clip_image002" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157589" border=0 alt="clip_image002" width=514 height=484&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Figure 3. A basic 3D map&lt;/p&gt;
&lt;hr&gt;
&lt;div&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If you do not have the Bing Maps 3D control installed on your computer, rather than seeing Figure 3 you will receive a message prompting you to download the 3D application first. Once you have downloaded and installed the application, reload the page to see the 3D map.&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;
&lt;p&gt;Now that we have our basic 3D template, let's add the code to load our box model.&lt;/p&gt;
&lt;h3&gt;Specifying the Model Source&lt;/h3&gt;
&lt;p&gt;To specify the properties of our model, we can define a new &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;VEModelSourceSpecification&lt;/span&gt;&lt;/span&gt; as follows:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;var modelSpec = new VEModelSourceSpecification(      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; VEModelFormat.OBJ,       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; location.href.substring(0, location.href.lastIndexOf('/')) + &amp;quot;/box.obj&amp;quot;       &lt;br&gt;&amp;nbsp; );&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;This constructor takes two parameters:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The first parameter defines the format of the model being loaded. Currently only OBJ files are supported, specified using the VEModelFormat.OBJ enumeration. &lt;/li&gt;
&lt;li&gt;The second parameter is the URL of the model file &amp;ndash; in this case, the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; file we just created. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Note that the URL supplied in the second parameter must be a full URL to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.obj&lt;/span&gt;&lt;/span&gt; model file, not simply a relative link to the file. For this reason, I am using a substring of the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;location.href&lt;/span&gt;&lt;/span&gt; property to determine the URL of the current page, and appending the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; filename onto the end of the string. This assumes that the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; file is saved in the same directory as this html file itself. If this is not the case, you must specify the subdirectory in which it is located, or instead list the full URL to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; file.&lt;/p&gt;
&lt;p&gt;The &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;VEModelSourceSpecification&lt;/span&gt;&lt;/span&gt; constructor also accepts an optional third parameter, specifying a shape layer into which the imported model will be added. Omitting this parameter, as in this example, means that the model will be added to the base layer of the map.&lt;/p&gt;
&lt;h3&gt;Importing the Model&lt;/h3&gt;
&lt;p&gt;Having defined a model specification, we load that model onto the map using the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Import3DModel()&lt;/span&gt;&lt;/span&gt; method,as shown below:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;map.Import3DModel(      &lt;br&gt;&amp;nbsp; modelSpec,       &lt;br&gt;&amp;nbsp; onModelLoad,       &lt;br&gt;&amp;nbsp; new VELatLong(52.6, 1.3),       &lt;br&gt;&amp;nbsp; null,       &lt;br&gt;&amp;nbsp; null       &lt;br&gt;);       &lt;br&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;This method accepts the model specification that we just created, together with a &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;VELatLong()&lt;/span&gt;&lt;/span&gt; object representing the location at which to place the model. We have also provided the name of a callback method, &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;onModelLoad&lt;/span&gt;&lt;/span&gt;, which will be called after the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Import3DModel()&lt;/span&gt;&lt;/span&gt; method has finished (we'll create this function shortly). The final two parameters of &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Import3DModel()&lt;/span&gt;&lt;/span&gt; are used to specify the orientation and scale of the model, which we'll look at later on in this guide. For now, I've left both of these as &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;null&lt;/span&gt;&lt;/span&gt;.&lt;/p&gt;
&lt;h3&gt;The Callback&lt;/h3&gt;
&lt;p&gt;The &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;onModelLoad()&lt;/span&gt;&lt;/span&gt; callback receives two arguments from the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Import3DModel()&lt;/span&gt;&lt;/span&gt; method. The first argument is a &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;VEShape()&lt;/span&gt;&lt;/span&gt; representing a pushpin associated with the model, and the second is a status code to indicate whether or not the model was imported correctly. In our code, we'll check the value of this status code and display an appropriate message using the javascript &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;alert&lt;/span&gt;&lt;/span&gt; method, as follows:&lt;/p&gt;
&lt;pre&gt;&lt;p&gt;&lt;span style="font-size:x-small"&gt;function onModelLoad(model, status) {&lt;br&gt;&amp;nbsp; if (status == VEModelStatusCode.Success) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&amp;quot;Successfully loaded 3D model.&amp;quot;);&lt;br&gt;&amp;nbsp; }&lt;br&gt;&amp;nbsp; if (status == VEModelStatusCode.InvalidURL) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&amp;quot;Invalid URL specified.&amp;quot;);&lt;br&gt;&amp;nbsp; }&lt;br&gt;&amp;nbsp; if (status == VEModelStatusCode.Failed) {&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&amp;quot;Failed to load 3D model.&amp;quot;);&lt;br&gt;&amp;nbsp; }&lt;/span&gt;&lt;/p&gt;&lt;/pre&gt;
&lt;h3&gt;Putting It All Together&lt;/h3&gt;
&lt;p&gt;The final step is to actually call the code that loads the 3d model from our page. We'll do this as soon as the map has finished loading, by placing the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;load3DModel()&lt;/span&gt;&lt;/span&gt; method in the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;onLoadMap&lt;/span&gt;&lt;/span&gt; callback of the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;LoadMap()&lt;/span&gt;&lt;/span&gt; method.&lt;/p&gt;
&lt;p&gt;The final code listing is shown as follows:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot; &amp;quot;&lt;/span&gt;&lt;a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;"&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;gt;      &lt;br&gt;&amp;lt;html&amp;gt;       &lt;br&gt;&amp;lt;head&amp;gt;       &lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;       &lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;lt;meta http-equiv=&amp;quot;Content-Type&amp;quot; content=&amp;quot;text/html; charset=utf-8&amp;quot;&amp;gt;       &lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;&lt;/span&gt;&lt;a href="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashxv=6.3"&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;http://dev.virtualearth.net/mapcontrol/mapcontrol.ashxv=6.3&lt;/span&gt;&lt;/a&gt;&amp;quot;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;gt;&amp;lt;/script&amp;gt;      &lt;br&gt;&amp;nbsp;&amp;nbsp; &amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var map = null;       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function getMap() {       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map = new VEMap('divMap');       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.onLoadMap = load3DModel;       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.LoadMap(new VELatLong(52.6, 1.3), 19, VEMapStyle.Aerial, false, VEMapMode.Mode3D);       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function disposeMap() {      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.Dispose();       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function load3DModel() {      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var modelSpec = new VEModelSourceSpecification(       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VEModelFormat.OBJ,       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; location.href.substring(0, location.href.lastIndexOf('/')) + &amp;quot;/box.obj&amp;quot;       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; map.Import3DModel(modelSpec, onModelLoad, new VELatLong(52.6, 1.3), null, null);       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function onModelLoad(model, status) {      &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == VEModelStatusCode.Success) {       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&amp;quot;Successfully loaded 3D model.&amp;quot;);       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == VEModelStatusCode.InvalidURL) {       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&amp;quot;Invalid URL specified.&amp;quot;);       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (status == VEModelStatusCode.Failed) {       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&amp;quot;Failed to load 3D model.&amp;quot;);       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }       &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }       &lt;br&gt;&amp;nbsp; &amp;lt;/script&amp;gt;       &lt;br&gt;&amp;lt;/head&amp;gt;       &lt;br&gt;&amp;lt;body onload=&amp;quot;getMap();&amp;quot; onunload=&amp;quot;disposeMap();&amp;quot;&amp;gt;       &lt;br&gt;&amp;nbsp; &amp;lt;div id=&amp;quot;divMap&amp;quot; style=&amp;quot;position: relative; width: 800px; height: 600px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;       &lt;br&gt;&amp;lt;/body&amp;gt;       &lt;br&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Save the file, and then load it in your browser. After the page has loaded, you should receive a javascript alert message stating &amp;quot;Successfully loaded 3D model.&amp;quot; Shortly afterwards, you will see the box rendered in the center of the map. Try zooming in and rotating around the model. It should appear as shown in Figure 4.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157590"&gt;&lt;img style="background-image:none;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;border:0px" title="clip_image002[8]" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157591" border=0 alt="clip_image002[8]" width=644 height=475&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Figure 4. A basic box in Bing Maps 3D&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;How Many Sides Does a Face Have?&lt;/h3&gt;
&lt;p&gt;All of the faces of a 3d model, specified using the &lt;span class=CodeInline&gt;f&lt;/span&gt; command in the OBJ file, are &lt;em&gt;single-sided&lt;/em&gt;. This can be hard to conceptualise, because in real-life, one-sided surfaces don't really exist. Perhaps the closest analogy is a one-way mirror: if you stand in front of the mirror you can see yourself, but if you were to stand on the opposite side of the mirror, you could see right through it. The same thing happens in Bing Maps 3D: if you look at the face of a model from the wrong direction, it will appear to be completely invisible and you can see right through it.&lt;/p&gt;
&lt;p&gt;The significance of this is that when we define a face, we must not only describe the vertices to which it connects, but also which direction it faces. In order to model a solid object, we therefore need to make sure that all of the sides face &amp;quot;outwards&amp;quot;. There are two ways of doing so:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When creating a face, in addition to listing the vertex coordinates, each point may have an associated &lt;strong&gt;vertex normal&lt;/strong&gt;. Vertex normals are 3d vectors that describe the normal direction at any point, used to determine which way the face faces. Vertex normals are listed in an &lt;span class=CodeInline&gt;.obj&lt;/span&gt; file using the &lt;span class=CodeInline&gt;vn&lt;/span&gt; command and, like vertex coordinates, are listed in x,y,z order. The following vertex normal specifies a normal that extends along the positive x axis: &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vn 1.0 0.0 0.0&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; To specify the vertex normal, &lt;span class=CodeInline&gt;vn&lt;/span&gt;,&amp;nbsp; associated with each vertex, &lt;span class=CodeInline&gt;v&lt;/span&gt;,&amp;nbsp; when defining a face, you list pairs of vertex coordinates and vertex normals separated by double oblique strokes following the &lt;span class=CodeInline&gt;f&lt;/span&gt; command, as shown below:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f v1//vn1 v2//vn2 v3//vn3&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If no vertex normals are supplied for a given face, then the &lt;span class=CodeInline&gt;f&lt;/span&gt; command will determine the normal of the face implicitly based on the order in which the &lt;span class=CodeInline&gt;v&lt;/span&gt; vertexes are supplied. The rule followed is that, if you were to imagine yourself looking straight on at a face pointing towards you, the vertices would be listed in counter-clockwise order. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In the box created in this example, we will correct the normality of our faces by stating each coordinate in counter-clockwise order, starting at the bottom left hand corner of each face. If you find that some of the sides of your box appear to be see-through, or exhibit other strange rendering behavior, you may want to check that you listed the vertexes of each face in the correct order.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;Adding Colour and Texture to the Model&lt;/h1&gt;
&lt;p&gt;In addition to the purely geometric properties of a model described by the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;v&lt;/span&gt;&lt;/span&gt; and &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;f&lt;/span&gt;&lt;/span&gt; keywords, the OBJ file format also allows you to specify &lt;strong&gt;materials&lt;/strong&gt; - colours and textures that can be applied to alter the appearance of a model.&lt;/p&gt;
&lt;p&gt;The materials associated with a model are stored in a separate text file, normally using the same name as the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.obj&lt;/span&gt;&lt;/span&gt; file to which they relate but using the file extension &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.mtl&lt;/span&gt;&lt;/span&gt;. Material files must be located either in the same base location as, or in a subfolder of, the associated &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.obj&lt;/span&gt;&lt;/span&gt; model file. To create a materials file containing colours and textures to apply to our box model, we will create a new file called &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.mtl&lt;/span&gt;&lt;/span&gt;, and save it in the same directory as both &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; and &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;HTMLPage.htm&lt;/span&gt;&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;A material file may contain many different materials. Each material begins with a new line starting with the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;newmtl&lt;/span&gt;&lt;/span&gt; command, followed by the name of the material that follows. The material name can be any length, but should not contain any spaces. Following the name comes a series of properties defining the material itself.&lt;/p&gt;
&lt;p&gt;Materials are defined using a combination of &lt;strong&gt;colour maps&lt;/strong&gt; and &lt;strong&gt;texture maps&lt;/strong&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Colour maps consist of three values representing the red, green, and blue components of the overall reflectivity of the material. &lt;/li&gt;
&lt;li&gt;Texture maps specify the name of an image file (e.g. a &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.jpg&lt;/span&gt;&lt;/span&gt;, &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.gif&lt;/span&gt;&lt;/span&gt;, or &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.png&lt;/span&gt;&lt;/span&gt; file) that represents the textured surface of a material. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When rendered, the texture map is multiplied by the corresponding colour map to produce the overall appearance of a material. Bing Maps 3D supports two sorts of texture and colour maps, representing &lt;strong&gt;ambient&lt;/strong&gt; and &lt;strong&gt;diffuse&lt;/strong&gt; properties of a material:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ambient lighting&lt;/strong&gt; refers to the general background level of illumination in the environment, independent of any particular light source. You can think of it as modeling the general amount of daylight in a scene, which comes from all directions and is scattered in all directions. The ambient colour and texture map of a material are defined using the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Ka&lt;/span&gt;&lt;/span&gt; and &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;map_Ka&lt;/span&gt;&lt;/span&gt; keywords, respectively.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Diffuse lighting&lt;/strong&gt; comes from a particular light source, and the intensity with which it reflects off a surface is dependent on the angle at which the light strikes the face. Once reflected from a surface, diffuse light, like ambient light, is scattered equally in all directions. The diffuse colour and texture map of a material are defined in a &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.mtl&lt;/span&gt;&lt;/span&gt; file using &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Kd&lt;/span&gt;&lt;/span&gt; and &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;map_Kd&lt;/span&gt;&lt;/span&gt;, respectively&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To compare the differences between ambient and diffuse materials, let's experiment by creating two simple materials. First, let's create a diffuse green material. Add the following to the new &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.mtl&lt;/span&gt;&lt;/span&gt; file:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;newmtl diffuse_green     &lt;br&gt;Kd 0.0000 1.0000 0.0000&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Colour maps are specified using three values, each ranging from 0 &amp;ndash; 1, representing the red, green, and blue reflectivity values of the associated material. Since we are using the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;Kd&lt;/span&gt;&lt;/span&gt; command, the above code represents a &lt;em&gt;diffuse&lt;/em&gt; green material.&lt;/p&gt;
&lt;p&gt;To apply this new material onto our box, we need to go back to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; file. At the top of the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.obj&lt;/span&gt;&lt;/span&gt; file, we first need to include a reference to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.mtl&lt;/span&gt;&lt;/span&gt; material library using the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;mtllib&lt;/span&gt;&lt;/span&gt; statement, like this:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;mtllib box.mtl&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Then, to apply any of the materials from the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.mtl&lt;/span&gt;&lt;/span&gt; file onto the faces of a model, use the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;usemtl&lt;/span&gt;&lt;/span&gt; file to specify the name of a material as it is listed in the materials file. This material will then be applied to all faces subsequently defined in the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;.obj&lt;/span&gt;&lt;/span&gt; file, until the next &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;usemtl&lt;/span&gt;&lt;/span&gt; statement is encountered. So, to apply the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;diffuse_green&lt;/span&gt;&lt;/span&gt; material to every face of the box, we can include the following statement immediately before the list of faces:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;usemtl diffuse_green&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; file now appears as follows:&lt;/p&gt;
&lt;pre&gt;&lt;span style="font-size:x-small"&gt;# Define the vertexes
v 0.0 0.0 0.0
v 5.0 0.0 0.0
v 5.0 3.0 0.0
v 0.0 3.0 0.0
v 0.0 0.0 2.0
v 5.0 0.0 2.0
v 5.0 3.0 2.0
v 0.0 3.0 2.0

# Load the material file
mtllib box.mtl

# Use the diffuse_green material
usemtl diffuse_green

# Define the faces
f 5 6 7 8
f 6 2 3 7
f 2 1 4 3
f 1 5 8 4
f 8 7 3 4
f 1 2 6 5&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;Save the file and reload the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;HTMLPage.htm&lt;/span&gt;&lt;/span&gt; page in your browser. Notice the appearance of the box. Now go back to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.mtl&lt;/span&gt;&lt;/span&gt; file and define a new &lt;em&gt;ambient&lt;/em&gt; green material by adding the following to the end of the file:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;newmtl ambient_green     &lt;br&gt;Ka 0.0000 1.0000 0.0000&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;To apply this material to the box, remember to go back to the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;box.obj&lt;/span&gt;&lt;/span&gt; file and alter the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;usemtl&lt;/span&gt;&lt;/span&gt; statement to use the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;ambient_green&lt;/span&gt;&lt;/span&gt; material rather than the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;diffuse_green&lt;/span&gt;&lt;/span&gt; material. Save the file and then reload your browser. Figure 5 illustrates the difference between diffuse and ambient materials on two cubes shown side-by-side.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157592"&gt;&lt;img style="background-image:none;padding-left:0px;padding-right:0px;display:inline;padding-top:0px;border:0px" title="clip_image002[10]" src="http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=bingmaps&amp;DownloadId=157593" border=0 alt="clip_image002[10]" width=644 height=236&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Figure 5. Comparing diffuse material (left) and ambient material (right)&lt;/p&gt;
&lt;p&gt;The final parameter that can be used to affect the appearance of a material is the &lt;strong&gt;dissolve&lt;/strong&gt; factor &amp;ndash; in other words, the transparency of the material. Dissolve factors range from 0.0 to 1.0, with 1.0 being fully opaque, while 0.0 is fully transparent. The default value is 1.0.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;Changing Size and Orientation of the Model&lt;/h1&gt;
&lt;p&gt;Remember from earlier that the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt"&gt;Import3dModel()&lt;/span&gt;&lt;/span&gt; method accepts two optional parameters specifying the orientation and scale of the model. Currently, &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt"&gt;null&lt;/span&gt;&lt;/span&gt; values have been passed for both of these, leaving the model at default scale and orientation, in which one unit of measure equals one metre, and the &amp;quot;front&amp;quot; of the box faces north. In this section, we'll look at how we can override these defaults.&lt;/p&gt;
&lt;h2&gt;Orientation&lt;/h2&gt;
&lt;p&gt;To specify the orientation of a model, you can create an instance of the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;VEModelOrientation&lt;/span&gt;&lt;/span&gt; class. The constructor requires three arguments &amp;ndash; all of which are floating-point values in decimal degrees, as follows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;em&gt;heading&lt;/em&gt;&lt;/strong&gt;&lt;em&gt;: &lt;/em&gt;The rotation of the model about the z-axis, in a counter-clockwise direction as seen facing along the z-axis away from the origin. &lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;strong&gt;tilt&lt;/strong&gt;:&lt;strong&gt; &lt;/strong&gt;&lt;/em&gt;The rotation of the model about the x-axis, in a counter-clockwise direction as seen facing along the positive x-axis away from the origin. &lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;strong&gt;roll&lt;/strong&gt;&lt;/em&gt;&lt;em&gt;: &lt;/em&gt;&lt;em&gt;&lt;span style="font-size:12pt"&gt;T&lt;/span&gt;&lt;/em&gt;he rotation of the model about the y-axis, in a counter-clockwise direction as seen facing along the positive y-axis away from the origin. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following code illustrates the &lt;span class=CodeInline&gt;&lt;span style="font-size:10pt" lang=EN-US&gt;VEModelOrientation &lt;/span&gt;&lt;/span&gt;required to rotate the box to face North-East, tilted up 10 degrees towards the sky:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New"&gt;&lt;span style="color:#000000"&gt;&lt;span style="color:blue;font-size:10pt"&gt;&lt;span style="color:#000000"&gt;new&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:10pt"&gt; VEModelOrientation(0, 45, 20)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;Scale&lt;/h2&gt;
&lt;p&gt;By default, each &amp;quot;unit&amp;quot; specified in the OBJ file corresponds to one metre. The front face of the box in this example extends from the vertex at (0, 0, 0) to (5, 3, 0) &amp;ndash; so it is 5 metres wide and 3 metres high. You can adjust this so that each unit corresponds to a different unit of measure. For example, the following code transforms the box to be 5 &lt;em&gt;feet&lt;/em&gt; wide by 3 feet tall.&lt;/p&gt;
&lt;pre&gt;&lt;span style="font-size:x-small"&gt;new VEModelScale(VEModelScaleUnit.Feet)&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;Alternatively, you can specify scale factors by which each of the X, Y, and Z dimensions should be multiplied. The following code listing demonstrates how to scale the model so that it has normal width and depth (5 metres and 2 metres), but double height (6 metres):&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small"&gt;new VEModelScale(1, 1, 2)&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>crpietschmann</author><pubDate>Sun, 17 Oct 2010 16:08:11 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Adding 3D Models to Bing Maps 20101017040811P</guid></item><item><title>Updated Wiki: Getting Started in JavaScript / Ajax</title><link>http://bingmaps.codeplex.com/wikipage?title=Getting Started in JavaScript / Ajax&amp;version=4</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;Getting Started in JavaScript / Ajax&lt;/h1&gt;
&lt;i&gt;...Content Needed...&lt;/i&gt;&lt;br /&gt;
&lt;h2&gt;Additional Articles&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://bingmaps.codeplex.com/wikipage?title=Adding%203D%20Models%20to%20Bing%20Maps&amp;referringTitle=Getting%20Started%20in%20JavaScript%20%2f%20Ajax"&gt;Adding 3D Models to Bing Maps&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>crpietschmann</author><pubDate>Sun, 17 Oct 2010 16:07:35 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Getting Started in JavaScript / Ajax 20101017040735P</guid></item></channel></rss>