<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Lenkrakete]]></title><description><![CDATA[<p>Tach Leute,</p>
<p>möchte gerne eine Art Lenkrakete machen, und zwar habe ich einen festen Punkt (m_target) und eine Rakete. Die Rakete hat eine konstante Geschwindigkeit von 2 Pixel / Frame. Das habe ich schon so realisiert :<br />
Code:</p>
<pre><code class="language-cpp">float speed = 2;
float tempx = sin(m_rot)*speed;  //m_rot = direction
float tempy = cos(m_rot)*speed;
m_xPos += tempy;     // m_xPos x Position der Rakete
m_yPos += tempx;
</code></pre>
<p>Jetzt suche ich einen Algoryhtmus, der mir zeigt, ob die Rakete nach links lenken oder nach Rechts lenken soll. Die Rakete einen eine Rotationsgeschwindigkeit von 4° pro Frame, also 2pi*(4/360) radians.<br />
Alles spielt sich in 2D ab.<br />
Hat irgendwer nen Tipp oder ne Lösung ?</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/244274/lenkrakete</link><generator>RSS for Node</generator><lastBuildDate>Sat, 19 Sep 2026 10:49:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/244274.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 27 Jun 2009 20:18:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 20:18:45 GMT]]></title><description><![CDATA[<p>Tach Leute,</p>
<p>möchte gerne eine Art Lenkrakete machen, und zwar habe ich einen festen Punkt (m_target) und eine Rakete. Die Rakete hat eine konstante Geschwindigkeit von 2 Pixel / Frame. Das habe ich schon so realisiert :<br />
Code:</p>
<pre><code class="language-cpp">float speed = 2;
float tempx = sin(m_rot)*speed;  //m_rot = direction
float tempy = cos(m_rot)*speed;
m_xPos += tempy;     // m_xPos x Position der Rakete
m_yPos += tempx;
</code></pre>
<p>Jetzt suche ich einen Algoryhtmus, der mir zeigt, ob die Rakete nach links lenken oder nach Rechts lenken soll. Die Rakete einen eine Rotationsgeschwindigkeit von 4° pro Frame, also 2pi*(4/360) radians.<br />
Alles spielt sich in 2D ab.<br />
Hat irgendwer nen Tipp oder ne Lösung ?</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1733814</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733814</guid><dc:creator><![CDATA[cirbi]]></dc:creator><pubDate>Sat, 27 Jun 2009 20:18:45 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 21:33:34 GMT]]></title><description><![CDATA[<p>Was ich an meinem (leider kürzlich verstorbenen) Bruder immer bewundert habe:<br />
Er hat grundsätzlich alle Jobangebote der Rüstungsindustrie abgelehnt.</p>
<p>Ansonsten sollte man &quot;Algoryhtmus&quot; erst mal einigermaßen richtig schreiben können, bevor man nach einem fragt.</p>
<p>Ich weiß, daß ich mich mit meinen posts immer unbeliebter mache...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1733841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733841</guid><dc:creator><![CDATA[EOP]]></dc:creator><pubDate>Sat, 27 Jun 2009 21:33:34 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 21:44:42 GMT]]></title><description><![CDATA[<p>EOP schrieb:</p>
<blockquote>
<p>Was ich an meinem (leider kürzlich verstorbenen) Bruder immer bewundert habe:<br />
Er hat grundsätzlich alle Jobangebote der Rüstungsindustrie abgelehnt.</p>
<p>Ansonsten sollte man &quot;Algoryhtmus&quot; erst mal einigermaßen richtig schreiben können, bevor man nach einem fragt.</p>
<p>Ich weiß, daß ich mich mit meinen posts immer unbeliebter mache...</p>
</blockquote>
<p>Danke für den hilfreichen Post.<br />
Und damit du heute schlafen kannst : algorithmus.</p>
<p>gute Nacht.</p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1733846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733846</guid><dc:creator><![CDATA[cirbi]]></dc:creator><pubDate>Sat, 27 Jun 2009 21:44:42 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 21:52:42 GMT]]></title><description><![CDATA[<p>Du kannst zunächst die relativen Zielkoordinaten ausrechnen</p>
<pre><code class="language-cpp">float dx = targetx - raketex;  
  float dy = targety - raketey;
</code></pre>
<p>diese dann in das Raketen-eigene Koordinatensystem umrechnen (drehen). Die Rakete hat eine &quot;nach vorne&quot;-Achse und eine &quot;zur Seite&quot;-Achse:</p>
<pre><code class="language-cpp">float vorne = dx*sin(m_rot) + dy*cos(m_rot);  
  float seite = dx*cos(m_rot) - dy*sin(m_rot);
</code></pre>
<p>Wenn die Rakete jetzt schon direkt auf das Ziel zufliegt sollte <code>seite</code> gleich Null sein und <code>vorne</code> gleich dem Abstand zwischen Rakete und Ziel sein. Aus dem Quetienten <code>seite/vorne</code> lässt sich über den Arcustangens der Korrekturwinkel bestimmen, der dann noch auf +/-4 Grad beschränkt werden muss:</p>
<pre><code class="language-cpp">float kwinkel = atan(seite/vorne);
  if (kwinkel&lt;-4*pi/180) kwinkel=-4*pi/180; else  
  if (kwinkel&gt;+4*pi/180) kwinkel=+4*pi/180;
  m_rot += kwinkel
</code></pre>
<p>Danach sollte prüfen, ob <code>m_rot</code> nicht unnötig groß oder klein geworden ist:</p>
<pre><code class="language-cpp">if (m_rot&gt; 2) m_rot -= 2*pi; else
  if (m_rot&lt;-2) m_rot += 2*pi;
</code></pre>
<p>Denn sonst kannst Du noch Ärger mit Rundungsfehlern bekommen.</p>
<p>Das ganze lässt sich auch komplett ohne <code>sin</code> , <code>cos</code> und <code>atan</code> regeln. Dazu kannst Du statt <code>m_rot</code> einfach einen normalisierten Richtungsvektor speichern und diesen dann verändern.</p>
<p>Alle Angaben ohne Gewähr (Ich habe den Code nicht getestet).</p>
<p>HTH,<br />
SP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1733849</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733849</guid><dc:creator><![CDATA[Sebastian Pizer]]></dc:creator><pubDate>Sat, 27 Jun 2009 21:52:42 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 22:00:07 GMT]]></title><description><![CDATA[<p>cirbi schrieb:</p>
<blockquote>
<p>EOP schrieb:</p>
<blockquote>
<p>Was ich an meinem (leider kürzlich verstorbenen) Bruder immer bewundert habe:<br />
Er hat grundsätzlich alle Jobangebote der Rüstungsindustrie abgelehnt.</p>
<p>Ansonsten sollte man &quot;Algoryhtmus&quot; erst mal einigermaßen richtig schreiben können, bevor man nach einem fragt.</p>
<p>Ich weiß, daß ich mich mit meinen posts immer unbeliebter mache...</p>
</blockquote>
<p>Danke für den hilfreichen Post.<br />
Und damit du heute schlafen kannst : algorithmus.</p>
<p>gute Nacht.</p>
<p>lg</p>
</blockquote>
<p>Na es geht doch. :p</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1733851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733851</guid><dc:creator><![CDATA[EOP]]></dc:creator><pubDate>Sat, 27 Jun 2009 22:00:07 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 22:06:24 GMT]]></title><description><![CDATA[<p>Tach,</p>
<p>leider klappt dein Code auch nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":/"
      alt="😕"
    /><br />
Sprich er fliegt in die Richtung, dann dreht er und is weg <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Hier nochma alles code :</p>
<pre><code class="language-cpp">void CProjectil::Update(float time)
{
	float speed = 2;
	float tempx = sin(m_rot)*speed;
	float tempy = cos(m_rot)*speed;

	float dx = m_targetX - m_xPos;  
	float dy = m_targetY - m_yPos;
	float vorne = dx*sin(m_rot) + dy*cos(m_rot);  
	float seite = dx*cos(m_rot) - dy*sin(m_rot);
	float kwinkel = atan(seite/vorne);
	if (kwinkel&lt;=-4.0f*3.1415f/180) kwinkel=-0.8f*3.1415f/180.0f; else  
	if (kwinkel&gt;=+4.0f*3.1415f/180) kwinkel=+0.8f*3.1415f/180.0f;
	m_rot += kwinkel ;
	if (m_rot&gt; 2.0f) m_rot -= 2.0f*3.1415f; else
	if (m_rot&lt;-2.0f) m_rot += 2.0f*3.1415f; 

	m_xPos += tempy;
	m_yPos += tempx;
}

void CProjectil::setTarget(float x, float y)
{
	m_targetX = x;
	m_targetY = y;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1733853</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733853</guid><dc:creator><![CDATA[cirbi]]></dc:creator><pubDate>Sat, 27 Jun 2009 22:06:24 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sat, 27 Jun 2009 22:54:43 GMT]]></title><description><![CDATA[<p>Nimm doch <code>atan2()</code> , wenn du den Quadranten berücksichtigen willst. Ausserdem nimmt man normalerweise eher den Cosinus für die x-Achse, aber das hängt natürlich davon ab, wo dein Winkel 0 ist. Und muss das Folgende so sein? Falls ja, solltest du die Bezeichner überdenken.</p>
<pre><code class="language-cpp">m_xPos += tempy; 
    m_yPos += tempx;
</code></pre>
<p>Ich hab dir doch auf <a href="http://spieleprogrammierer.de" rel="nofollow">spieleprogrammierer.de</a> bereits gesagt, du solltest dir mal Klassen und Funktionen überlegen. Plötzlich hast du ein fast gleiches Problem, aber brauchst dich wieder stundenlang abzumühen und Code zu kopieren. Alleine schon wie oft du Pi ausschreibst oder zwischen Grad und Bogenmass umrechnest...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1733863</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1733863</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 27 Jun 2009 22:54:43 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sun, 28 Jun 2009 13:31:04 GMT]]></title><description><![CDATA[<p>Tach,</p>
<p>kenne mich mit Vektoren nicht aus, darum schreibe ich mir keine Klasse dafür.</p>
<p>Wieso funktioniert die oben genannte Funktion nicht ?<br />
Also bei 0° zeigt das Objekt nacht rechts.<br />
Bei 90° nach unten.<br />
180° links.<br />
270° oben.</p>
<p>Vllt hilft das <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":/"
      alt="😕"
    /></p>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1734066</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1734066</guid><dc:creator><![CDATA[cirbi]]></dc:creator><pubDate>Sun, 28 Jun 2009 13:31:04 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sun, 28 Jun 2009 13:35:54 GMT]]></title><description><![CDATA[<p>cirbi schrieb:</p>
<blockquote>
<p>kenne mich mit Vektoren nicht aus, darum schreibe ich mir keine Klasse dafür.</p>
</blockquote>
<p>Ein 2-dimensionaler Vektor sollte kein Problem sein, da das dann nur x und y besitzt und eigentlich nichts weiteres ist, als das, was du hier darstellst. Allerdings einfacher zu verstehen und man kann dann auch einfacher damit operieren, als immer ein x und y mitzutragen.</p>
<p>Alleine schon das sollte helfen:</p>
<pre><code class="language-cpp">struct vec2d
{
 float x;
 float y;
};
</code></pre>
<p>Wenn du hier noch ein paar Operatoren, wie +,- usw. beibringst, dann ist das schon sehr viel Wert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1734070</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1734070</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 28 Jun 2009 13:35:54 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Sun, 28 Jun 2009 15:21:26 GMT]]></title><description><![CDATA[<p>cirbi schrieb:</p>
<blockquote>
<p>Wieso funktioniert die oben genannte Funktion nicht ?<br />
Also bei 0° zeigt das Objekt nacht rechts.<br />
Bei 90° nach unten.<br />
180° links.<br />
270° oben.</p>
</blockquote>
<p>Das passt aber nicht ganz zu Deinem <code>sin</code> / <code>cos</code> -Kram. Es sei denn, deine Y-Achse zeigt nach rechts und Deine X-Achse zeigt nach unten.</p>
<p>Hier ist mal eine recht kurze Lösung mit komplexen Zahlen:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;complex&gt;
#include &lt;cmath&gt;
#include &lt;algorithm&gt;

using namespace std;

typedef complex&lt;float&gt; cfloat;

class rakete
{
	cfloat richtung; //&lt; immer auf 1 normiert
public:
	cfloat position; //&lt; Potition der Rakete
	cfloat ziel;     //&lt; Zielposition
	float speed;
	float wendigkeit;

	explicit rakete(float x=0, float y=0, float rot=0,
			float zielx=0, float ziely=0)
		: richtung(polar(1.f,rot)), position(x,y),
		  ziel(zielx,ziely), speed(1), wendigkeit(0.07f) {}

	void set_rot(float rot) {richtung = polar(1.f,rot);}

	float get_rot() const {return arg(richtung);}
	float get_x() const {return position.real();}
	float get_y() const {return position.imag();}

	void update();
};

void rakete::update()
{
	float k = arg( (ziel-position)*conj(richtung) );
	k = max(-wendigkeit,min(k,wendigkeit));
	richtung *= polar(1.f,k);
	richtung /= abs(richtung);
	position += richtung * speed;
}

ostream&amp; operator&lt;&lt;(ostream&amp; os, rakete const&amp; r)
{
	os &lt;&lt; &quot;(x=&quot; &lt;&lt; r.get_x() &lt;&lt; &quot;, y=&quot; &lt;&lt; r.get_y() &lt;&lt; &quot;, rot=&quot;;
	os &lt;&lt; r.get_rot() &lt;&lt; ')';
	return os;
}

int main()
{
	// Rakete startet bei (0,0), fliegt in Richtung +X
	// mit Geschwindigkeit 1 soll auf das Ziel (15,5) lenken.
	rakete r (0,0, 0, 15,5);
	for (int zeit=0; zeit&lt;20; ++zeit) {
		cout &lt;&lt; r &lt;&lt; '\n';
		r.update();
	}
}
</code></pre>
<p>Die &quot;Wendigkeit&quot; von 0.07 ergibt sich aus 4°*pi/180.</p>
<p>Gruß,<br />
SP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1734134</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1734134</guid><dc:creator><![CDATA[Sebastian Pizer]]></dc:creator><pubDate>Sun, 28 Jun 2009 15:21:26 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Mon, 29 Jun 2009 19:08:51 GMT]]></title><description><![CDATA[<p>Tach,</p>
<p>hab jetz den Winkel rausbekommen.<br />
Aber ich weiß nicht ob er nach link oder rechts lenken soll, immer nur die zahlen von 0 bis pi ausgibt, egal ob target oben oder unten ist.</p>
<p>Hier der relevante Code :</p>
<pre><code class="language-cpp">void cplayer::update(float vx, float vy)
{
    float speed = 4;
    float tempx = cos(rot)*speed;
    float tempy = sin(rot)*speed;

    float lineB = distance(vx,vy,x,y);
    float lineA = distance(vx,vy,x+tempx,y+tempy);

    float deg = innerRad(lineA, lineB, speed); // hier von 0 bis pi

    if(deg &lt;= DegToRad(2.0f))
    {
        rot+= deg;
    }
    else if(deg &gt;= 3.1415f)
    {
        rot+= DegToRad(2.0f);
    }
    else if(deg &lt;= 3.1415f)
    {
        rot-= DegToRad(2.0f);
    }

    x += tempx;
    y += tempy;
}
</code></pre>
<pre><code class="language-cpp">#define pi 3.1415926f

inline float DegToRad(float deg)
{
    return 2.0f*pi*(deg/360.0f);
}

inline float distance(float x1, float y1, float x2, float y2)
{
    return sqrt(pow(x1-x2,2)+pow(y1-y2,2));
}

inline float innerRad(float lineA, float lineB, float lineC)
{
    return acos( ( pow(lineB,2)+pow(lineC,2)-pow(lineA,2) )/ (2*lineB*lineC ) );
}
</code></pre>
<p>lg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1734704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1734704</guid><dc:creator><![CDATA[cirbi]]></dc:creator><pubDate>Mon, 29 Jun 2009 19:08:51 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Mon, 29 Jun 2009 20:40:48 GMT]]></title><description><![CDATA[<p>Kennst Du das <a href="http://de.wikipedia.org/wiki/Skalarprodukt#Winkelberechnung" rel="nofollow">Skalarprodukt</a>? Das ist extrem praktisch, wenn man wissen will, ob zwei gegebene Richtungen ungefähr gleich sind (Skalaprodukt ist dann größer Null), ob sie senkrecht zueinander sind (Skalarprodukt ist dann Null), oder ob sie in die entgegengesetzte Richtung zeigen (Skalarprodukt ist dann negativ).</p>
<p>Die Richtung, in die Deine Rakete fliegt ist (tempx,tempy). Die Richtung in der das Ziel liegt -- relativ zur Rakete -- ist (vx-x,vy-y). Eine Richtung senkrecht zur Flugrichtung ist die Flugrichtung um 90° gedreht: (-tempy,tempx). Diese liegt von der Rakete aus gesehen auf einer bestimmten Seite. Wenn also Deine X/Y Achse nach rechts und unten zeigt, dann entspricht diese 90° Drehung einer Drehung im Uhrzeigersinn -- es ist also von der Rakete ausgesehen &quot;rechts&quot;. Wenn Deine Y-Achse nach oben zeigt ist es &quot;links&quot; und eine Drehung entgegen dem Uhrzeigersinn.</p>
<p>Berechne nun das Skalarprodukt zwischen (-tempy,tempx) und (vx-x,vy-y). In diesem Fall ist es (vy-y)*tempx-(vx-x)*tempy. Ist der Wert größer als Null, musst Du <code>rot</code> vergrößern -- sonst verkleinern.</p>
<p>Gruß,<br />
SP</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1734756</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1734756</guid><dc:creator><![CDATA[Sebastian Pizer]]></dc:creator><pubDate>Mon, 29 Jun 2009 20:40:48 GMT</pubDate></item><item><title><![CDATA[Reply to Lenkrakete on Mon, 29 Jun 2009 21:16:16 GMT]]></title><description><![CDATA[<p>da du die lösung jz schon kennst, nur noch einige punkte:</p>
<ol>
<li></li>
</ol>
<p>drakon schrieb:</p>
<blockquote>
<p>Alleine schon das sollte helfen:</p>
<pre><code class="language-cpp">struct vec2d
{
 float x;
 float y;
};
</code></pre>
<p>Wenn du hier noch ein paar Operatoren, wie +,- usw. beibringst, dann ist das schon sehr viel Wert.</p>
</blockquote>
<ol start="2">
<li></li>
</ol>
<p><code>#define pi 3.1415926f</code><br />
-&gt;<br />
<code>const float pi (3.141592681);</code></p>
<ol start="3">
<li></li>
</ol>
<p>die inline`s brauchst du imho nicht</p>
<ol start="4">
<li></li>
</ol>
<p><code>if(deg &gt;= 3.1415f)</code><br />
hat dir pi dann doch nicht mehr gefallen? ;P</p>
<ol start="5">
<li></li>
</ol>
<pre><code class="language-cpp">cplayer::update(float vx, float vy)
{
  float speed = 4;
</code></pre>
<p>klingt so, als ob die rakete ein spieler wäre<br />
wenn das falsch ist, solltest du mal überlegen, warum du die geschwindigkeit nicht als member hast<br />
außerdem ist vx bzw vy evtl nicht der allerbeste variablen-name... ich könnte damit zumindest nix anfangen</p>
<ol start="6">
<li></li>
</ol>
<p><code>tempx</code><br />
wie wärs statt dessen mit next_step_x oder act_x oder move_x oder keine Ahnung...</p>
<ol start="7">
<li></li>
</ol>
<p>würd ich die fkt wahrscheinlich in move und calculate oder so was in der richtung aufteilen...<br />
wenn ich das richtig verstehe, willst du ja die rakete mit dem aktuellen winkel fliegen lassen und für das nächste stück den winkel berechnen...<br />
(würd ich auch nich so machen - wieso nicht gleich den neuen wert nehmen?)</p>
<p>usw...</p>
<p>sieht irgendwie ein wenig so aus, als ob du dir das leben unnötig kompliziert machen würdest, in dem du deine fkt so groß und unübersichtlich werden lässt...</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1734778</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1734778</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Mon, 29 Jun 2009 21:16:16 GMT</pubDate></item></channel></rss>