![:beer:](http://vse.kz/public/style_emoticons/default/smile.gif)
Сообщение отредактировал fredwriter: 22.10.2009, 11:13:02
Include "icons.def" Include "mapbasic.def" Declare Sub Main Declare Sub izmKil Sub Main Create ButtonPad "Мои кнопки" As ToolButton 'Icon MI_ICON_LINE DrawMode DM_CURSOR_LINE Cursor MI_CURSOR_CROSSHAIR Calling izmKil HelpMsg "Этот инструмент измеряет расстояние в км от точки до точки" Show End Sub Sub izmKil dim x1, y1, x2, y2 As Float If WindowInfo(FrontWindow(), WIN_INFO_TYPE) <> WIN_MAPPER Then Note "Инструмент используется только в окне Карты." Exit Sub End If 'Запомнить место, в котором начал действовать инструмент: x1 = CommandInfo(CMD_INFO_X) y1 = CommandInfo(CMD_INFO_Y) 'Запомнить место, в котором отпущена кнопка мыши: x2 = CommandInfo(CMD_INFO_X2) y2 = CommandInfo(CMD_INFO_Y2) End SubЯ подозреваю, что нужно что-то изменить в этом коде и что-то добавить
Сообщение отредактировал fredwriter: 22.10.2009, 15:16:37
Include "icons.def" Include "mapbasic.def" Declare Sub Main Declare Sub izmKil Sub Main Create ButtonPad "Мои кнопки" As ToolButton 'Icon MI_ICON_LINE DrawMode DM_CURSOR_LINE Cursor MI_CURSOR_CROSSHAIR Calling izmKil HelpMsg "Этот инструмент измеряет расстояние в км от точки до точки" Show End Sub Sub izmKil dim x1, y1, x2, y2 As Float If WindowInfo(FrontWindow(), WIN_INFO_TYPE) <> WIN_MAPPER Then Note "Инструмент используется только в окне Карты." Exit Sub End If
If MapperInfo(FrontWindow(), MAPPER_INFO_EDIT_LAYER) = -1 Then Note "Нет редактируемого слоя" Exit Sub End Ifдальше твое
'Запомнить место, в котором начал действовать инструмент: x1 = CommandInfo(CMD_INFO_X) y1 = CommandInfo(CMD_INFO_Y) 'Запомнить место, в котором отпущена кнопка мыши: x2 = CommandInfo(CMD_INFO_X2) y2 = CommandInfo(CMD_INFO_Y2)
Create Line Into FrontWindow() (x1, y1) (x2, y2) Note Sqr((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)) End SubЕсть 1 НО, кое что насчет отображения длины, она будет в той системе координат что используется по умолчанию.
Сообщение отредактировал Jismo: 22.10.2009, 15:42:22
Run Program "cmd /c ""start ""wintitle"" ""C:\Program Files\MapInfo\Professional\mapinfow.chm"""""после вызова START в ковычках указывается заголовок будущего окна для CMD, который можно сделать пустым (все равно никто не увидит).
Сообщение отредактировал swatch: 23.10.2009, 14:37:37
пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0
Размещение рекламы на сайте Предложения о сотрудничестве Служба поддержки пользователей
© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.