Модуль ZX-TOOL_Polygon_Fill v2.0

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

Новая версия модуля ZX-TOOL_Polygon_Fill  v2.0  (9 Кб)  и полное описание здесь:

 http://arcscripts.esri.com/details.asp?dbid=13352

v2.0    *New!

-Возможность запуска данного скрипта из другого, что позволяет автоматизировать и убыстрить процесс создания полигонов. Для вызова используется оператор RUN и передается одно значение -объект POINT. Скрипт ничего не возвращает, все функции идентичны ручному управлению. Производите внешний запуск, когда конпка ZX_TOOL не активна.

Примеры: av.Run("zx_main",{X@Y}) или av.Run("zx_main",{aPoint})

-Доступна глобальная переменная _slist , являющаяся списком номеров полилиний в порядке их выделения. Второй вызов скрипта преобразует этот список в полигон.

v1.0

***Функции щелчков:

-быстрое создание полигона (Двойной щелчок)

-начало трассировки (Первый щелчок) /выбранные объекты отсутствуют

-преобразование замкнутого контура в полигон (Второй щелчок) /применен внутри контура

-преобразование незамкнутого контура в полигон (Второй щелчок) /применен внутри контура

-очистка контура (Второй щелчок) /применен снаружи контура

-удаление полигона (+Shift)

-начало трассировки при удалении полигона (автоматически)

***Функции выбора линией:

-начало трассировки с любой линии /выбранные объекты отсутствуют

-откат трассировки /уже выбранной линии

-продолжение трассировки с прилегающей линии

-продолжение трассировки с не прилегающей линии (+Shift)

-добавление в контур висячей линии (+Shift)

___

(+Shift) - означает: во время нажатия клавиши Shift

Результат:

Создаваемые полигоны добавляются к Активной полигональной теме, иначе к Графике Вида.

 

Ограничения:

Входная полилинейная тема должна соблюдать линейно-узловую топологию (по крайней мере пересекающиеся линии должны разбивать друг друга). Для коррекции можно использовать EditTools 3.6 или подобные очищающие шейп-файлы утилиты. (Ключевые слова поиска: clean, build, intersect, polyline).

 

 

(c)2004 Евгений Голяков

Всероссийский Институт Минерального Сырья (ВИМС)

Москва, Россия.

Email: zx_tool_support@mail.ru

08/03/2004 -v1.0 Релиз модуля

23/03/2004 -v1.0 Подробное описание

21/07/2004 -v2.0 Запуск скрипта из другого

2 Ответы

0 голосов
ответил 11 Авг, 04 от Гость (210,080 баллов)

  Неожиданная проблема  инициализации моего скрипта в Arcview 3.2a ( original English) в Японии на 1101 пользователе, ранее такого не было и не знаю в чем дело, help!
Структура скрипта: тело и update закодированны, un-/ install открыты, вот примеры:

--------make-------
if (av.GetProject = nil) then exit end
ext=Extension.Make("D:\ZX_TOOL-Polygon_Fill.avx".AsFileName,"ZX_TOOL-Polygon_Fill v2.0",
  av.FindScript("install"),av.FindScript("uninstall"),{})
ext.SetExtVersion(2.0)
ext.SetAbout("ZX_TOOL-Polygon Fill v2.0")

ts = av.GetProject.FindGUI("View").GetToolBar.GetControls
ext.Add(av.GetProject.FindGUI("View").GetToolBar.GetControls.Get(ts.count-1))
for each aDoc in av.GetProject.GetDocs
  if (aDoc.Is(SEd)) then
    if (aDoc.GetName.Contains("zx")) then
      if (aDoc.IsCompiled.Not) then aDoc.Compile end
      ext.Add(av.FindScript(aDoc.GetName).AsEncrypted)
    end
  end
end
ext.Commit
--------end make--------


--------install----------
if (av.GetProject = nil) then return nil end
if (self.GetPreferences.Get("Loaded") = TRUE) then  return NIL end
aGUI = av.GetProject.FindGUI("View")
if (aGUI = NIL) then  lisGUIs = av.GetProject.FindGUIsFor(View)
  instGUIs = MsgBox.MultiList(lisGUIs,"Choose docs to add components: ","Loading")
else
  instGUIs={aGUI}
end
if((instGUIs=NIL)or(instGUIs.Count<1))then
MsgBox.Error("Cannot load components","Extension Failure")
  return NIL
end

for each aGUI in instGUIs
  tb=aGUI.GetToolBar
  if(tb=nil)then MsgBox.Warning("No View GUI","Unloading") return nil end
  b=SELF.Get(0)
  if(tb.FindByScript("zx_main")=Nil)then '//
   tb.Add(b.Clone,tb.getcontrols.Find(tb.getcontrols.get(tb.getcontrols.count-1)))
   aGUI.SetModified(TRUE)
 end '//
end
--------end install--------

0 голосов
ответил 11 Авг, 04 от Гость (210,080 баллов)

 Забыл уточнить суть проблемы: не появляется кнопка в Виде пользовалетеля. Ошибок не выскакивает.

----orig info----

I have downloaded it and put zx_tool-polygon-fill v.1 or v.2 in Ext32 and then I have activated it.but no change in the View. There is no new icon in relation with this tool in the the View interface.

The version of Arcview is 3.2a and it is in original English  language.
The name of the View is VIEW not any more.

----eof----

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