Todas las versiones recientes de trucos de ArcGIS: el tipo de forma subyacente sabe cuándo se generó como un círculo e informa un área de círculo perfecta, incluso cuando el conteo de vértices lo convertiría en un octágono.
Acabo de crear un código de prueba usando la API 'C' de ArcSDE y obtuve los siguientes resultados (todos generados como un círculo desde el punto {0,100000}
de entrada 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ó usando SE_shape_get_area()
, y Area_ACTUAL
se generó al convertir el polígono en una forma de línea simple y volver a 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 informada en la pregunta ( 28273078.8 m2
) y la informada en los comentarios ( 28273147.55 m2
) no corresponden exactamente a los vértices 99 y 397 (o 98, 100, 384, 385, 386, 387, 396 o 398, para el caso). Puede haber un cálculo geodésico involucrado (aunque no tengo una manera fácil de evaluar eso sin los datos de coordenadas exactos), o el valor podría haberse calculado en un flotante de 32 bits.
Supongo que la lección aquí es: si realmente te importa el área de geometría, debes asegurarte de que los círculos contengan muchos vértices.