I was wondering about how overriding tintColor is supposed to work when using a local dictionary renderer.
The relevant snippet of my arcade expression is the following
keys += ';SymbolType_' + $feature.SYMBOL_TYPE;
keys +=';po:rotated|Rotation|';
var rot = (360 - $feature.ROTATION) + 90;
keys += rot;
keys += ";po:rotated|tintColor|#FF0000FF";
I've also tried using [255,0,0,255], "255,0,0" for overriding the color. I've used TintColor, tintcolor etc.
The CimPictureMarker that is being used looks like this.
{
"type": "CIMPointSymbol",
"symbolLayers": [
{
"type": "CIMPictureMarker",
"primitiveName" : "rotated",
"enable": true,
"anchorPointUnits": "Relative",
"dominantSizeAxis3D": "Y",
"size": 12,
"billboardMode3D": "FaceNearPlane",
"invertBackfaceTexture": true,
"scaleX": 1,
"colorLocked" : false,
"tintColor" : [255,0,0,255],
"url" : "../../../../../../flags/icons/default_symbol.svg"
}
],
"haloSize": 1,
"scaleX": 1,
"angleAlignment": "Display",
"version": "2.0.0",
"build": "8933"
}
Again, I've tried with both an svg and png. While the JSON defined tintColor works with both, the arcade expression only accomplishes making the feature be invisible. I've also verified that no errors are logged in the console.
I understand that this example is incomplete as I am unable to provide a complete example due to time constraints.
Any input would be appreciated.
Hi - one thing that might be worth trying is capitalizing the `TintColor` property in your script. I believe all the property names should be capitalized in order for the primitive overrides to be applied correctly.
More info on working with overrides in dictionaries: https://github.com/Esri/dictionary-renderer-toolkit/blob/master/docs/working-with-overrides.md