Вот симпатичная картинка с растром, который я использую - без применения эффектов - только цветовая шкала и гистограмма, отрегулированные так, чтобы показать все рельеф - хотя и в двухмерном виде!
У меня есть растровый слой, который я хочу отображать с холмистой местностью по умолчанию. Я могу сделать это в коде, и фактически это то же самое, что и выбор опции Hillshade в ArcMap (см. Ниже):
Однако когда вы делаете это, это выглядит неутешительно:
Особенно, если вы увеличиваете растр, вы видите все виды сетчатых артефактов - что выглядит не очень красиво!
Однако, если я создам правильный слой Hillshade с использованием растра с помощью Spatial Analyst и наложу его с прозрачностью 85%, он будет выглядеть довольно хорошо и совсем по-другому !:
- Как я могу добиться этого эффекта в ArcMap и переопределить функциональность по умолчанию для опции Hillshade (я полагаю, это невозможно, или я пропустил некоторые настройки, из-за которых растр отображается плохо). Если есть возможность переопределить или выбрать правильные настройки - это можно сделать в ArcObjects.
- Если вариант 1 невозможен, могу ли я создать свой эффект с помощью создания слоя Hillshade (без использования Spatial Analyst) и эффективно объединить его с оригинальным растром - т.е. я не хочу, чтобы люди видели два слоя в таблице содержания в ArcMap , Я просто хочу один слой, но с рендерингом на холмах по умолчанию моего выбора / конфигурации. Мне нужно сделать это тоже программно, т.е. ArcObjects.
Одна вещь, которую я узнал, состоит в том, что вы должны иметь свою ЦМР в правильных пространственных привязках и единицах измерения, или получившаяся в результате горная тень выглядит слишком черной и чрезмерно преувеличенной - посмотрите это видео, чтобы узнать больше - это очень хорошее объяснение.
Поэтому я думаю, что теперь я знаю, что мне нужно сделать в отношении создания некоторого высококачественного хэдшинга, но я думаю, что потребуется немного настраивающий код ArcObjects низкого уровня. Я думаю, что мне нужно придумать свой собственный рендеринг графики и подключить его к ArcMap (у меня есть DLL, которая классным образом отображает растровые изображения). Я думаю, что хорошее место, чтобы показать это, было бы переопределить событие Draw () на чем-то вроде IRasterRenderer и вставить мой собственный рендеринг изображений. Конечно, это может быть немного сложно с репроекциями и т. Д.
Кто-нибудь делал этот низкоуровневый рендеринг графики в ArcMap - если да, можете ли вы предложить какие-либо рекомендации или вещи, о которых мне следует знать?
источник
Ответы:
Использовать билинейную интерполяцию передискретизации во время отображения
Вы можете несколько улучшить отображение, изменив используемый метод пересэмплирования с ближайшего соседа по умолчанию на билинейную интерполяцию. Свойства слоя -> вкладка «Отображение» -> «Повторная выборка» во время отображения с использованием: билинейной интерполяции.
Этот эффект лучше всего работает с матрицей высот и стандартной черно-белой цветовой шкалой.
Вы получите намного лучший результат и намного больший контроль над дисплеем при использовании 2 растров, как вы уже сделали. Убедитесь, что вы также используете метод передискретизации билинейной интерполяции.
Добавить матрицу высот:
Переключить «Использовать эффект Hillshade Effect» на:
Отображается следующим образом на экране:
Измените передискретизацию во время отображения на билинейную интерполяцию:
Отображается следующим образом на экране:
источник
Описанная методика Arcmap на холмистом склоне является быстрой и грязной и никогда не предназначалась для замены результата на холмистой местности из Spatial Analyst и / или 3D Analyst. Хотя один и тот же термин используется для описания обоих, они совсем не одинаковы.
Чтобы создать настоящий холм без Spatial Analyst, вы можете попробовать gdaldem из GDAL :
В TileMill Terrain Data Tutorial есть хороший обзор того, как использовать gdaldem для создания составного ската с гипсометрической тонировкой.
Если утилита не является достаточно прямой для вашего приложения, исходный код C ++ для gdaldem находится здесь .
источник
Если вы ищете красивый холм, для создания которого требуется некоторое время, но который отлично подходит для более крупных проектов, где он будет широко освещаться , вы можете попробовать метод Swiss Hillshade - для этого требуется 3 слоя, но затем вы можете экспортировать их к одному TIFE с географической привязкой, чтобы сэкономить место и для мобильности. Я полагаю, что этот метод требует Spatial Analyst, так что он не является прямым ответом на вопрос OP, но может быть полезен для других, рассматривающих методы отмывки в ArcGIS. Этот метод работает и в других ГИС-системах, но связанный набор инструментов предназначен для ArcGIS.
Изменить 11/2014: Esri недавно выпустила новый инструмент для создания Hillshades. Это выглядит очень гладко и должно сочетаться с рабочими процессами Аскера. Они вводят это здесь, и вы можете скачать код и инструкции по установке здесь
источник
Когда вы говорите в пункте № 2 «Могу ли я создать свой эффект с помощью создания слоя Hillshade (без использования Spatial Analyst)», вы имеете в виду альтернативные приложения для создания тени?
Если вы хотите использовать приложение вне Spatial Analyst, я недавно узнал (но никогда не использовал) « SEXTANTE для расширения ArcGIS » ( бесплатное ), которое позволяет пользователям использовать инструменты SEXTANTE в ArcMap. Если вы посмотрите этот видеоклип , вы увидите, что они демонстрируют способы создания тени.
источник
Меня всегда инструктировали, чтобы увеличить преувеличение z, когда я выполняю шлейф.
Я только что попробовал 100 на моем, и это кажется немного экстремальным.
Кроме того, изменение типа растяжки имеет большое значение во внешнем виде тени.
Поскольку вы говорите о том, как это выглядит, вы также можете посмотреть на этот пункт справки. esir help
Что говорит о том, что штриховка iis применяется при разрешении экрана.
И изменить угол освещения
Esri поможет
также изменение направления и контрастности
источник