Точность расчета площадей

0 голосов
спросил 15 Сен, 05 от Гость (210,080 баллов) в категории Программные продукты Esri

Есть полигональный слой, нужно рассчитать площадь объектов, так чтобы в координате Х и У было 2 знака после запятой.

Если площадь объекта большая, то погрешность составляет м2.

Как быть и что делать?Cry

<!-- Message ''"" -->

8 Ответы

0 голосов
ответил 15 Сен, 05 от Almaz1 (1,080 баллов)

Попробуй поменять значения, только честно говоря я не понял при чем здесь координаты X и Yimage

 

 

Dim pMxDoc As IMxDocument
Dim pGeometry As IGeometry
Dim pMap As IMap
Dim pArea As IArea
Dim dArea As Double
Dim dC As Double
Dim sOutMeasure As String
Dim bSrefFromMap As Boolean
'=======================
'Adjust the parameters below
'bSrefFromMap = True ==> the area will be calculated in the projection of the Map
'bSrefFromMap = False ==> the area will be calculated in the projection of the data
bSrefFromMap = False
'unmark the desired output units
sOutMeasure = "Acres"
sOutMeasure = "Square Kilometers"
sOutMeasure = "Square Meters"
'sOutMeasure = "Square Miles"
'=======================
If (IsNull([Shape])) Then
  dArea = -1
Else
  Set pGeometry = [Shape]
  If (pGeometry.IsEmpty) Then
    dArea = -1
  Else
    If (bSrefFromMap) Then
      Set pMxDoc = ThisDocument
      Set pMap = pMxDoc.FocusMap
      pGeometry.Project pMap.SpatialReference
      Select Case pMap.MapUnits
        Case 3 'Feet
          Select Case sOutMeasure
             Case "Acres"
               dC = 0.000023
             Case "Square Kilometers"
               dC = 0.0000000930787
             Case "Square Meters"
               dC = 0.092903
             Case "Square Miles"
               dC = 0.0000000359375
             Case Else
               dC = 1
          End Select
        Case 9 'Meters
          Select Case sOutMeasure
             Case "Acres"
               dC = 0.0002471
             Case "Square Kilometers"
               dC = 0.000001
             Case "Square Meters"
               dC = 1
             Case "Square Miles"
               dC = 0.0000003861022
             Case Else
               dC = 1
          End Select
        Case Else
          dC = 1
      End Select
    Else
      dC = 1
    End If
    Set pArea = pGeometry
    dArea = pArea.Area * dC
  End If
End If

0 голосов
ответил 16 Сен, 05 от Гость (210,080 баллов)
Almaz! Если полигон имеет площадь <?:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />1 000 000 м2 и количество поворотных точек 30 и >, то площадь значительно разнится, если же в координатах углов поворота - два знака после запятой или больше.
0 голосов
ответил 20 Сен, 05 от Гость (210,080 баллов)

Насколько я понимаю необходимо при землеустройстве (может быть в природопользовании, учет недр и т.д.), так вот при создании "Описаний земельных участков" для постановки земельных участков на ГКУ в требованиях (приказ № П/327) сказано округлять координаты х и у до 2 знака после запятой (что легко решается при бумажной технологии - передаешь описания в палату на бумаге, а они набивают точки границ сами). При условии передачи дополнительно электронной версии границ для ускорения процесса регистрации (в нашем случае в Мапинфо) появляются расхождения площадей. Нам пришлось программно округлять координаты до 2 знака, а после этого расчитывать площади. Но подводные камни остаются - так при картографическом способе выделения границ земельных участков не получается округлять координаты на месте пересечения с уже учтенными ЗУ (в точках пересечения получаем координаты с большей десятичной точностью и при округлении получаем либо зазор либо наложение).

0 голосов
ответил 21 Сен, 05 от Гость (210,080 баллов)
to adon
Все так и есть. У нас тоже регулярно возникают проблемы с постановкой новой точки на уже стоящую на кадастровом учете границу. Для того, что бы не было проблем со сдачей координат в комзем и кадастровую - извлекаем координаты из отмежеванных участком, округляем их до двух знаков и строим участки заново.
Кстати, пришлось отказаться от АркИнфовской топологии (или использовать ее очень ограниченно) из-за того, что после clean точки чуть-чуть сдвигаются.
0 голосов
ответил 21 Сен, 05 от Гость (210,080 баллов)

Нам пришлось программно округлять координаты до 2 знака, а после этого расчитывать площади.



Скажите, а как вы это делаете? Есть ли у вас какая-то утилита, округляющая узлы полигонов 2-х знаков или вы извлекаете узлы, округляете их в том же Экселе и строите заново?
0 голосов
ответил 21 Сен, 05 от Гость (210,080 баллов)

У нас в ЮРКЦ создали ПКЕГРЗ и ObjectLand и поставили комплекты во все земкомы и палаты.Disapprove Поэтому при оформлении земельных участков в ArcInfo (подготовка землеустроительного дела) - соответственно площади разнятся с описанием и приходится в ручную исправлять площадь в соответствии с описанием. 

Морж писал: "Для того, что бы не было проблем со сдачей координат в комзем и кадастровую - извлекаем координаты из отмежеванных участком, округляем их до двух знаков и строим участки заново."

Как это сделать?

0 голосов
ответил 22 Сен, 05 от Гость (210,080 баллов)
У нас, в Томске, такая же проблема, софт на котором работают земельный (программа ТИСА) и кадастровая палата (программа Геополис), мягко говоря далек от совершенства. К примеру, топология там и рядом не валялась, они о ней и не слышали image
Координаты из нарисованного полигона извлекаем арквьюшной утилитой (утилиты по извлечению узлов встречаются в интернете). Получается точетный слой с атрибутивной таблицей с координатами. Затем в экселе вычисляем углы и расстояния, а координаты округляем до 2-х знаков. Закидываем координаты в txt файл, заново строим полигон (это скорее для самоконтроля) и смотрим что получилось.

Кстати, когда в кадастровой точка с двумя знаками не ложится на линию (потому что это невозможно) они нам говорят: "А вы ее маленько оттащите, чтобы между участками была ма-а-ленькая щелочка, тогда у нас программа не будет "кричать", что пересечение". Вот такой вот цирк image
0 голосов
ответил 22 Сен, 05 от Гость (210,080 баллов)

Честно говоря - это действительно цирк. А технология которая у Вас работает сложна, например, если межевание с\х земель, участков в 1-м землепользовании от 50 до 500участков. Объяснить каждому исполнителя эту технология - сойдешь с ума.Confused

Может кто-нибудь еще поделится своими наработками и соображениями.

Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...