<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
You just have to change the ll84Wkt to the new map WKT.<br>
For good measure, you should also change the string "LL84",<br>
but I don't think it is required.<br>
<br>
You can read the map WKT directly from the MapDefinition XML.<br>
You can also read the WKT from a FeatureSource, using the
SpatialContext information.<br>
<br>
If you have data in LL84 and a map in UTM, data should be re-projected
automatically by <br>
MapGuide, meaning that you don't have to change anything.<br>
<pre class="moz-signature" cols="72">Regards, Kenneth Skovhede, GEOGRAF A/S
</pre>
<br>
<br>
girish kumar bv skrev:
<blockquote
 cite="mid:20090519131517.60254.qmail@f4mail-235-242.rediffmail.com"
 type="cite">Hi all,<br>
  <br>
i am using projected coordinate system in my new map how to change the
below code to accomodate this. Instead of ll84 i am using wgs84 and UTM<br>
  <br>
&lt;%--<br>
&nbsp; -This file contains methods to create a temporary feature source and
a temporary layer.<br>
&nbsp; <br>
--%&gt;<br>
&lt;%@ page contentType="text/html; charset=UTF-8" %&gt;<br>
&lt;%@ page import="org.osgeo.mapguide.*" %&gt;<br>
&lt;%@ page import="java.util.*" %&gt;<br>
&lt;%@ page import="java.io.*" %&gt;<br>
&lt;%@ page import="javax.xml.parsers.*" %&gt;<br>
&lt;%@ page import="javax.xml.transform.*" %&gt;<br>
&lt;%@ page import="javax.xml.transform.dom.*" %&gt;<br>
&lt;%@ page import="javax.xml.transform.stream.*" %&gt;<br>
&lt;%@ page import="org.w3c.dom.*" %&gt;<br>
  <br>
&lt;%!<br>
// Create a temporary Feature Source to store the parcel marker
locations.<br>
  <br>
  <br>
  <br>
void CreatePropertyMarkerFeatureSource(MgFeatureService featureService,
MgResourceIdentifier parcelMarkerDataResId) throws MgException<br>
{<br>
&nbsp;&nbsp;&nbsp; String ll84Wkt = "GEOGCS["LL84",DATUM["WGS_1984",SPHEROID["WGS
84",6378137,298.25722293287],TOWGS84[0,0,0,0,0,0,0]],PRIMEM["Greenwich",0],UNIT["Degrees",1]]";<br>
  <br>
&nbsp;&nbsp;&nbsp; MgClassDefinition propertyMarkerClass = new MgClassDefinition();<br>
&nbsp;&nbsp;&nbsp; propertyMarkerClass.SetName("PropertyMarker");<br>
&nbsp;&nbsp;&nbsp; MgPropertyDefinitionCollection properties =
propertyMarkerClass.GetProperties();<br>
  <br>
&nbsp;&nbsp;&nbsp; MgDataPropertyDefinition idProperty = new
MgDataPropertyDefinition("ID");<br>
&nbsp;&nbsp;&nbsp; idProperty.SetDataType(MgPropertyType.Int32);<br>
&nbsp;&nbsp;&nbsp; idProperty.SetReadOnly(true);<br>
&nbsp;&nbsp;&nbsp; idProperty.SetNullable(false);<br>
&nbsp;&nbsp;&nbsp; idProperty.SetAutoGeneration(true);<br>
&nbsp;&nbsp;&nbsp; properties.Add(idProperty);<br>
  <br>
&nbsp;&nbsp;&nbsp; MgDataPropertyDefinition PropIdProperty = new
MgDataPropertyDefinition("PROPERTY_ID");<br>
&nbsp;&nbsp;&nbsp; PropIdProperty.SetDataType(MgPropertyType.String);<br>
&nbsp;&nbsp;&nbsp; PropIdProperty.SetLength(512);<br>
&nbsp;&nbsp;&nbsp; properties.Add(PropIdProperty);<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; MgDataPropertyDefinition ImageProperty = new
MgDataPropertyDefinition("IMAGE");<br>
&nbsp;&nbsp;&nbsp; ImageProperty.SetDataType(MgPropertyType.String);<br>
&nbsp;&nbsp;&nbsp; ImageProperty.SetLength(512);<br>
&nbsp;&nbsp;&nbsp; properties.Add(ImageProperty);<br>
&nbsp;&nbsp; <br>
  <br>
&nbsp;&nbsp;&nbsp; MgGeometricPropertyDefinition locationProperty = new
MgGeometricPropertyDefinition("Location");<br>
&nbsp;&nbsp;&nbsp; locationProperty.SetGeometryTypes(MgGeometryType.Polygon);<br>
&nbsp;&nbsp;&nbsp; locationProperty.SetHasElevation(false);<br>
&nbsp;&nbsp;&nbsp; locationProperty.SetHasMeasure(false);<br>
&nbsp;&nbsp;&nbsp; locationProperty.SetReadOnly(false);<br>
&nbsp;&nbsp;&nbsp; locationProperty.SetSpatialContextAssociation("LL84");<br>
&nbsp;&nbsp;&nbsp; properties.Add(locationProperty);<br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; <br>
&nbsp;&nbsp;&nbsp; MgDataPropertyDefinition OwnerNameProperty = new
MgDataPropertyDefinition("OWNER_NAME");<br>
&nbsp;&nbsp;&nbsp; OwnerNameProperty.SetDataType(MgPropertyType.String);<br>
&nbsp;&nbsp;&nbsp; OwnerNameProperty.SetLength(512);<br>
&nbsp;&nbsp;&nbsp; properties.Add(OwnerNameProperty);<br>
&nbsp;&nbsp;&nbsp; <br>
  <br>
&nbsp;&nbsp;&nbsp; MgPropertyDefinitionCollection idProperties =
propertyMarkerClass.GetIdentityProperties();<br>
&nbsp;&nbsp;&nbsp; idProperties.Add(idProperty);<br>
  <br>
&nbsp;&nbsp;&nbsp; propertyMarkerClass.SetDefaultGeometryPropertyName("Location");<br>
  <br>
&nbsp;&nbsp;&nbsp; MgFeatureSchema propertyMarkerSchema = new MgFeatureSchema();<br>
&nbsp;&nbsp;&nbsp; propertyMarkerSchema.SetName("PropertyMarkerSchema");<br>
&nbsp;&nbsp;&nbsp; propertyMarkerSchema.GetClasses().Add(propertyMarkerClass);<br>
  <br>
&nbsp;&nbsp;&nbsp; MgCreateSdfParams sdfParams = new MgCreateSdfParams("LL84",
ll84Wkt, propertyMarkerSchema);<br>
  <br>
&nbsp;&nbsp;&nbsp; featureService.CreateFeatureSource(parcelMarkerDataResId,
sdfParams);<br>
}<br>
  <br>
// Create a temporary Layer to display the parcel markers.<br>
  <br>
MgLayer CreatePropertyMarkerLayer(MgResourceService resourceService,
MgResourceIdentifier parcelMarkerDataResId, String sessionId) throws
MgException, Exception<br>
{<br>
&nbsp;&nbsp;&nbsp; // Load the ParcelMarker layer definition template into<br>
&nbsp;&nbsp;&nbsp; // a JSP DOM object, find the "ResourceId" element, and<br>
&nbsp;&nbsp;&nbsp; // modify it's content to reference the temporary<br>
&nbsp;&nbsp;&nbsp; // feature source.<br>
&nbsp;&nbsp;&nbsp; <br>
  <br>
&nbsp;&nbsp;&nbsp; DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();<br>
&nbsp;&nbsp;&nbsp; DocumentBuilder builder = factory.newDocumentBuilder();<br>
&nbsp;&nbsp;&nbsp; Document document = builder.parse(new
File(getServletContext().getRealPath("/") + "xyz"&nbsp; + File.separator +
"propertymarker.xml"));<br>
&nbsp;&nbsp;&nbsp; NodeList nodes = document.getElementsByTagName("ResourceId");<br>
&nbsp;&nbsp;&nbsp; Node resNode = nodes.item(0);<br>
&nbsp;&nbsp;&nbsp; Node resContent =
document.createTextNode(parcelMarkerDataResId.ToString());<br>
&nbsp;&nbsp;&nbsp; resNode.appendChild(resContent);<br>
  <br>
&nbsp;&nbsp;&nbsp; // write the modified layer XML definition into a byte stream<br>
&nbsp;&nbsp;&nbsp; //<br>
&nbsp;&nbsp;&nbsp; TransformerFactory tFactory = TransformerFactory.newInstance();<br>
&nbsp;&nbsp;&nbsp; Transformer transformer = tFactory.newTransformer();<br>
&nbsp;&nbsp;&nbsp; ByteArrayOutputStream bos = new ByteArrayOutputStream();<br>
&nbsp;&nbsp;&nbsp; DOMSource source = new DOMSource(document);<br>
&nbsp;&nbsp;&nbsp; StreamResult result = new StreamResult(bos);<br>
&nbsp;&nbsp;&nbsp; transformer.transform(source, result);<br>
  <br>
&nbsp;&nbsp;&nbsp; // Save the updated layer definition to the session repository
using the<br>
&nbsp;&nbsp;&nbsp; // ResourceService object.<br>
  <br>
&nbsp;&nbsp;&nbsp; byte[] layerDefinition = bos.toByteArray();<br>
&nbsp;&nbsp;&nbsp; MgByteSource byteSource = new MgByteSource(layerDefinition,
layerDefinition.length);<br>
&nbsp;&nbsp;&nbsp; byteSource.SetMimeType(MgMimeType.Xml);<br>
  <br>
&nbsp;&nbsp;&nbsp; MgResourceIdentifier tempLayerResId = new
MgResourceIdentifier("Session:" + sessionId +
"//PropertyMarker.LayerDefinition");<br>
  <br>
&nbsp;&nbsp;&nbsp; resourceService.SetResource(tempLayerResId, byteSource.GetReader(),
null);<br>
  <br>
&nbsp;&nbsp;&nbsp; // Create an MgLayer object based on the new layer definition<br>
&nbsp;&nbsp;&nbsp; // and return it to the caller.<br>
  <br>
&nbsp;&nbsp;&nbsp; MgLayer propertyMarkerLayer = new MgLayer(tempLayerResId,
resourceService);<br>
&nbsp;&nbsp;&nbsp; propertyMarkerLayer .SetName("PropertyMarker");<br>
&nbsp;&nbsp;&nbsp; propertyMarkerLayer .SetLegendLabel("Property Marker");<br>
&nbsp;&nbsp;&nbsp; propertyMarkerLayer .SetDisplayInLegend(true);<br>
&nbsp;&nbsp;&nbsp; propertyMarkerLayer .SetSelectable(true);<br>
  <br>
&nbsp;&nbsp;&nbsp; return propertyMarkerLayer ;<br>
}<br>
%&gt;<br>
  <br>
  <br>
  <table
 style="font-family: Verdana; font-size: 11px; line-height: 15px;"
 border="0" cellpadding="0" cellspacing="0" height="57" width="644">
    <tbody>
      <tr>
        <td><a moz-do-not-send="true"
 href="http://sigads.rediff.com/RealMedia/ads/click_nx.ads/www.rediffmail.com/signatureline.htm@Middle?"
 target="_blank"><img moz-do-not-send="true"
 src="http://sigads.rediff.com/RealMedia/ads/adstream_nx.ads/www.rediffmail.com/signatureline.htm@Middle"></a></td>
      </tr>
    </tbody>
  </table>
  <pre wrap="">
<hr size="4" width="90%">
_______________________________________________
mapguide-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:mapguide-users@lists.osgeo.org">mapguide-users@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/mapguide-users">http://lists.osgeo.org/mailman/listinfo/mapguide-users</a>
  </pre>
</blockquote>
</body>
</html>