@@ -361,8 +361,8 @@ util::http::Answer Server::handleHeatMapReq(const Params& pars,
361361 auto px = RenderContext::mercToPx (cp, orx, ory, mercW, mercH, w, h);
362362 auto ppx = RenderContext::mercToPx (p, orx, ory, mercW, mercH, w, h);
363363
364- rcontext.drawPoint (0 , px.getX (), px.getY (), r->getVal (lid, oid), 0 , 0 ,
365- 1 );
364+ rcontext.drawPoint (0 , px.getX (), px.getY (), r->getVal (lid, oid), 0 ,
365+ 0 );
366366 rcontext.drawLineSegment (px.getX (), px.getY (), ppx.getX (), ppx.getY (),
367367 w, h);
368368 } else {
@@ -377,10 +377,10 @@ util::http::Answer Server::handleHeatMapReq(const Params& pars,
377377 auto rasterMeta =
378378 r->getRasterMetas (lid, oid, {rasterWidth, rasterHeight});
379379 rcontext.drawPoint (0 , px.getX (), px.getY (), r->getVal (lid, oid),
380- rasterMeta.first , rasterMeta.second , 1 );
380+ rasterMeta.first , rasterMeta.second );
381381 } else {
382382 rcontext.drawPoint (0 , px.getX (), px.getY (), r->getVal (lid, oid), 0 ,
383- 0 , 1 );
383+ 0 );
384384 }
385385 }
386386 }
@@ -407,7 +407,7 @@ util::http::Answer Server::handleHeatMapReq(const Params& pars,
407407
408408 // TODO: just setting rasterWidth to 1x1 here is not correct
409409 rcontext.drawPoint (tid, px.getX (), px.getY (), grid.getCellSum (x, y),
410- 1 , 1 , 0.5 );
410+ 1 , 1 );
411411 } else {
412412 for (auto oid : *cell) {
413413 if (r->isCluster (lid, oid)) oid = r->getCluster (lid, oid).first ;
@@ -421,10 +421,10 @@ util::http::Answer Server::handleHeatMapReq(const Params& pars,
421421 r->getRasterMetas (lid, oid, {rasterWidth, rasterHeight});
422422 rcontext.drawPoint (tid, px.getX (), px.getY (),
423423 r->getVal (lid, oid), rasterMeta.first ,
424- rasterMeta.second , 0.5 );
424+ rasterMeta.second );
425425 } else {
426426 rcontext.drawPoint (tid, px.getX (), px.getY (),
427- r->getVal (lid, oid), 0 , 0 , 0.5 );
427+ r->getVal (lid, oid), 0 , 0 );
428428 }
429429 }
430430 }
@@ -552,49 +552,59 @@ util::http::Answer Server::handleHeatMapReq(const Params& pars,
552552 0 , 0 ,
553553 0 , 0 ,
554554 objColorR, objColorG,
555- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.06 ,
555+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.06 ,
556556 objColorR, objColorG,
557- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.12 ,
557+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.12 ,
558558 objColorR, objColorG,
559- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.25 ,
559+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.25 ,
560560 objColorR, objColorG,
561- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.5 ,
561+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.5 ,
562562 objColorR, objColorG,
563- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.65 ,
563+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.65 ,
564564 objColorR, objColorG,
565- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.8 ,
565+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.8 ,
566566 objColorR, objColorG,
567- objColorB, 256 * lcfg.objectStyle .fillOpacity * 0.9 ,
567+ objColorB, 255 * lcfg.objectStyle .fillOpacity * 0.9 ,
568568 objColorR, objColorG,
569- objColorB, 256 * lcfg.objectStyle .fillOpacity };
569+ objColorB, 255 * lcfg.objectStyle .fillOpacity };
570570 heatmap_colorscheme_t fillColorScheme = {
571571 fillColors, sizeof (fillColors) / sizeof (fillColors[0 ]) / 4 };
572572
573573 unsigned char borderColors2[] = {
574- 0 , 0 , 0 , 0 ,
575- 0 , 0 , 0 , 0 ,
576- objColorR, objColorG, objColorB, 0 ,
577- objColorR, objColorG, objColorB, 0 ,
578- objColorR, objColorG, objColorB, 0 ,
579- objColorR, objColorG, objColorB, 0 ,
580- objColorR, objColorG, objColorB, 0 ,
581- objColorR, objColorG, objColorB, 0 ,
582- objColorR, objColorG, objColorB, 0 ,
583- objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity };
574+ 0 , 0 ,
575+ 0 , 0 ,
576+ 0 , 0 ,
577+ 0 , 0 ,
578+ objColorR, objColorG,
579+ objColorB, 0 ,
580+ objColorR, objColorG,
581+ objColorB, 0 ,
582+ objColorR, objColorG,
583+ objColorB, 0 ,
584+ objColorR, objColorG,
585+ objColorB, 0 ,
586+ objColorR, objColorG,
587+ objColorB, 0 ,
588+ objColorR, objColorG,
589+ objColorB, 0 ,
590+ objColorR, objColorG,
591+ objColorB, 0 ,
592+ objColorR, objColorG,
593+ objColorB, std::max (1.0 , 255 * lcfg.objectStyle .lineOpacity )};
584594 heatmap_colorscheme_t borderColor2Scheme = {
585595 borderColors2, sizeof (borderColors2) / sizeof (borderColors2[0 ]) / 4 };
586596
587597 unsigned char borderColors[] = {
588598 0 , 0 , 0 , 0 ,
589- objColorR, objColorG, objColorB, 64 * lcfg.objectStyle .lineOpacity ,
590- objColorR, objColorG, objColorB, 64 * lcfg.objectStyle .lineOpacity ,
591- objColorR, objColorG, objColorB, 64 * lcfg.objectStyle .lineOpacity ,
592- objColorR, objColorG, objColorB, 64 * lcfg.objectStyle .lineOpacity ,
593599 objColorR, objColorG, objColorB, 128 * lcfg.objectStyle .lineOpacity ,
594- objColorR, objColorG, objColorB, 160 * lcfg.objectStyle .lineOpacity ,
600+ objColorR, objColorG, objColorB, 169 * lcfg.objectStyle .lineOpacity ,
595601 objColorR, objColorG, objColorB, 192 * lcfg.objectStyle .lineOpacity ,
596- objColorR, objColorG, objColorB, 192 * lcfg.objectStyle .lineOpacity ,
597- objColorR, objColorG, objColorB, 192 * lcfg.objectStyle .lineOpacity };
602+ objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity ,
603+ objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity ,
604+ objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity ,
605+ objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity ,
606+ objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity ,
607+ objColorR, objColorG, objColorB, 255 * lcfg.objectStyle .lineOpacity };
598608 heatmap_colorscheme_t borderColorScheme = {
599609 borderColors, sizeof (borderColors) / sizeof (borderColors[0 ]) / 4 };
600610
@@ -1586,6 +1596,8 @@ RequestorConfig Server::getRequestorCfgFromJSON(
15861596 if (layer.value ().contains (" pointradius" ))
15871597 curField.objectStyle .pointRadius =
15881598 layer.value ()[" pointradius" ].get <double >();
1599+ if (layer.value ().contains (" group" ))
1600+ curField.group = layer.value ()[" group" ].get <std::string>();
15891601 if (curField.name .size () == 0 ) curField.name = curField.geomField ;
15901602
15911603 // always assign an ID
0 commit comments