Здравствуйте!
Установили GisToolKit13
перестала работать нанесение линии на карту.
Было так:
//---------------------------------------------------------------------------
// Нарисовать на карте многоугольник
// --------------------------------------------------------------
procedure PaintRect;
begin
MapTopLeft.X:=form_main.mvMap.MapLeft;
MapTopLeft.Y:=form_main.mvMap.MapTop;
form_main.mvMap.ConvertMetric(MapTopLeft.X, MapTopLeft.Y, PP_PICTURE, PP_PLANE);
mapViewUserObject(form_main.mvMap.MapHandle,form_main.mvMap.Handle, MapTopLeft, BlueLine, Data, integer(PP_MAP));
end;
procedure Tform_main.FormCreate(Sender: TObject);
begin
SelectPoints := 0; // Количество заданных точек
Image.Color := $00F0F0F0; // black
Image.Thick := 250; // mkm
Image.Dash := 1250; // stroke length
Image.Blank := 500; // gap length
// Для рисования пунктира
Form.Image := IMG_DOT; // пунктир
Form.Parm := @Image;
Form.Mode := R2_NOT; // R2_XORPEN;
Data.Points:=@points;
Data.PolyCounts:=@SelectPoints;
Data.Count:=1;
BlueLine.Image := Maptype.IMG_LINE;
BlueLine.Parm := @ImageLine;
BlueLine.Mode := R2_COPYPEN; // R2_XORPEN;
end;
procedure Tform_main.mvMapMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
// Нарисовать многоугольник
If SquareMode = true then
begin
SelectPoint := SelectPoint+1;
SelectPoints := SelectPoints+1;
points[SelectPoint].X := xx;
points[SelectPoint].Y := yy;
PaintRect();
// mapAppendPointPlane(ObjectSquare, points[SelectPoint].X, points[SelectPoint].Y, 0);
form_main.sbStatus.Panels.Items[0].Text := ' ВЫБЕРИТЕ СЛЕДУЮЩУЮ ТОЧКУ';
end;
Теперь это не работает.
Просим подсказать почему?
Установили GisToolKit13
перестала работать нанесение линии на карту.
Было так:
//---------------------------------------------------------------------------
// Нарисовать на карте многоугольник
// --------------------------------------------------------------
procedure PaintRect;
begin
MapTopLeft.X:=form_main.mvMap.MapLeft;
MapTopLeft.Y:=form_main.mvMap.MapTop;
form_main.mvMap.ConvertMetric(MapTopLeft.X, MapTopLeft.Y, PP_PICTURE, PP_PLANE);
mapViewUserObject(form_main.mvMap.MapHandle,form_main.mvMap.Handle, MapTopLeft, BlueLine, Data, integer(PP_MAP));
end;
procedure Tform_main.FormCreate(Sender: TObject);
begin
SelectPoints := 0; // Количество заданных точек
Image.Color := $00F0F0F0; // black
Image.Thick := 250; // mkm
Image.Dash := 1250; // stroke length
Image.Blank := 500; // gap length
// Для рисования пунктира
Form.Image := IMG_DOT; // пунктир
Form.Parm := @Image;
Form.Mode := R2_NOT; // R2_XORPEN;
Data.Points:=@points;
Data.PolyCounts:=@SelectPoints;
Data.Count:=1;
BlueLine.Image := Maptype.IMG_LINE;
BlueLine.Parm := @ImageLine;
BlueLine.Mode := R2_COPYPEN; // R2_XORPEN;
end;
procedure Tform_main.mvMapMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
// Нарисовать многоугольник
If SquareMode = true then
begin
SelectPoint := SelectPoint+1;
SelectPoints := SelectPoints+1;
points[SelectPoint].X := xx;
points[SelectPoint].Y := yy;
PaintRect();
// mapAppendPointPlane(ObjectSquare, points[SelectPoint].X, points[SelectPoint].Y, 0);
form_main.sbStatus.Panels.Items[0].Text := ' ВЫБЕРИТЕ СЛЕДУЮЩУЮ ТОЧКУ';
end;
Теперь это не работает.
Просим подсказать почему?