Hallo Udo,
> diese Frage beruht möglicherweise auf einem Irrtum, ShowGraph[g1] hat
> nichts zu tun mit Show[Graphics3D[g2]].
Nein!
> ShowGraph[] stellt Graphen g1 dar, keine geometrischen
> (dreidimenionalen, reellen) Objekte g2.
Schade, das ShowGraph es dann versucht!
> ShowGraph[] hat keine Option ViewPoint:
Naja, zumindest einmal wurde ein ViewPoint ja nun mal festgelegt.
Wieso läßt sich das nicht mit veränderter Benutzervorgabe wiederholen?
>wie soll der Hypercube[7] in den dreidimensionalen Raum, der von
>Graphics3D[] angedeutet werden könnte, projeziert werden? Mit anderen
>Worten, für allgemeine Graphen ist eine geometrische Darstellung in 3D
>fast so unübersichtlich wie eine planare Darstellung in der Ebene.
Das sehe ich anders. Ab einer gewissen Dimension trifft das vielleicht zu,
3d bzw. 4d oder 5d Graphen lassen sich durchaus übersichtlicher darstellen
als es ShowGraph macht. Ein d4 - Hypercube (Hypercube[4]) ist z.B. nichts
anderes als zwei d3 - Hypercubes die an definierten stellen miteinander
verbunden sind. Ein d5 - Hypercube ist z.B. nichts anderes als zwei d4 -
Hypercubes die wiederum an definierten stellen miteinander verbunden sind.
Usw. Auf diese Weise bleibt eine gewisse Übersichtlichkeit länger erhalten.
Literatur dazu: "Parallel Programming" 2nd Edition von Berry Wilkinson
Michel Allen.
Das ist für mich aber auch nicht wirklich interessant, ich will nur
3d-Hypercubes darstellen.
Lange Rede kurzer Sinn, d3 Hupercub-Graphen werden nun mal als Cube(Würfel)
dargestellt. ShowGraph stellt also 3D Cubes dar ob wohl es das, nach ihren
Worten gar nicht richtig kann? Wozu das Ganze Dann?
Aus meiner Sicht wurde schlicht vergessen die Graphics3D -Primitiven zu
implementieren. Oder die ShowGraph-Funktion strikt nur mit 2D Ausgaben zu
implementieren.
Annähernde Perfektion ist aus meiner Sicht wichtiger, als übertriebener
Funktionsumfang.
Trotzdem Danke für Ihre Anteilnahme ;-)
Mit freundlichen Grüßen
[André El-Ama]
-----Original Message-----
From: Udo und Susanne Krause
Sent: Saturday, October 15, 2005 5:20 PM
To: Andre El-Ama
Cc: DEMUG
Subject: Re: ViewPoint für ShowGraph
Hallo André,
diese Frage beruht möglicherweise auf einem Irrtum, ShowGraph[g1] hat
nichts zu tun mit Show[Graphics3D[g2]].
ShowGraph[] stellt Graphen g1 dar, keine geometrischen
(dreidimenionalen, reellen) Objekte g2.
ShowGraph[] hat keine Option ViewPoint:
In[34]:= Intersection[First[Transpose[Options[ShowGraph] //. Rule ->
List]], {ViewPoint}]
Out[34]= {}
Betrachten Sie etwa
In[16]:= With[{q = Hypercube[7]},
ShowGraph[ Highlight[q, {Partition[HamiltonianCycle[q], 2, 1]}] ]
]
wie soll der Hypercube[7] in den dreidimensionalen Raum, der von
Graphics3D[] angedeutet werden könnte, projeziert werden? Mit anderen
Worten, für allgemeine Graphen ist eine geometrische Darstellung in 3D
fast so unübersichtlich wie eine planare Darstellung in der Ebene. Man
sieht auch, dass schon der Hypercube[4] keineswegs gleichlange Seiten in
seiner graphischen Darstellung hat. Nur beim Hypercube[3] sieht es so
aus, als ob ein Würfel in 3D abgebildet wäre.
Es heisst dazu noch in der Hilfe:
We define a graph to be a set of vertices with a set of edges, where an
edge is defined as a pair of vertices. The representation of graphs
takes on different requirements depending upon whether the intended
consumer is a person or a machine. Computers digest graphs best as data
structures such as adjacency matrices or lists. People prefer a
visualization of the structure as a collection of points connected by
lines, which implies adding geometric information to the graph.
Diese geometische Information ist sozusagen unwahr, der Graph enthält
sie nicht, man könnte die Verbindungen auch durch ein Gewirr verfitzter
unverzweigter Strippen darstellen, die nichtdestoweniger korrekte Kanten
wären im Sinne obiger Definition.
The internals of the graph representation are not shown to the user?only
a notation with the number of edges and vertices, followed by whether
the graph is directed or undirected.
Somit müssten Sie die Interna der Graphendarstellung selbst aufzusuchen,
geometrisch interpretieren und einer Drehung in dem gewählten
Darstellungsraum unterwerfen.
Mit den besten Grüssen
Udo.
Andre El-Ama wrote:
>Hallo,
>
>gibt es, die Möglichkeit innerhalb der "ShowGraph" Routine den "ViewPoint"
>der Ausgabe zu setzen bzw. zu verändern. Die "ViewPoint" Direktive
>funktioniert nicht, sie erzeugt zwar keine Fehlermeldung wird aber
>anscheinend ignoriert. Beispiel im Notebook im Anhang.
>
>Alternativ ist vielleicht ein Ändern der Ausgabe bspw. mit "Show" im
>Nachhinein möglich?
>
>[MMA 5.0 auf WinXP]
>
>Mit freundlichen Grüßen
>[André El-Ama]
>
>PS: Auch der RealTime3D Modus ist für die "ShowGraph" Ausgabe inaktiv.
>
>
>
>