Ich arbeite gerade an einem 3D-Terrain-Visualisierungstool. Die Oberfläche ist logisch mit quadratischen Fliesen bedeckt. Diese Fliesen können sichtbar gemacht werden, wie folgt:Terrainfliesenskala im Falle einer gekippten Kamera
nehme ich ein Bild auf dieser Fliesen zeichnen möchten. Der Detaillierungsgrad für ein Bild muss gemäß der aktuellen Kamera-Skala ausgewählt werden, die für jede Fliese einzeln berechnet wird.
Im Falle einer vertikalen Kamera (keine Neigung, d. H. Die Kamera schaut senkrecht auf den Boden) haben alle Kacheln den gleichen Maßstab, der die Kamerabrennweite auf die Kamerahöhe über dem Boden verteilt.
folgende Abbildung zeigt die Situation:
wo rote Dreieck-Kamera, die keine Neigung hat, ist BG Kamerahöhe über dem Boden und EG ist die Brennweite, dann scale = AC/DF = BG/EG
Wenn die Kamera jedoch geneigt ist (dh der Neigungswinkel ist nicht 0), wird die Skalierung von Kachel zu Kachel geändert (sogar von Punkt zu Punkt).
So frage ich mich, ob es irgendeine Art Methode zumutbaren Umfang in diesem Fall für jede Fliese zu produzieren?
Das Tag "computational-geometry" wurde entfernt, da CG eine spezielle Disziplin ist und nicht einfach nur mit Geometrie berechnet wird. –
Ein 2D-Diagramm wäre hilfreich. –
Danke für Ihre Korrekturen! Ich habe einige Bilder hinzugefügt, um es klarer zu machen. – deephace