Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Жигалов Дмитрий
Зарегистрирован: 30.03.2011 Сообщения: 4
|
Добавлено: Ср Мар 30, 2011 11:59 am Заголовок сообщения: Как создать отдельный слой для растров? |
|
|
Подскажите как создать отдельный слой в Mapinfo 10 для растров (так чтобы включать и выключать растр состоящий из нескольких планшетов одним действием) |
|
Вернуться к началу |
|
|
FedorinoFF
Зарегистрирован: 01.02.2007 Сообщения: 272 Откуда: Санкт-Петербург
|
Добавлено: Чт Мар 31, 2011 9:50 am Заголовок сообщения: |
|
|
Сшить все растры и зарегистрировать один слой. |
|
Вернуться к началу |
|
|
Жигалов Дмитрий
Зарегистрирован: 30.03.2011 Сообщения: 4
|
Добавлено: Чт Мар 31, 2011 12:39 pm Заголовок сообщения: |
|
|
А как это сделать? Можно поподробней. |
|
Вернуться к началу |
|
|
Alex_47
Зарегистрирован: 01.07.2009 Сообщения: 66 Откуда: Н.Новгород
|
Добавлено: Пт Апр 01, 2011 9:09 am Заголовок сообщения: |
|
|
Ну или вот так
Include "mapbasic.def"
Include "icons.def"
Declare Sub main
Declare Sub rastr_on
Declare Sub rastr_off
Declare Sub rastr_min_max
Sub main
Create ButtonPad "растр" As
PushButton
Icon 237
Calling rastr_on
helpmsg "\nПоказать растр."
Alter ButtonPad "растр" Add Separator
PushButton
Icon 239
Calling rastr_off
helpmsg "\nСпрятать растр."
Alter ButtonPad "растр" Add Separator
PushButton
Icon 141
Calling rastr_min_max
helpmsg "\nПорог."
End Sub
Sub rastr_on
Dim i As Integer
For i = 1 To MapperInfo( FrontWindow() , MAPPER_INFO_LAYERS)
If LayerInfo(FrontWindow(), i , LAYER_INFO_TYPE ) = LAYER_INFO_TYPE_IMAGE Then
Set Map Layer i Display Graphic
End If
Next
End Sub
Sub rastr_off
Dim i As Integer
For i = 1 To MapperInfo( FrontWindow() , MAPPER_INFO_LAYERS)
If LayerInfo(FrontWindow(), i , LAYER_INFO_TYPE ) = LAYER_INFO_TYPE_IMAGE Then
Set Map Layer i Display Off
End If
Next
End Sub
Sub rastr_min_max
Dim i_min, i_max As Integer
Dim i As Integer
dialog
Control EditText
Into i_min
Control EditText
Into i_max
Control OKButton
Control CancelButton
If CommandInfo(CMD_INFO_DLG_OK) Then
For i = 1 To MapperInfo( FrontWindow() , MAPPER_INFO_LAYERS)
If LayerInfo(FrontWindow(), i , LAYER_INFO_TYPE ) = LAYER_INFO_TYPE_IMAGE Then
Set Map Layer i Zoom (i_min,i_max) Units "m" On
End If
Next
End If
End Sub
Последний раз редактировалось: Alex_47 (Пн Апр 04, 2011 9:09 pm), всего редактировалось 4 раз(а) |
|
Вернуться к началу |
|
|
miks196
Зарегистрирован: 28.04.2010 Сообщения: 38
|
Добавлено: Пт Апр 01, 2011 10:43 am Заголовок сообщения: |
|
|
Как же всетаки сшить все растры? |
|
Вернуться к началу |
|
|
Жигалов Дмитрий
Зарегистрирован: 30.03.2011 Сообщения: 4
|
Добавлено: Пт Апр 01, 2011 10:48 am Заголовок сообщения: |
|
|
В MI "менеджер сшитых таблиц" не может сшивать растры. Может есть способы не такие заумные? |
|
Вернуться к началу |
|
|
Alex_47
Зарегистрирован: 01.07.2009 Сообщения: 66 Откуда: Н.Новгород
|
Добавлено: Пт Апр 01, 2011 10:59 am Заголовок сообщения: |
|
|
Давай мыло я тебе скину прогу код, которой описал выше. А то я не знаю, как тут прикреплять файлы. В ней все просто 1 копка показывает все карты, а 2-ая наоборот. |
|
Вернуться к началу |
|
|
Жигалов Дмитрий
Зарегистрирован: 30.03.2011 Сообщения: 4
|
Добавлено: Пт Апр 01, 2011 11:03 am Заголовок сообщения: |
|
|
Было бы замечательно. Вот мой ящик zhdima85@mail.ru |
|
Вернуться к началу |
|
|
Serj
Зарегистрирован: 25.08.2006 Сообщения: 50
|
Добавлено: Пт Апр 01, 2011 12:51 pm Заголовок сообщения: |
|
|
Если это десятка MapInfo, то:
В управлении слоями создаем новую группу, помещаем в нее все растры, ну и, собственно, проблема решена - включаем, выключаем всю группу разом... |
|
Вернуться к началу |
|
|
Arhara
Зарегистрирован: 18.02.2009 Сообщения: 400 Откуда: Moscow, RF
|
Добавлено: Сб Апр 02, 2011 7:02 pm Заголовок сообщения: |
|
|
2 Alex_47
А есть возможность не просто показать скрыть, а показать - скрыть - "вернуть к масштабу отображения по умолчанию"? |
|
Вернуться к началу |
|
|
Alex_47
Зарегистрирован: 01.07.2009 Сообщения: 66 Откуда: Н.Новгород
|
Добавлено: Вс Апр 03, 2011 10:42 am Заголовок сообщения: |
|
|
А что за "вернуть к масштабу отображения по умолчанию"? |
|
Вернуться к началу |
|
|
Arhara
Зарегистрирован: 18.02.2009 Сообщения: 400 Откуда: Moscow, RF
|
Добавлено: Пн Апр 04, 2011 1:29 am Заголовок сообщения: |
|
|
при обычном добавлении растра к окну MapInfo САМА рассчитывает при каких масштабах он должен быть виден и устанавливает их в свойства растрового слоя.
Так что состояний у показа растра бывает 3 - не отключен, виден всегда, виден при установленном (по-умолчанию) масштабе. Вот это "виден при масштабе по умолчанию" бесит ужасно, когда много растров загружаешь в окно.
Возможен еще 4 вариант - виден при установленном руками масштабе, но это уже излишне. Хотя раз уж писали программу, то и это вариант интересен. |
|
Вернуться к началу |
|
|
Alex_47
Зарегистрирован: 01.07.2009 Сообщения: 66 Откуда: Н.Новгород
|
Добавлено: Пн Апр 04, 2011 8:20 am Заголовок сообщения: |
|
|
Типа надо чтобы не было "паказывать в пределах"? |
|
Вернуться к началу |
|
|
Arhara
Зарегистрирован: 18.02.2009 Сообщения: 400 Откуда: Moscow, RF
|
Добавлено: Пн Апр 04, 2011 8:24 pm Заголовок сообщения: |
|
|
типа, что бы был, но можно было задать другие пределы, но для всех растров разом. |
|
Вернуться к началу |
|
|
Alex_47
Зарегистрирован: 01.07.2009 Сообщения: 66 Откуда: Н.Новгород
|
Добавлено: Пн Апр 04, 2011 8:55 pm Заголовок сообщения: |
|
|
Arhara писал(а): |
типа, что бы был, но можно было задать другие пределы, но для всех растров разом. |
Глянь код выше я его отредактировал) |
|
Вернуться к началу |
|
|
|