Doku z3strbie.dll

Das Unterforum für Diskussionen rund um die Technik, Bedienung, Konfiguration usw. Das ist auch die erste Anlaufstelle für Bastler mit Fragen zu den Editoren.
Antworten
Nachricht
Autor
Benutzeravatar
Johannes
Beiträge: 3307
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Doku z3strbie.dll

#1 Beitrag von Johannes »

Ich würde gerne im Zuge der Weichengewichts-Umstellung automatisiert Landschaften verbiegen. Ich nehme an, das geht mit der z3strbie.dll? Wie lautet denn die Signatur der passenden Funktion?

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33981
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Doku z3strbie.dll

#2 Beitrag von Carsten Hölscher »

Hier mal die Schnittstellen, bei Fragen fragen

Code: Alles auswählen

type
  TBiegeParameter = packed record
    EingangsWinkel:single;
    Laenge:single;
    Kruemmung:single;
    UeberhgAnf:single;
  end;

  TpBiegeParameterArrayKonst = ^TBiegeParameterArrayKonst;
  TBiegeParameterArrayKonst = packed array[0.. BiegeParameterArrayMax - 1] of TBiegeParameter;

  TVektorisierungsParameter = packed record
    maxLaenge:single;
    Zerhackung:integer; // 0: grob, 100: fein
  end;

procedure Biegen_Gesamt_ls3( Arbeitsverzeichnis,
                             Dateiname:PAnsiChar;
                             pos, posphi:TD3DVector;               // das sind die Verkn-KO des Signals
                             posFrame, posphiFrame:TD3DVector;     // das sind die Verkn-KO der Signaldatei bezüglich Signal (meist 0/0/0)
                             NeuesVerzeichnis:PAnsiChar;
                             BiegeArray:TpBiegeParameterArrayKonst;
                             Laenge:integer;
                             VektorParam:TVektorisierungsParameter;
                             NeuerName:PAnsiChar;
                             Modus:Byte); stdcall;  



procedure TempSpeichern_st3( Arbeitsverzeichnis, DateiName:PAnsiChar); stdcall;

function ls3Aktualisierer( Arbeitsverzeichnis, DateiName:PAnsiChar; Modus:Byte):Boolean; stdcall;

function ls3Vorschau( Arbeitsverzeichnis, DateiName, BMPDateiname:PAnsiChar; Modus:Byte; DXHandle:THandle; BMPWidth, BMPHeight:integer; BMPFormat:TD3DXImageFileformat):Boolean; stdcall;

function ftdVorschau( Arbeitsverzeichnis, DateiName, BMPDateiname:PAnsiChar; Modus:Byte; DXHandle:THandle; AnsichtNr, BMPWidth, BMPHeight:integer; BMPFormat:TD3DXImageFileformat; var x,y:integer):Boolean; stdcall;

procedure EigeneDatenVerzeichnis(s:PAnsiChar); stdcall;

procedure dllVersion(s:PAnsiChar); stdcall;

Benutzeravatar
F. Schn.
Beiträge: 7378
Registriert: 24.10.2011 18:58:26

Re: Doku z3strbie.dll

#3 Beitrag von F. Schn. »

Ich habe mal eine allgemeine Frage zum Thema DLL: Was macht Zusi eigentlich mit den Strings, die eine DLL zurück gibt? Wie werden die wieder aufgeräumt?
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

hlinke
Beiträge: 275
Registriert: 21.08.2019 07:12:42
Aktuelle Projekte: Bildfahrplan, Zusi-Tools
Wohnort: Trier
Kontaktdaten:

Re: Doku z3strbie.dll - Seitenansicht nach rechts?

#4 Beitrag von hlinke »

Hallo Zusammen,

da ich keine Diskussion zur Z3STRBIE.DLL gefunden habe, hänge ich mich mal hier mit dran.

Ich verwende die z3strvie.dll jetzt auch in ZUSI Start um die Seitenansichten zu erzeugen.
Durch die Unterstützung durch @F.Schn. funktioniert das recht gut.

Ich habe aber ein kleines Problem:

Bei der Seitenansicht zeigen die führenden Führerstände der Fahrzeuge nach links. (Sieht man gut an Steuerwagen)
Um jetzt gedrehte Fahrzeugansichten zu erzeugen spiegel ich das Bild einfach horizontal.
Funktioniert auch ohne Probleme.
Nur leider sind die Beschriftungen bei den gedrehten Fahrzeigen jetzt spiegelverkehrt.
Das sieht jetzt etwas unschön aus. Gibt es da eine Lösung für?

Wäre es möglich als zusätzliche Ansicht Seitenansicht rechts zu ermöglichen?
Viele Grüße
Harold

hlinke
Beiträge: 275
Registriert: 21.08.2019 07:12:42
Aktuelle Projekte: Bildfahrplan, Zusi-Tools
Wohnort: Trier
Kontaktdaten:

Re: Doku z3strbie.dll - Absturz nach ca 800 Aufrufen

#5 Beitrag von hlinke »

Hallo Zusammen,

ich habe gerade ein neues Problem entdeckt:

Ich habe eine Funktion in ZusiStart implementiert, die alle Fahrzeugbilder erzeugt und in den Cache schreibt.
Insgesamt müssenn 2284 Bilder erzeugt werden.
Nach ca 800 Bildern meldet die DLL eine Exception "External Component has thrown an exception".
Wenn man diesen Fehler abfängt, kommt nach weiteren 4 Bilder eine neue Exception:

Ein Ausnahmefehler des Typs "System.ComponentModel.Win32Exception" ist in System.Private.CoreLib.dll aufgetreten.
Der aktuelle Prozess verwendet alle Handles der zulässigen Höchstanzahl für Window Managerobjekte.

Kann dies ein Problem in der dll sein?

So kann ich diese Funktion leider nicht nutzen.

Viele Grüße
Harold

PS: Im TaskManager sieht man, das der RAM-Speicher bei jedem DLL-Aufruf wächst.

Benutzeravatar
F. Schn.
Beiträge: 7378
Registriert: 24.10.2011 18:58:26

Re: Doku z3strbie.dll - Seitenansicht nach rechts?

#6 Beitrag von F. Schn. »

hlinke hat geschrieben: 12.12.2024 16:08:15 Um jetzt gedrehte Fahrzeugansichten zu erzeugen spiegel ich das Bild einfach horizontal.
Funktioniert auch ohne Probleme.
Nur leider sind die Beschriftungen bei den gedrehten Fahrzeigen jetzt spiegelverkehrt.
Das sieht jetzt etwas unschön aus. Gibt es da eine Lösung für?
Eine temporäre ls3 erzeugen, die eine Verknüpfung auf die echte ls3 enthält und die Dateiverknüpfung um 180° gedreht (und ggf. verschoben) ist.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33981
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Doku z3strbie.dll

#7 Beitrag von Carsten Hölscher »

Ich könnte beim Modus noch einen ergänzen für die andere Lokseite..
Wg. Absturz: Als schnelle Lösung könnte man die dll neu laden?

Carsten

hlinke
Beiträge: 275
Registriert: 21.08.2019 07:12:42
Aktuelle Projekte: Bildfahrplan, Zusi-Tools
Wohnort: Trier
Kontaktdaten:

Re: Doku z3strbie.dll

#8 Beitrag von hlinke »

Hallo Carsten,

danke für Dein Feedback.
Ein neuer Modus für die andere Lokseite wäre super.

Neuladen der DLL muß ich mal probieren.

Viele Grüße
Harold

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33981
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Doku z3strbie.dll

#9 Beitrag von Carsten Hölscher »

Gibt's schon, mit Wert 4 wird die andere Seite gezeichnet.

Carsten

hlinke
Beiträge: 275
Registriert: 21.08.2019 07:12:42
Aktuelle Projekte: Bildfahrplan, Zusi-Tools
Wohnort: Trier
Kontaktdaten:

Re: Doku z3strbie.dll

#10 Beitrag von hlinke »

Carsten Hölscher hat geschrieben: 16.12.2024 01:27:45 Gibt's schon, mit Wert 4 wird die andere Seite gezeichnet.

Carsten
Hallo Carsten,

danke für den Hinweis. Habe ich getestet. Funktioniert wie erwartet.

Aber einige Seitenansichten im mode = 4 sehen etwas komisch aus:

Beispiel: BR611:
Seitenansicht1 - mode=3
[Bild

Seitenansicht2 - mode=4
Bild

Packt man beide Seitenansichten zu einem Zug zusammen, sieht man, das da irgendetwas nicht passt.
Bild

Es sieht so aus, als wenn die Seitenansicht2 leicht verdreht ist.

Kannst Du Dir das mal anschauen?

Danke.

Harold

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33981
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Doku z3strbie.dll

#11 Beitrag von Carsten Hölscher »

Da ist die Neigeanimation in der Endlage.

Carsten

hlinke
Beiträge: 275
Registriert: 21.08.2019 07:12:42
Aktuelle Projekte: Bildfahrplan, Zusi-Tools
Wohnort: Trier
Kontaktdaten:

Re: Doku z3strbie.dll

#12 Beitrag von hlinke »

Carsten Hölscher hat geschrieben: 18.12.2024 12:56:19 Da ist die Neigeanimation in der Endlage.

Carsten
Wie kann ich verhindern, daß die Neigeanimation beim Erstellen der Seitenansicht eingreift?

Benutzeravatar
Johannes
Beiträge: 3307
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Doku z3strbie.dll

#13 Beitrag von Johannes »

hlinke hat geschrieben: 18.12.2024 13:50:51 Wie kann ich verhindern, daß die Neigeanimation beim Erstellen der Seitenansicht eingreift?
Das kann man seit kurzem in den LS3-Dateien einstellen: viewtopic.php?p=356132#p356132

Wahrscheinlich sollte man das einmal gesamthaft für den Bestand durchnudeln.

hlinke
Beiträge: 275
Registriert: 21.08.2019 07:12:42
Aktuelle Projekte: Bildfahrplan, Zusi-Tools
Wohnort: Trier
Kontaktdaten:

Re: Doku z3strbie.dll

#14 Beitrag von hlinke »

Johannes hat geschrieben: 18.12.2024 22:26:54
hlinke hat geschrieben: 18.12.2024 13:50:51 Wie kann ich verhindern, daß die Neigeanimation beim Erstellen der Seitenansicht eingreift?
Das kann man seit kurzem in den LS3-Dateien einstellen: viewtopic.php?p=356132#p356132

Wahrscheinlich sollte man das einmal gesamthaft für den Bestand durchnudeln.
Guter Vorschlag.

Johannes hat mir seine LS3_Renderer.dll zur Verfügung gestellt. Vielen Dank dafür, Johannes.
Sie funktioniert sehr gut.
Ich habe jetzt beide dll-Varianten in ZusiStart implementiert und kann durch ein Flag zwischen beiden auswählen.
Da der LS3_Renderer von Johannes keine Darstellungsprobleme hat und auch nicht abstürzt, wenn man ihn mehrere 1000-mal aufruft, habe ich jetzt in der aktuellen Beta von ZusiStart Johannes DLL aktiv geschaltet.

Viele Grüße
Harold

Antworten