POVRAY - Figuren modellieren - Fragen

  • Hallo,


    in den vorgefertigten Dateien sind Platzhalterobjekte vorhanden. Müssen diese genau eingehalten werden oder ist ein gewisser Gestaltungsfreiraum da und die die Platzhalter dienen nur als Orientierung?


    LG


    Die Maße, die eingehalten werden sollen, findest du in der Angabe.

  • Und gleich noch eine Frage:
    Was will mir dieser Satz hier in der Angabe sagen? "Die Hoehe soll eine uniforme Skalierung des ganzen Koerpers erzwingen."


    Ich zitiere mich ja nur äußerst ungern, jedoch ist mir der Sinn dieses Satzes noch immer nicht bewusst. Was will man mir damit sagen? Muss ich jetzt in meinem Korper.pov. bestimmte berechnungen ausführen damit eine gewisse höhe eingehalten wird oder kann ich die höhen aus den parametern verwenden?

    Mit Leib und Seele Programmierer mit Delphi

  • elundril  
    für mich hieß es, dass mit Änderung der Höhe der gesamte Körper entsprechend skaliert werden soll. Also soll man wsl Koordinaten von Stützpunkten abhängig von der Höhe definieren.
    Aber vllt sagt auch ein Tutor was dazu.

    Edited once, last by m.tee: tipo ().

  • Hätte ich auch so interpretiert, aber ergibt für mich keinen sinn, weil ich dachte das eben dem Makro absolute höhen und absolute breiten übergeben werden. Zusätzlich wüsste ich nicht wie ich das in die berechnung des Makros einbauen soll.


    Eine weitere Frage: Beim Turm sieht man am fertig gerenderten Beispielbild das der Zylinder für die zinnen eigentlich innen hohl ist. In der angabe steht aber nichts davon das man aus dem ersten zylinder einen weiteren ausschneiden muss. Ist das nun Optional oder sollen aus dem zylinder wirklich nur die Zinnen ausgeschnitten werden. (Was mMn dann ein hässliches Stern-Muster ergeben könnte, am dach des Turmes)

    Mit Leib und Seele Programmierer mit Delphi

  • 1) ja, und von denen sollst du dann weitere höhen und breiten für teilobjekte (zB Stufen am Podest) ableiten und relativ zu denen angeben. So ergibt es mindestens für mich einen Sinn.
    2) im todo-kommentar in turm.pov ist es schon genauer beschrieben.

  • 1) ja, und von denen sollst du dann weitere höhen und breiten für teilobjekte (zB Stufen am Podest) ableiten und relativ zu denen angeben. So ergibt es mindestens für mich einen Sinn.
    2) im todo-kommentar in turm.pov ist es schon genauer beschrieben.


    ad 1) also wäre dann zb die höhe fürs podest: h = (h0 / hgesamt) * hneu; Wobei h die gezeichnete Höhe ist, h0 die höhe des podestes, hgesamt die höhe des gesamten Objekts und hneu die manipulierte höhe des objekts. Schön und gut, nur: Führe ich die berechnungen in Korper.pov durch? Wenn ja, alle Figuren haben unterschiedliche h0 und andere höhen. Woher weiß ich welche figur ich gerade zeichne. Demnach müsste ich ja die Parameter erweitern damit ich die figuren richtig zeichnen kann.
    wenn ichs nicht in korper.pov neu berechne, warum dann überhaupt berechnen? Da kann ich ja gleich die neuen parameter übergeben, denn immerhin hab ich in den anderen .pov-dateien ja keine parameter für die objekte, also muss ich eh dort feste werte reinschreiben.


    ich hoffe das ich mal ein Tutor zu dem Thema meldet.


    ad 2) Jup, danke, hatte vorher nur die Angabe im Internet gelesen.

    Mit Leib und Seele Programmierer mit Delphi

  • Hallo,


    ad 1) Der Satz soll bedeuten, dass keine realen Werte zur Skalierung des Körpers hergenommen werden sollen, sondern relativ Werte zu den Parametern. Als Beispiel soll man nicht eine Stufe des Podestes mit "h0 + 0.2" bestimmen sondern zum Beispiel mit "h0 + 0.2 * h1". Dadurch erreicht man, dass egal wie die Parameter aussehen die Figur in sich uniform (gleichmäßig) skaliert ist.


    ad 2) wie bereits richtig beantwortet stehen genauere Angaben in der Datei selbst, wurde leider in der Internetangabe vergessen.

    Klemens Jahrmann, CGUE-Tutor | EVC-Tutor

  • ad 1) Ahhh, jetzt versteh ichs. Danke! Find ich aber lustig, denn bei meinen Schachfiguren sind die einkerbungen bei den Podesten immer gleich tief, egal welche figur das ist. Bei den krägen das gleiche. Aber naja, ist wohl geschmackssache. Ich nehme an man darf nur bei Korper.pov keine additiven konstanten verwenden, oder?


    ad 2) ok, danke.


    Nun hab ich aber wieder ne Frage (sorry! :(): Ich hab versucht mir mit dem Umstellen der Formel vom Sinus den perfekten radius für die kleinen kugeln auszurechnen, die man dann abziehen muss. Nur schaut das jetzt bei den Parametern 6 und 16 irgendwie nicht so ganz aus wie in der angabe. (siehe anhang) Macht das was oder ist diese Anomalie tollerierbar? (so in wie in der angabe schaut es circa mit dem parameter 12 aus; drittes bild im anhang)


    dame_6Kugeln.jpgdame_12Kugeln.jpgdame_16Kugeln.jpg
    lg elundril

    Mit Leib und Seele Programmierer mit Delphi

    Edited 2 times, last by elundril ().

  • hej hej ihr lieben! die PovRay Version 3.6 geht auf meinem Mac einfach nicht: Version 10.6.8 Format: Mac OS Extended (Journaled). Es lässt sich alles wunderbar installieren und auch öffnen nur schließt es sich dann sofort wieder. Die 3.5 Version würde gehen, aber die Beispiele lassen sich logischerweise nicht öffnen.
    Hat irgendwer das selbe Problem und eine Lösung dazu? Danke!


    /edit/ Dann wirds wohl einer der Computersäle auf der Uni! Frage: PovRay ist da nicht zufällig irgendwo installiert? Oder kann ich das selbst, wenn ich eingeloggt bin am Laborrechner, installieren?


    //edit2 hat sich erledigt, hab mir einen anderen laptop ausgeborgt!

  • Habe auch irgendwie ein Problem mit der Nacken-Geschichte:
    Beim Bauer habe ich den Kopf, den Nacken und den Verweis auf die Korper.pov fertig und in der Korper.pov auch den Körper samt aller Größen-Anpassungen wegen der übergebenen Paramter (r und h). Sobald ich jetzt aber das
    #if(hatNacken) {...}
    #else {...}
    einfüge, meckert er mir plötzlich in der Bauer.pov wegen dem "object {Bauer pigment {color White}}" am Ende.
    Als Fehlermeldung kommt dann bei mir: "Parse Error: Espected 'object', undeclared 'Bauer' found instead". Liegt das womöglich am "#end" nach "sphere" für den Kopf des Bauern?
    Wenn ich das #end entferne, regt er sich wieder auf, dass ihm ein #end fehlt und wenn ich am Ende noch ein zweites dazufüge (was doch irgendwie sinnlos ist), ist das Bild komplett schwarz.
    Hat irgendjemand eine Idee, was daran falsch sein könnte?


    Also, meine Bauer.pov ist so:



    Und meine Korper.pov:


    Ohne das "if" funktioniert es ohne Probleme, ich muss halt nur das erste "#end" in "Bauer.pov" entfernen.



    Und noch etwas Anderes:
    h5 = h0+h1 <-- darf ich das oder muss ich das erst irgendwie als double-Wert deklarieren? Falls ja, wie geht das? Einfach #declare h5 = h0+h1 ? Darf ich das im makro überhaupt?


  • Wozu hast du das #end hier?


    Quote


    Und noch etwas Anderes:
    h5 = h0+h1 <-- darf ich das oder muss ich das erst irgendwie als double-Wert deklarieren? Falls ja, wie geht das? Einfach #declare h5 = h0+h1 ? Darf ich das im makro überhaupt?

    Ja es geht einfach mit #declare h5 = h0+h1;
    lg

    Iliyana Kirkova
    EVC TutorIn SS15 | InfoVis/Vis2 TutorIn SS15


    Edited once, last by Iliyana ().

  • Wozu hast du das #end hier?

    Keine Ahnung, habe es wohl irgendwann dazugeschrieben. Habe es allerdings sowieso immer auskommentiert und jetzt halt ganz gelöscht.
    Habe gerade eine neue fehlermeldung bekommen, als ich es noch einmal mit einem einfachen "if" ohne "else"-Zweig versucht habe:
    Parse Error: End of file reached but #end expected.
    Dazu markiert er mir das "#end" in der letzten Zeile in Bauer.pov.


    Quote

    Ja es geht einfach mit #declare h5 = h0+h1;
    lg

    Ok, danke.

  • Keine Ahnung, habe es wohl irgendwann dazugeschrieben. Habe es allerdings sowieso immer auskommentiert und jetzt halt ganz gelöscht.
    Habe gerade eine neue fehlermeldung bekommen, als ich es noch einmal mit einem einfachen "if" ohne "else"-Zweig versucht habe:
    Parse Error: End of file reached but #end expected.
    Dazu markiert er mir das "#end" in der letzten Zeile in Bauer.pov.


    Ok, danke.


    Kannst du mir deinen Code als PM schicken, dann kann ich besser verstehen, wo du ein Problem hast.


    lg

    Iliyana Kirkova
    EVC TutorIn SS15 | InfoVis/Vis2 TutorIn SS15


  • Hi, du hast ein paar Fehler im Code, überprüfe ob du immer richtig abschließt! Aufpassen bei macros, die werden mit auch #end abgeschlossen.

    Geht es nur um die "#end"s und um beide Dateien oder eine (vermutlich die Korper?)? Die habe ich eigentlich so gelassen, wie sie waren.
    Die Suche in der Wiki hat auch nur ausgespuckt, dass ich eines nach dem #if brauche (das makro in Korper hatte ja vom Vornherein eines), aber dann gibt es mir wieder nur eine neue Fehlermeldung, nämlich "Parse Error: No matching } in 'union', { found instead" beim #if(hatNacken).
    Ob das macro in Korper jetzt "{" und "}" braucht, ist auch nicht klar, in der Wiki steht es einmal mit und sonst immer nur ohne. (aber auch Klammern bringen nur irgendeinen Fehler wegen "union").
    Keine Ahnung, was das noch haben soll.


    Edit:
    Oh, verdammt, woher soll man denn wissen, dass ein if/else in POV-Ray keine Klammern braucht?
    Ohne funktioniert es jetzt natürlich "plötzlich". :rolleyes:
    Danke für's durchschauen, Iliyana.

  • hallo,
    wie ist es eigentlich mit der Genauigkeit der Darstellung von POV-Ray?


    Ich habe nähmlich jetzt zB meinem Läufer alles genau Berechnet und die kleine Kugel auf den Kopf gesetzt, doch irgendwie schaut es nicht wirklich danach aus, als ob die Kugel perfekt anliegt...


    informatik-forum.at/index.php?attachment/20841/informatik-forum.at/index.php?attachment/20842/


    Kann das so stimmen oder sollte ich besser noch einmal nachrechnen?


    lg


  • Ich kann auf die Bilder nicht zugreifen.

    Iliyana Kirkova
    EVC TutorIn SS15 | InfoVis/Vis2 TutorIn SS15