# GraticuleAdornmentLayer out of scale

**URL:** <https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789>\
**Category:** WPF\
**Created:** [August 25, 2010, 7:56pm UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789 "2010-08-25T19:56:30Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Klaus3](https://community.thinkgeo.com/letter_avatar_proxy/v4/letter/k/e5b9ba/32.png) [@Klaus3](https://community.thinkgeo.com/u/Klaus3)\
**Post date:** [August 25, 2010, 7:56pm UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789/1 "2010-08-25T19:56:30Z")

</div>

Howard,&nbsp;when&nbsp;I&nbsp;add&nbsp;the&nbsp;GraticuleAdornmentLayer&nbsp;on&nbsp;to&nbsp;the&nbsp;WorldMapKitWmsWpfOverlay,&nbsp;it&nbsp;does&nbsp;not&nbsp;scale.&nbsp;&nbsp;Also,&nbsp;when&nbsp;the&nbsp;map&nbsp;zooms&nbsp;and&nbsp;pans,&nbsp;the&nbsp;grid&nbsp;does&nbsp;not&nbsp;scale&nbsp;with&nbsp;the&nbsp;map.&nbsp;&nbsp;Is&nbsp;this&nbsp;because&nbsp;of&nbsp;the&nbsp;projection&nbsp;difference&nbsp;between&nbsp;WMK&nbsp;and&nbsp;the&nbsp;grid&nbsp;line?

&nbsp;

TIA.

---

<div class="post-metadata">

**Author:** ![Howard](https://community.thinkgeo.com/letter_avatar_proxy/v4/letter/h/90ced4/32.png) [@Howard](https://community.thinkgeo.com/u/Howard)\
**Post date:** [August 26, 2010, 1:33am UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789/2 "2010-08-26T01:33:24Z")

</div>

Hi&nbsp;Klaus,  
  
  
  
Do&nbsp;you&nbsp;set&nbsp;projection&nbsp;or&nbsp;st.&nbsp;on&nbsp;the&nbsp;overlay?&nbsp;if&nbsp;yes,&nbsp;please&nbsp;set&nbsp;the&nbsp;same&nbsp;projection&nbsp;in&nbsp;the&nbsp;layer&nbsp;too.&nbsp;Here&nbsp;is&nbsp;the&nbsp;code:  
  
`wpfMap1.MapUnit = GeographyUnit.Meter;WorldMapKitWmsWpfOverlay worldMapKitOverlay = new WorldMapKitWmsWpfOverlay();worldMapKitOverlay.Projection = WorldMapKitProjection.SphericalMercator;wpfMap1.Overlays.Add("WorldOverlay", worldMapKitOverlay);ManagedProj4Projection proj4 = new ManagedProj4Projection();proj4.InternalProjectionParameters = ManagedProj4Projection.GetEpsgParameters(4326);proj4.ExternalProjectionParameters = ManagedProj4Projection.GetGoogleMapParameters();proj4.Open();GraticuleAdornmentLayer graticuleAdornmentLayer = new GraticuleAdornmentLayer();graticuleAdornmentLayer.Projection = proj4;graticuleAdornmentLayer.GraticuleLineStyle.OuterPen.Color = GeoColor.FromArgb(125, GeoColor.StandardColors.Navy);wpfMap1.AdornmentOverlay.Layers.Add("graticule", graticuleAdornmentLayer);wpfMap1.CurrentExtent = new RectangleShape(-13939426.6371, 6701997.4056, -7812401.86, 2626987.386962);`  
  
  
Let&nbsp;me&nbsp;know&nbsp;if&nbsp;you&nbsp;have&nbsp;any&nbsp;more&nbsp;queries.  
  
  
  
Thanks,  
  
Howard

---

<div class="post-metadata">

**Author:** ![Klaus3](https://community.thinkgeo.com/letter_avatar_proxy/v4/letter/k/e5b9ba/32.png) [@Klaus3](https://community.thinkgeo.com/u/Klaus3)\
**Post date:** [August 26, 2010, 6:36am UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789/3 "2010-08-26T06:36:38Z")

</div>

I&nbsp;was&nbsp;not&nbsp;setting&nbsp;graticule&nbsp;overlay&nbsp;projection&nbsp;so&nbsp;that&nbsp;could&nbsp;be&nbsp;the&nbsp;problem.&nbsp;&nbsp;Is&nbsp;there&nbsp;a&nbsp;way&nbsp;to&nbsp;extract&nbsp;the&nbsp;current&nbsp;map&nbsp;projection&nbsp;from&nbsp;a&nbsp;layer?&nbsp;&nbsp;&nbsp;

Thanks&nbsp;for&nbsp;the&nbsp;sample.&nbsp;&nbsp;It&nbsp;still&nbsp;needs&nbsp;tuning&nbsp;as&nbsp;map&nbsp;zooming&nbsp;and&nbsp;panning&nbsp;does&nbsp;not&nbsp;rescale&nbsp;the&nbsp;latitudes.&nbsp;&nbsp;Longitudes&nbsp;are&nbsp;being&nbsp;scaled&nbsp;to&nbsp;map&nbsp;width&nbsp;OK.

My&nbsp;map&nbsp;is&nbsp;in&nbsp;DecimalDegress&nbsp;so&nbsp;I&nbsp;modified&nbsp;the&nbsp;sample&nbsp;as&nbsp;follows:

`  wpfMap1.MapUnit = GeographyUnit.DecimalDegree;            WorldMapKitWmsWpfOverlay worldMapKitOverlay = new WorldMapKitWmsWpfOverlay();            worldMapKitOverlay.Projection = WorldMapKitProjection.DecimalDegrees;            wpfMap1.Overlays.Add("WorldOverlay", worldMapKitOverlay);            ManagedProj4Projection proj4 = new ManagedProj4Projection();            proj4.InternalProjectionParameters = ManagedProj4Projection.GetEpsgParameters(4326);            proj4.ExternalProjectionParameters = ManagedProj4Projection.GetEpsgParameters(4326);            proj4.Open();            GraticuleAdornmentLayer graticuleAdornmentLayer = new GraticuleAdornmentLayer();            graticuleAdornmentLayer.Projection = proj4;            graticuleAdornmentLayer.GraticuleLineStyle.OuterPen.Color = GeoColor.FromArgb(125, GeoColor.StandardColors.Navy);            wpfMap1.AdornmentOverlay.Layers.Add("graticule", graticuleAdornmentLayer);            wpfMap1.CurrentExtent = //new RectangleShape(-13939426.6371, 6701997.4056, -7812401.86, 2626987.386962);                new RectangleShape(-180.0, 83.0, 180.0, -90.0);            wpfMap1.Refresh();`

&nbsp;

This&nbsp;sample&nbsp;locks&nbsp;up&nbsp;upon&nbsp;map&nbsp;refresh.&nbsp;&nbsp;Ideas?

Thanks&nbsp;again.

---

<div class="post-metadata">

**Author:** ![Val](https://community.thinkgeo.com/letter_avatar_proxy/v4/letter/v/e56c9b/32.png) [@Val](https://community.thinkgeo.com/u/Val)\
**Post date:** [August 26, 2010, 12:40pm UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789/4 "2010-08-26T12:40:22Z")

</div>

If&nbsp;your&nbsp;map&nbsp;is&nbsp;in&nbsp;Decimal&nbsp;Degrees,&nbsp;then&nbsp;you&nbsp;should&nbsp;not&nbsp;have&nbsp;to&nbsp;apply&nbsp;projection&nbsp;to&nbsp;the&nbsp;GraticuleAdornmentLayer&nbsp;because&nbsp;it&nbsp;is&nbsp;natively&nbsp;in&nbsp;Decimal&nbsp;Degrees.&nbsp;Actually,&nbsp;we&nbsp;have&nbsp;a&nbsp;sample&nbsp;app&nbsp;in&nbsp;the&nbsp;"How&nbsp;Do&nbsp;I"&nbsp;samples,&nbsp;"Create&nbsp;a&nbsp;GraticuleAdornmentLayer"&nbsp;in&nbsp;the&nbsp;"New&nbsp;Features&nbsp;compared&nbsp;with&nbsp;Current&nbsp;Desktop&nbsp;Edition"&nbsp;section&nbsp;that&nbsp;shows&nbsp;how&nbsp;to&nbsp;do&nbsp;that.&nbsp;See&nbsp;the&nbsp;code&nbsp;below:

&nbsp;

&nbsp;

`        private void WpfMap_Loaded(object sender, RoutedEventArgs e)           {               wpfMap1.MapUnit = GeographyUnit.DecimalDegree;                 WorldMapKitWmsWpfOverlay worldMapKitOverlay = new WorldMapKitWmsWpfOverlay();               wpfMap1.Overlays.Add("WorldOverlay", worldMapKitOverlay);                 GraticuleAdornmentLayer graticuleAdornmentLayer = new GraticuleAdornmentLayer();               graticuleAdornmentLayer.GraticuleLineStyle.OuterPen.Color = GeoColor.FromArgb(125, GeoColor.StandardColors.Navy);               wpfMap1.AdornmentOverlay.Layers.Add("graticule", graticuleAdornmentLayer);                 wpfMap1.CurrentExtent = new RectangleShape(-139.2, 92.4, 120.9, -93.2);               wpfMap1.Refresh();           }   `

---

<div class="post-metadata">

**Author:** ![Klaus3](https://community.thinkgeo.com/letter_avatar_proxy/v4/letter/k/e5b9ba/32.png) [@Klaus3](https://community.thinkgeo.com/u/Klaus3)\
**Post date:** [August 26, 2010, 1:01pm UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789/5 "2010-08-26T13:01:23Z")

</div>

Val,&nbsp;Howard,&nbsp;thanks.&nbsp;&nbsp;There&nbsp;is&nbsp;no&nbsp;issue&nbsp;at&nbsp;all.&nbsp;&nbsp;I&nbsp;was&nbsp;not&nbsp;looking&nbsp;at&nbsp;the&nbsp;grid&nbsp;lines&nbsp;correctly.&nbsp;&nbsp;&nbsp;&nbsp;  
&nbsp;&nbsp;  
&nbsp;When&nbsp;you&nbsp;zoom&nbsp;out,&nbsp;the&nbsp;lines&nbsp;still&nbsp;appear&nbsp;but&nbsp;with&nbsp;N/A&nbsp;as&nbsp;label&nbsp;when&nbsp;out&nbsp;of&nbsp;map&nbsp;extent&nbsp;.&nbsp;&nbsp;I&nbsp;was&nbsp;not&nbsp;correlating&nbsp;this&nbsp;to&nbsp;the&nbsp;map&nbsp;unit.

---

<div class="post-metadata">

**Author:** ![Val](https://community.thinkgeo.com/letter_avatar_proxy/v4/letter/v/e56c9b/32.png) [@Val](https://community.thinkgeo.com/u/Val)\
**Post date:** [August 26, 2010, 2:18pm UTC](https://community.thinkgeo.com/t/graticuleadornmentlayer-out-of-scale/2789/6 "2010-08-26T14:18:48Z")

</div>

I&nbsp;am&nbsp;glad&nbsp;you&nbsp;have&nbsp;it&nbsp;figured&nbsp;out.&nbsp;We&nbsp;are&nbsp;always&nbsp;happy&nbsp;to&nbsp;help.&nbsp;I&nbsp;know&nbsp;Map&nbsp;Suite&nbsp;API&nbsp;is&nbsp;pretty&nbsp;vast.
