Hello everyone!!!
I am kind of new on JavaScript. I have been looking for a way to make an editable layer from GeoRSS feed. Because of the format, I can't change symbology or enable popup info from GeoRSS feed so I'm guessing that if I make a layer, I will be able to do it. I'm trying to do it by PictureMarkerSymbol and rendering but I don't know how to make the script work. I don't know if the symbology problem would be solved by rendering or making a layer or something like that and nor do I know if the situation with the popup could be solved by other java constructors ... Can a beautiful and kind soul help me, please?
This is my code:
<html>
<head>
<meta name="description" content="DevLab: Style a feature layer">
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no">
<title>ArcGIS JavaScript Tutorials: Style a feature layer</title>
<style>
html,
body,
#viewDiv {
padding: 0;
margin: 0;
height: 100%;
width: 100%;
}
</style>
<link rel="stylesheet" href="https://js.arcgis.com/4.13/esri/css/main.css">
<script src="https://js.arcgis.com/4.13/"></script>
</head>
<script>
require([
"esri/Map",
"esri/views/MapView",
"esri/layers/GeoRSSLayer",
"esri/symbols/PictureMarkerSymbol"
],
function(
Map,
MapView,
GeoRSSLayer,
PictureMarkerSymbol
) {
var map = new Map({
basemap: "streets-night-vector"
});
var view = new MapView({
container: "viewDiv",
map: map,
center: [-99.433823, 19.613484],
zoom: 9
});
// Create the layer
var WazeLayer = new GeoRSSLayer({
url: "URL from GeoRSS sorry I can not provide it..."
});
// Add the layer
map.add(WazeLayer);
});
</script>
</head>
<body>
<div id="viewDiv"></div>
</body>
</html>
Thank you so so so much
Solved! Go to Solution.
Hi there,
You need to set the GeoRSSLayer.pointSymbol to your PictureMarkerSymbol. I updated the GeoRSSLayer sample to show you how to do this. The following code snippet shows how it is done. But when you are using PictureMarkerSymbol you need to follow the CORs rule.
var symbol = new PictureMarkerSymbol({
url: "https://static.arcgis.com/images/Symbols/Shapes/BlackStarLargeB.png",
width: "64px",
height: "64px"
});
var layer = new GeoRSSLayer({
url: "https://arcgis.github.io/arcgis-samples-javascript/sample-data/layers-georss/sample-georss.xml",
pointSymbol: symbol
});
Hope this helps,
-Undral
Hi there,
You need to set the GeoRSSLayer.pointSymbol to your PictureMarkerSymbol. I updated the GeoRSSLayer sample to show you how to do this. The following code snippet shows how it is done. But when you are using PictureMarkerSymbol you need to follow the CORs rule.
var symbol = new PictureMarkerSymbol({
url: "https://static.arcgis.com/images/Symbols/Shapes/BlackStarLargeB.png",
width: "64px",
height: "64px"
});
var layer = new GeoRSSLayer({
url: "https://arcgis.github.io/arcgis-samples-javascript/sample-data/layers-georss/sample-georss.xml",
pointSymbol: symbol
});
Hope this helps,
-Undral
OMG, Thank you!