Jump to content

EASY

Mitglieder
  • Gesamte Inhalte

    3323
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von EASY

  1. Hallo, bist Du Dir sicher, daß die Dimensionen in Blender stimmen? Hier wird nur die Skalierung des Objektes angezeigt... Wenn Du auf den kleinen Pfeil klickst... ... offnet sich dieses Menue... ... und hier werden dann auch die Dimensionen des (markierten) Objektes angezeigt. Der "Standard Blender Würfel" hat eine Größe von 2x2x2 und mir scheint es nach Deinem Bild so, als ob das Modell im MBS um den Faktor 2 (scheinbar) zu groß ist... Gruß EASY
  2. Hallo, ... macht irgendwie neugierig... magst Du Deine Idee mitteilen?... Gruß EASY
  3. Hallo, ... leider nein. Die Animation muß noch "gebacken" werden... (wie es aussieht hatte ich das in dem Beitrag von damals nicht erwähnt)... Gruß EASY
  4. Hallo, ... ich hätte den ganzen Artikel auf Wikipedia lesen sollen... darin steht auch der Text der Inschrift des Denkmals mit den 600 Meilen. Die Orte liegen 1000 Meilen auseinander, davon wurden (dem Anschein nach) 600 von den Schlittenhunden zurückgelegt... ... also nur zweieinhalb ... Gruß EASY
  5. Hallo, (... der "kleine Tip" hat es einfach gemacht im Internet zu finden...) 1) Balto 2) steht in Cental Park in New York 3) war der Leithund einer Stafette von Hundeschlitten, die ein Serum gegen Diphterie fast 1000 Meilen weit transportiert hat. siehe Wikipedia Gruß EASY
  6. Hello Herman, it run 30 minutes without an error... then i stoped. Es ist 30 Minuten ohne Fehler gelaufen... dann habe ich gestopt. I noticed the following: There is no need to set this link again... Mir ist folgendes aufgefallen: Es ist nicht nötig diese Verknüpfung neu zu setzen... ... and also no need to set the position of "#TM Timber 51"... it is linked to "#TM50 Take" so when you move "#TM50 Take" "#TM Timber51" will also be moved. ... und auch nicht nötig die Position von "#TM Timber 51" zu setzen... es ist mit "#TM50 Take" verknüpft und wenn "#TM50 Take" bewegt wird bewegt sich "#TM Timber51" mit. it may be causing the problem... es kann sein, daß dies das Problem verursacht... EASY
  7. Hallo, ... die "Signal" definition hatte ich für mich auch als ersten Entwurf und bin dann auf die "Weiche" umgestiegen... ich finde es gut, daß nun beide Lösungsansätze hier vorgestellt wurden. Nebenbei sei erwähnt, daß Du mich auf die Idee gebracht hast mich mit diesem Problem zu beschäftigen... jetzt habe ich Dich auf eine Idee gebracht... so schließt sich der Kreis nein... das Modell kann nur als "Signal" oder als "Schalter" definiert sein. Auch ist es nicht möglich ein (zusammenhängendes) Modell als "Schalter" zu bauen, das mehrere Bedienelemente besitzt. Du könntest auf ein einzelnes Element nicht zugreifen sondern immer nur auf das ganze Modell "Schalter". z.B. Das "Märklin Schaltpult" (9AE853F7-12D9-4DEE-844C-996F7EA30DBA) sieht zwas so aus, ist aber eine Gruppe mit 4 Schaltern. Gruß EASY
  8. Hallo, ... hat mich mal interessiert ob es vielleicht geht wenn man das Modell als Weiche definiert... das Anfahren der Etagen und das Öffnen/Schließen der Türen wäre dann von der Ansteuerung "nur" die Zuweisung von Schaltzuständen... Eine Weiche habe ich gewählt, da man damit eine virtuelle Fahrspur mit der Plattform mitfahren lassen kann... Die Animation des Modells ist aufgeteilt in... AufAb;0;299;NoAutoPlay;NoLoop T0;300;349;NoAutoPlay;NoLoop T1;350;399;NoAutoPlay;NoLoop T2;400;449;NoAutoPlay;NoLoop T3;450;499;NoAutoPlay;NoLoop "AufAb" ist das Bewegen der Plattform und "Tx" ein Zyklus für eine Türe auf/zu... So ergibt sich für die Plattform die Weichenstellungen 0 bis 3... ... und für z.B. die untere Türe... @Neo leider kann man den Weichenstellungen keine eigenen Bezeichnungen geben... Das Modell hat noch einen "_CP_Target" der mit der Platform mitfährt. An diesen verknüpft sich der Kontaktpunkt EE6CA350-85A5-4F88-BCDF-B3219412CC6E automatisch... Der Bauarbeiter ist in der Kategorie "Menschen gehend" und rastet an der virtuellen Fahrspur automatisch ein und fährt mit (und kann die Plattform betreten und verlassen). "Achim" ist ein statisches Modell und seine Mitfahrgelegenheit ist die Verknüpfung mit dem Kontaktpunkt. So sieht das Projekt aus... und die Steuerung hat nur ein paar Einträge... if controller.variables["Etage"]==keyword and state==1 then if $("Aufzug Weiche").state~=controller.variables["WS"] then $("Aufzug Weiche").state=controller.variables["WS"] else controller.state=0 end end if controller.variables["Tür"]==keyword then $("Aufzug Weiche").state=controller.variables["WS"]-controller.state end ... sorry ich kann immer noch nur lua... vielleicht mag das ja noch jemand in die grafische EV übersetzen... noch die Projektdatei... Aufzug als Weiche.mbp Gruß EASY
  9. Hallo Neo, es sind ein paar Worte mehr geworden. Nachdem ich beschrieben habe, würde mich Deine Meinung dazu interessieren. Gruß EASY
  10. Hallo, ... als Nachtrag noch dargestellt wie das Ereignis "Schalter wird betätigt" in lua aussieht... if state==1 and not run then q,w={},{} local dir=0 local min=0 local max=0 q=$("KPist").transformation.rotation --Winkel Kontaktpunkt auslesen w=quaternion_to_euler(q.x,q.y,q.z,q.w) --Winkel in Grad umrechnen wist=math.floor(w.z+0.5)--Nachkommastellen beseitigen $("Tist").text=wist --Ist Wert anzeigen wsoll=$("Tsoll").textAsNumber --Soll Wert einlesen assert(wsoll<=100 and wsoll>=0,"Wert außerhalb Bereich") --Fehlermeldung wenn ungültiger Wert --Für diese korrekte Zuweisung wird der Ist Wert benötigt! (Anfangsbedingung) if wsoll>wist then dir=1 min=wist/100 max=wsoll/100 else dir=-1 min=wsoll/100 max=wist/100 end -- ------------------------------ run=true stop=0 $("Aufzuganzeige01").animations["AufAb"]:play(-1,dir,min,max) end Gruß EASY
  11. Hallo, Ich habe das Beispielmodell von BahnLand so umgebaut, daß auf indirektem Weg die aktuelle Position der Animation ermittelt werden kann. Ein "_CP_Target" der sich für die Animationslänge um 100 Grad dreht. Der Winkel eines verknüpften Kontaktpunktes stellt dann die aktuelle Position der Animation (in %) dar und kann ausgewertet werden. Wie im Beispiel von BahnLand fährt beim Betätigen des Schalters der Pfeil auf dem im Textfeld von "Soll Pos." angegebenen Wertes (0 bis 100). ("Ist Pos." ist nur ein Anzeigewert) Die Animationssteuerung arbeitet bei ":play" mit der min / max Funktion, da die Animation definiert anhalten soll. Ausgehend von der aktuellen Position ("Ist Pos") ergeben sich die Werte dür die Richtung und für min / max je nachdem ob ist oder soll die größere Zahl darstellt. Im Beispiel von BahnLand muß der Ist-Wert der Animation dynamisch verwaltet werden. Wird die Position der Animation z.B. manuell verändert, ergeben sich beim nächsten Aufruf Sprünge. Bei meinem System braucht es die dynamische Verwaltung des Ist-Wertes nicht. So kann die Animation auch manuell verändert oder voreingestellt sein oder auch durch ein anderes Ereignis verändert werden, sie "läuft immer richtig". ... doch, denn genau dann wenn die Anfangsposition nicht definiert ist, kann ich die Richtung in der die Animation laufen soll nicht mehr bestimmen... Es geht nur um den Vergleich ist "Soll" oder "Ist" der größere Wert... nicht so sehr um die absolut ganz genaue Zahl, sondern nur mit hinreichender Genauigkeit, so daß keine (auffallende) Sprünge entstehen. Noch das Projekt (das Modell ist als Entwurf hochgeladen 2443E744-CFA4-4100-B64C-A70385EEBDA4) für Versuche... Aufzuganzeige01.mbp Gruß EASY
  12. Hallo Tim, ... da liegt Dein Irrtum. Bei der Aufzugsteuerung geht es darum... ... und zwar in dem Bereich Ist-Position bis Soll-Position. Also vor dem Starten der Animation die Ist-Position abfragen (und nicht fortlaufend während die Animation läuft) und bei der Soll-Position stoppt sie dann von selbst (das ist so beabsichtigt). Die Umrechnung der Positionen Animation (0 bis 1) und der Position des Aufzuges (Stockwerk oder Position in Meter) muß man natürlich vorher von Hand machen. ... das beantwortest Du ja schon selbst... Gruß EASY
  13. Hallo Neo, dieser Beitrag von @BahnLand zeigt und erklärt ganz gut, daß es unter Umständen nützlich sein kann, wenn die aktuelle Position einer Animation ausgelesen werden könnte. Gruß EASY
  14. Hallo, ... nicht so ganz... layout:enumEntities() ruft eine benutzerdefinierte Funktion für alle Elemente auf... Beispiel für alle Verknüpfungen ausgeben... layout:enumEntities(function(t) if t.link then print(t.name," -> ",t.link.name) end end) Gruß EASY
  15. allo Hans, Hast Du Dir das in etwa so vorgestellt? Alte Strecke... ...neue Strecke... In lua sieht das Schalten des Schalters so aus... --[[ Schalter "Alt Neu" wird betätigt Referenzgleis "Ref z" -> Gleis ohne Bettung "Gruppe alt" -> grün "Gruppe neu" -> gelb --]] local zref=$("Ref z").transformation.position.z --Referenzgleis für z Wert local posalt=$("Gruppe alt").transformation.position --Position Gruppe "Gruppe alt" local posneu=$("Gruppe neu").transformation.position --Position Gruppe "Gruppe neu" if state==0 then --Schalterstellung=0 posalt.z=zref --z Position Gruppe "Gruppe alt" auf Referenzwert setzen posneu.z=zref-1 --z Position Gruppe "Gruppe neu" 1 unter auf Referenzwert setzen $("Gruppe alt").visible=true --"Gruppe alt" einblenden $("Gruppe neu").visible=false --"Gruppe neu" ausblenden else --Schalterstellung=1 posalt.z=zref-1 --z Position Gruppe "Gruppe alt" 1 unter auf Referenzwert setzen posneu.z=zref --z Position Gruppe "Gruppe neu" auf Referenzwert setzen $("Gruppe alt").visible=false --"Gruppe alt" ausblenden $("Gruppe neu").visible=true --"Gruppe neu" einblenden end $("Gruppe alt").transformation.position=posalt --"Gruppe alt" auf (neue) Position setzen $("Gruppe neu").transformation.position=posneu --"Gruppe neu" auf (neue) Position setzen ... ich hoffe die Kommentare sind erklärend genug was da vor sich geht... ... noch die Projektdatei... Strecke alt_neu.mbp Gruß EASY
  16. Hallo max, super Modell zwei Sachen sind mir aufgefallen... Beim Fahrstand gibt es in der Seitenwand einen "Belüftungsschlitz"... Beide Fahrstände haben von unten betrachtet keinen Boden... Gruß EASY
  17. Hallo, ... nix da mit leid tun... Du kannst ja nicht wissen was ich mir damals dabei gedacht habe... ...ständig ... mit Schlagwort "Tender" sieht die Auswertung von Ereignis "Zug betritt das Gleis 'Ablauf' jetzt so aus: --[[ Wenn kein Wagon mehr vorhanden oder "Tender" erreicht -> Lok in entgegengesetzter Richtung wegfahren --]] wl=layout:getVehicleGroup(vehicle) if #wl==1 or (#wl==2 and wl[2].variables["Tender"]==keyword) then vehicle.targetSpeedAbs=-40 end Zug neu Aufbauen01a.mbp Gruß EASY
  18. Hallo, diese Methode wende ich hier an... (und man darf beim Zusammenbau nicht vergessen die Kupplungen wieder zu aktivieren). Auf das jetzige Beispiel bin ich ursprünglich gekommen als ich festgestellt habe, daß es ein funktionierendes Entkopplungsgleis gibt. Ich weiß nicht wie lange es dieses schon gibt... ist bis vor kurzem an mir vorbeigegangen... Da dieser Thread dafür gedacht ist eben solche Lösungen vorzustellen gibt es vielleicht auch noch andere Interessenten... Gruß EASY
  19. Hallo, Manche Problemlösungen lassen sich mit der EV nicht direkt lösen, deshalb dachte ich ich eröffne diesen Thread und gebe einen Einblick, was in diesem Fall in meinem Kopf so vor sich geht um eine Lösung zu finden. Ich möchte einen Zug zerlegen und wieder neu mit veränderter Wagonreihenfolge zusammenstellen. Hierfür habe ich mir einen "doppelten" Ablaufberg zusammengebastelt... ... die Definitionen für das Entkupplungsgleises als Weiche... Das erste Problem ist: ...wann ist beim Zerlegen des Zuges nur noch die Lok überig? Meine Lösung: ... durch den ablaufenden Wagon (Entkoppelt durch das Entkupplongsgleis) entsteht im Zug eine Lücke... ... dadurch tritt das Ereignis "Zug betritt das Gleis 'Ablauf' immer wieder erzeugt... ... wenn nur noch die Lok überig ist... ergibt die Auswertung dieses Ereignisses mit #layout:getVehicleGroup(vehicle) gleich 1... if #layout:getVehicleGroup(vehicle)==1 then vehicle.targetSpeedAbs=-40 end ... und die Lok fährt in die entgegengesetzte Richtung wieder weg. Das zweite Problen ist: Wann ist der Zug wieder zusammengesetzt? (erst dann soll er weiterfahren)... ... hierzu wird das Ereignis "Zug Fahrzeug verläßt virtuelles Depot" ausgewertet... Wenn der letzte Wagon aus dem Depot tritt (depot.count=0) wird dieser in einer Schleife "verfolgt"... --[[ Ist der letzte Wagon angekoppelt? -> Zug wieder vollständig. -> Solange der letzte Wagon aus dem Depot ein Einzelfahrzeug ist, ist der Zug nicht vollständig --]] if not deferredCall then if depot.count==0 then defer(1,"v1") end elseif deferredCall=="v1" then if #layout:getVehicleGroup(vehicle)==1 then -- letzte Wagon aus Depot ist Einzelfahrzeug? (-> Schleife) print("Zug ist nicht zusammengestellt") defer(1,"v1") else -- letzte Wagon aus Depot hat angekoppelt (ist kein Einzelfahrzeug mehr) print("Zug ist zusammengestellt") $("Ausfahrt").state=1 --Ausfahrtsignal auf Fahrt (1) end end bis... #layout:getVehicleGroup(letzter Wagon aus Depot)>1 ist (dann hat er angekoppelt...)... ... und das Signal kann auf Fahrt schalten und den Zug in Bewegung setzen. Nachtrag: hier noch das Projekt Zug neu Aufbauen01.mbp Ich weiß nicht wie groß das Interesse an solchen indirekten Lösungen ist, darum bin ich auf Reaktionen gespannt... Wenn jemand für andere Probleme, die sich nicht direkt in der EV lösen lassen, Verschläge hat... gerne hier als Fortsetzung... Gruß EASY
  20. EASY

    LeoCAD

    Hallo, Da ich schon etwas länger hier im Forum unterwegs bin erlaube ich mir folgende Anmerkung: Ein System mit Modellen aus Grundbausteinen würde nach meiner Meinung die gleiche Diskussion hervorrufen wie der Modellbau mit Grundkörpern vom MBS. Deshalb stelle ich an dieser Stelle die Frage, ob es sich bei dem Beispielmodell das Du weiter oben zeigst um ein Modell handelt, das nur die Oberfläche darstellt oder ob die Steine voll ausgebildet sind. Wenn die Steine voll ausgebildet sind, sind viele Flächen überdeckt, was zu vielen unnötigen Polygonen führt und die Problematik würde sich wiederholen... Ich schreibe dies nicht um als Spaßbremse aufzutreten... ich habe hier nur schon viel Diskussion und Frust erlebt weshalb ich es als sinnvoll erachte dies schon im Vorfeld zu kären, bevor (viel) Zeit investiert wird.... Gruß EASY
  21. Hallo Lothar, ... gar nicht... Du darfst nicht mit "_Wheel0" arbeiten. Du braucht eine Animation "_AnimWheel" in der alle Bewegungsabläufe definiert sind (inklusive der Drehung des Rades)... ... max war ein paar Sekunden schneller... Gruß EASY
  22. Hallo, ich kann Dir wahrscheinlich nur etwas weiterhelfen... ich arbeite mit Blender und meine Zeit von Skechup und .x Dateien ist schon etwas her... ... Du hast ja auch nur eine Rotation in der Animation definiert. Die Schubstange folgt in der Position dem Befestigungspunkt am Rad und Dein Winkel der Rotation ergibt sich daraus, daß die Schubstange auf den Befestigungspunkt mit der Kolbenstange ausgerichtet sein muß... Die Zusammenhänge sind leider keine linearen Funktionen, so daß Du Dich da noch mit diversen Sinus- und Cosinus- Funktionen herumschlagen mußt um die Werte zu ermitteln damit Du die Animation in der .x Datei "von Hand" eintragen kannst und Du brauchst viel mehr Zwischenschritte für eine "saubere" Animation. ... ich möchte Dich nicht entmutigen und mit gewissem Aufwand... ...ist es auch möglich aber hier sind schon etwas die Grenzen dessen erreicht solch eine Animation in der .x Datei selbst zu erstellen... Gruß EASY
  23. EASY

    Walters Modellbau

    Hallo, mit welcher Version vom MBS arbeitest Du? (das Modell ist in MBS V7 zu sehen). Gruß EASY
  24. EASY

    EASY's kleiner Modellbau

    Hallo, danke für die Klicks... (ich habe nicht gedacht daß es so einen Anklang findet) Die Varianten für die verschiedenen Spurweiten sind in den Katalog geladen und können nach der Freigabe geöffnet werden... Gruß EASY
  25. Hallo, ich möchte diesen Tread von MarkoP nicht überladen weshalb ich hier die Frage Stelle... ... wenn die Objektvariable "Gleis" von Formsignal vom Typ "Text" ist ließe sich im einfachsten Fall das Problem in lua so lösen (Signal schaltet) local name=layout:getEntitiesByName($("Formsignal 1").variables["Gleis"]) local vehicles = layout:getVehiclesOn(name[1]) for _, vehicle in pairs(vehicles) do if vehicle:hasEngine() then vehicle.engine.active = true vehicle.targetSpeed = 70 end end ... nun ist meine Frage: kann man diese Lösung über die grafische EV darstellen? Gruß EASY
×
×
  • Neu erstellen...