Utilisateur:Ikonact/Cartographie/wmt addpoint

Une page de Wikipédia, l'encyclopédie libre.
function wmt_addpoint(data, varargin)
%#WMT_ADDPOINT plot a point layer on a map.
%#
%# WMT_ADDPOINT(data, 'name', layername);
%# data - data to plot. Data is a matrix with 2 columns -
%# lat, lon for each point.
%# layername - name of the layer to plot

%# The WMT tool is a collection of Octave/Matlab scripts able to generate geographic maps images.
%#
%# Copyright 2012 ikonact
%# http://commons.wikimedia.org/wiki/User:Ikonact
%#
%# This file is part of the WMT tool.
%#
%# WMT is free software: you can redistribute it and/or modify
%# it under the terms of the GNU General Public License as published by
%# the Free Software Foundation, either version 3 of the License, or
%# (at your option) any later version.
%#
%# WMT is distributed in the hope that it will be useful,
%# but WITHOUT ANY WARRANTY; without even the implied warranty of
%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
%# GNU General Public License for more details.
%#
%# You should have received a copy of the GNU General Public License
%# along with WMT.  If not, see <http://www.gnu.org/licenses/>.

global wmt_param;

name='point';

for i = 2:2:nargin
    switch(varargin{i-1})
        case 'name'
            name = varargin{i};
        otherwise
            disp(varargin{i});
    end
end

fprintf(wmt_param.fid, '<g id="layer-%s" inkscape:groupmode="layer" inkscape:label="layer-%s" clip-path="url(#IDmain)">\n', name, name);

for i = 1:length(data)
    if isfield(wmt_param, 'projection') && ~strcmp(wmt_param.projection,'')
        h = m_plot(data(i, 1), data(i, 2), 'ok'); hold on;
        xlim(wmt_param.relxlim);
        ylim(wmt_param.relylim);
    else
        h = plot(data(i, 1), data(i, 2), 'ok'); hold on;
        ylim([wmt_param.limits(1) wmt_param.limits(2)]);
        xlim([wmt_param.limits(3) wmt_param.limits(4)]);
    end
    wmtp_plotpoint(wmt_param.fid, h, wmt_param.pictsize, ['class="' name '"']);
end

fprintf(wmt_param.fid, '</g>\n');