что-то не получается сделать выноску к площадному объекту.
%Events.OnCollect
$S=@EventObject ; выноска
$X=@Map.Object[$S].Point[2].X
$Y=@Map.Object[$S].Point[2].Y
$O=@Map.NewObject id30000054 @Map.Object[$O].Point[1] $X $Y 0 ; создаем временную точку по координатам второй точки выноски @Map.RefreshObject $O
$Res=@Map.ParentObject $O ID70009 ; находим родительский объект для точки в слое угодья
$KOD=@Map.Object[$Res].Parameter[ID7000901] ; записываем код
$PLOWA=@Map.Object[$Res].Parameter[ID7000903] ; записываем площадь @Map.Object[$O].Deleted ; удаляем временную точку @Map.Object[$S].Parameter[ID7000901] $KOD ;записываем в выноску код угодья @Map.Object[$S].Parameter[ID7001009] $PLOWA ; записываем в выноску площадь угодья (параметр ID7001009 создан заблаговременно что туда записывалась площадь) @Map.RefreshObject $S
так вот выдает ошибку “66” is not a valid integer value (цифра 66 меняется)
Скриптовую функцию для создания выноски сделаю чуть позже, имеются другие срочные задачи. Пока используйте подход на основе условного знака, описанный в данной ветке.
Есть земельные участки или угодия с номерами и площадями. Нужно, чтобы, по аналогии с колодцами, при сборе выноски ей присваивались параметры участка, к которому она относится и, естественно, выносились как подпись на карту. Как-то так. Vinoska.dmf (1.42 KB)