aiMapRsts.CreateAndAppendRst |
Создать растровую карту и добавить ее в список открытых растров.
function CreateAndAppendRst(const RstFileName: WideString; WidthPix, HeightPix: Integer; BitsInPix: TxElementSizeBytes; Palette: TxColorRef; ColorCount: Integer; Scale, precision: Double; Location: TxDoublePoint): Integer;
Описание: Создает растр с именем RstFileName и добавляет его в конец списка открытых растровых карт со следующими характеристиками: WidthPix, HeightPix Ширина и высота растра в точках; BitsInPix размер элемента создаваемого растра (бит на пиксель); palette указатель на первый элемент палитры в памяти; colorcount количество цветов в палитре растра; scale знаменатель масштаба создаваемого растра; precision разрешение создаваемого растра; location привязка юго-западного угла растра в районе (в метрах). Возвращает порядковый номер созданной растровой карты. При ошибке возвращает ноль.
Особенность создания растров 1. Параметр BitsInPix - должен принимать значения указанны в описании типа TxElementSizeBytes 2. Передача палитры цветов осуществляется передачей в параметр Palette первого элемента массива. Пример
Паскаль
procedure CreateMyRaster; var Palette : array[0..255] of TxColorRef; RstHandle : integer; Location : TxDoublePoint; begin // установка точки Location.X:=6166500; Location.Y:=7412270; // заполняем палитру цветами Palette[0]:=clBlack; Palette[1]:=clRed; Palette[2]:=clGreen; Palette[3]:=clBlue; Palette[4]:=clYellow; Palette[5]:=clGray; // и так далее ....... RstHandle := aiMatRsts1.CreateAndAppendRst('C:\Map\Podolsk.rst', 256,256, es32bit, @Palette[0], 256, 100000, 1, Location);
end;
Бейсик
Public Sub CreateMyRaster(ByVal Rst As axGisToolKit.aiMapRsts) Dim Palette(256) As axGisToolKit.TuColorRef Dim RstHandle As Integer Dim Location As axGisToolKit.TxDoublePoint ' установка точки Location.X = 6166500 Location.Y = 7412270 ' заполняем палитру цветами Palette(0).Value = &H0 : Palette(1).Value = &HFF : Palette(2).Value = &HFF00 Palette(3).Value = &HFF0000 : Palette(4).Value = &HFFFF : Palette(5).Value = &HC0C0C0 ' и так далее ....... RstHandle = Rst.CreateAndAppendRst("C:\Map\Podolsk.rst", 256, 256, 4, Palette(0).RGB, 256, 100000, 1, Location) End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click CreateMyRaster(axcMapView1.MapRsts) End Sub |