Hi Jamie,
Thanks for your help. I published a mosaic dataset as image service. On the service editor, I added a raster function template. The mosaic dataset and the function template were copied to the server together. The python function specified in the template is attached below.
On the client side, I set the mosaic rule and rendering rule:
//render rule
var renderRF = new RasterFunction();
renderRF.functionName = "CustomziedRasterFuncTemplate";
renderRF.functionArguments = {
"ignoredvalues":ignoredPixelValues,
"Raster": "$$"
};
//mosaic rule
var msRule = new MosaicRule();
msRule.method = MosaicRule.METHOD_LOCKRASTER;
msRule.lockRasterIds = [bandIndex]
//image service parameter
var params = new ImageServiceParameters();
params.noData = 0;
params.mosaicRule = msRule;
params.renderingRule=renderRF;
//image service layer
var imageServiceLayer = new ArcGISImageServiceLayer(mosaidImageServiceURL, {
imageServiceParameters: params,
opacity: 1.0
});
Kaixi