Jump to content

Importprobleme


MarkoP
 Share

Recommended Posts

Hallo, zu Zeiten von V1 und V2 gab es eine Kontrolllampe (ich glaube von EASY) bei der man selbst die Farben bestimmen (jpg-file) und sie dann importieren konnte.
Leider gibt es jetzt mit V3 eine Fehlermeldung beim Importieren und für mich ist nicht ersichtlich warum.
screenshot.jpg.16fd96267a76540cdd3fd87d5d1ac37e.jpg

 

Anbei die x-Datei mit dem passenden jpg-file als Archiv gepackt.
Was ich vermisse ist eine SCHALTANZEIGE Weiß-Aus, deshalb hätte ich sie mir gerne selbst erstellt.

Schaltlampe Weiß-Aus.zip

Link to comment
Share on other sites

Hallo Marko,

ich habe die Ursache des Problems nach langem Suchen gefunden!

Der Fehler liegt in der AnimationSet-Definition. Die beginnt nämlich mit

AnimationSet {

ohne Spezifikation einer AnimationSet-Bezeichnung! Wenn Du das AnimationSet in dieser Zeile in Abhängigkeit davon, ob Du das Modell als "Signal" oder "Steuerobjekt" betreiben möchtest, mit einer der nachfolgend aufgeführten Bezeichnungen versiehst, kannst Du das Modell ohne Fehler erfolgreich in den Modell-Katalog einlesen.

AnimationSet _AnimSignal {         // wenn Kontrolllampe als "Signal" verwendet werden soll

AnimationSet _AnimValue {          // wenn Kontrolllampe als "Steuerobjekt" verwendet werden soll

Bei der zweiten Variante musst Du in den Einstellungen als Typ "Digital" auswählen. Sonst brauchst Du in den Einstellungen nichts zu ändern.

Übrigens kannst Du dann, wenn in einem AniationSet keine (Daten-)Unterschiede zwischen den einzelnen Aninmations-Zuständen vorhanden sind, die entsprechenden AnimationKeys oder sogar Animaltionen weglassen. In Deinem konkreten Beispiel reicht folgende AnimationSet-Definiton (z,B, als Signal-Realisierung) vollkommen aus:

AnimationSet _AnimSignal {
  Animation {
    {SignalGeschlossen}
    AnimationKey { //Position
      2;
      2;
      0;3;     0.000000, 0.000000, 0.389475;;,
      1;3;     0.000000, 0.000000,-0.763325;;;
    }
  }
} //End of AnimationSet


Viele Grüße
BahnLand

Edited by BahnLand
Link to comment
Share on other sites

Hallo Bahnland,

da ich keine Ahnung von Modellierung und/oder Animation habe, kann ich lediglich die .x-Datei mit einem Notepad öffnen und den Wert nachtragen wie du es geschrieben hast. Ich erkenne aus deiner Ausführung noch den Unterschied zwischen Signal und Steuerobjekt, aber dann ist bei mir auch schon Schluss.

Werde es mal probieren und dann Rückmeldung geben. Kann aber etwas dauern.

Link to comment
Share on other sites

Danke, hat soweit funktioniert.

Kann man in der .x-Datei mit einem Editor nachträglich auch die Größe eines Objekts bestimmen?
Im Gegensatz zu allen anderen Lampen ist diese um den Faktor 10 größer. Man müsste also nur das Komma entsprechend verschieben wenn es eine Größenangabe gibt.

Nur ehe ich jetzt die Datei mit rumprobieren zerschieße, frage ich lieber.

Link to comment
Share on other sites

Hallo Marko,

am einfachsten geht es über die Skalierung im Eigenschaftsfester des Modellbahn-Studios: Stelle hier einfach den Skalierungswert "0,1" ein, wenn Dir die Kontrolllampe um den Faktor 10 zu groß erscheint.

Es geht aber auch über die x-Datei:
Da diese in Deinem Beispiel kein "_Scale_"-Objekt (keinen Frame, dessen Bezeichnung mit "_Scale_" beginnt) besitzt, nimmt das MBS an, dass die x-Datei das Modell im H0-Maßstab enthält, und übernimmt deshab dessen Größe ohne "Nach-Skalierung". Du kannst aber über ein in der x-Datei enthaltenes Scale-Objekt dem MBS mitteilen, dass das Modell in der x-Datei einen anderen Maßstab besitzt, indem ein Frame mit der Bezeichnung "_Scale_m_n" (m, n = ganze Zahlen) in  die x-Datei aufgenommen wird. Das MBS rechnet dann intern das Modell im mitgeteilten Maßstab m:n in den H0-Maßstab 1:87 um. Wenn also das Modell im MBS um den Fakor 10 zu groß dargestellt wird, teilst Du dem MBS über das "_Scale_"-Objekt einfach den Eingabe-Maßstab "10:87" mit, damit das MBS das Modell automatisch um den Faktor 10 verkleinert.

Bei Deinem Modell-Beispiel fügst Du in die x-Datei die nachfolgend blau eingefärbte Frame-Definition zwischen den darüber und darunter befindlichen Text-Abschnitten ein:

Frame Root {
  FrameTransformMatrix {
     1.000000, 0.000000, 0.000000, 0.000000,
     0.000000, 0.000000, 1.000000, 0.000000,
     0.000000, 1.000000,-0.000000, 0.000000,
     0.000000, 0.000000, 0.000000, 1.000000;;
  }

  Frame _Scale_10_87 { }    # leerer Frame - nur der Name ist wichtig !!!

  Frame SignalOffen {
    FrameTransformMatrix {
      10.000000, 0.000000, 0.000000, 0.000000,
       0.000000,10.000000, 0.000000, 0.000000,
       0.000000, 0.000000,10.000000, 0.000000,
       0.000000, 0.000000,-0.595945, 1.000000;;
    }

Der eingeschobene "_Scale_"-Frame besitzt keinen Inhalt. Es wird vom MBS nur der Bezeichner ausgewertet.

Ich würde dir aber trotzdem empfehlen, stattdessen lieber die zuerst vorgeschlagene Verkleinerungs-Methode im MBS selbst anzuwenden, weil Du damit in der x-Datei "nichts kaputt machen" kannst.

Hier noch ein Bild zweier Kontrolllampen mit und ohne "_Scale_-Verkleinerung":

Scale.thumb.jpg.bf6a85d389874fc1d9ec721cb95a2a95.jpg

Viele Grüße
BahnLand

 

Edited by BahnLand
Link to comment
Share on other sites

Die Verkleinerung über das MBS ist schon klar, doch hat das Objekt aufgrund seines großen Faktors bei einer Eingabe von 0,1 bereits eine gut sichtbare Größe. Wenn ich die Lampe also irgendwo nur als Kontrollanzeige einsetzen will, muss ich deutlich kleiner als 0,1 werden und irgendwann wird die Eingabe bei zu kleinen werten doch etwas ungenau.

Außerdem würde die Lampe dann die gleichen Abmessungen wie die restlichen Lampen und Blinkleuchten habe, was ein ersetzen erheblich erleichtert.

Danke für die Erklärung und auch für den Warnhinweis. Werde mich mit einer Kopie der .x-Datei herantasten und ausprobieren.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...