Вопросы по разработке инструментов в ArcGIS 9.3

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 15 фев 2012, 19:14

Пошаговые инструкции по программированию на VB
http://edndoc.esri.com/arcobjects/8.3/G ... ugh1vb.htm
http://edndoc.esri.com/arcobjects/8.3/G ... ugh2vb.htm
А такие же инструкции для ITool где-нибудь есть?


Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 16 фев 2012, 19:11

Bishop писал(а):http://edndoc.esri.com/arcobjects/9.1/E ... SampleTool
не то?
Здесь вот что смущает. Там в начале инструкции по SampleTool написано, что интерфейс ICommand создаётся по аналогии с SampleCommand, и поясняется, что в реализации интерфейса для ICommand и ITool имеются некоторые различия. Хотелось бы, чтобы процесс создания интерфейса ICommand был наглядно проиллюстрирован при создании инструмента SampleTool. И ещё хотелось бы увидеть инструкцию регистрации инструмента SampleTool - насколько я понимаю, эта процедура различается для SampleCommand и SampleTool.
И вообще - где весь этот код нужно писать, куда его "запихивать"? ArcMap -> Tools -> Macros -> Visual Basic Editor - сюда?

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Дмитрий Барышников » 16 фев 2012, 19:27

Alexei24 писал(а): Здесь вот что смущает. Там в начале инструкции по SampleTool написано, что интерфейс ICommand создаётся по аналогии с SampleCommand, и поясняется, что в реализации интерфейса для ICommand и ITool имеются некоторые различия. Хотелось бы, чтобы процесс создания интерфейса ICommand был наглядно проиллюстрирован при создании инструмента SampleTool. И ещё хотелось бы увидеть инструкцию регистрации инструмента SampleTool - насколько я понимаю, эта процедура различается для SampleCommand и SampleTool.
Отличия между Tool и Command только в том в каких категориях они регистрируются (способ регистрации одинаковый) и в том что для ITool нужно задать курсор и реакцию на мышь.
Alexei24 писал(а): И вообще - где весь этот код нужно писать, куда его "запихивать"? ArcMap -> Tools -> Macros -> Visual Basic Editor - сюда?
Это не примеры VBA! Это код для создания проекта в Visual Studio.
Вам нужен VBA?

Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 16 фев 2012, 19:39

Bishop писал(а):Отличия между Tool и Command только в том в каких категориях они регистрируются (способ регистрации одинаковый) и в том что для ITool нужно задать курсор и реакцию на мышь.
А в какой категории регистрируется Tool?
Alexei24 писал(а):Вам нужен VBA?
Нужна ясность :) Но ответ на этот вопрос я уже получил :)

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Дмитрий Барышников » 16 фев 2012, 20:19

Alexei24 писал(а): А в какой категории регистрируется Tool?
ESRI Mx Commands component category.
Кстати я попутался. IСommand там же регистрируется.
http://edndoc.esri.com/arcobjects/8.3/u ... catmgr.htm
http://resources.esri.com/help/9.3/arcg ... gories.htm

Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 27 фев 2012, 15:31

А если в этот проект добавить ещё и форму, то с помощью какой стандартной процедуры Visual Basic её можно открыть? (Предполагается, что при активизации иструмента первым делом должна открываться форма.)

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Дмитрий Барышников » 27 фев 2012, 21:58

В зависимости от поведения показывайте вашу форму в методе ITool_OnMouseDown или ICommand_OnClick
http://edndoc.esri.com/arcobjects/9.2/C ... xample.htm

Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 28 фев 2012, 13:49

Bishop писал(а):В зависимости от поведения показывайте вашу форму в методе ITool_OnMouseDown или ICommand_OnClick
http://edndoc.esri.com/arcobjects/9.2/C ... xample.htm
С помощью какой функции? (в коде по ссылке операции по работе с формами не всиречаются нигде)

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Дмитрий Барышников » 28 фев 2012, 16:24

К сожалению я VB не силен. Почитайте руководство по языку.

Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 12 мар 2012, 13:08

Bishop писал(а):способ регистрации одинаковый
А как добавить ITool на панель инструментов Tools в ArcMap? Когда захожу во View -> Toolbars -> Customize, то предоставляется выбор только среди команд (Commands). А вот как быть с ITool, непонятно. При попытке добавить ITool через View -> Toolbars -> Customize в окне Categories на вкладке Commands категория Developer Samples не появляется, в то время как с ICommand всё нормально.

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Дмитрий Барышников » 12 мар 2012, 15:35

Вы зарегистрировали вашу библиотеку в необходимой категории (ESRI Mx Commands)?

Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 13 мар 2012, 08:21

Bishop писал(а):Вы зарегистрировали вашу библиотеку в необходимой категории (ESRI Mx Commands)?
1. А какой файл нужно регистрировать?
2. А толку-то? "Commands" - это же всё равно "команды"...

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Дмитрий Барышников » 13 мар 2012, 09:17

Alexei24 писал(а): 1. А какой файл нужно регистрировать?
DLL в котром у вас реализован интерфейс ICommand/ITool
Alexei24 писал(а): 2. А толку-то? "Commands" - это же всё равно "команды"...
Если бы вы прочитали приведенную выше ссылку http://edndoc.esri.com/arcobjects/9.1/E ... SampleTool
то вы бы знали что ITool расширяет интерфейс ICOmmand возможностью интерактивного взаимодействия с картой (Смотрите на картинку с большим кубиком Tool и какие он интерфейсы экспортирует). Из вышесказанного следует, что тулзы, что команды регистрируются в одном месте и появляются в одном диалоге.

Алексей Дорофеев
Участник
Сообщения: 98
Зарегистрирован: 20 ноя 2010, 14:37
Репутация: 0

Re: Вопросы по разработке инструментов в ArcGIS 9.3

Сообщение Алексей Дорофеев » 15 мар 2012, 09:48

Bishop писал(а):
Alexei24 писал(а): 1. А какой файл нужно регистрировать?
DLL в котром у вас реализован интерфейс ICommand/ITool
А как зайти в окно регистрации?

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей