Die Suche ergab 112 Treffer

von bbock
12.06.2021, 18:11
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

vecread3

Das Programm vecread3 unterstützt das neue Format VE2; auch das bisherige Format VEC wird weiter unterstützt.

VECREAD3_com.zip
VECREAD3 v3.0 ausführbare COM-Datei
(10.31 KiB) 32-mal heruntergeladen
VECREAD3_src.zip
VECREAD3 v3.0 Source
(10.45 KiB) 23-mal heruntergeladen
von bbock
12.06.2021, 18:06
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

Dateiformat-Spezifikation VE2

Code: Alles auswählen

Header: 'V' 'E' '2'
uint minX                 minimum of all X coordinates
uint maxX                 maximum of all X coordinates
uint minY                 minimum of all Y coordinates
uint maxY                 maximum of all Y coordinates
uint targetResolutionX    target resolution X
uint targetResolutionY    target resolution Y
byte bytesXCoord          number of bytes used by an x coordinate
byte bytesYCoord          number of bytes used by a y coordinate
uint profileFlags         bit vector where each 1 bit means the corresponding graphic object can be present in the file
                          00000000 00000001: Dot
                          00000000 00000010: Line
                          00000000 00000100: Box
                          00000000 00001000: Square
                          00000000 00010000: Ellipse
                          00000000 00100000: Circle
                          00000000 01000000: Multi-Dot
                          00000000 10000000: Multi-Line
                          00000001 00000000: Polygon-Fill

Example with bytesXCoord=2, bytesYCoord=2:
Byte         |  0 |   1    2   |   3    4   |   5    6   |   7    8   |
-----------------------------------------------------------------------
Dot          |  0 |     x      |     y      |            |            |
Line         |  1 |     x1     |    y1      |    x2      |    y2      |
Box          |  2 |   xleft    |   ytop     |   xright   |  ybottom   |
Square       |  3 |   xleft    |   ytop     |   width    |            |
Ellipse      |  4 |  xcenter   |  ycenter   |  xradius   |  yradius   |
Circle       |  5 |  xcenter   |  ycenter   |   radius   |            |
Multi-Dot    | 10 |#dots|     x1      |    y1     |     x2     | ...  |
Multi-Line   | 11 |#dots|     x1      |    y1     |     x2     | ...  |
Polygon-Fill | 12 |#dots|     x1      |    y1     |     x2     | ...  |
End          | 99 |            |            |            |            |

Space consumption:
------------------
Graphic object (Dot, Line, ...): 1 byte
Dot           x:       bytesXCoord bytes
              y:       bytesYCoord bytes
Line          x1:      bytesXCoord bytes
              y1:      bytesYCoord bytes
              x2:      bytesXCoord bytes
              y2:      bytesYCoord bytes
Box           xleft:   bytesXCoord bytes
              ytop:    bytesYCoord bytes
              xright:  bytesXCoord bytes
              ybottom: bytesYCoord bytes
Square        xleft:   bytesXCoord bytes
              ytop:    bytesYCoord bytes
              width:   max(bytesXCoord, bytesYCoord) bytes
Ellipse       xcenter: bytesXCoord bytes
              ycenter: bytesYCoord bytes
              xradius: bytesXCoord bytes
              yradius: bytesYCoord bytes
Circle        xcenter: bytesXCoord bytes
              ycenter: bytesYCoord bytes
              radius:  max(bytesXCoord, bytesYCoord) bytes
Multi-Dot:    #dots:   1 byte
              xn:      bytesXCoord bytes
              yn:      bytesYCoord bytes
Multi-Line:   #dots:   1 byte
              xn:      bytesXCoord bytes
              yn:      bytesYCoord bytes
Polygon-Fill: #dots:   1 byte
              xn:      bytesXCoord bytes
              yn:      bytesYCoord bytes
Edit: Datentyp von profileFlags korrigiert.
von bbock
12.06.2021, 18:01
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

TinySVG v0.25

Version 0.25 führt ein neues Dateiformat ein: VE2 ist eine Erweiterung des VEC-Formats mit zusätzlichen Header-Informationen. Der Speicherbedarf pro Koordinate ist jetzt nicht mehr fix 2 Bytes, sondern kann je nach Zielsystem variieren. Bei der Joyce und beim C64 ist die X-Koordinate jetzt 2 Bytes groß, die Y-Koordinate aber nur 1 Byte, was zu einer Verringerung der Dateigröße um ca. 25% führt. Da weniger Daten geladen werden müssen, wird die Grafik auch schneller aufgebaut. VE2 ist jetzt das Standardformat für Schneider Joyce und C64.

Die Ausgabe des VEC-Formats wurde ebenfalls optimiert: jetzt werden i.d.R. MULTI-LINE-Befehle anstelle von LINE verwendet. Auch dadurch werden die Dateien kleiner, weil die Wiederholung des LINE-Befehls und die doppelten Koordinaten für End- und Anfangspunkt bei verbundenen Linien entfallen.

Beispiel:

Code: Alles auswählen

Bisher:                Neu:
------------------------------------------------------------
LINE 0 0 100 100       MULTI_LINE 6 0 0 100 100 210 300 0 0
LINE 100 100 210 300
LINE 210 300 0 0
15 Bytes               10 Bytes
TinySVG.zip
TinySVG v0.25
(137.78 KiB) 28-mal heruntergeladen
von bbock
26.05.2021, 12:04
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

TinySVG v0.24

Ein Transformations-Bug ist jetzt behoben, nach dem ich lange suchen musste. Er trat beim Anwenden von Matrix-Transformationen auf, was dazu führte, dass manche Objekte in der Grafik falsch platziert (<- neue deutsche Rechtschreibung! ;) ) wurden.

Außerdem gibt es jetzt Voreinstellungen für den Commodore 64 (auch "C64" oder "Brotkasten" genannt).

TinySVG.zip
TinySVG v0.24
(124.59 KiB) 71-mal heruntergeladen

Die folgende ZIP-Datei enthält ein D64 Image mit dem C64-Programm DRAWVECTOR, mit dem VEC-Dateien auf dem C64 angezeigt werden können. Außerdem sind bereits einige VEC-Dateien zum Ausprobieren enthalten.

C64-VECTORDATA1.zip
DRAWVECTOR für C64 und VEC-Dateien in D64 Image
(56.98 KiB) 52-mal heruntergeladen
von bbock
11.05.2021, 16:20
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

TinySVG v0.23

Internationalization (gern auch als I18N abgekürzt) ist das offensichtliche neue Feature der Version 0.23; außerdem wurde intern einiges an Code umstrukturiert.

TinySVG startet nun in deutscher Sprache, wenn die Sprache des Betriebssystems auf Deutsch eingestellt ist, ansonsten in englischer Sprache. Über Optionen > Deutsch / Englisch bzw. Options > German / English kann die Sprache gewechselt werden, was dank trickreicher Programmierung ohne Neustart der Anwendung funktioniert.

TinySVG.zip
TinySVG v0.23
(121.03 KiB) 47-mal heruntergeladen
von bbock
07.05.2021, 18:53
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

TinySVG v0.22

Version 0.22 behebt das Problem beim automatischen Resize.

@Joachim: Du kannst jetzt einfach "Center" und "Resize" aktivieren und deine Grafik wird genau eingepasst - auch wenn sie gedreht wurde. Und noch ein kleiner Tipp: man kann beliebige Drehwinkel eingeben, also auch "krumme" oder negative!

Außerdem habe ich einen Fehler behoben, der bei einer ganzen Reihe von SVG-Dateien zu zerrissenen Bildern führte: im Kern war es ein Problem mit einer Matrix-Multiplikation. Dazu muss man wissen, dass das Kommutativgesetz bei der Matrixmultiplikation nicht gilt, d.h. im allgemeinen ist AxB nicht gleich BxA. In TinySVG brauche ich situationsbedingt beide Richtungen; da muss man ganz schön aufpassen...

TinySVG.zip
TinySVG v0.22
(115.17 KiB) 34-mal heruntergeladen
von bbock
07.05.2021, 11:58
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

Re: Vektorgrafik für die Joyce

Joachim hat geschrieben: 07.05.2021, 10:45 ...
Ich dachte irrtümlich, je größer der Faktor, umso größer das Bild.
...
Je größer der Faktor, desto größer das Bild, das stimmt schon. Nur war dein Faktor so groß, dass die Grafik aus dem Anzeigebereich herausgerutscht ist.
von bbock
06.05.2021, 22:23
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

Re: Vektorgrafik für die Joyce

Hallo Joachim,

versuch's mal mit aktiviertem "Center" und mit dem scale factor 0.35; außerdem sollte beim Eiermaler das Häkchen bei "Origin at bottom left" gesetzt sein, oder nicht? Die Weltkarte lädt ziemlich lange, daher ist das Ausprobieren etwas zeitraubend.

Die automatische "Resize"-Funktion arbeitet offenbar noch nicht korrekt, wenn die horizontale Auflösung kleiner als die vertikale ist; das habe ich in meine Bug-Liste aufgenommen.
von bbock
06.05.2021, 14:50
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

TinySVG v0.21

Neu in Version 0.21:
  • Drehen der Grafik um einen beliebigen Winkel: Options > Configuration > Rotate clockwise by ... degrees
  • Der Configuration-Dialog kann jetzt mit Enter bestätigt und mit Esc storniert werden
  • Korrektur der Rechtecke (BOX) bei ZX Spectrum Standard
  • Diverse bug fixes
TinySVG.zip
TinySVG v0.21
(114.88 KiB) 34-mal heruntergeladen
von bbock
01.05.2021, 12:35
Forum: Programmierung
Thema: Vektorgrafik für die Joyce
Antworten: 44
Zugriffe: 7157

vecread2

Die Version 2.0 des Vektorgrafik-Anzeigeprogramms hat einen Diashow-Modus, der alle .vec-Dateien auf einer Diskette nacheinander anzeigt. Die Diashow wird durch Eingabe eines "D" (oder "d") anstelle eines Dateinamens gestartet. Das funktioniert über die Eingabemaske und über die Kommandozeile: vecread2 d

Die Diashow kann man durch einen Tastendruck beenden. Die aktuelle Grafik wird noch zuende gezeichnet, dann ertönt ein akustisches Signal. Die letzte Grafik kann man dann noch bewundern, bevor ein weiterer Tastendruck das Programm beendet.

Im Anhang sind drei Disc Images, die vecread2 und einige Beispielgrafiken enthalten. Die ZIP-Dateien enthalten die Images einmal im DSK- und einmal im HFE-Format (letzteres ist für Joyce-Computer mit HxC Floppy Emulator).

VECREAD2_com.zip
VECREAD2 v2.0 ausführbare COM-Datei
(10.04 KiB) 57-mal heruntergeladen
VECREAD20_src.zip
VECREAD2 v2.0 Source
(9.89 KiB) 39-mal heruntergeladen
vecread2_dsk.zip
Drei Disc Images im DSK-Format
(543.4 KiB) 37-mal heruntergeladen
vecread2_hfe.zip
Drei Disc Images im HFE-Format für den HxC Floppy Emulator
(800.29 KiB) 54-mal heruntergeladen