Modeling canopy structure and heterogeneity across scales: From crowns to canopy