ThinkGeo.com    |     Documentation    |     Premium Support

GeoTextureBrush - in color?

Hi,


I'm tring to utilize a GeoTextureBrush to render some of my areas (assigning it to AreaStyle.Advanced.FillCustomBrush), and it seems to work.


However, my texture images are all in black and white (they're really templates: foreground/background), and I want to present them in full color, i.e., I want to substitute the black and white colors for two other colors (e.g. green for black, blue for white), preferably also be able to substiutute the white color for a transparent color (full alpha).


I'm not too familiar with the underlying API for GeoImage etc., and how this corresponds to objects in the Graphics and Imaging namespaces of .Net.


So how can I accomplish the task above ?


Cheers.


 



Lars,


 Sorry for responding so late. We have been swamped by support issues lately. Can you send us the code you are currently using with GeoTextureBrush in your attempt to display foreground/background the way you desire? With your code, I think this is going to give us a starting point. Thank you for your colaboration.



Hi Val,


Solved it myself.


Had to transfer the template bitmap pixel-by-pixel to a new bitmap, exchanging colors as needed, and then use the new bitmap to generate the AreaStyle I wanted.


Luckily the template bitmaps are very small.


If you know of a smarter way, please let me know :-)


--


On a side note I discovered, that the function "AreaStyles.CreateHatchStyle()" seems unable to cope with transparent background colors (3rd parameter of 8).


Is this true ?


Cheers.


 



Lars,


 I did a test with AreaStyles.CreateHatchStyle() to verify the transparency and I see the expected behavior. See the screenshot below and this the code I used:


 



AreaStyle hatchAreaStyle = AreaStyles.CreateHatchStyle(GeoHatchStyle.LargeCheckerBoard, GeoColor.StandardColors.Green, GeoColor.FromArgb(150, GeoColor.StandardColors.Red),
    GeoColor.StandardColors.Black, 2, LineDashStyle.Solid, 0, 0);
 
 

 




Hi Val, 
  
 Ok, I don’t know why it didn’t work for me, but something else must have been afoot :-) 
  
 Cheers. 


Lars,


 I am glad we could help you on this. Any other questions, let us know. Thank you.