Hey there, some random thoughts:
are trees a cover at all? In the Bundswehr i was taught that trees generally suck as cover since even a MG 3 can punch through up to 70 cm of wood. Never mind 20 or 30mm rounds. So trees probably do not hold of anything.
But then again, trees can be used for concealment (as mentioned - hovering behind trees). This would not real protect a helicopter but delay detection, since as soon as you pop up or shoot you would probably be detected anyways, due to smoke trails or being visible against the sky background. As for lasing... well if i would sit inside a tank of some sort, and suspect someone wanting to kill me behind a tree 1.5 km away, i would lase something near that area and shoot the damn tree :)
Another thought on concealment: wouldn't the downwash make you more visible, because it strongly moves the trees around you?
So, to implement this in the sim, the trees do not need to be solid at all (since most times trees would not stop rounds or missiles / rockets), all that needs to be added is a modifier to the visibility of the helicopter. For example: being near a forested area (not single standing trees - i think of the light green shaded areas in the overview map), lets say 10, 20m outside from the treeline, or 5 or more meters inside, and below 10 m in height, the heli visibilty should be considerably reduced.
Since we already can not see through the trees no modification needs to be added to not be able to see outside. For the AI being inside a forested area (lets say 30 m inside or something like that) the ability to visually aquire targets should be reduced to a fixed range (100 - 200 m maybe?).
Of course the problem of being able to fly drive through trees would not be solved, but things would get fairer. It still would be hard to see enemys between the trees, but thats all right i thing because in real life, someone covering inside a forest would indeed be hard to spot - so thats realistic in a way.
Since BS already offers the possiblity to trigger situations depending on the location of a player, this might not be so hard to implement, but would only be a variation of the existing trigger model (i've got no clue of programming, just guessing)
What do you guys think?