Міцного здоров’я всім!
Прошу Вам sergykydr, частина коду, та *.dmf-файлик. Далі пробуйте самі. Успіху Вам.
;--------------побудова променів-------------
@Dialog.WaitBox Вкажіть ділянку
$NDil=@Map.SelectedObject
@Dialog.WaitBox Вкажіть базис
$NBasis=@Map.SelectedObject
@Map.DeselectAll
@Map.SelectObject $NBasis
@Map.SelectObject $NDil
@SendChars
Вставка | Промеры и схема…
@Map.DeselectAll
@Map.SelectLayer ID10000
@Map.Selected.RemoveCaptions ID500320
;------формування таблиці кутів та довжин-----
$ObjCount=@Map.SelCount
$ObjCount=$ObjCount-1
@Map.SelectByParametersSelected 1|ID500320=
@Map.Selected.Delete
@Map.SelectLayer ID10000
$i=1
@Text[1].Clear
$Nobj=0
$Tab=@Calc char(9)
$Tab=@DequoteText $Tab
$headline=@Concat № пікетів,$Tab,Внутрішній кут,$Tab,Віддаль (м.)
@Text[1].Add $headline
%begin
$Nobj=@Map.NextSelected $Nobj
$Value=@Map.Object[$Nobj].Parameter[ID500320]
$Line=@StringPart 1 $Value
$Line=@RoundTo $Line 2
$Angle=@StringPart 2 $Value
$Res=@Concat $i,$Tab,$Angle,$Tab,$Line
@Text[1].Add $Res
$i=$i+1
@If $i<$ObjCount then @Goto %begin
$List=@Text[1].text
@Map.deselectall
@Map.SelectLayer ID51
$Numb=@Map.SelectedObject
@Map.Object[$Numb].TableText $List
@Window.Refresh
klaid скачайте будь-ласка *.dmf файл. У ньому відповідь на Ваші запитання.
Перепрошую товариство. Не вказав певних умов, необхідних для функціонування коду - позаяк, не зважив, що інші машини мають відмінні налаштування від моєї залізяки. Отже:
- “Язык и региональные стандарты” - розділювач цілої та дробової частки - КРАПКА;
- Перед запуском скрипта запустіть просто “Вставка->Промеры и схема” поставте галочку у поле “Схема измерений” (а за потреби й “Круг право”, як вже міряли кути). Скріншот додаю.
Щодо таблички sergykydr - пишіть в ЛС, спробував на трьох різних машинах - формується зараза така.
Координати, спробуйте так: помітьте ТІЛЬКИ БАЗИС та натисніть кнопку із наступним кодом:
;----------------------------------------------------
$ObjNumb=@Map.SelectedObject
$Coordinates=@Map.GetObjectCoordinates $ObjNumb
@Text[11].Add $Coordinates
@Text[11].Save C:\111.txt
;----------------------------------------------------
Маю надію, вмієте працювати з елементами @Text[N].Line[i] та функцією @StringPart? Тоді не складе труднощів Вам їх (координати) витягти із @Text й помістити в табличку, або, як підписи біля конкретних точок базису.
Дякую, сподіваюсь, для когось вищенаписане стане в нагоді та допоможе у вирішенні проблем.