Issue with loaded icon getting inside the building

I have below code which load the gltf icon on the 3d model, Now what happening is the loaded icons are being loaded inside the building, but I want them to be on the surface.

    return new Promise<void>((resolve) => {
      const cartesians: any = [];

      data.forEach((point: any) => {
        cartesians.push(Cartesian3.fromDegrees(point.point[0], point.point[1], point.point[2] || 0));
      cartesians.forEach((position: Cartesian3, i: number) => {
              // name: 'Model 1',
              position: position,
              model: {uri : data[i].properties.icon, scale: data[i].properties.scale, heightReference: HeightReference.CLAMP_TO_GROUND},
              properties: data[i]