Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

*.ovl Dateien laden lesen schreiben speichern

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
jh35104



Anmeldungsdatum: 15.02.2011
Beiträge: 12

BeitragVerfasst am: 26.04.2011, 18:36    Titel: *.ovl Dateien laden lesen schreiben speichern Antworten mit Zitat

Hallo zusammen ich hab eine grundlegende Frage?

Kann ich mit QBasic *.ovl (GeoGrid) Dateien laden manipulieren (eigene UTM Koordinaten eintragen) und danach wieder "Brauchbar" für den Viewer abspeichern.

Die nächste Frage wäre dann wie ? Aber dazu später. lachen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 26.04.2011, 19:00    Titel: Antworten mit Zitat

Ja.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
jh35104



Anmeldungsdatum: 15.02.2011
Beiträge: 12

BeitragVerfasst am: 26.04.2011, 19:28    Titel: Antworten mit Zitat

Super dann kann ich ja loslegen. Gut das ich jetzt weiß das es geht und ich nicht damit meine Zeit sinnlos ja vielleicht für nichts verschwende.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jh35104



Anmeldungsdatum: 15.02.2011
Beiträge: 12

BeitragVerfasst am: 26.04.2011, 21:13    Titel: Antworten mit Zitat

Ok genug gescherzt lachen

Mein Lösungsansatz

1. Mit HexEditor die *.ovl einlesen
2. Die benötigten Segmente ermitteln (Vergleich 2er minimal geänderten *.ovl's- Linie mit bekannter Länge auf 2 unterschiedlichen Nord-Ost-Werten)

3. Mit QBASIC in die benötigten Segmente "neue Werte" einschreiben.
4. Oder so ähnlich verlegen

zu 3. Da weiß ich nicht wie mit dem Kopf durch die Mauer wollen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 26.04.2011, 21:24    Titel: Antworten mit Zitat

Und was ist dein konkretes Problem dabei?
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
jh35104



Anmeldungsdatum: 15.02.2011
Beiträge: 12

BeitragVerfasst am: 27.04.2011, 19:14    Titel: Antworten mit Zitat

Öffnen der Datei

1.? nutze ich OPEN "*.ovl" FOR BINARY AS #1 oder BLOAD oder CALL ABSOLUTE???
2. Wie ermittel ich die Dateigröße und lese Segment und Offset eines bestimmten Wertes aus.

Ich versteh den binären Dateiaufbau nicht richtig. Wie kann ich VARSEG und VARPTR nutzen ohne die Variable / oder String in der zulesenden Datei zukennnen (ich versuch mir das wie bei OPEN "*.dat" FOR RANDOM #1 vorzustellen, wo meine "Werte" in $ gespeichert werden.(sequentiell ich weiß)

Dateizugriff ist absolutes Neuland für mich. Habe bis jetzt nur *.dat geschrieben um Werte von Variablen abzuspeichern. (Berechnungen, Pfade usw.)

Ich weiß das ich mit dem jetztigen Projekt bei 0 anfange und mir QBASIC wissen fehlt. Aber irgendwann ist immer der Anfang und man wächst mit seinen Aufgaben. (Nein ich möchte noch nicht C++ VisualB erlernen).
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 27.04.2011, 20:33    Titel: Antworten mit Zitat

Früher (QB stammt ja exakt aus dieser Zeit!) hatten .OVL-Dateien noch eine ganz andere Bedeutung: Overlays unter DOS. Grund dafür war die berühmte 640 KB-Speichergrenze.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 27.04.2011, 20:44    Titel: Antworten mit Zitat

Mit OPEN FOR BINARY kannst du jede Stelle der Datei genau ansteuern; daher wäre das die Methode deiner Wahl. Leider weiß ich nicht genau, was QBasic so zur Verfügung stellt und was bereits neu in FreeBASIC ist, aber hier mal ein paar Lesetips:

OPEN FOR BINARY generell (nur sehr knapp, aber mit weiteren Links)
GET zum Auslesen der Datei, auch direkt von einer bestimmten Position ab (Unterschiede FreeBASIC <-> QBasic beachten)
SEEK als Anweisung; siehe auch SEEK als Funktion
LOF zur Bestimmung der Dateilänge.

Ich würde zu Beginn erst einmal versuchen, bestimmte Dinge, die dir (mehr oder weniger) bekannt sind, auszulesen und anzuzeigen, um zu testen ob soweit alles stimmt.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 27.04.2011, 21:14    Titel: Antworten mit Zitat

nemored: Im dem Wiki sieht OVL sieht eher wie ein Textformat aus, also wäre INPUT/OUTPUT statt BINARY am sinnvollsten.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 27.04.2011, 21:31    Titel: Antworten mit Zitat

hmm, ja, in diesem Fall natürlich besser mit INPUT/OUTPUT. Zum Auslesen, müsste man dann wohl am besten LINE INPUT nehmen im Zusammenspiel mit den Stringmanipulationen (LEFT usw.). Also alle benötigten Attribute durchlaufen und schauen, ob sie in der aktuell eingelesenen Zeile festgelegt werden.
Es gibt offenbar eine Binär- und eine Textspeicherung; wenn erstere aber nicht dokumentiert ist, wird es mit ihr schwierig.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jh35104



Anmeldungsdatum: 15.02.2011
Beiträge: 12

BeitragVerfasst am: 28.04.2011, 20:32    Titel: Antworten mit Zitat

Bin der Lösung nahe!!!
Mit Binär und Hex werd ich mich nicht weiter rum ärgern.(der HEXVIWER ind FAQ ist goldwert!) Bin zu dem Schluß gekommen das mir die *.ovl Datei im ASCI- Format ausreicht.
mit:

CLS
OPEN "c:\qb\o\test.ovl" FOR INPUT AS #1
INPUT #1, dat1$
INPUT #1, dat2$
...
INPUT #1, dat21$
CLOSE #1
...
END

kann ich die Datei einlesen

mit:

INPUT "";dat...$ kann ich die Felder ändern
und dann speichern.

Habe jetzt nur noch das Problem das im *.ovl die Koordinaten in Geographischen Koordinaten gespeichert sind. Wie kann ich meine berechneten Koordinaten von UTM oder UTMREF in GK umrechnen.
Kennt jemand die Formel oder kann den Weg dahin verständlich erklären?
Bei GOOGLE WIKI usw. lande ich immer nur auf GeoCache und Navi Seiten, ich wollte mich aber nicht in 536³ Foren neu registrieren, ich will programmieren!!!

happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jh35104



Anmeldungsdatum: 15.02.2011
Beiträge: 12

BeitragVerfasst am: 30.04.2011, 19:51    Titel: Antworten mit Zitat

HALLO zusammen
Hab die lezten 2Tage Inputs zur Umrechnung GK -> UTM im Netz gesammelt. Muss jetzt nur noch das Ganze für'n Quelltext in QB brauchbarmachen. Das wird dauern, ist doch komplizierter als ich dachte. Die Erde ist doch keine Scheibe. lachen
Aber ich meld mich wieder wenn ich erfolgreich war.

DANKE FÜR DIE HILFE (auch bei blöden Fragen von mir durchgeknallt )DANKE AN DAS FORUM
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz