I have two 3d points, A(1,0,0) and B(0,1,0). And I connect these two points as a line AB. How to divide this line into 10 equally segments and get their coordinates?
    7 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
Hello,
I have two 3d points, A(1,0,0) and B(0,1,0). And I connect these two points as a line AB. How to divide this line into 10 equally segments and get their coordinates?
Many thanks!
0 Kommentare
Akzeptierte Antwort
  Ameer Hamza
      
      
 am 28 Nov. 2020
        
      Bearbeitet: Ameer Hamza
      
      
 am 28 Nov. 2020
  
      This is one way
A = [1,0,0];
B = [0,1,0];
n = 10;
X = [A; B];
t = linspace(0, 1, n+1);
points = interp1([0 1], X, t)
Result
>> points
points =
    1.0000         0         0
    0.9000    0.1000         0
    0.8000    0.2000         0
    0.7000    0.3000         0
    0.6000    0.4000         0
    0.5000    0.5000         0
    0.4000    0.6000         0
    0.3000    0.7000         0
    0.2000    0.8000         0
    0.1000    0.9000         0
         0    1.0000         0
Weitere Antworten (2)
  M.Many
      
 am 28 Nov. 2020
        Hi, you can use vectors to solve this problem
AB = [-1 1 0]' %vector AB
discretization = linspace(0,1,10) %10 values
vectors  = AB*discretization %matrix multiplication
This gives the matrix whose columns are the vectors AP, to get the coords of the points P just add the coords of A to the columns of 'vectors'
3 Kommentare
  M.Many
      
 am 28 Nov. 2020
				Yes, you can do this if you add these lines at the end of the code 
AB = [-1 1 0]' %vector AB
discretization = linspace(0,1,11) %11 values for 10 segments
vectors  = AB*discretization %matrix multiplication
A = [1,0,0]'
P = A+vectors
The result is 
P =
    1.0000    0.9000    0.8000    0.7000    0.6000    0.5000    0.4000    0.3000    0.2000    0.1000         0
         0    0.1000    0.2000    0.3000    0.4000    0.5000    0.6000    0.7000    0.8000    0.9000    1.0000
         0         0         0         0         0         0         0         0         0         0         0
Where each culumn is the coordinates of corresponding point P
Siehe auch
Kategorien
				Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



