ich m�chte eine Spirale aus Punkten zeichnen. Am Besten auf einer
Zylinderoberfl�che.
Die Daten dazu habe ich in folgender Form.
-Durchmesser
-Anzahl der Punkte pro Umdrehung
-Umdrehungen pro Sekunde
-Vorschubgeschwindigkeit in m/min.
Das Ganze entlang der Z-Achse, die auch gleich die Mittelachse ist.
Wie man das Helix plottet, hab ich aus der Hilfe schon entnommen. Nur
finde ich nicht den �bergang zu dem was ich machen will.
Habe nicht so viel Erfahrung mit Matlab, gerade nur Grundkenntnisse aus
den Tutorien aus den ersten Semestern, und das ist auch schon etwas her.
Was ich mir daraus erhoffe, ist der Abstand der einzelnen Punkte und der
Abstand der "Windungen", also die Steigung, wenn ich mit den einzelnen
parametern etwas herumspiele.
Vielen Dank schon mal.
Gruss,
Mark
> Was ich mir daraus erhoffe, ist der Abstand der einzelnen Punkte und der
> Abstand der "Windungen", also die Steigung, wenn ich mit den einzelnen
> parametern etwas herumspiele.
>
> Vielen Dank schon mal.
Ich habe nicht ganz verstanden, was Du suchst. Einfach nur Code, der
das Beschriebene tut, um dann damit herumzuspielen?
% Parameter:
r = 2;
dz = 1;
t = 0:0.02:5;
% Spirale berechnen:
x = r*sin(t*2*pi);
y = r*cos(t*2*pi);
z = dz*t;
% Spirale zeichnen:
hold off;
plot3(x, y, z, 'linewidth', 1.5);
% Zylinder berechnen:
[cx,cy,cz] = cylinder(2);
cz = t(end)*cz;
% Zylinder zeichnen:
hold on;
surf(cx, cy, cz, 'facecolor',[0.5 0.5 0.5], 'facealpha',0.5);
--
F�r 10 EUR im Jahr erfahre ich hier sogar was meine Meinung ist.
Andere Leute m�ssen daf�r heiraten.
[Lars Friedrich �ber UseNet]
> % Parameter:
> r = 2;
> dz = 1;
> t = 0:0.02:5;
> % Spirale berechnen:
> x = r*sin(t*2*pi);
> y = r*cos(t*2*pi);
> z = dz*t;
> % Spirale zeichnen:
> hold off;
> plot3(x, y, z, 'linewidth', 1.5);
Danke f�r den Code. Ich habe den Code ausprobiert.
Der Code zeichnent mir alle berechneten Punkte und verbindet sie
geradlinig miteinander.
Was ich gerne h�tte, ist eine Spirale aus Punkten, also nur die Punkte,
je nachdem was f�r eine Aufl�sung ich an t �bergebe.
Eine Verbindung zwischen den Punkten ginge auch, wenn man die Punkte
farbig darauf Sichtbar machen kann, also �hnlich wie ein Diagramm. Und
die Verbindung auf der Zylinderoberfl�che liegt.
> % Zylinder berechnen:
> [cx,cy,cz] = cylinder(2);
> cz = t(end)*cz;
> % Zylinder zeichnen:
> hold on;
> surf(cx, cy, cz, 'facecolor',[0.5 0.5 0.5], 'facealpha',0.5);
>
Irgendwie zeichnet er mir einen Zylinder aus 20 gleichbreiten Fl�chen.
Woraus geht dies hervor? t ist zu diesem Zeipunkt 10.
Mein Ziel ist es, eine Grafik zu haben, die die Punkte auf der
Zylinderoberfl�che zeichnet. Und dies in Abh�ngigkeit von den
�bergebenen Parametern. Also unterschiedliche Steigungen sichtbar macht
und unterschiedliche Aufl�sung, was ich dann mit dz iund r regulieren kann.
Gruss
Mark
> Der Code zeichnent mir alle berechneten Punkte und verbindet sie
> geradlinig miteinander.
> Was ich gerne h�tte, ist eine Spirale aus Punkten, also nur die Punkte,
> je nachdem was f�r eine Aufl�sung ich an t �bergebe.
Dann ersetz den Aufruf
plot3(x, y, z, 'linewidth', 1.5);
durch
plot3(x, y, z, '.');
doc plot
verr�t Dir weitere M�glichkeiten.
> > % Zylinder berechnen:
> > [cx,cy,cz] = cylinder(2);
> > cz = t(end)*cz;
> > % Zylinder zeichnen:
> > hold on;
> > surf(cx, cy, cz, 'facecolor',[0.5 0.5 0.5], 'facealpha',0.5);
> >
> Irgendwie zeichnet er mir einen Zylinder aus 20 gleichbreiten Fl�chen.
> Woraus geht dies hervor? t ist zu diesem Zeipunkt 10.
�hm, nein, t ist der Zeilenvektor, der die Zahlen 0, 0.02, 0.04, ...
enth�lt:
t =
Columns 1 through 10
0 0.0200 0.0400 0.0600 0.0800 0.1000 0.1200
0.1400 0.1600 0.1800
...
Die Anzahl der Rechtecke, die den Zylinder approximieren, kannst Du im
cylinder-Aufruf kontrollieren, etwa
[cx,cy,cz] = cylinder(2,42);
Ruf doch einfach mal
doc cylinder
auf und schau dort nach.
Gruss,
Mark