How can I apply mathematical calculation for every Elements of a Cell Array ( like in Excel)
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi Matlab Masters, I have two following Cell Arrays (or two Excel-Tables, if necessary).
Cell Array for the Bodies
[Body] [Weigh] [warranty]
[A1] [3.5] [2]
[A2] [6.2] [3]
[B1] [7.1] [1]
[B2] [3,9] [4]
[B3] [4.2] [5]
[C1] [1.3] [7]
... .... ...
Cell Array for the partial Objects in each Body
[Object] [x_min] [x_max] [y_min] [y_max] [Volume]
[A1-a1] [5.7] [7.3] [8.9] [4.3] [5.1]
[A1-a2] [2.6] [5.6] [9.3] [5.7] [5.2]
[A1-a3] [3,6] [7.3] [5.3] [7.3] [5.8]
[A2-a1] [8,2] [5.8] [2.7] [5.3] [6.3]
[A2-a2] [8.4] [6.3] [8.5] [6.3] [9.3]
[B1-b1] [7.1] [6.3] [8.2] [8.5] [5.3]
[B1-b2] [8.9] [8.4] [4.5] [6.2] [4.5]
[C1-c1] [7.0] [7.1] [1.3] [8.9] [1.3]
[C1-c2] [6.9] [4.8] [3.2] [9.2] [3.7]
[C1-c3] [5.3] [2.5] [4.2] [6.4] [6.3]
... ... ... ... ... ...
now I want write a program, which does the following steps to the objects automatically:
1. Calculate the weigh of each object with the forular:
Weigh_obj = Weigh_body * Volume_obj/Sume of every Volume_obj in the body
for Example Weigh_A1-a1 = Weigh_A1 * Volume_A1-a1/(Volume_A1-a1 + Volume_A1-a2 + Volume_A1-a3)
= 3.5 * 5.1 /(5.1+5.2+5.8)
2. Compare the coordination of each object with the coordination of the other objects to find out,if there is a Touch between any two objects :
For Example with two Objects Object1 and Object2:
if ( (x2_min <=x1_min<=x2_max)or(x2_min <=x1_max<=x2_max)
and(y2_min <=y1_min<=y2_max)or(y2_min <=y1_max<=y2_max) )
returns '1' in corresponding positions in the matrix of n objects , like this:
[ X] [O1] [O2] [O3] ... [On]
[O1] [X] [1] [ ] ... ...
[O2] [1] [X] [ ] ... ...
[O3] [ ] [ ] [X] ... ...
... ... ... ... [X]
[On] ... ... ... ... [X]
else
returns '0' in the corresponding Positions in the matrix
end
so that in the end I get a full filled Object-matrix
I hope so, that I have explained my problem not so bad. 1000 Thanks for your concern !
0 Kommentare
Antworten (0)
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!