<?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[Hilfe mir Dreieckkoordinaten]]></title><description><![CDATA[<p>Hallo community,</p>
<p>ich versuche ein kleines Add für mein Programm zu schreiben und irgendwie komme ich nicht drauf, wie mas es macht, da ich in C++ noch Neuling bin.</p>
<p>Ich muss ein senkrechten recheckigen Balken in die gleichgroße Dreiecke aufteilen.</p>
<p>Jeder der Dreiecke hat 3 Koordinaten seiner Ecken (Nodes), wobei ein Node gleichzeitig 6 Dreiecken gehören kann.<br />
Hoffentlich habe ich hier es klar gezeichnet</p>
<p><a href="http://www.bilder-hochladen.net/files/thumbs/bvdo-1.jpg" rel="nofollow">http://www.bilder-hochladen.net/files/thumbs/bvdo-1.jpg</a></p>
<p>Ich muss insgesamt 3 Klassen dafür bilden,<br />
die in etwa so auschauen:</p>
<pre><code class="language-cpp">class Node:
-position
- std::vector&lt;unsigned&gt; _elements

class Triangle:
_unsigned  _nodes[3]

class Mesh

std::vector&lt;Node&gt; _nodes
std::vector&lt;Triangle&gt; _triangles
</code></pre>
<p>Kann mir bitte jemand helfen dies zu programmieren!</p>
<p>Vielen Dank im Voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/246213/hilfe-mir-dreieckkoordinaten</link><generator>RSS for Node</generator><lastBuildDate>Thu, 17 Sep 2026 20:48:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/246213.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 24 Jul 2009 14:04:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Fri, 24 Jul 2009 15:10:49 GMT]]></title><description><![CDATA[<p>Hallo community,</p>
<p>ich versuche ein kleines Add für mein Programm zu schreiben und irgendwie komme ich nicht drauf, wie mas es macht, da ich in C++ noch Neuling bin.</p>
<p>Ich muss ein senkrechten recheckigen Balken in die gleichgroße Dreiecke aufteilen.</p>
<p>Jeder der Dreiecke hat 3 Koordinaten seiner Ecken (Nodes), wobei ein Node gleichzeitig 6 Dreiecken gehören kann.<br />
Hoffentlich habe ich hier es klar gezeichnet</p>
<p><a href="http://www.bilder-hochladen.net/files/thumbs/bvdo-1.jpg" rel="nofollow">http://www.bilder-hochladen.net/files/thumbs/bvdo-1.jpg</a></p>
<p>Ich muss insgesamt 3 Klassen dafür bilden,<br />
die in etwa so auschauen:</p>
<pre><code class="language-cpp">class Node:
-position
- std::vector&lt;unsigned&gt; _elements

class Triangle:
_unsigned  _nodes[3]

class Mesh

std::vector&lt;Node&gt; _nodes
std::vector&lt;Triangle&gt; _triangles
</code></pre>
<p>Kann mir bitte jemand helfen dies zu programmieren!</p>
<p>Vielen Dank im Voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1748930</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748930</guid><dc:creator><![CDATA[antilaser]]></dc:creator><pubDate>Fri, 24 Jul 2009 15:10:49 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Fri, 24 Jul 2009 14:52:43 GMT]]></title><description><![CDATA[<p>Du suchst ja anscheinend einen Algorithmus, vermutlich wäre das Thema im Mathematik-Forum besser aufgehoben. Aber helfen kann ich trotzdem:</p>
<p>Angenommen dein Balken hat die Abmessungen L x K.<br />
Wie du auf deinem Bild schon siehst, sind die Seiten in regelmäßige Abschnitte unterteilt, sagen wir die Seite der Länge L in M Abschnitte und die Seite der Länge K in N Abschnitte.</p>
<p>Definiere nun eine Ecke des Balkens als Koordinatenursprung O die Ränder sollen in Richtung der Einheitsvektoren E1 und E2 verlaufen.Alle Nodes sind dann von der Form:</p>
<pre><code>Node(i,j) = O + i * L/M * E1 + j * K/N * E2
</code></pre>
<p>mit i=0,...,M und j=0,...,N.</p>
<p>Dann kann man leicht aus dem Bild sehen, dass es zwei Arten von Dreiecken gibt, solche die nach links unten zeigen und solche die nach rechts oben zeigen. Denen kann man dann leicht die entsprechenden Nodes zuweisen:</p>
<pre><code>links unten:
Node(i,j), Node(i+1,j), Node(i,j+1)
mit i=0,...,M-1 und j=0,...,N-1

rechts unten:
Node(i,j), Node(i-1,j), Node(i,j-1)
mit i=1,...,M und j=1,...,N
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1748972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1748972</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 24 Jul 2009 14:52:43 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Thu, 30 Jul 2009 15:44:45 GMT]]></title><description><![CDATA[<p>Vielen Dank für deine Antwort.</p>
<p>Habe das Problem ein bisschen anders gelöst:</p>
<pre><code>void FEM_Mesh::fill(void)
{

	for(int i=0;i&lt;K;i++)
	{
		for (int j=0;j&lt;L;j++)
		{

			_nodes.push_back(Node(j,i));

		}
	}
	for(int i=0;i&lt;K-1;i++)
	{
		for (int j=0;j&lt;L-1;(j++))
		{
			if (j % 2 == 0)

			{                
				int n[4];
				n[0]=i*L+j;
				n[1]=i*L+j+1;
				n[2]=(i+1)*L+j;
				n[3]=(i+1)*L+j+1;
				_elements.push_back(Triangle(n[0],n[1],n[2]));
				for(int _c=0;_c&lt;3;_c++)
					_nodes[n[_c&rsqb;&rsqb;._elements.push_back(_elements.size()-1);
				_elements.push_back(Triangle(n[1],n[3],n[2]));
				for(int _c=1;_c&lt;4;_c++)
					_nodes[n[_c&rsqb;&rsqb;._elements.push_back(_elements.size()-1);
			}
			else
		{	
				int q[4];
				q[0]=i*L+j+1;
				q[1]=i*L+j;
				q[2]=(i+1)*L+j+1;
				q[3]=(i+1)*L+j;

				_elements.push_back(Triangle(q[1],q[2],q[3]));
				for(int _c=1;_c&lt;4;_c++)
					_nodes[q[_c&rsqb;&rsqb;._elements.push_back(_elements.size()-1);
				_elements.push_back(Triangle(q[1],q[0],q[2]));
				for(int _c=0;_c&lt;3;_c++)
					_nodes[q[_c&rsqb;&rsqb;._elements.push_back(_elements.size()-1);
			}

		}

	}
}
</code></pre>
<p>wobei bei mir der gesamte Muster anders aussieht. Die Dreiecke sind zu einander symetrisch.</p>
<p>class Triangle hat Funktion &quot;Triangle&quot; mit n1, n2 und n3, die dem _nodes[] zugewiesen werden.</p>
<p>Ich habe aber folgende Aufgabe vor mir:</p>
<p>Ich muss jedem Eck eines Dreiecks die Buchstaben ABC zuweisen.</p>
<p>Es soll so definiert werden. Für i=0..n-1 für jedes Dreieck Tj, welches i als Ecke hat: A = i, B und C im Gegenurzeigersinn weiter. Wenn man z. B. Node 7 wählt dann hat er 6 Dreiecke, denen i (i=7) gehört. Genau für diese alle Dreiecke soll Punkt i --&gt; A sein und B und C für jeden Dreieck dann im Gegenurzeigersinn.</p>
<p>Wie kann sowas machen? Ich komme irgendwie nicht dazu.</p>
<p>Vielen DAnk im Voraus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1752481</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1752481</guid><dc:creator><![CDATA[antilaser]]></dc:creator><pubDate>Thu, 30 Jul 2009 15:44:45 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Thu, 30 Jul 2009 16:39:06 GMT]]></title><description><![CDATA[<p>Könntest du nochmal so ein schönes Bild malen, wie im ersten Post? Wichtig ist die Anordnung der Nodes und die Nummerierung der Dreiecke. Diese Information aus dem Programmcode herzuleiten ist nämlich zu Mühsam als das ich anfangen würde über die Frage nachzudenken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1752515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1752515</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 30 Jul 2009 16:39:06 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Sun, 02 Aug 2009 09:54:39 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Könntest du nochmal so ein schönes Bild malen, wie im ersten Post? Wichtig ist die Anordnung der Nodes und die Nummerierung der Dreiecke. Diese Information aus dem Programmcode herzuleiten ist nämlich zu Mühsam als das ich anfangen würde über die Frage nachzudenken.</p>
</blockquote>
<p>Hallo,</p>
<p>hier ist das neue Bildchen.</p>
<p><a href="http://www.bildermonster24.de/images/882_dreieck2.jpg" rel="nofollow">http://www.bildermonster24.de/images/882_dreieck2.jpg</a></p>
<p>Ausgehend vo ndisem Bild kann man z.B. sagen, dass Punkt 7 &quot;A&quot; ist. so dann im gegenurzeigersinn Node 12 ist dann &quot;B&quot; und Node 6 ist dann &quot;C&quot;. Dann betrachten wir das nächste Dreieck, dass aber Node 7 als &quot;A&quot; hat. Z.B. das Element 1. So dann sind &quot;B&quot; im Node 6 und &quot;C&quot; im Node 1. u .s. w. D.h. ich muss der Reihe nach alle Nodes durchgehen. Den aktuellen Punkt als &quot;A&quot; betrachten und dann alle herumligende Dreiecke im gegenurzeigersinn betrachten und die Buchstaben zuweisen. Sobals ich das habe, muss ich an diese fertige &quot;ABC&quot;- Elemente meine Integrale anwenden.</p>
<p>Gruß</p>
<p>Meta</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1753908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1753908</guid><dc:creator><![CDATA[antilaser]]></dc:creator><pubDate>Sun, 02 Aug 2009 09:54:39 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Sun, 02 Aug 2009 14:09:14 GMT]]></title><description><![CDATA[<p>Nochmal eine kleine Verständnisfrage: Was hast du und was suchst du genau? Gehe ich Recht in der Annahme, dass du eine Nodenummer hast und die zugehörigen Dreiecke wissen willst und welche Nodes in diesen Dreiecken als A, B oder C bezeichnet werden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1753994</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1753994</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 02 Aug 2009 14:09:14 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Sun, 02 Aug 2009 18:53:52 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe eigentlich nur die Abmessungen K und L.</p>
<p>Dann gehe ich der Reihe nach mit meinen Nodes so, dass der Node i Punkt &quot;A&quot; ist und die restlichen 2 Punkte &quot;B&quot; und &quot;C&quot; im gegenurzeigersinn sind. Dann wird ein zweiter Element betrachtet, der diesen Node auch hat. Da wird es genauso vorgegangen. Der Node i bleibt der Punkt &quot;A&quot; und die restlichen Nodes werden als A und B gekenzeichnet. ich muss anschlißend auf jeden Punkt A, B, C jedes Elements zugreifen können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1754170</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1754170</guid><dc:creator><![CDATA[antilaser]]></dc:creator><pubDate>Sun, 02 Aug 2009 18:53:52 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe mir Dreieckkoordinaten on Sun, 02 Aug 2009 19:26:47 GMT]]></title><description><![CDATA[<p>Mir scheint zwar, dass du da irgendwas unglaublich umständliches vor hast, aber die Frage ist klar beantwortbar: Seien die Nodes nach dem Schema aus dem Bild nummeriert und N Nodes pro Reihe. Außerdem seien die Dreiecke ebenfalls wie im Bild angeordnet (das heißt, der Node 0 gehört zu genau einem Dreieck und nicht (und das wäre die andere Möglichkeit) zu zweien).</p>
<p>Dann gehören zu Nodes i, mit (i modulo N) ungerade, diese Dreiecke:</p>
<pre><code>(i, i-1,  i-N)   (Angaben immer in der Reihenfolge A,B,C)
(i, i+N-1,  i-1)
(i, i+N, i+N-1)
(i, i+N+1, i+N)
(i, i+1, i+N+1)
(i, i-N, i+1)
</code></pre>
<p>Und für die Nodes i mit (i modulo N) gerade:</p>
<pre><code>(i, i+1, i+N)
(i, i+N, i-1)
(i, i-1, i-N-1)
(i, i-N-1, i-N)
(i, i-N, i-N+1)
(i, i-N+1, i+1)
</code></pre>
<p>Ausnahmen natürlich an den Rändern, wo man dann die entsprechend Dreiecke aus der Liste streichen muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1754202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1754202</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 02 Aug 2009 19:26:47 GMT</pubDate></item></channel></rss>