2Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
7
7
ZUGRIFFE
484
484
EMPFEHLEN
-
Hi,
meine letzten Programmierversuche und C++ sind schon ein paar Tage her, dennoch denke ich, dass mir die Materie Xpresso prinzipiell nicht unzugänglich ist. Als ich jedoch mich an meinen ersten Versuch gesetzt habe, bin ich schnell an meine Grenzen gestoßen
Folgende Aufgabenstellung:
Ich möchte ein digitales Ziffernblatt erstellen, das aus den typischen kleinen Elementen besteht die sich, je nach meiner Eingabe, eben zu Ziffern formen.
Habe also hier meine 7 "Striche" also Objekte, alle schön nummeriert und möchte nun ein Benutzerfeld kreieren, wo ich beispielsweise ne "6" eintrage, und dadurch alle "Striche" die nicht zur Dadrstellung der "6" benötigt werden, ausgeblendet werden.
Ein Ding der Unmöglichkeit.... im Moment
Ich fang besser erst gar nicht mit meinen unzähligen gescheiterten Versuchen an und frag lieber gleich nach professionellen Vorschlägen
Das muss doch in Xpresso irgendwie zu machen sein...
Thx schonmal,
margoyle
-
08.05.09 10:57 #2
Hi!
Hm, wäre schon gut, wenn Du die Schwierigkeiten zumindest ein wenig eingrenzen könntest: scheitert es bereits am Ein- und Ausblenden? Oder am Algorithmus?
Grundsätzlich braucht ja nur für jedes Display-Element geschaut werden, ob es bei der gegebenen Zahl gebraucht wird. Das oberste, horizontale Display-Element z.B. wird bei den Zahlen 0,2,3,5,6,7,8 und 9 benötigt. Also könnte man mittels zwei Vergleichs-Nodes und einem Boole-Node prüfen, ob "Zahl" (Benutzerdatum) gleich 1 oder gleich 4 ist und dementsprechend die Sichtbarkeit des Elements setzen.
Natürlich werden das so einige Vergleiche und somit eine Menge Nodes...
Per Coffee (-Node) wird's kürzer, da dort die Vergleiche als "if-Abfragen" (oder Switch-case) viel schöner und kürzer zusammengefasst werden können.
Wenn es aber unbedingt mit XPresso sein soll und die etlichen Vergleiche zu aufwändig sind, gäbe es noch eine Alternative über Splines als "Datenträger"; die Spline-Punkte fungieren als Array. So könnten z.B. die Punkte der Spline auf (0,1,0) (1,0,0) (2,1,0) (3,1,0) (4,0,0) (5,1,0) (6,1,0) (7,1,0) (8,1,0) (9,1,0) liegen und das oberste Display-Element für die "Zahl" definieren. Punkt-Node die Zahl zuweisen und schon erhält man als Position.Y den gewünschten Zustand.
... nur mal als möglichen Ansatz
Liebe Grüße,
Mark.
//edit: binäre Vergleiche wären natürlich fein, aber so weit ich weiß, ist das mit XPresso nicht "mal eben so" gemacht
//edit2: öhm, die Punkte der "Daten"-Spline oben können natürlich auch alle auf X=0 liegen, wir verwenden ja nur den Y-Wert und X entspricht der Punkt-Nummer ... sah halt schöner aus, tut aber nicht not
... bitte keine C4D-Fragen per PN ...
+++ OUT NOW for CINEMA4D: Al'em - Free Align Plugin + Shaderpack Vol 1 - Free Shaders + Roll-It v1.0 - Free Roll Plugin + Egg-Objekt - Free Egg Primitive +++
eggtion.net
-
08.05.09 11:44 #3
Hi!
Hmpf, konnte es nicht lassen. Anbei die "Spline-Array-Variante" als Möglichkeit.
Hierarchie-Node: Referenz "display", Start-Pfad D, Iterations-Pfad N
display-Node: "Zahl" ist ein Benutzerdatum des Null-Objekts "display", Integer Min 0 Max 9
display_array ist eine Spline, wie oben erwähnt, als "Datenträger": einfach angefügte Text-Datei einer punktlosen Spline über das Struktur-Fenster per Datei / ASCII-Datei hinzuladen... Die Punkte der Spline geben folgend pro "Zahl" (Punkte 0-6 = Zahl 0, Punkte 7-13 = Zahl 1 usw.) per Y-Position (0 = Aus, 1 = An) den Zustand der Display-Elemente an.
Hoffe, ich habe nichts vergessen zu beschreiben
Liebe Grüße,
Mark.... bitte keine C4D-Fragen per PN ...
+++ OUT NOW for CINEMA4D: Al'em - Free Align Plugin + Shaderpack Vol 1 - Free Shaders + Roll-It v1.0 - Free Roll Plugin + Egg-Objekt - Free Egg Primitive +++
eggtion.net
-
Hallo Mark,
wieder einmal ein Problem genial gelöst! Auf die Idee mit dem Spline-Array, wäre ich niemals gekommen.
Ich verstehe die Schaltung zwar nicht vollständig, aber es funktioniert.
Vielen Dank,
CUBE
-
WoW,
danke! Das hat meine Erwartung etwas gesprengt
Das AN/AUS-Prinzip für die einzelnen Elemente bei spezifischem Bild war mir klar, die Lösung über den Spline muss ich aber erst noch verstehen lernen ...
Trotzdem vielen Dank, ich meld mich, wenn ich's kapiert hab
-
OK, ich hab s soweit verstanden und umsetzten können... nun kommt Phase II

Das ganze soll beispielsweise Teil einer Uhranzeige werden, bei der ich den gewünschten Wert eingebe (z.B. in Stunden, Minuten, Sekunden) und (natürlich auf der entsprechenden Anzahl von Feldern) die jeweiligen Zeichen erscheinen.
ich übernehme also für jedes DisplayFeld die bereits ausgeknobelte Spline-Variante,
will jedoch nicht für jedes Feld ein eigenes Benutzerdatum einrichten, sondern nur ein zentrales Feld haben.
Frage:
wie komme ich an bestimmte Positionen einer Zeichenkette von diesem zentralen Feld ?
grüße,
margoyle
-
16.05.09 14:28 #7
Hi!
Schau mal im XPresso-Fenster unter: X-Pool / System Presets / String / Mid String
Liebe Grüße,
Mark.... bitte keine C4D-Fragen per PN ...
+++ OUT NOW for CINEMA4D: Al'em - Free Align Plugin + Shaderpack Vol 1 - Free Shaders + Roll-It v1.0 - Free Roll Plugin + Egg-Objekt - Free Egg Primitive +++
eggtion.net
-
Mein Held

Mit dem mid-string gings dann doch recht schnell ...
Im Anhang darf das Ergebnis gern bestaunt werden
Vielen Dank für die Hilfen und Anregungen!
viele grüße,
margoyle
Edit: Leider konnt ich bisher keinerlei Handbuch-Infos zum X-pool finden (bzw. zu den einzelnen presets) , das Ding bleibt im Moment noch ein Buch mit 7 Siegeln. Wo find ich dazu Infos?Geändert von margoyle (16.05.09 um 15:57 Uhr)
Ähnliche Themen
-
XPresso
Von axn im Forum Cinema 4DAntworten: 2Letzter Beitrag: 10.03.09, 18:56 -
XPresso
Von CUBEMAN im Forum Cinema 4DAntworten: 2Letzter Beitrag: 24.11.08, 13:36 -
xPresso
Von katinka im Forum Cinema 4DAntworten: 2Letzter Beitrag: 13.07.08, 09:15 -
TP…xpresso
Von isnogood im Forum Cinema 4DAntworten: 13Letzter Beitrag: 23.01.06, 15:13 -
Xpresso
Von LiquidoX im Forum Cinema 4DAntworten: 4Letzter Beitrag: 31.08.04, 22:04





Zitieren


Login







Cinema 4D Tutorial - Ketten erstellen mit Cinema 4D (R11.5)