AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Garmin TYP Files

Ein Thema von schwa226 · begonnen am 6. Jul 2011 · letzter Beitrag vom 12. Jul 2011
Antwort Antwort
schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#1

Garmin TYP Files

  Alt 6. Jul 2011, 14:19
Hallo zusammen!

Ich möchte mich etwas mit den TYP Files von den Garmin Karten spielen.
Da kann man ja einiges an der Darstellung verbessern!

Nun bin ich bei "points" (POIS) und ich komme mit dem Bitmap nicht recht weiter.

Eine Erklärung habe ich hier gefunden:
http://pinns.co.uk/osm/docs/Type_Format.pdf

Ich habe z.B. einen POI mit einem BMP:
Size: 4x4, 2 colours
Data: 01040402200000000F03030314555514

0x01: poi type
0x04: bmp len
0x04: bmp width
0x02: color count
0x20: ????
0x00, 0x00, 0x00: BGR (reversed RGB) color1
0x0F: Alpha channel??
0x03, 0x03, 0x03: BGR (reversed RGB) color2
0x14555514: Bitmap data

Ergebnis sollte ein 4x4 pixel großes bmp sein mit einem kreuz in der Mitte:
0110
1111
0110

0: weis
1: schwarz

Ich verstehe das im PDF nicht ganz und bin mir nicht sicher ob ich die Farbe richtig bestimme.
Auch nicht ob das mit dem Alpha richtig ist! Warum hat die 2. Farbe keinen Alpha Channel?

Auch kann ich die Bitmap Data nicht in Pixel zerlegen. Da komme ich einfach nicht drauf wie das mit den Farben usw. geht!

Anbei ein Beispiel TYP File mit nur einem POI mit genau diesem BMP.
Man kann das TYP File mit diesem Online Editor bearbeiten:
http://ati.land.cz/gps/typdecomp/editor.cgi

Kann mir da jemand helfen?
Angehängte Dateien
Dateityp: zip M0000073.zip (190 Bytes, 4x aufgerufen)
Delphi 2010, Update 4 & 5

Geändert von schwa226 ( 6. Jul 2011 um 14:22 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.153 Beiträge
 
Delphi 12 Athens
 
#2

AW: Garmin TYP Files

  Alt 6. Jul 2011, 14:36
01040402200000000F03030314555514

01: poi type
04: Höhe
04: Breite
02: Farbanzahl
20 000000: Transparenz + Farbwert
0F 030303: Transparenz + Farbwert
14: Bildzeile 1 (je zwei Bit pro Pixel)
55: Bildzeile 2
55: Bildzeile 3
14: Bildzeile 4

so mal frei dahingeraten

Aber noch ein paar andere einfache Bilder, so zum Vergleich, wäre schon angebracht ... auch noch in anderen Auflösungen.


[add]
Seite 14:

0x20 = 32 ?
Zitat:
Colour mode ie 0,16 or 32
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 6. Jul 2011 um 14:46 Uhr)
  Mit Zitat antworten Zitat
schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#3

AW: Garmin TYP Files

  Alt 7. Jul 2011, 06:30
Zitat:
0x20 = 32 ?
Das habe ich mir auch gedacht. Jedoch passt dein Ansatz mit Transparenz und Farbe besser!?
Aber ich glaube das ist schon der Colormode.
Die Colors setzen sich ja dann aus "3 x nmb cols + alphas if any" zusammen:

3 * 2 + 1 = 7 Bytes = 0000000F030303

Hier noch kleine Beispiele:
4x4, 2 Farben
0104040220FFFFFF0000000000555500

0000
1111
1111
0000

8x8, 2 Farben:
0108080220FFFFFF0000000040014001400155555555400140 014001

00011000
00011000
00011000
11111111
11111111
00011000
00011000
00011000

8x8, 2 Farben:
0108080220000000F0FFFF0F50055005555515541554555550 055005

11000011
11000011
00000000
00011000
00011000
00000000
11000011
11000011

4x4, 3 Farben (4 Bit BMP)
0104040320111111F0FFFF0F0000000094955696

1001
0001
1000
1001

EDIT:
Habe mir nun den Source vom "decompiler" eines TYP Files etwas angesehen:
http://ati.land.cz/gps/typdecomp/source.cgi

Das ist ein Perl CGI Script. Kann man das übersetzen oder müsste man das per Hand machen?
Delphi 2010, Update 4 & 5

Geändert von schwa226 ( 7. Jul 2011 um 07:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Garmin TYP Files

  Alt 7. Jul 2011, 07:51
Was ist der Unterschied zwsichen übersetzen und per Hand machen?

Also, du kannst das per Hand übersetzen.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#5

AW: Garmin TYP Files

  Alt 7. Jul 2011, 09:16
Naja, ob es sozusagen ein Programm gibt, mit dem ich das CGI öffne und als Delphi Unit abspeichern kann!?
Wird es aber nicht geben...

Wie funktioniert das mit dem CGI. Kann man das debuggen (Step by Step)?
Delphi 2010, Update 4 & 5
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

AW: Garmin TYP Files

  Alt 7. Jul 2011, 13:20
Wie das funktioniert?

Das ist ein "simples" Perl-Script. Die Datei könnte auch *.pl heißen.

Du brauchst einen Perl-Interpreter (z.B. ActivePerl) und eine IDE (z.B. EPIC unter Eclipse).
Und da kannst du auch debuggen. Alternativ gibt es Padre (IDE gleich mit StrawberryPerl) und noch ein paar kommerzielle Lösungen.

Allerdings musst du die Klassen ja vorher erstmal richtig benutzen, bevor du sie debuggen kannst.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#7

AW: Garmin TYP Files

  Alt 11. Jul 2011, 09:17
Ich habe mir nun den Editor komplett runtergeladen (glaube ich zumindest).
Keine angst! Laut des Inhabers ist das unter Punkt 5 erlaubt:

Zitat:
Information for using on-line TYP editor:
1.You can use this editor/decompiler freely. I do not restrict anyone from using it.
2.Every uploaded TYP file is stored on this server, and will remain there for some time.
This is technical thing. Without files stored locally, you would have to upload it again and again with every change. And you would have to enter their locations again and againd, because security rules in modern browsers prevent server to "pre-fill" input field with previous file name.

But there is no way for anyone to get this stored files without knowing their exact ID (40 characters long hexstring generated as SHA-1 hash of TYP content). You can be absolutely sure that nobody can browse or download any TYP file stored on this server.

3.Every access to editor is logged (as on every webserver in the world ).
4.If you encounter any problem, report it in discussion board, please. It will really help me.
5.Everybody is welcome to use this editor, but that of cource does not mean that you have to use it. If you do not trust me and think "that bastard [misch] will surely grab my uploaded TYPs and sell it on black market for $49.99 each", you can either use cGPSmapper, or download source of this editor, review it, and build your own application. There is no need to send flames to discussion board.
Meine Frage ist jetzt, ob man einen Offline Webserver dafür machen kann. somit müsste man nicht alles in Delphi umsetzen und wenn es einmal ein Update des Editors geben soll kann man die neue Editor.cgi einfach reinkopieren. Kann sich jemand vorstellen wie das gehen würde und was man dafür bräuchte?

Danke!
Angehängte Dateien
Dateityp: zip ati.land.cz.zip (257,9 KB, 4x aufgerufen)
Delphi 2010, Update 4 & 5
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: Garmin TYP Files

  Alt 11. Jul 2011, 23:16
Ich weiß nicht mehr so ganz genau, was du nun vor hast.

Ich wüsste nicht, ob es einen Remotedebugger für Perl gibt, also, dass du debuggen kannst, wenn Perl nicht von der Konsole sondern von einem Webserver angesprochen wird. Vielleicht kann Eclipse so etwas, habe ich aber noch nie probiert.
Ich habe bisher zum testen einen eigenen, in Delphi, geschriebenen Webserver benutzt,aber zum debuggen ist er nicht geeignet.

Du willst doch nur spezielle GArmin-Dateien erstellen, oder? Gibt es dazu nicht schon genügend Material. ICh erinnere mich, als ich mich mal damit beschäftigt hatte (so ca. 2005), hattte schon jemand das komplette Dateiformat von Garmin herausgefunden und eine Doku dazu geschrieben. Vielleicht brauchst du eher so etwas.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#9

AW: Garmin TYP Files

  Alt 12. Jul 2011, 06:45
Die TYP File Beschreibung ist oben schon mal als PDF verlinkt.
Aber da verstehe ich nicht alles

Ich habe mir zuerst gedacht, dass ich die Verarbeitung in Delphi umsetzen will.
Doch nachdem es diesen guten Online Editor gibt, ist es eher unsinnig sowas zu machen (da doppelt).

Besser würde ich es finden, wenn man das Editor.cgi und Source.cgi offline benützen könnte.

Debuggen wollte ich es ja nur um den Source besser zu verstehen zu können und das es somit leichter ist für mich das in Delphi umzusetzen.
Delphi 2010, Update 4 & 5
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#10

AW: Garmin TYP Files

  Alt 12. Jul 2011, 16:17
Ist für offline nicht cgsMapper da?

Anosnten musst du eben eine Art Webserver basteln. Eigentlich muss dieser Webserver nur Perl aufrufen und als Parameter die verlangte cgi. Zusätzlich musst du die http-Header in die Umgebungsvariablen des Perl-Prozesses basteln und bei http-Post den Content auf die Standardeingabe geben (dies alles geht bspw. mit TDoscommand).
Aber irgendwie sieht das so aus, wie "von hinten durch die Brust"...
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz