Jump to content

EASY

Mitglieder
  • Gesamte Inhalte

    3048
  • Benutzer seit

  • Letzter Besuch

Beiträge erstellt von EASY

  1. Hallo Franz,

    ... zwar durfte ich netterweise schon mal vorab einen Blick darauf werfen... bin aber immer noch begeistert von dem Modell.

    Für so etwas wie "Warenwirtschaft", (diesen "Traum" teile ich mit Franz) wäre die Funktion "Verknüpfen mit" in der Ereignisverwaltung natürlich sehr hilfreich...

    Gruß

    EASY 

  2. Hallo Rainer,

    einfaches kleines Beispiel: Das linke Signal wird über den Schalter ohne "Alternative Aktionen" in der Ereignisverwaltung geschaltet, das rechte mit "Alternative Aktionen" in der Ereignisverwaltung... ohne braucht es 2 Einträge... mit nur noch einen...

    Alternativ-aktion01.jpg

    Alternativ-aktion01a.jpg

    ... in der .zip ist das MBS-Projekt und die Ereignisverwaltung als .html.

    ... ich hoffe es hilft Dir etwas weiter...

    Gruß

    EASY

    Alternativ-aktion01.zip

  3. Hallo,

    ... die Beschleinigung auf das Gleis zu übertragen ist mir zwischenzeitlich gelungen.

    Die Parametrierung erfolgt über die Objektvariablen der Lok und werden von den Objektvatiablen des "Beschleunigungsgleises" übernommen und in der Ereignisverwaltung umgesetzt.

    Bei der Lok ist der "Merker" "dvalt" nicht mehr nötig und dank der "Alternativen Aktionen" beschränkt sich das eigentliche Beschleunigen auf 2 Einträge in der Ereignisverwaltung. ("Anfangszustand" und "Beschleunigen"... der Rest sind andere Steuerungsaufgaben).

    ... auf dem Beschleunigungsgleis darf  logischerweise immer nur eine Lok sein...

    In der .zip ist ein MBS-Projekt und die Ereignisverwaltung als .HTML

    Gruß

    EASY

    Beschleunigen03.zip

  4. Hallo Elgiloy,

    ... spontan würde ich aus...

    Zitat

    Im Prinzip bräuchte man nach Objektvariablen (z.B. L1.v_ist) für so etwas auch noch Objektmethoden (z.B. L1.beschleunigen() )

    ... so etwas wie eine aktivierbare Ereignisgruppe ableiten wollen...

    oder aus...

    Zitat

    Also muss man eine Objektmethode quasi "außerhalb des Objekts" schreiben

    ... die Methode des Beschleunigens als Objektmethode eines "Beschleunigungsgleises" (müßte allerdings so lange sein, daß es für die Beschleunigungsphase reicht) auslagern, das die Parameter von der Lok erbt...

    ... so als spontane Gedanken...

    Gruß

    EASY

  5. Hallo,

    ... ich habe ich mal den Versuch gemacht, mit den Objektvariablen ein definiertes Anfahren einer Lok zu machen...

    Lokveriablen:

    Lokvariablen.jpg

    dv = Geschwindigkeitszuwachs je Zeiteinheit

    dvalt ist eine Merkvariable für dv (da diese verändert wird)

    fdv = Faktor mit dem dv je Zeiteinheit multipliziert wird

    time = Zeit für Timer (Countdown)

    vist = Ist- bzw. Soll- Geschwindigkeit der Lok

    vmax = maximale Geschwindigkeit

    Ablauf:

    Ereignisse.jpg

    Anfangszustand: Die momentane Lokgeschwindigkeit wird zwischengespeichert (vist=_CurrentSpeed), der Countdown gestartet (Auto Restart mit der Zeit dt)

    Beschleunigen: Zu vist wird dv aufaddiert, Lokgeschwindigkeit=vist, dv wird mit dem Faktor fdv multipliziert

    Beschleunigen-Ende: wenn vist>= vmax wird der Contdown gestoppt, dv zurückgesetzt (dv=dvalt), und der Lok die Geschwindigkeit vmax zugewiesen (Korrektur, da vmax nicht genau erreicht wird)

    Bremsen: Der Lok wird die Bremsgeschwindigkeit zugewiesen, die im Gleis "Halt" als Objektvaiable hinterlegt ist ("hartes Bremsen")

    Nothalt: Der Countdown wird gestopt und die Lok angehalten (falls etwas schiefgeht)

    Start: Der Lok wird die Geschwindigkeit 20 mm/s zugewiesen

    Die Geschwindigkeitskurve der Lok sieht (mathematisch) so aus: (t in Sekunden, v in mm/s)...

    Geschwindigkeit.jpg

    ... und ich finde, daß es der Realität (optisch) schon etwas nahekommt...

    ... wer mag, kann ja mal etwas mit den Variablen dv, fdv (muß >1 sein allerdings nicht wesentlich, sonst git es "Rucker") und dt spielen...

    Was ich noch nicht weiß, ist wie man diesen Ablauf verallgemeinern kann, so daß es für jede Lok gilt, die diesen Variablensatz hat... vielleicht hat jemand ja eine Idee...

    Beschleunigen02.jpg

    ... in der .zip ist das MBS-Projekt und die Ereignisverwaltung als .HTML

    ... würde mich über Rückmeldungen, Kritik und Anregungen freuen...

    Gruß

    EASY

    Beschleunigen02.zip

  6. Hallo,

    Zitat

    Aber je mehr ich mit den neuen Objektvariablen experimentiert habe, desto mehr habe ich mir die IF-THEN-ELSE Funktionalität gewünscht.

    Dieser Wunsch ist zumindest bei mir durch die neuen Variablen eher noch stärker geworden.

    ... bringt die "Natur" mit dem Umgang von Variablen so mit sich.

    Je mehr Möglichkeiten es gibt, desto eher tritt der Fall ein, daß man etwas tuen möchte, wenn eine (variable) Bedingung  mal erfüllt und mal nicht erfüllt ist...

    ... und dafür hat Neo als Programmierer bestimmt Verständnis;)

    ... darum unterstütze ich nachdrücklich diesen Wunsch...

    Gruß

    EASY

  7. Hallo Neo,

    ... wenn ich nun bei der Bedingung "Zug betritt ein Gleis" unter Aktion "Lokgeschwindigkeit setzen" z.B. "_Trigger1.Speed" werwende, und die Lok gar keine Variable "Speed" zugeordnet ist, so bleibt sie logischerweise stehen, da das MBS für die Abfrage von nicht vorhandenen Variablen den Wert 0 setzt.

    Wenn ich also die Funktion so nutzen möchte, müßte ich entweder allen Loks die Variable "Speed" zuweisen, oder eben unter "Bedingung" abfragen, ob der Wert von "_Trigger1.Speed" nicht 0 ist. Wäre es nicht einfacher, daß wenn die Variable "_Trigger1.Speed" nicht existiert, die Lok einfach mit ihrer derzeitigen Geschwindigkeit weiterfahren zu lassen? ... das Ereignis sozusagen ignoriet wird... oder siehst Du da mit dieser "Ignoranz" an anderer Stelle Probleme?

    Da Dich dieser Gedanke wahrscheinlich nicht ganz glücklich macht, wäre es irgendwie möglich, daß das Programm sich meldet, daß auf eine nicht vorhandene Variabe versucht wird zuzugreifen?... weil gerade in der Aufbauphase einer Anlage eine nicht vorhandene (indirekte) Variable aufzuspüren ist nicht immer ganz einfach...

    Gruß

    EASY

  8. Hallo Rainer,

    "_Trigger2.xxx" ist eine Alternative... wenn Du z.B. bei Zug betritt ein Gleis ("Zug1", "Gleis1") "_Trigger2.xxx" verwendest, so ist dies, eine Variable, die Du dem Gleis "Gleis1" zugeodnet haben mußt...

    oder "_Trigger1.xxx" ist eine Variabe die der Lok ("Zug1") zugeordnet ist, "_Trigger2.xxx" ist eine Variable, die dem Gleis("Gleis1") zugeordnet ist...,

    "Zug betritt ein Gleis" -> Zug = Triggerbedingung1 -> _Trigger1.xxx ; Gleis = Triggerbedingung2 -> _Trigger2.xxx (... triggern = auslösen...)

    da es bei Dir keine Variable gibt, auf die "_Trigger2.xxx" zutrifft (existiert nicht, da dem Gleis keine Variabe zugeordnet ist), wird vom MBS der Wert 0 genommen... deshalb bleibt Dein Zug stehen.

    Ich hoffe es verständlich und (richtig) ausgedrückt zu haben... aber nach meinen Versuchen verhält es sich so.

    Unter welchen Umständen dann noch _Trigger3.xxx, _Trigger4.xxx... zum tragen kommen, habe ich noch nicht erforscht.

    Gruß

    EASY

  9. Hallo Neo,

    ... es gelingt mir Lokgeschwindigkeiten über Variablenzuordnung zu setzen.

    Zitat

    Weiterhin erlaubt die Ereignisverwaltung nun den Bezug auf das "auslösende Objekt", durch Wahl des entsprechenden Eintrags im Selektionsmenü bzw. durch Variablenzugriff über "Trigger1.VariablenNamen", "Trigger2.VariablenNamen" und "Trigger3.VariablenNamen".

    ... was Du allerdings damit zum Ausdruck brigen möchtest ist mir noch etwas schleierhaft:(  ...bitte Beschreibung..., Bild..., Beispiel... unfertiger WIKI-Artikel... igendetwas...

    Gruß

    EASY

  10. Hallo,

    Zitat von einer PN von Neo an mich:

    Zitat

    Hallo Easy,

    mir war gar nicht bewußt, dass du dich bei deinem Messprogramm direkt auf den Namen der Messwürfel "Messwuerfel1" beziehst. Ich hatte die Namen daher im Katalog auf eine "saubere" Schreibweise umgeändert ("Messwürfel 1"), was jedoch deinem Programm Probleme bereitet.

    Kannst du dein Programm so anpassen, dass es auch mit "Messwürfel 1" zurechtkommt? Ich würde gern im Katalog ein einheitliches Namensschema beibehalten wollen.

    Viele Grüße,

    Neo

    ... diesem bin ich hiermit nachgekommen und habe das Programm der Namensgebung ("Messwürfel 1" und "Messwürfel 2") im Katalog angepasst... (bitte auch beachten bei eigenem Meßwerkzeug!)

    ... wer es schon hat, sollte auf diese Version wechseln (und das bisherige Programm löschen) um die Messwürfel aus dem Katalog ohne Probleme nutzen zu können...

    ... wer Interesse am VB-Projekt hat... ich habe im VB-Projekt einiges besser zusammengefasst und auch mal noch ein paar erklärende Kommentare gesetzt...

    Gruß

    EASY

    Messen01a.zip

  11. Hallo Henry,

    ... mein Ausgangspunkt ist das Projekt. Ich möchte eine Anlage bauen und habe dazu eine bestimmte Vorstellung der Größe der Anlage (Kellerraum), also überlege ich mir einen Maßstab, in dem ich die Anlage bauen möchte, damit ich meine Vorstellung (Abbildung einer realen Strecke von A nach B, deren Abmaße mir bekannt sind) in dem vorhandenen Platz umsetzen kann.

    Das "Messtool" zielt darauf ab, ob ein Modell in den von mir gewählten Maßstab "richtige" Abmaße hat oder hier Korrekturen vorgenommen werden müssen. (Es rechnet nur mit Maßstab = x : y)! Dabei ist es unerheblich, ob das Modell maßstabsgerecht gebaut wurde oder ich eine Korrektur durch eigene Skalierung in meinem Projekt vorgenommen habe. Es wird das gemessen, was ich auf der Platte habe und momentan sehe (unter welchen Umständen dies geschehen ist, ist dem Messtool völlig egal...) Deshab wäre es unlogisch, den von mir gewählten Skalierungsfaktor noch einmal in die Rechnung mit einzubringen, denn dies würde das Messergebnis verfälschen... daß ein Modellbauer daraus seine eigenen (Korrektur-) Schlüsse ziehen kann, steht auf einem anderen Blatt...

    Gruß

    EASY

  12. Hallo FeuerFigther,

    Danke für die Blumen:D... es war ja auch als Ergänzung und nicht als Ersatz gedacht...

    Hallo Franz,

    ganz speziell gibt es dann noch die Korrekturrechnung... und Du kannst Dir sogar noch die Korrekturrichtung auswählen...

    ... nun ist das Ding aber Bildschirmfüllend genug... sonst muß ich mir noch einen zweiten Monitor zulegen...

    ... nachdem Du jetzt alle Hilfsmittel hast... darft Du raten, wer zukünftig Deine Modelle genauer unter die Lupe nimmt:P:P...

    (... die Toleranz für Maße auf dem Bau = soweit wie man einen Hammer werfen kann...)

    Gruß

    EASY

    Objekt_messen01.jpg

    Messen01.zip

  13. Hallo,

    ... Franz hat mir mitgeteilt, daß es noch schön wäre, wenn man auch noch Abstände messen könnte... also habe ich mir noch ein paar Gedanken gemacht und das Progrogramm etwas erweitert... dabei bin ich auf die Idee gestoßen doch gleich in allen drei Dimensionen auf einmal zu messen...

    Erweiterungen:

    Abstandsmessung in x-,y-,z-Richtung, bei den Messergebnissen wird der im MBS gemessene Wert in "()" mit angezeigt, es kann zusätzlich noch ein frei wähbarer Maßstab festgelegt werden.

    Objekt_messen01.jpg

    ... wie auf den Foto ersichtlich habe ich einen (nein zwei) "Messwürfel" gemacht... sie sind halbtransparent und das Muster auf der Oberfläche soll (hoffentlich) die Positionierung erleichtern. Es wird immer die Differenz der Position von Messwuefel1 - Messwuerfel2 gebildet, dabei werden die Werte als Absolutwerte betrachtet (es bibt also kein negatives Ergebnis).

    Objekt_messen01a.jpg

    "Messwüerfel1" ist links und "Messwüerfel2" ist rechts abgebildet....

    Objekt_messen01b.jpg

    ... damit das Positionieren noch etwas erleichtert wird (bei unregelmäßigen Konturen) sind im Messwüfel noch halbtransparente Flächen, so daß eine Schnittkontur sichtbar ist...

    Eine weitere Positionierhilfe ist der Gizmo beim markierten Würfel, der sich dann in der Mitte befindet und es wird immer vom Würfelmitte zu Würfelmitte gemessen.

    Die Messwürfel sind absichtlich etwas groß modeliert (10x10x10 mm), können aber bei Bedarf mit der normalen Skalierungsfunktion des MBS der jeweiligen Aufgabe angepasst werden.

    "Messwüerfel2" kann in allen Dimensionen (einzeln) auf "Messwüerfel1" ausgerichtet werden... da sich der Messpunkt in der Mitte befindet, kann der Würfel bei Bedarf auch gedreht werden.

    Wer ganz genau Messen möchte, wird feststellen, daß das MBS nun eine Verschiebung von minimal 0,1mm zuläßt, hier muß man dann gegebenenfalls durch manuelle Eingabe im MBS die zweite Kommastelle ergänzen...

    Ich weiß, daß der Umgang mit dem Messwürfel etwas gewöhnungsbedürftig ist und um es etwas zu verdeutlichen, habe ich noch ein kleines MBS-Projekt in der .zip, um darzustellen, wie die Würfel positioniert werden sollten um z.B. die Maueröffnung(!) für die Haustüre dreidimensional zu messen...

    ... "genau" positioniert werden muß überigens nur in der Richtung, die von Interesse ist, in den anderen Dimensionen spielt die "Ausrichtung" keine Rolle, wenn man bedenkt, daß die Messergebnisse für diese Dimensionen natürlich auch keinen Aussagewert haben...

    Die Funktion "Vermessen" ist unabhängig von der Funktion "Messen" (... kann auch alleine benutzt werden)... nur die Messwürfel müssen auf der Platte sein, sonst gibt es Gemecker...

    Wichtig! Jeder Messwürfel darf nur einmal im MBS-Projekt sein!

    In der .zip ist das VB-Projekt, die .exe und das MBS-Projekt..

    ... die Messwürfel sind im Katalog unter "Zusätzlich - Test" zu finden.

    ... und wenn noch jemand eine Alternative zu den Messwürfeln einfällt... unbedingt melden!

    P.S. ... ich habe leider versäumt das VB-Projekt umzubenennen...

    @Franz: Das hast Du nun davon, solche Wünsche zu äußern... mit 1,75m ist Deine Mauerwerköffnung für eine Türe schon in einem Kopf-kritischen-aua-Bereich... zumal die Türe ja noch niedriger ist!!!

    Gruß

    EASY

    Messen01.zip

  14. Hallo,

    ich habe ein kleines VB Programm geschrieben, das die Umhüllende eines Modells (Würfel in das Modell passt) in Abhängigkeit vom verwendeten Gleissystem im MBS auf reale Maße umrechnet...

    Ein markiertes Objekt kann vermessen werden, das verwendete Gleissystem und die Einheit der realen Maße können eingestellt werden. Für das Vermessen mehrerer Modelle auf einmal, müssen diese vorher (temporär) gruppiert werden...

    Ich glaube, daß sich die Bedienung selbst erklärt...

    In der .zip ist die .exe... und wer sich dafür interessiert auch das VB-Projekt...

    Sollte ich mich irgendwo mit einem Faktor vertan haben... bitte melden.

    Gruß

    EASY

    Messen.jpg

    Messen01.zip

  15. Hallo Frank,

    ... so die eine oder andere Idee habe ich dazu schon. Ich habe momentan nur das Problem der Modelle für Versuche (vorher-nacher), da ich funktional (Gips am Arm) etwas eingeschränkt bin... nun weiß ich auch nicht welche Scheune bei Dir abbrennt (könntest Du da mal ein Bild einstellen)... vielleicht wäre der Modellerbauer ja bereit, auch noch ein "nachher" Modell für Versuche zu bauen... Die Schadensfläche sollte allerdings die Feuerfläche nicht übersteigen... also noch ein Bild, wie es wo bei Dir brennt...

    ... oder wenn vielleicht ein Modellbauer irgendein vorher-nacher Modell(e) (zumindest für Versuche) erstellen könnte...:D

    Gruß

    EASY

  16. Hallo Rainer,

    Zitat

    Allgemein würde die Gesamtgeschwindigkeit eines Zuges sich aus folgender Regel zusammensetzen:

    1. Geschwindigkeit A = Maximale Geschwindigkeit aller vorwärtsgerichteten Loks
    2. Geschwindigkeit B = Maximale Geschwindigkeit aller rückwärtsgerichteten Loks
    3. Gesamtgeschwindigkeit = Summe von A und B

    Aus 3) würde sich ergeben, daß eine Lokgeschwindigkeit negativ ("-") sein muß, da aus den beiden Maximalgeschwindigkeiten (positiv und negativ) die Summe gebildet wird.  100 + (-50) = 50.

    Wenn beide Geschwindigkeiten positiv sind, würde zuerst 1) greifen und dem Zug die größere der beiden Geschwindigkeiten zugewiesen. (110 ist größer 100) und da es keine negatigve Geschwindigkeit gibt, würde dies auch so bleiben 110 + 0 = 110 ... ähnliches gilt für 2) bei negativen Geschwindigkeiten.

    Nun mag es zwar etwas verwirrend klingen, aber diese Aufteilung hätte den Vorteil, daß es auch für eine größere Anzahl von Loks in einem Zug ein überschaubareres Ergebnis liefert als alle Geschwindigkeiten aufzuaddieren und dann durch die Anzahl der Loks zu teilen (was mathematisch "richtig" wäre)... dann sitzt man irgendwann mit dem Taschenrechner da um Werte eingeben zu können...

    Gruß

    EASY

  17. Hallo Franz,

    Sackgasse !... und dann so ein Aufwand!!??:o

    ... aber ensthaft... gut ausgedacht mit den 3 Teilen und gute Texturauswahl... vor allem ist die Schranke mal nicht so schnell, als wenn sie eine Schranke nach "Standard" wäre... 

    Gruß

    EASY

  18. Hallo,

    Die Addition der Geschwindigkeiten ist eigentlich nur in einem Fall "sinnvoll":

    "Geschwindigkeitsanpassung am Berg" ausgeschaltet: -> Geschwindigkeitsaddition sinnvoll, da auch in der Realität bei Zügen die am Berg fahren unter Umständen mehrere Loks eingesetzt werden eine gewisse Geschwindigkeit zu halten... bergauf  -> 2. Lok schiebt zusätzlich oder bergab  -> 2. Lok bremst zusätzlich... ist natürlich von der Ereignisverwaltung her eine kleine Herausforderung...

    @ Rainer: ... was ich nicht ganz verstehe... wieso möchtest Du eigentlich bei Zügen mit meheren Loks allen eine Geschwindigkeit zuweisen?

    Eine Erweiterung mit "auf den Zug verteilen" wäre z.B. dahingehend sinnvoll, daß bei Zügen mit meheren Dampfloks, mit nur einer Zuweisung alle Loks "rauchen"... oder es eben dann auch egal ist, welcher Lok die Geschwindigkeit zugewiesen wird... dies wäre eine Vereinfachung in der Ereignisverwaltung!

    Gruß

    EASY

  19. Hallo Seehund,

    ... ich gebe es zu, daß ich es erst einmal einfacher hatte, da mein Modell schon farbig war, so konnte ich die Flächen-IDs abhängig von der Farben automatisch erzeugen lassen...

    Mit 'UVW-Map' habe ich mich etwas beschäftigt, bin aber nicht so recht weitergekommen... aber wenn es in Verbindung mit 'UVW-Map transformieren' geht... zwar noch nicht ausprobiert, aber klingt nach Vereinfachung... Danke für den Hinweis.

    ... wie gesagt Lernphase...

    Gruß

    EASY

  20. Hallo Seehund,

    Die Fenster weniger duchsichig zu machen ist kein Problem, ich habe die "alte" Einstellung der Opazität gelassen und war über das Ergebnis etwas erstaunt...

    ...das Mapping ist in 3dsMax als "Abflachungsmapping" mit (Flächen-ID) gemacht... so ist bei den vielen Flächen die Zuordnung (Farbe-Fläche) am einfachsten, da ich mich noch in einer gewissen Lernphase befinde...

    Gruß

    EASY

  21. Hallo,

    ... ich möchte es ja nicht übertreiben, aber meine Neugier hat mich dann doch getrieben... also habe mal den nächsten Versuch gemacht... (im Bild: links alt, rechts neu)

    ...keine Einzelfarben sondern eine Multi-Textur (mit den Farben) gemapped (außer was transparent ist)... Scheitelpunkte verschweißt... und die Scheiben "attached" (aneinandergehängt), damit sie (lt. Neo) auf einmal gerendert werden können...

    ... damit sind jetzt auch die schattigen Dreiecke verschwunden... nur die Scheiben sind mir so schon fast zu glatt und durchsichtig...

    ... das eingestellte Modell lasse ich mal, wie es ist... es ist einfach für mich ein geometrisch geeignetes Modell für Versuche... mal sehen wohin mich die Neugier noch treibt...

    ... und das Wesentliche: Ohne die Diskussionen hier im Forum, wäre ich wahrscheinlich längst noch nicht so weit...

    Gruß

    EASY

    Farbe-textur.jpg

     

×
×
  • Neu erstellen...