Ahha!
You gave me all the right clues and with some fudging to make it 3d, it works great! My only issue is that I had to mix up the positions as y became z. I am sure it is because the island has been rotated -90 to make it a flat plane. This fix of mixing the y and z works fine except now i have to adjust the light falloff expressions and im feeling sloppy. Anyway, you remain my Expressions hero. I send all my students to your site when they start to think they know everything about AE. For anyone in the future that wants to populate an island with trees, try this in the position attribute:
(note that 3000×6000 was the size of my island layer, and -110 was the vertical position I needed each tree to be to just touch the ground)
L = thisComp.layer(“islandlayer”);
seedRandom(index,true);
while(true){
i= random(0,3000);
j= random(0, 6000);
pos = [i,j,-110];
if (L.sampleImage([i,j])[3] > 0) break;
}
pos