I am trying to plot multiple helices. With the code I am using (below) the helix is plotting how I want it to, however, only one helix is not plotting. Does anyone know why this may be the case?
clc;clear variables;close all;n = input('number of revolutions '); r = input('radius of stent ');a = input('angle with respect to the upwards horizontal in degrees '); w = input('number of wires ');R = input('radius of wire ');h=(2*n*pi*r)/tand(90-a); %height of stent determined by other inputs
e = (2*pi)/(w/2); %theta (spacing between where each wire starts)
if mod(w,2) ==0 %number of wires is even
else fprintf('ERROR:number of wires must be even'); %stops code if wire number is odd
returnendif mod(n,1) ==0 %number of revolutions is whole number
else fprintf('ERROR:number of revolutions must be whole number'); returnendfor i=1:w/2 for t = (i-1)*e:2*pi/w:(n*2*pi)+e*(i-1); %t value for CCW helices
if mod(t,4*pi/w)==0 x{i} = (r-R)*sin(t); y{i} = (r-R)*cos(t); z{i} = (h/(n*2*pi))*t(1); plot3(x{i},y{i},z{i},'.','MarkerSize',25,'MarkerFaceColor','red','MarkerEdgeColor','red') hold on else x{i} = (r+R)*sin(t); y{i} = (r+R)*cos(t); z{i} = (h/(n*2*pi))*t(11); plot3(x{i},y{i},z{i},'.','MarkerSize',25,'MarkerFaceColor','black','MarkerEdgeColor','black') hold on end hold on end hold onend
Best Answer