entity related code:
const texturedPolygon = viewer.entities.add({
name:
"textured polygon",
polygon: {
hierarchy: new Cesium.PolygonHierarchy([
new Cesium.Cartesian3(-2764622.5728855827, 4781976.036771199, 3178382.5491336337),
new Cesium.Cartesian3(-2764624.5834597256, 4781972.0589881, 3178386.756631693),
new Cesium.Cartesian3(-2764625.419614252, 4781971.92377269, 3178386.2362699057),
new Cesium.Cartesian3(-2764623.409040367, 4781975.901555944, 3178382.0287713944),
]),
perPositionHeight: true,
material: "../images/Cesium_Logo_Color.jpg",
},
});
result picture:
primitve related code:
const pGeo = new Cesium.GeometryInstance({
geometry: new Cesium.PolygonGeometry({
polygonHierarchy: new Cesium.PolygonHierarchy([
new Cesium.Cartesian3(-2764622.5728855827, 4781976.036771199, 3178382.5491336337),
new Cesium.Cartesian3(-2764624.5834597256, 4781972.0589881, 3178386.756631693),
new Cesium.Cartesian3(-2764625.419614252, 4781971.92377269, 3178386.2362699057),
new Cesium.Cartesian3(-2764623.409040367, 4781975.901555944, 3178382.0287713944),
]),
perPositionHeight: true,
}),
id: "textured polygon",
attributes: {
color: Cesium.ColorGeometryInstanceAttribute.fromColor(Cesium.Color.RED),
},
});
const appearance = new Cesium.MaterialAppearance({
material: new Cesium.Material({
fabric: {
type: 'Image',
uniforms: {
image: '../images/Cesium_Logo_Color.jpg',
},
},
}),
});
const primitive = new Cesium.Primitive({
geometryInstances: [pGeo],
appearance,
releaseGeometryInstances: false,
});
primitive result picture: