-
Gesamte Inhalte
3392 -
Benutzer seit
-
Letzter Besuch
Alle erstellten Inhalte von EASY
-
Hallo, ich habe große Probleme mit Blender 4.2.x. Das Laden eines Modells dauert sehr lange und manchmal hängt sich das Programm einfach auf (besonders gerne bei der Texturzuordnung), so daß ich es zwags-beenden muß. Ich wolle einfach mal in die Runde fragen, ob jemand ähnliche Probleme bei sich hat? Gruß EASY
-
Hallo @guenter.strickmann, ... ich habe noch einen Versuch gemacht. Du hast die FS 3-2a geändert. Liste der Gleise und Wegpunkte von Deinem Original... ... Liste Gleise und Wegpunkte nachdem die FS neu berechnet wurde... .. hast Du diese Weiche ausgetauscht? Gruß EASY
-
Hallo, ... sorry, ich übernehme immer die Einstellungen der "alten" Blender-Version und habe somit den Überblick verloren, was Blender mitbringt und was ich hinzugefügt habe... Gruß EASY
-
Hallo, ... kann es sein, daß Du an der FS 3-2a einmal eine (Kleinigkeit) geändert hast? Wie @Goetz schon geschrieben hat, wird die FS Ein2-2 durch FS 3-2a blockiert. Wenn man nun anstatt... ... die FS 3-2a neu berechnen läßt... (keine Änderung vornehmen...) ... dann geht es auch wieder sofort mit der FS Ein2-2 (ist nicht mehr blockiert). Warum das allerdings so ist, kann ich Dir nicht sagen. Das ist (vielleicht) doch ein Fall für @Neo (warum die FS 3-2a "trotzdem" gültig ist.) Gruß EASY
-
Hallo, ... so ganz direkt nicht. Du kannst Nur eine Kante in eine Kurve umwandeln. ... ist mir auch schon passiert. Ich behelfe mir so... Beim dem Objekt, das nun ein Mesh ist zwei gegenüberliegende Kanten markieren... ... und mit "P" trennen... ... dadurch entsteht ein neues Objekt... ... die beiden Kanten markieren und mit den "Loop Tools" eine "Bridge" mit 2 Segmenten erstellen... ... das sieht dann so aus... ... wieder die 2 äußeren Kanten markieren und die "Punkte" löschen... ... überig bleibt die Mittellinie... ...die Du dann wieder in eine Kurve umwandeln kannst... ... die so entstandene Bézier-Curve... ... und zum Vergleich noch die ursprüngliche Bézier-Curve... Anmerkung: Wenn es nicht so genau darauf ankommt, dann dann man sich natürlich den Aufwand mit der "Bridge" sparen und nur eine Außenkante trennen und diese zurückverwandeln. Ich hoffe Du kannst es nachvollziehen... Gruß EASY
-
Hallo @tim-fischertechnik, Du warst etwas schneller... ich hatte mit dem Modell auch schon angefangen... ... habe dann aber gesehen, daß Du schon fertig bist. Das mit dem Kabel ist eine gute Idee ... nur bei der "Schienenbefestigung" kommt der Kabeleingang etwas "merkwürdig"... ... mein Vorschlag wäre, dieser Variante noch einen kleinen Fuß zu verpassen, daß beide Varianten die gleiche Höhe über dem Boden haben... (... oder machst Du dafür noch Varianten vom Kabel?) Es geht ja nicht um das Gleis, sondern um die Leuchte... und die gibt es wirklich (siehe Video im ersten Beitrag von @Goetz)... weshalb @tim-fischertechnik dieses Modell gebaut hat (ob es sich durchsetzt, steht auf einem anderen Blatt...) Gruß EASY
-
Hallo @Firefighter_112, den bisherigen Antworten entsprechend, läßt Deine Anfrage verschiedene Interpretationen zu. Kannst Du noch etwas näher beschreiben, was Du genau möchtest? Baust Du nun ein Modell? , wenn ja, wäre ein Bild vom bisherigen Stand oder Deiner Vorstellung hilfreich (muß ja noch nicht die Leuchtfunktion haben)... Gruß EASY
-
Hallo, ... bleibt noch unter "Einstellungen" -> "Geräusche" -> "Lautstärke" Gruß EASY
-
Hallo @Neo, Ich habe zwei Anwendungsfälle: 1) ein Depot mit nur Wagons. Normalerweise bringe ich mir die Wagons mit einer Geschwindigkeit in das Depot (ich lasse sie also in ein Depot einrollen [Zug zerlegen, Wagons aussortieren]), damit, wenn ich damit einen neuen Wagonverband zusammenstellen möchte, keinen Ablaufberg benötige. Hier möchte ich sicherstellen, daß alle Wagons im Depot, die gleiche Geschwindigkeit haben, damit sich wenn ich z.B. die auslaufenden Wagons auf der Laufstrecke noch einmal aufteilen sollen, auf dieser Laufstrecke keine Wagons zu einem "Zwischen-Wagonverband" zusammenschließen (weil sie sich evtl. einholen), oder ich die "Taktung" des Verlassens entsprechend anpassen kann. Deshalb mein Interesse an dieser Geschwindigkeit. [Außerdem würde ein Wagon ohne Geschwindigkeit den Depotausgang "verstopfen"]. 2) ein Depot mit Wagons und Loks (wieder alles mit Geschwindigkeit eingefahren). Wenn ich nun einen neuen Zugverband zusammenstellen möchte und ich im Depotinhalt zwischen Lok und Wagon unterscheiden kann, dann kann ich z.B. die Lokposition innerhalb des Verbandes festlegen (z.B. die Lokposition vom Anfang auf das Ende setzen). Befinden sich mehrere Loks im Depot, kann ich so auch einen Lokwechsel mit nur einem Depot realisieren. Natürlich kann man in diesem Fall einwenden, daß sich das mit Schlagwort "Ich bin eine Lok" auch abbilden läßt, aber ich bin kein Freund davon, eine Variablenvielfalt zu erzeugen, wenn das System eine (einfache?) Lösung bieten kann (da ich mit der Variablen nur einem "Mangel" des Systems ausgleiche...) Gruß EASY
-
Lua Dokumentation speziell für MBS?
EASY antwortete auf ElFerrocarrileros Thema in Fragen zur Steuerung
Hallo @gmd, @Neo, in Deiner Version findet sich unter "Ereignisse"... 3.1 Event - OnStart Beschreibung: Das Ereignis OnStart wird aufgerufen, wenn das Layout gestartet wird. Beispiel: lua Copy code function layout:onStart() print("Layout gestartet.") end ________________________________________ 3.2 Event - OnStop Beschreibung: Das Ereignis OnStop wird aufgerufen, wenn das Layout gestoppt wird. Beispiel: lua Copy code function layout:onStop() print("Layout gestoppt.") end ________________________________________ 3.3 Event - OnObjectAdded Beschreibung: Das Ereignis wird aufgerufen, wenn ein Objekt dem Layout hinzugefügt wird. Beispiel: lua Copy code function layout:onObjectAdded(object) print("Objekt hinzugefügt: " .. object.name) end ________________________________________ 3.4 Event - OnObjectRemoved Beschreibung: Wird ausgelöst, wenn ein Objekt aus dem Layout entfernt wird. Beispiel: lua Copy code function layout:onObjectRemoved(object) print("Objekt entfernt: " .. object.name) end ... wenn ich die Funktionen versuche zu setzen ("Copy code"), gibt es eine Fehlermeldung, da diese Ereignisse eigentlich nicht existieren... ... woher stammen die Informationen für diese Ereignisse? (in der originalen .xml von Neo kann ich sie nicht finden...) (... oder habe ich etwas übersehen?) Gruß EASY -
Einige Fragen zum Modellbau
EASY antwortete auf Klartexters Thema in Modellbau mit externen Programmen
Hallo, bei dem Modell ist in der LOD1 ein Teil des Modells zur Seite verschoben. Das MBS berechnet den Schatten nach LOD1... LOD0... LOD1... Gruß EASY -
Hallo, ... es geht mir um das Fahrzeug, das als Eintrag im Depot erscheint, also vom Depot bei der Einfahrt als "führend" erkannt wird... denn dies kommt als solches wieder heraus (...ob da noch was dran hängt oder nicht weiß man im Vorfeld sowieso nicht ["Anhang" hängt mit der Ausfahrt einfach mit dran...]). Gruß EASY
-
Hallo, ... noch ein Vorschlag... Bei mir hat der Gleiskontakt das Schlagwort "GK Ladung" und die Ladung das Schlagwort "Wagenladung". Ich gehe über eine Wiederholung innerhalb des Fahrzeugverbundes und die (verknüpfte) Ladung... ... so ist es ein Ereignis und auch für mehrere Züge / Zugstrecken gültig... 2025-01-02-Wagenladung.mbp Gruß EASY
-
Hallo, ... es braucht keine Gruppe, Duplizieren (mehfach) geht auch mit mehreren markierten Objekten (Wagen und Ladung), dabei wird auch die Verknüpfung (Ladung zu Wagen) mit übertragen. Gruß EASY
-
Hallo @Little, lua im MBS ist keine "Vollversion" sondern von den Möglichkeiten her auf das MBS abgestimmt. Es erlaubt keinen Zugriff auf das Systen / Systemkomponenten. Somit ist eine direkte Kommunikation mit dem Stream Deck nicht möglich. (Theoretisch müßte es über ein "Kommunikationsprogramm" gehen, das die Schnittstelle vom MBS mit einbindet.) Gruß EASY
-
Hallo, ich wünsche Euch alles Gute und Gesundheit im neuen Jahr. Anbei noch eine kleine Spielerei zum Jahreswechsel (einfach auf "Start" klicken...) (... und vielleicht läßt es sich ja nicht nur auf den Jahreswechsel beziehen...) Jahreswechsel.mbp (MBS V9) Gruß EASY
-
Hallo @Neo, Mit V9 kann man die Geschwindigkeit eines Fahrzeugs im Depot auslesen (depot.entries[0].speed). Wenn ich einen Waggon mit einer gewissen Geschwindigkeit in ein Depot rollen lasse, kommt er mit dieser Geschwindigkeit auch wieder aus dem Depot, allerdings ergibt die Abfrage von .speed den Wert 0. Da der Waggon ja "trotzdem" wissen muß, das er das Depot mit einer gewissen Geschwindigkeit verlassen soll, wäre es möglich auf diese Information zuzugreifen? (Dann wüßte man schon im Vorfeld, ob der Wagon von sich aus aus dem Depot rollt.). Schön wäre in diesem Zusammenhang auch noch die Information, ob es sich beim Fahrzeug im Depot um ein aktives oder passives Fahrzeug handelt (:hasEngine). Gruß EASY
-
Straßenübergangskanten sind zu sehen
EASY antwortete auf Glubschis Thema in Modellbau mit externen Programmen
Hallo @Glubschi, Bei deiner Texturzuordnung hast du unterschiedliche Skalierungen der einzelnen Flächen... .. so würde eine Texturzuordnung aussehen, wenn bei der Texturzuordnung alle Flächen die gleiche Skalierung haben (die max. Skalierung wird bestimmt durch die Breite der kleinsten Fläche der Textur [grün])... Noch als Anmerkung: Deine Textur ist mit 1024x1024 Pixel viel zu groß für das was dargestellt werden soll (außerdem kannst du blau und grün innerhalb einer Fläche plazieren und brachst keine zwei Flächen je Farbe). Und so würde eine Texturzuordnung aussehen mit einer dem Modell angepassten Textur (256x64 Pixel) Im MBS sieht es so aus (unscharf, da Blick aus großer Entfernung...) links -> deine Texturzuordnung (Streifen) mitte -> Texturzuordnung gleicher Skalierung (keine Streifen) rechts -> angepasste Textur (keine Streifen) Gruß EASY -
Plugin "Gleis-Setz-Tools" / "Track-Set-Tools" de/en
EASY antwortete auf EASYs Thema in Erweiterungen (Plugins)
Hallo, Wenn ich @Neo an anderer Stelle richtig verstanden habe hat sich mit den Spuren von Gleisen in V9 etwas in der Definition geändert (bitte um Berichtigung wenn ich da etwas nicht richtig verstanden habe...), so daß es durchaus sein kann, das das Plugin in V9 nicht mehr richtig funktioniert... Gruß EASY -
Straßenübergangskanten sind zu sehen
EASY antwortete auf Glubschis Thema in Modellbau mit externen Programmen
Hallo @Glubschi, packe doch einmal die .blend und die Texturdatei(en) in eine .zip und stelle sie hier mit ein, dann hat man Dein Original um nachzusehen woran es liegen könnte. Gruß EASY -
Straßenübergangskanten sind zu sehen
EASY antwortete auf Glubschis Thema in Modellbau mit externen Programmen
Hallo, Bist Du Dir da sicher? Auf diesem Bild... ... ist zu erkennen, daß Deine Texturzuordnung schon in den Randbereich der Farbfläche kommt in dem die Kontur unscharf (Farbübergang) wird... Gruß EASY -
Hallo, ich habe das Skript noch etwas erweitert und noch eine Funktion hinzugefügt, die dem Problem mit den Umlauten entgegenwirkt, außerdem regelt es ein Problem mit langen Fahrzeugnamen. Ich wollte die Variable für eine Zusatzanzeige etwas universeller gestalten so daß nicht das Skript den Variablennamen vorgibt. Die Beschreibung was ich mir gedacht habe, findet sich in den Kommentaren... P.S. Ich habe dabei das Prinzip mit der Liste von @Goetz übernommen... --[[ Wichtig: Für das Textfeld muß eine Monospace-Schrift verwendet werden! (Schrift mit konstanter Breite für alle Zeichen) z.B: Consolas, MS Gothic Info: Das Textfeld ist in seiner max. Breite beschränkt. Wenn eine Zeile zu lang ist, findet ein Übertrag in eine weitere Zeile statt. Hinweis: Die max. Länge ist abhängig von der verwendeten Schrift! Hinweis: die max. Größe des Textfeldes ist 640x640 mm in H0 (1:87) -> 55,68x55.68 m (1:1) somit ist die max. Anzahl von Zeichen je Zeile und von Zeilen begrenzt. z.B. Schrift Consolas -> max. 58 Zeichen je Zeile (-1 Zeichen für Zeilenumbruch -> 57 Zeichen) -> max. 27 Zeilen z.B. Schrift MS Gothic -> max. 64 Zeichen je Zeile (-1 Zeichen für Zeilenumbruch -> 63 Zeichen) -> max. 31 Zeilen --]] --[[ -- Depotinhalt in ein Text umwandeln--- Das Textfeld ist in 3 Spalten unterteilt. Fortlaufende Nummer|Fahrzeugname|Zusatzinformation Variablen für den Aufruf: "Depot" [Objekt] -> Depot das ausgelesen werden soll. "Zeilen" [Zahl] -> Anzahl der Zeilen, die maximal angezeigt werden sollen. (mindestens 1) "nName" [Zahl] -> Anzahl der Zeichen für den Fahrzeugnamen. (mindestens 15) "nInfo" [Zahl] -> Anzahl der Zeichen für Zusatzinformation. (mindestens 3) "Info_Titel" [String] -> Überschrift für Zusatzinformation. "Info_Variable" [String] -> Name der Variablen aus der die Zusatzinformation ausgelesen werden soll. [Objektvariable des Fahrteugs] Beispielaufruf: $("").text=DepotInhalt($("Depot 1a"),10,25,10,"Typ","Zugtyp") Hinweis: Wenn keine Zusatzinformationen vorhanden sind oder deren Anzeige nicht gewünscht ist, dann können die letzten 3 Parameter weggelassen werden. $("").text=DepotInhalt($("Depot 1a"),10,25) (In diesem Fall ist die letzte Spalte " ") Die Überschreitung von Grenzwerten wird korrigiert. --]] function DepotInhalt(Depot,Zeilen,nName,nInfo,Info_Titel,Info_Variable) local ZeichenMax=57 -- Max. Anzahl Zeichen je Zeile * (Schrift Consolas) [MS Gothic 63] local ZeilenMax=27 -- Max. Anzahl Zeilen * (Schrift Consolas) [MS Gothic 31] if Zeilen==nil or Zeilen<1 then Zeilen=1 end -- Mindestens eine Zeile -- Höchstens ZeilenMax-2 (für Titel und Übertrag Anzeige) if Zeilen>ZeilenMax-2 then Zeilen=ZeilenMax-2 end if nName==nil or nName<15 then nName=15 end -- Länge Namen mindestens 15 Zeichen if nInfo==nil or nInfo<3 then nInfo=3 end -- Länge Info mindestens 3 Zeichen Info_Titel=Info_Titel or " " -- Info_Titel gesetzt? Info_Variable=Info_Variable or " " -- Info_Variable gesetzt? local z=ZeichenMax-4 --(Erste Spalte (Zahl 2-stellig) + 2 x Trennungszeichen "|") if nInfo>z//2 then nInfo=z//2 end -- nInfo höchstens Mitte z=z-nInfo if nName>z then nName=z end -- Restliche Zeichen für Name local Anzahl=Depot.count -- Anzahl Einträge im Depot local Format_Zeile1 = "%2s>%-"..nName.."s|%-"..nInfo.."s" -- Formatierung füe Titel local Format_Zeile = "%2s|%-"..nName.."s|%-"..nInfo.."s" -- Formatierung füe Zeile local Format_Zusatz = "..%2d weitere.." -- Formatierung für Überlauf -- 1. Zeile erzeugen (Überschrift Liste) local Name=utf8_formatName(nName,Depot.name,"..") -- Depotname auslesen (Name evtl. kürzen) local Info=utf8_formatName(nInfo,Info_Titel,"..") -- Titel für Info auslesen (Name evtl. kürzen) local Liste={Format_Zeile1:format(Anzahl, Name, Info)} -- Eintrag in Liste if Anzahl > 0 then -- Depot nicht leer? -- Erster Eintrag manuell auslesen (wegen Index = 0) Name=utf8_formatName(nName,Depot.entries[0].name,"..") -- Name evtl. kürzen -- Zusatzinformation auslesen wenn Variable existiert sonst " " local Info=Depot.entries[k].variables[Info_Variable] or " " Info=utf8_formatName(nInfo,Info,"..") -- Name evtl. kürzen table.insert(Liste, Format_Zeile:format(1, Name, Info)) -- Eintrag in Liste for k, v in ipairs(Depot.entries) do if Anzahl > Zeilen and k > Zeilen-1 then -- Max. Anzahl Zeilen überschritten? local text=utf8_formatName(nName,Format_Zusatz:format(Anzahl-Zeilen),"..") -- Name evtl. kürzen table.insert(Liste, Format_Zeile:format("++",text, "")) -- Eintrag in Liste break -- Abbruch der Schleife else Name = utf8_formatName(nName,v.name,"..") -- Name evtl. kürzen -- Zusatzinformation auslesen wenn Variable existiert sonst " " Info = Depot.entries[k].variables[Info_Variable] or " " Info=utf8_formatName(nInfo,Info,"..")-- Name evtl. kürzen table.insert(Liste, Format_Zeile:format(k+1, Name, Info)) -- Eintrag in Liste end end return table.concat(Liste, "\n") --Rückgabe der Tabelle mit Seperator Zeilenumbruch else -- Depot ist leer! local text=utf8_formatName(nName,"Depot ist leer","..") -- Name evtl. kürzen table.insert(Liste, Format_Zeile:format("--",text, "")) -- Eintrag in Liste return table.concat(Liste, "\n") --Rückgabe der Tabelle mit Seperator Zeilenumbruch end end --================================================================================ -- Name formatieren auf einheitliche Länge -- maxz = max. Anzahl von Zeichen Zeile (muß positive Integer >=1 sein) -- s = String -- rz = Zeichen für Reststellen, wenn String zu lang -- (kann aus mehreren Zeichen bestehen z.B. "..") (Standard -> "") -- * Durch die Kürzung mit rz muß xnmax min. xr+1 sein -- --> maxz min. = xr+1 -- für fehlende Parameter werden Standardwerte gesetzt -- z.B. bei utf8_formatName (maxz,s) für rz="", rz="" -- Ausgabestring hat die Länge=maxz: Ausgabestring = s -- Ausgabestring hat die Länge<maxz: Ausgabestring = s+" "(x-mal) (" "(x-mal) bis Länge=maxz) -- Ausgabestring hat die Länge>maxz: Ausgabestring = s(gekürzt)+rz (s(gekürzt) bis Länge=maxz - Länge rz) function utf8_formatName(maxz,s,rz) if type(s) ~= 'string' then return "s kein String" end -- s ist kein String oder nil if type(rz) ~= 'string' then rz=nil rz=rz or "" end -- rz nicht vorhanden oder rz kein String -> rz="" if math.type(maxz)~="integer" then return "maxz Integer!" end -- maxz nicht vorhanden oder nicht Integer local xn=utf8.len(s) -- Länge String local xr=utf8.len(rz) -- Länge Restzeichen local xnmax=maxz --> max. Zeichen für String * local dx=xr+1 --* if maxz<dx then -- max. Zeilenlänge ist zu klein! * return "maxz>="..dx.."!" end local s1="" -- Ausgabestring if xn>xnmax then -- String ist zu lang? local b2=utf8.offset(s,xnmax-xr) -- Byte-Position Zeichen nnmax-xr local s1=utf8.char(utf8.codepoint(s, 1, b2))..rz -- String kürzen + rz return s1 elseif xn==xnmax then -- String hat richtige Länge return s else -- String ist zu kurz xl=xnmax-xn -- Anzahl "_" Ende String hinzufügen bis Länge=maxz s1=s..string.rep(" ",xl) -- Ausgabestring bilden return s1 end end --================================================================================ Beispielaufrufe... $("TF Depot 1c").text=DepotInhalt($("Depot 1c"),10,25,10,"Typ","Zugtyp") ... ... das Depot hat 3 Einträge und es sollen max. 10 Einträge angezeigt werden und die Fahrzeuge haben als Zusatzinfo die Variable "Zugtyp"... $("TF Depot 1a").text=DepotInhalt($("Depot 1a"),17,30) ... ... das Depot hat 35 Einträge davon sollen max. 17 angezeigt werden Einträge und die Fahrzeuge haben kein Zusatzinfo... $("TF Depot 1a").text=DepotInhalt($("Depot 1a"),35,30) ... ... das Depot hat 35 Einträge es sollen alle angezeigt werden und die Fahrzeuge haben kein Zusatzinfo... ... bedingt durch die maximale Größe des Textfeldes können aber nur 25 davon angezeigt werden... ... und abschließend gibt es noch das... Gruß EASY
-
Hallo, Nachtrag: In V8.5 funktioniert es noch, daß man auch das GBS Signal über das Steuerungsfenster umschalten kann. Da muß sich mit V9 etwas geändert haben... Gruß EASY
-
Hallo, ... aber man kann in dieser Konstellation im Steuerungsfenster das GBS Signal nicht umschalten... ... darum geht es in der ursprünglichen Fragestellung. Gruß EASY
-
Hallo, ... noch eine kleine Ergänzung für die Ausgabe... --[[ Hinweis: Für das Textfeld muß eine Monospace-Schrift verwendet werden! z.B: MS-Gothic, Consolas Die Formatierung des Textfeldes sind 3 Spalten Fortlaufende Nummer, Fahrzeugname, Geschwindigkeit des Fahrzeugs Die Breite der mittleren Spalte wird durch den längsten Namen festgelegt --]] local depot=$("Depot 1b") local n=depot.count -- Anzahl Depoteinträge local text="" -- Hilfsvariable für Text if n>0 then -- Depot ist nicht leer? local nz=0 -- Längsten Namen suchen (für Spaltenbreite) for i=0,n-1 do local nz1=utf8.len(depot.entries[i].name) if nz1>nz then nz=nz1 end end for i=0,n-1 do -- Depotliste durchgehen -- Nr., Fahrzeugname und Geschwindigkeit auslesen local name=depot.entries[i].name local v=depot.entries[i].speed local ts=string.format("%2s %s%ss %3s km/h",i,"%",-nz,v)-- Spaltenformatierung text=text..string.format(ts,name) -- Text um Eintrag erweitern if i<n-1 then -- nicht letzte Zeile? text=text.."\n" -- Zeilenumbruch end end else -- Depot ist leer! text="Depot ist leer" end $("Textfeld Depot 1b").text=text -- Text in das Textfeld schreiben ... sieht dann so aus... Gruß EASY