Как раскрасить графический объект

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
developer195
Новоприбывший
Сообщения: 7
Зарегистрирован: 09 июн 2010, 11:59
Репутация: 0

Как раскрасить графический объект

Сообщение developer195 » 09 июн 2010, 12:08

Доброго дня.
Подскажите неопытному товарищу, пожалуйста.
Если в слое создан графический объект, например, типа точки (Point), как программно задать ему нужный цвет? Если можно, какой-то пример, неважно на каком языке программирования.
Благодарю.

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Как раскрасить графический объект

Сообщение Дмитрий Барышников » 09 июн 2010, 15:30

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

  Dim pFeatLyr As IGeoFeatureLayer
  Set pFeatLyr = pMap.Layer(0)

  If (TypeOf pFeatLyr.Renderer Is ISimpleRenderer) Then
    Dim pSimpleRend As ISimpleRenderer
    Set pSimpleRend = pFeatLyr.Renderer
    Dim pSym As ISymbol
    Set pSym = pSimpleRend.Symbol
    Dim pSymMark As ISimpleMarkerSymbol
    pSymMark = pSym
    pSymMark.Color --> ваш цвет
  End If
Где-то так. За подробностями http://edndoc.esri.com/arcobjects/9.2/C ... erview.htm
Может чего и напутал. Если надо могу на C++ дать.

developer195
Новоприбывший
Сообщения: 7
Зарегистрирован: 09 июн 2010, 11:59
Репутация: 0

Re: Как раскрасить графический объект

Сообщение developer195 » 09 июн 2010, 16:55

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

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Как раскрасить графический объект

Сообщение Дмитрий Барышников » 09 июн 2010, 17:03

вторая строчка - говорит о том что объект получается из IMap, который, в свою очередь, может быть получен из IAсtiveView или из MxDocument или из IApplication
Подробнее в этих интерфейсах http://edndoc.esri.com/arcobjects/8.3/C ... veView.htm
Только здесь рисовать НЕЛЬЗЯ! Можно раскрасить подгружаемые географические слои. Если нужно рисовать смотрите в сторону IScreenDisplay

developer195
Новоприбывший
Сообщения: 7
Зарегистрирован: 09 июн 2010, 11:59
Репутация: 0

Re: Как раскрасить графический объект

Сообщение developer195 » 10 июн 2010, 10:53

>вторая строчка - говорит о том что объект получается из IMap, который, в свою очередь, может быть получен из >IAсtiveView или из MxDocument или из IApplication...
Спасибо Вам, это я понимаю, я имел ввиду: где можно из интернета скачать слой типа IGeoFeatureLayer, чтобы в нём можно было раскрасить точку. Вообще мне нужно сначала нарисовать точку в слое (это у меня получилось, но может Вы по другому делаете), а потом её же и раскрасить. То есть можете помочь со следующим:
1. Как нарисовать и раскрасить точку в слое?
2. Где скачать нужный для этого слой?

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Как раскрасить графический объект

Сообщение Дмитрий Барышников » 10 июн 2010, 11:38

В понимании ArcGIS карта (IMap) состоит из слоев (ILayer). Данные для слоев - шейп файлы (IFeatureClass). Шейп файлы можно взять здесь http://gis-lab.info/qa/geosample.html. Если же нужно свой шейп файл создать и записать в него данные, то это уже другая история. На http://edndoc.esri.com есть несколько примеро как это сделать.
Главное понять что в ArcGIS отображение отделено от данных.

developer195
Новоприбывший
Сообщения: 7
Зарегистрирован: 09 июн 2010, 11:59
Репутация: 0

Re: Как раскрасить графический объект

Сообщение developer195 » 10 июн 2010, 12:05

Спасибо Вам огромное !

Ответить

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

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

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