Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Андрей Могильный
Зарегистрирован: 21.03.2006 Сообщения: 864
|
Добавлено: Ср Фев 14, 2007 3:35 pm Заголовок сообщения: |
|
|
Софочка писал(а): |
Шутки-шутками, но я числюсь в конторе программистом, и начальство меня не поймет, ежели я предложу им что-либо купить, вместо того, чтобы самой работать. Ну и потом, у меня уже спортивный интерес проснулся - ну что же там такого мудреного? |
У вас контора наверное вообще ПО не покупает, есть же собственный программист! :)
Я вообще не понял почему у программиста появляются такие вопросы, ответ ведь очень прост. Про функцию Round наверное слышали? Цикл по всем объектам слоя, по все точкам какждого объекта и:
X:=Round(X,2); //округляем до 2-х знаков, или до скольки надо
Y:=Round(Y,2);
Реализацию функции round можно использовать по вкусу, у нас используется 2 разновидности. |
|
Вернуться к началу |
|
|
Софочка
Зарегистрирован: 13.02.2007 Сообщения: 11
|
Добавлено: Чт Фев 15, 2007 7:03 am Заголовок сообщения: |
|
|
Андрей Могильный писал(а): |
У вас контора наверное вообще ПО не покупает, есть же собственный программист! :) |
Да, именно так все и происходит, не далее как вчера закончила очередной релиз собственной операционки. Пишу сразу в машинных кодах - так проще.
Андрей Могильный писал(а): |
Я вообще не понял почему у программиста появляются такие вопросы, ответ ведь очень прост. Про функцию Round наверное слышали? Цикл по всем объектам слоя, по все точкам какждого объекта и:
X:=Round(X,2); //округляем до 2-х знаков, или до скольки надо
Y:=Round(Y,2);
|
Мне функция Round уже в страшных снах снится, а уж циклы по всем таблицам, всем объектам, всем узлам объектов вообще с бесконечным лабиринтом при клинической сметри ассоциируются.
Этот метод - перебора узлов - я реализовала самым первым, мало того, он оказался и самым долгим. Когда у вас болото на всю трапецию, объект узлов этак в 10 000-20 000, то округлять координаты методом перебора узлов можно сутки.
Старый анекдот вспоминается про пациента психиатра, который жалуется на то, что его никто не слушает. Так вот я себя сейчас в роли того пациента ощущаю. Ведь я же писала, что когда я программно задаю координаты узлов (будь это создание нового объекта или изменение существующего), у меня затем появляются "хвосты" в координатах, типа 100.002, хотя я задавала эту координату как 100.
Андрей Могильный писал(а): |
Реализацию функции round можно использовать по вкусу, у нас используется 2 разновидности. |
Хотела попробовать обработать свои таблицы вашим Инструментарием, что-то он у меня не запускается. Ошибка "(_gtoolkit.mb:444) Преобразовать данные не удалось." . И дальше серия "Access violation ... in module gtoolkit.exe." Это у вас такие ограничения триальной версии? :D |
|
Вернуться к началу |
|
|
Нестеров Валерий
Зарегистрирован: 21.03.2006 Сообщения: 492
|
Добавлено: Пт Фев 16, 2007 1:52 pm Заголовок сообщения: |
|
|
Триальная версия не имеет ограничений, возможно у вас, как пользователя, не хватает прав на этом компьютере. При установке инструментария вы должны иметь права администратора на компьютере, на котором устанавливаете.
А насчет "Что такое неровные пределы карты?" в одном из предыдущих вопросов, то это, чтобы при делении протяженности карты на 2 000 000 000 получалось 0,1 или 0,01 или 0,001 и т.д., а не 0,09237.
Пример ровных пределов:
X min = -1 000 000; X max = 9 000 000
протяженность карты по "X" получается 10 000 000
расстояние между соседними узлами: 10 000 000/2 000 000 000=0,005
(теперь как бы вы не двигали узлы, в 3-ем знаке всегда будет или 5 или 0, а после нули)
Y min = 0; Y max = 2 000 000
протяженность карты по "Y" получается 2 000 000
расстояние между соседними узлами: 2 000 000/2 000 000 000=0,0001
(теперь как бы вы не двигали узлы, в 4-ом знаке значения могут быть от 0 до 9, а с 5-го знака будут нули)
-------------------------------------------------
Пример не ровных пределов:
X min = -1 000 000; X max = 1 954 000
протяженность карты по "X" получается 2 954 000
расстояние между соседними узлами: 2 954 000/2 000 000 000=0.001477
(теперь как бы вы не округляли значения узлов, после 3-го знака могут быть не нули) _________________ Жизнь прекрасна!i |
|
Вернуться к началу |
|
|
Софочка
Зарегистрирован: 13.02.2007 Сообщения: 11
|
Добавлено: Пн Фев 19, 2007 6:40 am Заголовок сообщения: |
|
|
Нестеров Валерий, спасибо еще раз. Я уж вроде сама с этим разобралась, но тем не менее, спасибо. :D
Насчет установки вашего Инструментария... Я на своей машине администратор, и программа успешно инсталлировалась. Она запускаться не хочет, выдавая указанную мною ошибку. :(
ОС у меня - windows XP prof. Попробовала на соседней аналогичной машине - там все нормально запускается и работает. |
|
Вернуться к началу |
|
|
|