www.map-info.ru :: Просмотр темы - Создание тематической карты на mapbasic, подскажите
                               РќР° главную страницу сайта

 
                                
ВходВход    РегистрацияРегистрация    ПрофильПрофиль    ПользователиПользователи    ГруппыГруппы    FAQFAQ    ПоискПоиск  

 
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Предыдущая тема :: Следующая тема  
Автор Сообщение
serg2008



Зарегистрирован: 17.11.2008
Сообщения: 6

СообщениеДобавлено: Пн Ноя 17, 2008 11:25 am    Заголовок сообщения: Создание тематической карты на mapbasic, подскажите Добавить ответ со ссылкой на данный текст

Необходимо создать тематическую карту на mapbasic, есть следующая встроенная функция «создание тематического слоя методом отдельных значений»

Shade [ Window window_id ]
{ layer_id | layer_name }
With expr
[ Ignore value_to_ignore ]
Values const [ Pen... ] [ Line...] [ Brush... ] [ Symbol... ]
[ , const [ Pen... ] [ Line...] [ Brush... ] [ Symbol... ] ... ]
[ Default [ Pen... ] [ Brush... ] [ Symbol... ] ]


У меня эта функция будет иметь следующий вид:

Shade 1 With Имя колонки
Values
Значения

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

Колонка будет содержать следующие значения (соответственно каждый раз новые значения):
1
1
1
2
2
3
3
3
5
5

А мне нужно получить
1
2
3
5

Может быть есть какое то простое решение (или не очень=)), подскажите пожалуйста.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Пн Ноя 17, 2008 3:27 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Сначала получили список уникальных значений из необходимого тебе поля запросом:
select Поле1 From Болота Group By Поле1

Потом перестрой тематику.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
serg2008



Зарегистрирован: 17.11.2008
Сообщения: 6

СообщениеДобавлено: Пн Ноя 17, 2008 3:58 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Куда будут записаны значения после выполнения запроса
select Поле1 From Болота Group By Поле1 ?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
serg2008



Зарегистрирован: 17.11.2008
Сообщения: 6

СообщениеДобавлено: Пн Ноя 17, 2008 6:18 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Еще вопросик. Каким образом записать данные из таблицы Selection в массив, потому как функция Shade данные из этой таблицы не воспринемает.

Пробовал записать в массив так:

Dim a() As Integer

a = Selection

не получается.
Здесь наверно через цикл надо, вобщем подскажите=).
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
serg2008



Зарегистрирован: 17.11.2008
Сообщения: 6

СообщениеДобавлено: Вт Ноя 18, 2008 12:41 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Вообщем функция Shade воспринимает данные только в виде численных или строковых констант или выражений в виде списка, в котором не используется переменных, т.е. так

Shade 1 With Имя колонки Values
1,
2,
3,
5

Можно ли эти значения из таблицы запихнуть в программу в таком виде.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Вт Ноя 18, 2008 8:58 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Сформируй команду Shade в строковую переменную, потом выполни ее через Run Command
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
serg2008



Зарегистрирован: 17.11.2008
Сообщения: 6

СообщениеДобавлено: Ср Ноя 19, 2008 10:51 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Может быть я не совсем корректно задал вопрос.
Shade 1 With Имя колонки Values Table

Table - таблица содержащая значения для построения тематической карты.

В таком виде Shade не работает, из таблицы значения он брать не хочет.

Пробовал так

cmd_string = "shade 1 with Колонка Values "
Run Command cmd_string + "Table"

тоже не получается

Как данные из таблицы преобразовать к виду, который будет воспринимать Shade?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Пн Ноя 24, 2008 6:04 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

strvalues = "1,2,3,5" ' здесь я опущу алгоритм по которому ты сформируешь список значений
cmd_string = "shade 1 with Колонка Values "+strvalues
Run Command cmd_string
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Показать сообщения:   
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Top.Mail.Ru