Tutoriel de développement WebGIS : Quelle est la différence entre entité et primitive dans Cesium ?

Entité

L'entité est l'un des concepts les plus importants du césium. Il est généralement utilisé pour décrire des objets réels avec des positions coordonnées, tels que des machines, des voitures, des bâtiments, des personnes, etc. Chaque instance d'entité possède différents attributs, tels que la position, l'attitude, la mise à l'échelle, la couleur, la texture, etc., et peut être créée, modifiée et supprimée par programme.

L’avantage d’Entity est qu’il est très flexible et simple à utiliser.

Étant donné qu'Entity est un concept de niveau supérieur, il peut gérer automatiquement de nombreuses complexités liées aux graphiques et à la géométrie sous-jacents, telles que le mappage de texture, l'éclairage, la détection de collision, etc. Il peut également être intégré à d’autres composants Cesium tels que la gestion des événements, le picking et le contrôle des caméras, etc.

Primitif

Par rapport à Entity, Primitive est un concept graphique de niveau inférieur de Cesium. Il est généralement utilisé pour décrire un ensemble de géométries graphiques simples. Par exemple, nous pouvons utiliser Primitive pour dessiner des graphiques de base tels que des points, des lignes, des polygones, des volumes et du texte. Chaque instance primitive peut définir différentes propriétés, telles que la couleur, la bordure, la largeur, la hauteur, etc.

Le principal avantage des Primitives est qu’elles sont très efficaces car elles utilisent l’accélération matérielle GPU et peuvent facilement dessiner de grandes quantités de géométrie. Ils sont également plus flexibles que les entités car nous pouvons contrôler directement les propriétés et les détails de la géométrie, tels que le dessin de la largeur des lignes, la sélection de différentes cartes de texture, etc. Cependant, l'utilisation de Primitive nécessite moins d'automatisation et de flexibilité car de nombreux problèmes doivent être traités manuellement, tels que la détection de collision, les techniques avancées d'éclairage et de rendu, etc.

En général, Entity et Primitive sont tous deux des concepts graphiques puissants dans Cesium, mais ils sont utilisés dans différents scénarios. Si nous devons décrire des objets réels avec des propriétés et des comportements complexes, nous devons alors utiliser Entity ; si nous devons uniquement dessiner une géométrie simple, nous pouvons alors utiliser Primitive pour de meilleures performances et un meilleur contrôle.

Quand utiliser Primitive

Dans Cesium, Primitive est l'unité de rendu de base utilisée pour restituer des scènes tridimensionnelles. Elle peut représenter de nombreux types de formes géométriques et de cartes de texture. Voici quelques situations courantes lors de l’utilisation de Primitive dans Cesium :

1. Rendre des formes géométriques :

Primitive peut représenter diverses formes géométriques, telles qu'un plan, un cube, une sphère, un cylindre, un cône, etc. Pour les formes simples, vous pouvez utiliser les géométries prédéfinies fournies par Cesium (telles que RectangleGeometry, BoxGeometry, SphereGeometry, etc.). Pour les formes plus complexes, vous pouvez utiliser TriangleMeshGeometry pour définir des formes géométriques.

2. Carte de texture :

Primitive peut mapper des textures sur des formes géométriques pour créer des scènes plus réalistes. Les cartes de texture peuvent être spécifiées pour les primitives à l'aide de TextureAtlas ou TextureCoordonnéeGenerator.

3. Projection :

Les primitives peuvent être projetées efficacement sur une variété d'ensembles de données de terrain différents, tels que des tranches de terrain, des tuiles 3D et des modèles 3D. Cela permet à Cesium d'afficher la même scène sur différents ensembles de données de terrain, améliorant ainsi l'effet de visualisation et la compatibilité multiplateforme de l'application.

4. Lorsqu'il y a de nombreux éléments sur la carte, Primitive peut être utilisée pour les restituer plus efficacement.

Plus de ressources d’apprentissage sur le développement de SIG 3D :

Obtenez la version complète du cours de développement WebGIS 2D et 3D

おすすめ

転載: blog.csdn.net/jdjxbsus/article/details/133159266