8 votos

El cálculo del área del círculo en QGIS es inexacto

He creado un círculo con un radio de 3 km, he calculado el área con la calculadora de campo y he obtenido un resultado diferente del área real.

El resultado de QGIS es 28273078,8 mientras que el área calculada manualmente es 28274333,9 que es también el mismo número que obtuve cuando calculé el área en ArcMap.

La proyección "al vuelo" está desactivada y el CRS del proyecto está configurado como utm32

¿Alguna idea de lo que está causando esto, cómo obtener cálculos de área más precisos?

3 votos

¿Cómo creaste el círculo, en particular cuántos vértices utilizaste para aproximar el círculo?

0 votos

Intenté dos métodos, el primero fue amortiguar un círculo desde un punto con 99 segmentos para aproximar y el segundo fue crear un círculo en ArcMap y usarlo en QGIS. Ambos métodos produjeron el mismo problema.

0 votos

Depende del radio, pero yo prefiero usar al menos 181 vértices si el área es importante para mí.

15voto

M. B. Altaie Puntos 11

Todas las versiones recientes de ArcGIS engañan - el tipo de forma subyacente sabe cuando se generó como un círculo, y reporta un área de círculo perfecto, incluso cuando el conteo de vértices lo haría un octágono.

Acabo de crear un código de prueba utilizando la API 'C' de ArcSDE y he obtenido los siguientes resultados (todos generados como un círculo a partir de un punto {0,100000} en PCS_WGS_1984_UTM_32N ):

ArcSDE 10.2 Dynamic ASCII Table Utility  Sat Jan 02 15:37:30 2016
------------------------------------------------------------------------
         1
              Radius: 3000.00
              nVerts: 9
               Shape: Area shape (1 part, 9 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 25455900.00000000
          pct_ACTUAL: 90.03182924
         2
              Radius: 3000.00
              nVerts: 13
               Shape: Area shape (1 part, 13 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 26999987.41125000
          pct_ACTUAL: 95.49292133
         3
              Radius: 3000.00
              nVerts: 19
               Shape: Area shape (1 part, 19 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 27703641.02895000
          pct_ACTUAL: 97.98158692
         4
              Radius: 3000.00
              nVerts: 37
               Shape: Area shape (1 part, 37 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28131014.34700000
          pct_ACTUAL: 99.49311083
         5
              Radius: 3000.00
              nVerts: 91
               Shape: Area shape (1 part, 91 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28251381.25285000
          pct_ACTUAL: 99.91882168
         6
              Radius: 3000.00
              nVerts: 99
               Shape: Area shape (1 part, 99 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28254960.01385000
          pct_ACTUAL: 99.93147896
         7
              Radius: 3000.00
              nVerts: 100
               Shape: Area shape (1 part, 100 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28255353.61820000
          pct_ACTUAL: 99.93287105
         8
              Radius: 3000.00
              nVerts: 181
               Shape: Area shape (1 part, 181 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28268601.72120000
          pct_ACTUAL: 99.97972663
         9
              Radius: 3000.00
              nVerts: 361
               Shape: Area shape (1 part, 361 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28272903.62000000
          pct_ACTUAL: 99.99494148
        10
              Radius: 3000.00
              nVerts: 385
               Shape: Area shape (1 part, 385 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273075.88680000
          pct_ACTUAL: 99.99555075
        11
              Radius: 3000.00
              nVerts: 386
               Shape: Area shape (1 part, 386 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273079.37910000
          pct_ACTUAL: 99.99556310
        12
              Radius: 3000.00
              nVerts: 387
               Shape: Area shape (1 part, 387 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273082.09195000
          pct_ACTUAL: 99.99557270
        13
              Radius: 3000.00
              nVerts: 396
               Shape: Area shape (1 part, 396 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273146.91000000
          pct_ACTUAL: 99.99580194
        14
              Radius: 3000.00
              nVerts: 397
               Shape: Area shape (1 part, 397 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273144.96360000
          pct_ACTUAL: 99.99579506
        15
              Radius: 3000.00
              nVerts: 398
               Shape: Area shape (1 part, 398 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273150.34970000
          pct_ACTUAL: 99.99581411
        16
              Radius: 3000.00
              nVerts: 721
               Shape: Area shape (1 part, 721 vertices)
          PiRSquared: 28274333.88230814
        Area_PERFECT: 28274333.88230814
         Area_ACTUAL: 28273981.39730000
          pct_ACTUAL: 99.99875334

16 rows read in 6.69 ms

Area_PERFECT se generó utilizando SE_shape_get_area() y Area_ACTUAL se generó convirtiendo el polígono en una forma de línea simple y de nuevo en un polígono antes de llamar a la función de área. (Tuve que volver a la API 9.3.1sp2 para obtener un área REAL de la función de área de la forma del círculo).

No estoy muy seguro de lo que está haciendo QGIS, ya que el área reportada en la pregunta ( 28273078.8 m2 ) y el que se ha señalado en los comentarios ( 28273147.55 m2 ) no se corresponden exactamente con los vértices 99 y 397 (o 98, 100, 384, 385, 386, 387, 396 o 398, en realidad). Puede que haya un cálculo geodésico involucrado (aunque no tengo una forma fácil de evaluarlo sin los datos exactos de las coordenadas), o el valor puede haber sido calculado a un flotador de 32 bits.

Supongo que la lección aquí es: Si usted realmente se preocupa por el área de la geometría, debe asegurarse de que los círculos contengan un lote de vértices.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X