Suite

Césium js, Tracer une ligne liant une étiquette à une position


Je voudrais tracer une ligne liant une entité à son étiquette avec un décalage. CesiumJS permet de décaler l'étiquette, cependant il n'est pas possible de tracer une ligne (ou polyligne) d'une position à un décalage comme la ligne rouge dans cette image.

Comment puis-je le faire? une suggestion ?

j'utilise le décalage de pixels. mais il n'y a pas de problème pour utiliser le décalage des yeux

labels.add({ position : Cesium.Cartesian3.fromDegrees(-75.1641667, 29.9522222), texte : 'Another label', pixelOffset : new Cesium.Cartesian2(100,-100) });

La meilleure façon de le faire est probablement un panneau d'affichage avec une image de la ligne dessus. La longueur ne changera jamais s'il s'agit d'un pixelOffset. Vous pouvez mettre une image d'une ligne blanche et utiliser la propriété color pour définir n'importe quelle autre couleur.

var viewer = new Cesium.Viewer('cesiumContainer'); var scene = viewer.scene; var labels = scene.primitives.add(new Cesium.LabelCollection()); labels.add({ position : Cesium.Cartesian3.fromDegrees(-75.1641667, 29.9522222), texte : 'Another label', pixelOffset : new Cesium.Cartesian2(100, -100) }); var billboards = scene.primitives.add(new Cesium.BillboardCollection()); billboards.add ({color: Cesium.Color.RED image: 'data: image / png; base64, iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAyUlEQVR42u3RQRHAMBADsQRWwRRosBTMxSzqh3bGBKy19Hsz82QnG28UYQApw0ifV4owstczRRjZ9g4MGDBgCAYMwYAhGDAEA4ZgwIABAwYMGIIBQzBgCAYMwYAhGDBgwIABA4ZgwBAMGIIBQzBgCAYMGDBgwIAhGDAEA4ZgwBAMGIIBAwYMGDBgCAYMwYAhGDAEA4ZgwIABAwYMGIIBQzBgCAYMwYAhGDBgwIABA4ZgwBAMGIIBQzBgCAYMGDBgwKgDgVEGAqOoCyAqoIT32fmkAAAAAElFTkSuQmCC', PixelOffset: new Cesium.Cartesian2 (50, -50), Position: Cesium.Cartesian3.fromDegrees (-75,1641667 , 29.9522222) });


Voir la vidéo: Cesium for Unreal Tutorial 01 - Quickstart (Octobre 2021).