Помощь, нужен мощный ПК

MapInfo, MapBasic
Ответить
elena4815
Новоприбывший
Сообщения: 2
Зарегистрирован: 04 фев 2018, 15:42
Репутация: 0
Откуда: Москва

Помощь, нужен мощный ПК

Сообщение elena4815 » 04 фев 2018, 15:51

Добрый день! Не знала куда написать, суть вопроса вот в чем!
Нужно по сетке квадратов общитать дистанции точек (остановок), сетка есть, точки есть, нумирация стоит.
Все сделала в mapbasic написала скрипт. Запускаю работает доходит до 85 % примерно и мап вырубается не справляется видно может кто помочь файлы прикреплю (единственное в скрипте написан путь сохранения. мой компьютер, нужно поменять будет). Или может где ошибка. Помогите очень нужно!!!!
Последний раз редактировалось elena4815 04 фев 2018, 22:03, всего редактировалось 1 раз.

Boris
Гуру
Сообщения: 4086
Зарегистрирован: 10 апр 2006, 22:34
Статьи: 3
Проекты: 1
Репутация: 398
Откуда: Париж

Re: Помощь, нужен мощный ПК

Сообщение Boris » 04 фев 2018, 20:36

Код: Выделить всё

CoordSys Earth Projection 8, 104, "m", 37.5, 55.666666666667, 1, 113.5, -39.63 Bounds (-30000000, -15000000) (30000000, 15000000)
Имеют две таблицы из трех. Третья, видимо с объектами, имеет СК:

Код: Выделить всё

CoordSys Earth Projection 1, 0
Бред какой то. Вы пишете, что вам не хватает мощности, но при этом оперируете таблицами, мало того, что в разных системах координат, так еще и с границами астрономических размеров.
В приведенном коде, никакой это не скрипт на Mapbasic'е, а просто линейный код, нет ни строчки:
1) комментариев, что недопустимо, если вы просите его посмотреть. Так не принято - читающий код не должен за вас додумывать, а что собственно вы хотели получить или сделать.
2) Это относиться и к описанию задачи. С телепатами тут совсем плохо - это не форум биржевых аналитиков.
3) Ни одна из приведенных команд не устанавливает систему координат вычислений - они проводятся в "CoordSys Earth Projection 1, 0" - объем лишних вычислений можно только оценить.
Далее по тексту:
1) если вы вычисляете что то, то имеет смысл это хоть иногда сохранять, особенно в случае "ничего не выходит". Строчек сохранения я не увидел, одно это переполнит память Mapinfo.
2) Где установка системы координат для расчетов: "set coordsys table grid" или аналогичная ?
3) Кто вас научил использовать названия внутренних переменных в качестве названия полей или таблиц :shock: ? таблица OBJ - "Вы серьезно"!? Да одно это могло создать тысячу неуловимых ошибок!
4) И теперь самое загадочное:

Код: Выделить всё

Nearest 1000 From Table Selection to grid_p Into d1 Data polyID = grid_p.ID
Update d1 set Dist_Km = ObjectLen(obj, "m")
Add Column "grid" (tran)From d1 Set To min(Dist_Km) Where COL1 = COL1
В переводе на русский тут сказано:
1. выбрать 1000 ближайших точек :shock: из таблицы Obj - объектов к узлам сетки (?!) и записать их в кросс-таблицу d1 ( создать 12 миллионов записей?) без ограничения минимального и максимального расстояния (!?) и сохранить значение точки из таблицы grid_p.ID (!?) ;
2. записать расстояние между найденными узлами в кросс-таблицу;
3. добавить в таблицу "другая сетка" (grid) временную колонку "tran" со значением минимум из колонки кросс-таблицы !? :shock:
:shock: :shock: :shock:
И только после этого компьютер не справляется?
А для чего вычислены 999 ДРУГИХ расстояний? Или почему расстояния вычисляются до ОДНОЙ сетки, а интересны расстояния до ДРУГОЙ сетки?
Почему добавляются временные колонки, а не заполняются значения в заранее созданных?
Почему после создания таблиц d1-d3 они ни разу не сохраняются, а висят в памяти компьютера?
Почему для таблиц с массовым добавление данных НЕ отключен режим "сохранять предыдущее состояние"?
И как так вышло, что колонка "Dist_Km" хранит значения в метрах?
Почему точек в "grid_p" так много, если априори ясно, что 40% из них не участвуют в расчетах?
ЗЫ
И в довершение всего, поле grid_p.ID, используемое в качестве уникального индекса ( я так полагаю ), в присланных таблицах == 0 ! А зачем тогда его сохранять в кросс-таблицы?
ЗЗЫ
Не надо присылать текст в формате WORD. Это не безопасно.

elena4815
Новоприбывший
Сообщения: 2
Зарегистрирован: 04 фев 2018, 15:42
Репутация: 0
Откуда: Москва

Re: Помощь, нужен мощный ПК

Сообщение elena4815 » 04 фев 2018, 22:05

Спасибо! Решение пришло само, все работает, на ваш ответ отвечу просто, научилась сама, делаю как умею, вот и все.

Ответить

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

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

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