Posts by elundril

    Hallo,


    ich hab für die Übung beim Schema zwei Keys erstellt, wie gefordert:

    Code
    1. <xsd:key name="productKeys"> <xsd:selector xpath=".//products/product"/>
    2. <xsd:field xpath="@id"/>
    3. </xsd:key>
    4. <xsd:key name="userKeys">
    5. <xsd:selector xpath=".//users/user"/>
    6. <xsd:field xpath="@username"/>
    7. </xsd:key>


    Die Keys referenziere ich so:

    Code
    1. <xsd:keyref name="productReference" refer="productKeys"> <xsd:selector xpath=".//bids/product"/>
    2. <xsd:field xpath="@id"/>
    3. </xsd:keyref>
    4. <xsd:keyref name="userReference" refer="userKeys">
    5. <xsd:selector xpath=".//bids/product/bid"/>
    6. <xsd:field xpath="@user"/>
    7. </xsd:keyref>


    Lustigerweise, die user kann ich referenzieren, aber sobald ich die products referenzieren will, wirft mir xmllint eine fehlermeldung mit "Schemas validity error: Element "product": No match found for key-sequence ['1'] of keyref 'productReference'.


    Google hat leider nix ausgespruckt was ich verstanden hätte, weiß einer von euch da weiter?


    lg elundril

    Also das requesten der seite funktioniert schon mal bei mir, auch das ändern das passworts und das abschicken der nachricht. Einzig das parsen von der requesteten seite weiß ich nicht wie ich anstellen soll. habt ihr da hinweise für mich?

    Hallo,


    da wir bei SEPM git verwenden müssen und es ratsam ist IntelliJ zu verwenden, da diese Entwicklungsumgebung dann auch beim Laborbeispiel angewendet wird, wollte ich fragen ob mir jemand nen guten Link oder eine Anleitung geben kann wie man git und IntelliJ zusammenführen kann? Hab mich im Internet schon blöd gegooglet aber irgendwie war da nie was g'scheits dabei?


    Liebe Grüße,
    Elundril

    Hallo,


    ich hätte einige Fragen zu der Aufgabe 2 - randsched:


    *) Bei den Hilfsprogrammen rventgas und rshutdown, muss da auch eine Argumentbehandlung durchgeführt werden, im sinne von "es dürfen keine argumente und optionen übergeben werden, wenn doch, terminiere mit <usage> und einem fehlercode"?


    *) rventgas kann 2 verschiedene Meldungen ausgeben. Soll in beiden Fällen die Ausgabe auf stdout erfolgen? Oder im Reaktorfehler-Fall auf stderr?


    *) Verstehe ich das richtig das schedule sich zuerst selbst einmal forkt und dann in dem duplikat dann die "endlosschleife" ausführt, in der sich das duplikat nochmal alle x sekunden forkt um program auszuführen?


    *) "Weiters soll der Kindprozess alle Daten, die der program-Enkelprozess auf stdout ausgegeben hat, über eine Pipe an den Elternprozess schicken. Dieser gibt das gelesene auf (sein) stdout aus und fügt es gleichzeitig an das angegebene logfile an." Wird damit gemeint das program einmal auf stdout ausgibt und dann das ganze in die pipe sendet, oder das bei program stdout so umgebogen wird das es in die pipe sendet und nur der elternprozess gibt dann die meldung aus?


    *) Muss auch in rventgas und rshutdown eine signalbehandlung implementieren?


    *) Beim "sauberen" Beenden von Schedule, wie übergeb ich das dem doppelgänger der in der Endlosscheife sitzt und program forkt? Mittels Signal? Gibt der dann die Signale weiter an seine Kindprozesse? Bzw. wie soll konzeptmäßig hier sauberes beenden implementiert werden?


    Vielen Dank und liebe Grüße,
    elundril

    Okay, das mit dem Zeilenweisen einlesen hab ich verstanden. Was mir aber noch immer ein Rätsel ist, sind diese 40 echte Zeichen als Zeilenlänge. Was sind echte Zeichen?


    Whitespaces gehören zu den echten Zeichen die Option "-s" soll ja bewirken das diese nicht beachtet werden.


    Sollen alle Whitespaces dann rausgefiltert werden oder nur die Leerzeichen?


    lg Michael

    Hallo,


    ich hab in der Angabe folgende Stelle gefunden:


    Quote


    Das Programm ispalindrom soll zeilenweise Strings mit einer Länge von bis zu 40 echten Zeichen von der Standardeingabe lesen;


    Einerseits, muss das Programm mehrzeilige Eingaben akzeptieren und woher weiß das Programm dann das die Eingabe beendet ist?


    Andererseits, was sind echte Zeichen? Alle zeichen ausgenommen whitespaces?


    lg Michael

    Hallo,


    Die Formel für die Anzahl der zu ersetzenden Zeichen bei MyExpand ist ja p = tabstop * ((x / tabstop) + 1) wobei x die Position des aktuellen Zeichen ist und tabstop die Anzahl der Leerzeichen durch die der Tab ersetzt werden soll. Die Beispiele in der Angabe erklären die Formel auch halbwegs gut aber bei dem ersten Beispiel kommt bei mir raus das eigentlich der 9er an der 8 stelle sein sollte da p in dem Fall 8 ergibt. Oder muss ich noch +1 dazu rechnen?


    Meine zweite Frage, was ist wenn ich 2 \t in einer Zeile haben sollte? Verschiebt sich dann die Berechnung und ich berechne anhand des schon verschobenen Textes oder noch immer anhand des originaltextes. Um konkret ein Beispiel zu nennen, wie sollte sich der folgende Input verhalten:


    Code
    1. 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0
    2. 1 | 2 |\t | 3 |\t | 4


    Lg Elundril

    @Formel:
    Stimmt, die ist nicht ganz eindeutig. Hatte die ja nur kopiert. Hier nochmal die Formel mit den eigentlichen Klammerungen. Wenns dann noch immer unklar ist, einfach nochmal fragen :)
    sortierung2.png


    Was die 30 Sekunden angeht. Die solltest du schon wirklich ausnutzen, sofern du nicht vorher die optimale Lösung findest.


    frage, kann es sein das die variable j mehrmals belegt ist in der formel?

    Gibts für das normalisieren am Schluss irgendeinen Trick?


    So wie ich mir das vorstelle ist es ziemlich umständlich.
    Längste Vektor rausfinden, dessen x,y,z Koordinanten finden und anschließend damit normalisieren.
    (Irgendwie fällt mir gerade kein Weg ein wie ich vom längsten Vektor wieder einfach zu den Koordinaten komme)


    Muss man nicht eh jeden Vektor für sich normalisieren? Sonst gibts ja Vektoren kürzer sind als 1.

    Achso, sry, mein Fehler.
    Wenn es dich verwirrt, dass du keinen Startpunkt hast, denke daran, dass du ja von der Projektionsmatrix zur Viewing Matrix gehst. Desweiteren ist die Blickrichtung ein normalisierter Vektor (hat also die Länge von 1) und man hat eine Entfernung. Jetzt musst du mit der Entfernung d (d = Tiefenwert(x,y)) entlang des Richtungsvektors gehen.


    Ich hoffe dir genügt diese Info, wenn nicht, bitte frag nochmals nach.


    Kein Problem, kann passieren, vielen Dank für den Hinweis. Jedoch hab ich mir den ganzen Tag den Kopf darüber zerbrochen und auch mir die Vorlesungen nochmals angehört aber ich raffs noch immer nicht, sorry. Soweit ichs verstanden habe sind ja meine Tiefenwerte in Z gespeichert. Und ich nehme an die Blickrichtung in V. Heißt das jetzt das ich den Wert Z(x,y) mit den Werten V(x,y,1), V(x,y,2) und V(x,y,3) multiplizieren muss? Oder bin ich da auf dem falschen Dampfer?

    Naja, lese dir mal: https://lva.cg.tuwien.ac.at/evc/?page=excercise&id=bsp4-2 durch, vorallem die letzten beiden Absätze. Da steht es ganz genau, was du da zu tun hast.


    Ich glaub da ist ein kleines Missverständnis entstanden. Das habe ich schon durchgeführt. Die Werte sind alle schon auf [-far, -near] gemappt. Wo ich hänge ist der Teil der Angabe beim File 'evc_compute_normals.m':


    Quote

    Zuerst benötigt man die View-Koordinaten für jedes Pixel (also die Position des Punktes, der durch das Pixel repräsentiert wird, relativ zur Kamera). Diese lassen sich leicht mit den zwei Eingangsparametern berechnen (Hinweis: Die Blickrichtung zeigt auf den Punkt im Raum, der durch das Pixel repräsentiert wird, und die Tiefenwerte geben die Entfernung zu diesem Punkt an.). Man erhält ein Bild D, in dem jedes Pixel die Position eines Punktes im View-Koordinatensystem angibt.

    Ich stehe gerade ein bisschen am berechnen vom D-Bild auf der Leitung. Ich hab keine Ahnung wie ich aus den Tiefenwerten und den normalisierten Blickrichtungen ein View-Space-Bild erstellen kann. Kann mir da jemand auf die Sprünge helfen?