Hallo, FixFoto-Freunde,
... (Fortsetzung des Threads W-Script) ...
jetzt ist es endlich soweit, dass ich das von Walter (Walter-46) gestartete und entwickelte Paket "W_Shift" wie angedeutet und mit Walter abgesprochen ein wenig weiter entwickelt und - ich hoffe es zumindest - mehr abgerundet habe.
Warum das nun etwas länger gedauert hat, als ursprünglich angenommen, liegt einmal daran, dass die Thematik nicht ganz so trivial ist und andererseits mir einiges im privaten Bereich dazwischengekommen ist.
Dabei ging es mir bei der Umstellung und Weiterentwicklung des Skriptes natürlich nicht um eine bloße Namensänderung, - obwohl ich den Begriff "Verzerrungen" aussagekräftiger und zutreffender finde als den Namen "Shift". Vor allem möchte ich aber keineswegs die Anerknnung für Walter in irgendeiner Art schmälern oder herunterspielen. Seine Idee hinter dem Skript ist einfach genial und bewundernswert. Und die bisherige Realisation schon super
Meine Bemühungen lagen nun darin, das Skript ein wenig zu beschleunigen, die bei der bisherigen Vorstellung aufgetretenen Fehler auszumerzen und die eingebrachten Kritikpunkte und Anregungen zu berücksichtigen. Ich denke, ein Teil davon ist mir gelungen. Das Skript läuft nun einigermaßen absturzsicher ab. Die Darstellungen sowohl in der Vorschau als auch im endgültigen Ergebnis verfügen jetzt über deutlich weniger "Leeranteile" im erzeugten Bild. Dabei habe ich mich weitestgehend bemüht, die sich ergebende Vorschau und auch im Ergebnisbild keine Beschneidungen beim Verzerren des Augangsbildes zuzulassen. Die Vorschau,und Fertigbild, die soweit es ging übereinstimmen, werden hinsichtlich der Bilddimensionierung (Bildgeometrie: Breite mal Höhe) den jeweiligen Erfordernissen immer direkt optimal angepasst, d.h., es gehen keine Bildinhalte verloren. Eine endgültige Anpassung kann ja nach Belieben mit einer separaten Beschneidung vorgenommen werden. Was die Art der "Verzerrung" anbetrifft, so ist es in der Tat wie Frank (Der Altenburger) schon vermutete, eine parabolische und keine zylindrische. Im Übrigen wurde jetzt eine Fortschrittsanzeige zuverlässig integriert.
Bezüglich der Ablaufgeschwindigkeit war leider nicht allzuviel herauszuholen. Die Bremse ist wie Walter schon andeutete der im Skript verankerte Skalierungs- und "MixImage"-Prozess. Durch eine angepasste Optimierung in der Parameterversorgung war lediglich eine etwa 20% kürzere Laufzeit herauszuholen. Ich hatte zunächst auf mehr gehofft, indem ich eine Lösung mit "DrawImage" versucht habe, die sich aber als die langsamere herausstellte.
Als ein weiteres Problem im ursprünglichen Skript entpuppte sich die Dialogsteuerung deswegen, dass durch den parallelen Betrieb des Timer-Event ("SetDialogTimer") für das Auslesen der Slider einerseits und andererseits durch die restliche Steuerung per "Pushbutton" für das Aktivieren der übrigen Aktionen. Durch diese Parallelität werden manche Button-Klicks nicht registriert und damit ignoriert. Ich habe versucht, dieses Problem durch Umstellung auf Buttons vom Typ "BOOL" zu umgehen, weil deren Betätigungen immer direkt im Dialog durch Hakenmarkierung angzeigt werden und so explizit (via "GetControl") abgefragt werden können. Doch hierbei zeigte sich ein weiterer Pferdfuß im Dialogverhalten: Bei 64-Bit_Systemen zusammen mit der 64-Bit-FixFoto-Version werden die Haken beim Betätigen einer "BOOL"-Taste nicht angezeigt, können aber dennoch über "GetControl" abgefragt werden.
Ein neues Forschungsobjekt?!?!? (bei Bedarf kann ich hierzu noch weitere eigenartige Details für eine Vermeidungsstrategie liefern).
Noch nicht realisiert habe ich den von Walter eingebauten Slider zur horizontalen Stauchung bzw Dehnung (unterer Horizontal-Slider). Hierzu bräuchte ich noch ein paar Erläuterungen von Walter bzw. eine Anregung zum Einbau in das neue Skript.
So, nun Feuer frei zum Testen und zur Kritik. Übrigens: das Skript "Verzerrungen" in der Version V1.3 befindet sich hier.
Herzliche Grüße
Heinrich
... (Fortsetzung des Threads W-Script) ...
jetzt ist es endlich soweit, dass ich das von Walter (Walter-46) gestartete und entwickelte Paket "W_Shift" wie angedeutet und mit Walter abgesprochen ein wenig weiter entwickelt und - ich hoffe es zumindest - mehr abgerundet habe.
Warum das nun etwas länger gedauert hat, als ursprünglich angenommen, liegt einmal daran, dass die Thematik nicht ganz so trivial ist und andererseits mir einiges im privaten Bereich dazwischengekommen ist.
Dabei ging es mir bei der Umstellung und Weiterentwicklung des Skriptes natürlich nicht um eine bloße Namensänderung, - obwohl ich den Begriff "Verzerrungen" aussagekräftiger und zutreffender finde als den Namen "Shift". Vor allem möchte ich aber keineswegs die Anerknnung für Walter in irgendeiner Art schmälern oder herunterspielen. Seine Idee hinter dem Skript ist einfach genial und bewundernswert. Und die bisherige Realisation schon super
Meine Bemühungen lagen nun darin, das Skript ein wenig zu beschleunigen, die bei der bisherigen Vorstellung aufgetretenen Fehler auszumerzen und die eingebrachten Kritikpunkte und Anregungen zu berücksichtigen. Ich denke, ein Teil davon ist mir gelungen. Das Skript läuft nun einigermaßen absturzsicher ab. Die Darstellungen sowohl in der Vorschau als auch im endgültigen Ergebnis verfügen jetzt über deutlich weniger "Leeranteile" im erzeugten Bild. Dabei habe ich mich weitestgehend bemüht, die sich ergebende Vorschau und auch im Ergebnisbild keine Beschneidungen beim Verzerren des Augangsbildes zuzulassen. Die Vorschau,und Fertigbild, die soweit es ging übereinstimmen, werden hinsichtlich der Bilddimensionierung (Bildgeometrie: Breite mal Höhe) den jeweiligen Erfordernissen immer direkt optimal angepasst, d.h., es gehen keine Bildinhalte verloren. Eine endgültige Anpassung kann ja nach Belieben mit einer separaten Beschneidung vorgenommen werden. Was die Art der "Verzerrung" anbetrifft, so ist es in der Tat wie Frank (Der Altenburger) schon vermutete, eine parabolische und keine zylindrische. Im Übrigen wurde jetzt eine Fortschrittsanzeige zuverlässig integriert.
Bezüglich der Ablaufgeschwindigkeit war leider nicht allzuviel herauszuholen. Die Bremse ist wie Walter schon andeutete der im Skript verankerte Skalierungs- und "MixImage"-Prozess. Durch eine angepasste Optimierung in der Parameterversorgung war lediglich eine etwa 20% kürzere Laufzeit herauszuholen. Ich hatte zunächst auf mehr gehofft, indem ich eine Lösung mit "DrawImage" versucht habe, die sich aber als die langsamere herausstellte.
Als ein weiteres Problem im ursprünglichen Skript entpuppte sich die Dialogsteuerung deswegen, dass durch den parallelen Betrieb des Timer-Event ("SetDialogTimer") für das Auslesen der Slider einerseits und andererseits durch die restliche Steuerung per "Pushbutton" für das Aktivieren der übrigen Aktionen. Durch diese Parallelität werden manche Button-Klicks nicht registriert und damit ignoriert. Ich habe versucht, dieses Problem durch Umstellung auf Buttons vom Typ "BOOL" zu umgehen, weil deren Betätigungen immer direkt im Dialog durch Hakenmarkierung angzeigt werden und so explizit (via "GetControl") abgefragt werden können. Doch hierbei zeigte sich ein weiterer Pferdfuß im Dialogverhalten: Bei 64-Bit_Systemen zusammen mit der 64-Bit-FixFoto-Version werden die Haken beim Betätigen einer "BOOL"-Taste nicht angezeigt, können aber dennoch über "GetControl" abgefragt werden.
Ein neues Forschungsobjekt?!?!? (bei Bedarf kann ich hierzu noch weitere eigenartige Details für eine Vermeidungsstrategie liefern).
Noch nicht realisiert habe ich den von Walter eingebauten Slider zur horizontalen Stauchung bzw Dehnung (unterer Horizontal-Slider). Hierzu bräuchte ich noch ein paar Erläuterungen von Walter bzw. eine Anregung zum Einbau in das neue Skript.
So, nun Feuer frei zum Testen und zur Kritik. Übrigens: das Skript "Verzerrungen" in der Version V1.3 befindet sich hier.
Herzliche Grüße
Heinrich
Zuletzt bearbeitet: