Библиотека полезных скриптов

Скрипт для отримання даних про полiгон (простий, складний чи збiрний). Для використання скопiюйте бiблiотеку PointInPoly.dsf в папку Library (в папцi Digitals)

$Obj=@Map.SelectedObject $Poly=@Map.GetObjectCoordinates $Obj @Text.Text=$Poly @Text.Delete 1-3 $Count=@Text.Count $I=1 $S= %Cycle $Line=@Text.Line[$I] @If ("$Line"="") Then @Goto %Complex $X=@StringPart 2 $Line $Y=@StringPart 3 $Line $Z=@StringPart 4 $Line $XYZ=$X $Y $Z @If $S= Then $S=$XYZ Else $S=$S $XYZ $I=$I+1 @If $I<=$Count Then @Goto %Cycle @Dialog.Message Простий полiгон @Goto %End %Complex $Line=@Text.Line[$I] @If ("$Line"="") Then @Goto %SkipLine $X=@StringPart 2 $Line $Y=@StringPart 3 $Line $Z=@StringPart 4 $Line ; $Param=$X $Y $Z $Poly $Res=%Library.PointInPoly $Param @If $Res=0 Then @Goto %Composite ; %SkipLine $I=$I+1 @If $I<=$Count Then @Goto %Complex @Dialog.Message Складний полiгон @Goto %End %Composite @Dialog.Message Збiрний полiгон ; %End
Ф-цiя PointInPoly повертає значення 0-3, положення точки вiдносно полiгону (0-точка за межами полiгону, 1-точка в межах полiгону, 2-координати точок спiвпадають, 3-точка лежить на контурi полiгону).
Параметрами ф-цiї є: координати точки (X Y Z) та данi змiнної, отриманої за допомогою ф-цiї @Map.GetObjectCoordinates.

Також додав данi функцiї в бiблiотеку GeoGed (для тих, хто користується)