how to find coordinates of a point at where 4 grids meets each other

2 visualizzazioni (ultimi 30 giorni)
a region is divided into 4 grids code is needed to find the coordinates of point at where grids met

Risposte (3)

KSSV
KSSV il 23 Ago 2016
Modificato: KSSV il 23 Ago 2016
You have to give lot of information on this... How the grid data is? How the grids are? Do you have each grid separately? If you have each grid data separately, then you can use intersection of the data to get the common data.
  5 Commenti
kiranpreet kaur
kiranpreet kaur il 23 Ago 2016
close all; clc; ngrid=4; N=50; R=0.2; sink.x=3.1; sink.y=3.1; x = linspace(0, 4, ngrid+1); E=0.5; [X,Y] = meshgrid(x); figure(1) plot(X,Y,'k') hold on plot(Y,X,'k') hold on ngrid = 4; coords = rand(N,2) * ngrid; nodes = struct('x',coords(:,1),... %# Assign x coordinates 'y',coords(:,2),... %# Assign y coordinates 'energy',E);
scatter(coords(:,1),coords(:,2)); set(gca, 'XTick', 1:ngrid+1, 'YTick', 1:ngrid+1) axis square plot(nodes.x,nodes.y,'o','LineWidth',2, 'MarkerEdgeColor','b','MarkerFaceColor','b','MarkerSize',3) plot(sink.x,sink.y,'d','LineWidth',2, 'MarkerEdgeColor','r','MarkerFaceColor','y','MarkerSize',12)

Accedi per commentare.


KSSV
KSSV il 23 Ago 2016
This is the image I got...You want to find the black circles plotted on the image? If so, they already available in [X,Y].
If not, point what intersection point you want in the figure.

KSSV
KSSV il 26 Ago 2016
close all;
clc;
ngrid=4;%no. of grids
N=200;
R=0.5;
sink.x=3.1;
sink.y=3.1;
x = linspace(0, 4, ngrid+1);
E=0.5;
[X,Y] = meshgrid(x);
figure(1)
plot(X,Y,'k')
hold on
plot(Y,X,'k')
hold on
ngrid = 4;
coords = rand(N,2) * ngrid;
nodes = struct('x',coords(:,1),... %# Assign x coordinates
'y',coords(:,2),... %# Assign y coordinates
'energy',E);
scatter(coords(:,1),coords(:,2));
set(gca, 'XTick', 1:ngrid+1, 'YTick', 1:ngrid+1)
axis square
plot(nodes.x,nodes.y,'o','LineWidth',2, 'MarkerEdgeColor','m','MarkerFaceColor','m','MarkerSize',3)
plot(sink.x,sink.y,'d','LineWidth',2, 'MarkerEdgeColor','r','MarkerFaceColor','y','MarkerSize',12)
grid on;
%%Get nodes inside for each box
P1 = cell(4,4) ;
for i = 1:4
for j = 1:4
A = [X(i,j) Y(i,j)] ;
B = [X(i+1,j+1) Y(i+1,j+1)] ;
idx = find(nodes.x >= A(1) & nodes.x <B(1)) ;
idy = find(nodes.y >= A(2) & nodes.y <B(2)) ;
id = intersect(idx,idy) ;
P1{i,j} = [nodes.x(id) nodes.y(id)] ;
% plot points inside first box
plot(P1{i,j}(:,1),P1{i,j}(:,2),'*g')
end
end

Categorie

Scopri di più su WSNs in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by