TopoSat Rinex Editorv1.10
Aide

TopoSat Rinex Editor

Édition, analyse et contrôle des fichiers d’observation RINEX 2, 3 et 4 — interface graphique et ligne de commande.

v1.10Interface graphique + CLIRINEX 2.10 → 4.02

1Avertissement

Le logiciel est fourni « tel quel », sans garantie d’aucune sorte. L’auteur ne pourra être tenu responsable des dommages liés à son utilisation.

Il appartient à l’utilisateur de contrôler l’exactitude des conversions de coordonnées par un autre moyen avant toute utilisation, et de vérifier la compatibilité des fichiers créés avec ses besoins.

2Fonctionnalités principales

TopoSat Rinex Editor est un utilitaire qui permet d’éditer les fichiers RINEX (formats 2, 3 et 4) pour analyser les constellations présentes, les satellites et signaux utilisés, et modifier certaines informations contenues dans l’entête. Il peut être utilisé avec une interface graphique ou en ligne de commande.

Il est disponible en anglais, espagnol, français et portugais (Europe et Brésil).

Ses points forts sont :

  • Analyse du fichier source et affichage synthétique de cette analyse.
  • Export avec désactivation de constellations, de satellites ou de signaux spécifiques.
  • Coordonnées ECEF de l’entête saisissables à partir de coordonnées géographiques ou projetées (avec ou sans utilisation d’un modèle de géoïde).
  • Lecture de rapports de calcul en ligne : IGN France, Trimble RTX, SCRS-PPP (Canada).
  • Conversion directe des coordonnées ECEF en coordonnées géographiques ou projetées.
  • Affichage de ces coordonnées ECEF dans un visualiseur KML, et export KML/KMZ.
  • Conversion d’un RINEX 3 ou 4 dans une version antérieure.

Il permet d’apporter également les modifications suivantes :

  • Intervalle d’enregistrement.
  • Heures de début et de fin d’enregistrement.
  • Marker Name, Marker Number et Marker Type.
  • Observer / Agency.
  • Hauteur d’antenne.

Après modification des bornes temporelles, de l’intervalle d’enregistrement et des constellations ou satellites utilisés, la taille du fichier à exporter est estimée (valeur indicative).

Note
La documentation complète sur les formats RINEX peut être téléchargée sur files.igs.org/pub/data/format.

3Première utilisation

L’application avec l’interface graphique se lance avec l’exécutable TopoSat_Rinex_Editor.exe, ou depuis une commande du menu Démarrer. Pour l’utilisation en ligne de commande, voir le chapitre « Utilisation en ligne de commande ».

À la première utilisation, le programme crée un sous-répertoire « TopoSat Rinex Editor » dans le répertoire « Documents » de l’utilisateur (sauf paramétrage différent) :

  • C:\Users\<nom d’utilisateur>\Documents sous Windows.
  • /home/<nom d’utilisateur>/Documents sous Linux.

Ce répertoire permet de sauvegarder :

  • Dans un sous-répertoire /Config :
    • Un fichier config.ini (langue, thème, répertoires, …).
    • Un fichier custom_projections.json avec les projections Lambert/Transverse Mercator personnalisées, enregistrées par l’utilisateur.
    • Un fichier last_projection_zone.json avec la dernière zone ou projection utilisée dans les fenêtres UTM/TM, Lambert conique et France métropolitaine (partagé entre les deux sens de conversion).
    • Un fichier kml_viewer.json avec le programme externe choisi pour ouvrir un fichier KML local, et le modèle d’URL personnalisé pour une carte en ligne.
  • Dans un sous-répertoire /Datas :
    • Diverses données produites par le programme au fil de son utilisation (fichiers texte, KML, …).

4Sélection du fichier source

Les extensions acceptées sont .rnx, .obs et .??o. Les fichiers zippés ou comprimés Hatanaka ne sont pas pris en compte.

À l’ouverture du fichier, plusieurs informations sont directement listées en dessous du nom du fichier : format RINEX, nombre d’époques et taille de l’entête.

Les modifications effectuées sur les valeurs éditables n’affectent pas le fichier source. Elles sont appliquées uniquement sur un nouveau fichier créé par le bouton « Enregistrer », en bas à droite de la fenêtre.

Le bouton « Recharger » sert à relire le fichier source et à réinitialiser l’affichage si des modifications ont été apportées, sans avoir à le rechercher à nouveau dans l’arborescence du PC. Ce bouton reste inactif tant qu’aucune modification n’a été apportée.

5Sélection du fichier de destination

La taille du fichier de destination est estimée en prenant en compte les différentes modifications envisagées. Elle est recalculée après chaque modification, en cliquant sur une autre valeur modifiable ou sur le bouton « Rafraîchir ».

Certains fichiers RINEX contiennent des marqueurs de données cinématiques. Ces marqueurs peuvent être supprimés pour utiliser le fichier comme un fichier statique, ou pour de la trajectographie pure.

5.1Sans conversion RINEX

Par défaut, le fichier de destination porte le nom du fichier source complété de « _edited », et l’extension du fichier source.

Il est enregistré dans le même répertoire que le fichier source. Le nom et le répertoire peuvent être choisis différemment (bouton « Modifier »).

5.2Avec conversion RINEX

5.2.1Mise en œuvre

La conversion RINEX d’un fichier peut se faire depuis la version 4.02 vers toute version antérieure valide.

Dans le cas d’une conversion RINEX 3 ou 4 vers RINEX 2, le fichier de destination porte un nom composé du MARKER NAME sur 4 caractères, du numéro du jour de l’année, du chiffre 1 représentant le numéro de session et de l’extension du fichier source. En l’absence de MARKER NAME, les 4 premiers caractères du nom du fichier source sont utilisés.

Il est enregistré dans le même répertoire que le fichier source. Le nom et le répertoire peuvent être choisis différemment (bouton « Modifier »).

5.2.2Pertes de signaux liées à la conversion vers RINEX 2.nn

Attention
Une perte de signal est parfois inévitable : RINEX 2 n’a qu’une seule case par fréquence et par type d’observable (une pour la phase L2, une pour le code C2…), alors que RINEX 3/4 peut recevoir plusieurs canaux sur la même fréquence à la fois (par exemple L2C civil et L2W précis en même temps). Si cela arrive, un seul canal peut être conservé — le plus prioritaire — et l’autre est perdu : c’est une limite du format RINEX 2 lui-même, pas du convertisseur.

L’ordre de priorité entre canaux se règle dans le menu Options / Priorité des canaux RINEX 2…

Il peut également être modifié avec un éditeur de texte dans config.ini (Documents/TopoSat Rinex Editor/Config/), section [rnx_downgrade], clé channel_priority.

  • Par défaut : CPWYMNSLXIQ. Cet ordre privilégie le canal le plus universel et le plus ancien (C) en cas de doublon, puis les codes précis (P/W/Y/M/N, historiquement ceux que les logiciels RINEX 2 attendaient), puis seulement en dernier les canaux modernisés (S/L/X/I/Q).
  • Pour privilégier au contraire les canaux civils modernisés (par exemple L2C plutôt que L2W) : channel_priority = SLXIQCPWYMN.
  • Cette clé est lue au lancement de l’application et sauvegardée à sa fermeture, comme le reste des indications figurant dans config.ini. Pour la modifier et qu’elle soit prise en compte, il faut fermer l’application avant de la modifier manuellement. Si elle n’est pas conforme (lettre absente, canal non prévu, caractère quelconque…), elle est automatiquement remise à sa valeur par défaut. Elle est affichée dans le cadre « Fichier de destination » lorsque la conversion vers RINEX 2.nn est sélectionnée.

Ces lettres décrivent quel canal ou quel code a été suivi par le récepteur pour produire l’observation. Pour plus de précisions sur leur signification, se reporter à la liste des signaux.

6Intervalle et bornes temporelles

Les informations affichées sont extraites de l’analyse ligne par ligne du fichier, sans se fier aux lignes TIME OF FIRST/LAST OBS.

Le bouton « Réinitialiser » rétablit l’intervalle et les bornes temporelles d’origine du fichier. Il ne réinitialise pas toute la page (le bouton « Recharger » du cadre de gauche est là pour cela), mais seulement ce cadre. Il reste inactif tant qu’aucune modification n’a été apportée.

Si une des lignes TIME OF FIRST/LAST OBS est absente de l’entête, il est possible de la rajouter.

6.1Intervalle d’enregistrement

Il est exprimé en secondes. Il est possible de changer cet intervalle à condition d’en utiliser un qui soit un multiple exact de l’intervalle d’origine et qui lui soit supérieur (par exemple 60 secondes pour 15 secondes à l’origine).

6.2Bornes temporelles

L’affichage et la modification des heures de début et de fin d’enregistrement acceptent :

  • L’heure GPS (par défaut).
  • L’heure locale (celle de l’ordinateur).
  • Celle d’un fuseau UTC quelconque.

Le fichier RINEX créé conserve les heures GPS. Les heures locales ou UTC ne servent qu’à faciliter la saisie ou la lecture.

Les heures de FIRST et LAST OBS sont systématiquement recalées sur les époques compatibles : la suivante pour FIRST OBS, la précédente pour LAST OBS.

7Aperçu du fichier source

Trois onglets sont disponibles.

7.1Onglet « Journal »

Cet onglet liste les modifications successives apportées à l’entête. Il reste vide tant qu’aucune modification n’a été apportée. Ces informations sont reprises dans un fichier .log créé à l’enregistrement du fichier modifié.

7.2Onglet « Contrôle Qualité »

Cet onglet liste le nombre de données disponibles dans le fichier, constellation par constellation, et signale le cas échéant les anomalies. Ces informations sont également reprises dans le fichier .log enregistré avec le fichier créé.

7.3Onglet « Entête »

Cet onglet permet de visualiser les lignes d’entête du fichier source. Il n’est pas éditable.

8Données diverses éditables

8.1Markers et opérateur

  • MARKER NAME : 60 caractères max. (colonnes 1 à 60 de la ligne RINEX)
  • MARKER NUMBER : 20 caractères max. (colonnes 1 à 20 de la ligne RINEX)
  • MARKER TYPE : 20 caractères max. (colonnes 1 à 20 de la ligne RINEX) — non saisissable en RINEX 2.xx
  • OBSERVER : 20 caractères max. (colonnes 1 à 20 de la ligne RINEX)
  • AGENCY : 40 caractères max. (colonnes 21 à 60 de la ligne RINEX)

Le nombre de caractères utilisés / autorisés est affiché. La saisie d’un nombre de caractères supérieur au quota est interdite.

8.2Récepteur / Antenne

Le nombre de caractères utilisés / autorisés est affiché. La saisie d’un nombre de caractères supérieur au quota est interdite.

Il n’y a pas de contrôle du type d’antenne si celui-ci est changé, mais l’affichage d’un message d’avertissement.

  • La hauteur d’antenne doit être inférieure à 99,9999 m.
  • Le décalage E/N est limité à 50 mm.

9APPROX POSITION XYZ (coordonnées ECEF)

Les coordonnées ECEF peuvent être saisies manuellement dans la fenêtre éditable. Un contrôle de cohérence vérifie les limites physiques de chaque composante (X, Y, Z), la distance au centre de la Terre, l’altitude géodésique au-dessus de l’ellipsoïde GRS80 et l’écart par rapport à la position approchée indiquée dans l’entête du fichier source.

Elles peuvent également être :

  • Saisies en valeurs géographiques ou projetées.
  • Importées depuis différents formats.
  • Exportées en KML/KMZ ou affichées dans un visualiseur KML.
  • Converties en valeurs géographiques ou projetées.

9.1Contrôle de cohérence des coordonnées XYZ

Les contrôles suivants sont effectués :

ContrôleSeuilConséquence
Composante X, Y ou Z hors limites|X|, |Y| > a + 50 km ; |Z| > b + 50 kmAvertissement
Distance au centre de la Terre trop faibleD < min_distance_mConversion bloquée
Distance au centre de la Terre trop grandeD > a + max_margin_mConversion bloquée
Altitude géodésique très élevée (au-dessus de l’ellipsoïde)HAE > 10 kmAvertissement
Altitude géodésique très négativeHAE < −200 mAvertissement
Déplacement par rapport à la position d’origine> 10 mAvertissement
  • a et b représentent respectivement le demi-grand axe et le demi-petit axe de l’ellipsoïde.
  • min_distance_m est la distance en mètres au centre de la Terre à partir de laquelle une distance est considérée comme trop faible.
  • max_margin_m est la hauteur ellipsoïdale à partir de laquelle cette hauteur est considérée comme trop importante.
  • min_distance_m et max_margin_m sont sauvegardées dans config.ini et peuvent être modifiées manuellement par l’utilisateur.

Les avertissements ne sont pas bloquants, mais une information erronée peut poser des problèmes lors de son traitement par un logiciel de post-traitement GNSS.

9.2Saisie manuelle de coordonnées géographiques — LLH (°)

9.2.1Format

Les coordonnées latitude / longitude / hauteur ellipsoïdale peuvent être saisies en valeurs décimales ou sexagésimales. Elles sont calculables pour les ellipsoïdes GRS80 ou WGS84. Les formats acceptés sont :

  • Longitude :
    • 2.24981292 ou 2 14 59.3265 (valeur positive pour l’Est)
    • -2.24981292 ou -2 14 59.3265 (valeur négative pour l’Ouest)
  • Latitude :
    • 48.5909138 ou 48 35 27.2895 (valeur positive pour le Nord)
    • -48.5909138 ou -48 35 27.2895 (valeur négative pour le Sud)

9.2.2Interface de saisie

9.3Saisie manuelle de coordonnées projetées — NEH (m)

9.3.1Coordonnées planimétriques

Systèmes géodésiques et projections

Les coordonnées projetées peuvent être saisies dans les systèmes et projections suivants :

  • Projection UTM, avec le choix entre les ellipsoïdes GRS80 (par défaut) et WGS84.
    • Il faut renseigner le fuseau UTM et l’hémisphère (Nord ou Sud).
  • Projection Transverse Mercator.
    • Il faut renseigner les paramètres de la projection.
    • Ces paramètres peuvent être sauvegardés dans le fichier custom_projections.json du répertoire « Documents / TopoSat Rinex Editor ». Ce fichier est relu automatiquement lors des appels suivants.
  • Lambert conique.
    • Fonctionnement identique à la projection Transverse Mercator.
  • Projections françaises métropolitaines :
    • RGF93 / Lambert 93
    • RGF93 / Lambert zone CC
  • Projections françaises outremarines :
    • Guadeloupe (RGAF09 — UTM 20N)
    • Guyane (RGFG95 — UTM 22N)
    • La Réunion (RGR92 — UTM 40S)
    • Martinique (RGAF09 — UTM 20N)
    • Mayotte (RGM04 — UTM 38S)
    • Nouvelle-Calédonie — Grande Terre et îles Loyauté (RGNC91-93 / Lambert NC)
    • Nouvelle-Calédonie — zone maritime (RGNC91-93 — UTM 57S)
    • Nouvelle-Calédonie — zone maritime (RGNC91-93 — UTM 58S)
    • Nouvelle-Calédonie — zone maritime (RGNC91-93 — UTM 59S)
    • Polynésie française (RGPF — UTM 5S)
    • Polynésie française (RGPF — UTM 6S)
    • Polynésie française (RGPF — UTM 7S)
    • Polynésie française (RGPF — UTM 8S)
Note
Seuls les territoires les plus peuplés ont été intégrés. L’utilisateur peut compléter cette liste au besoin avec des projections « Transverse Mercator » en renseignant les paramètres adéquats : une projection UTM est une projection Transverse Mercator avec des paramètres standardisés, mais les formules mathématiques sont les mêmes.
  • Belgique (ETRF2000 / Lambert 2008)
Interface de saisie

L’interface de saisie des coordonnées planimétriques est la suivante :

9.3.2Composante verticale

Interface de saisie

Elle peut être saisie en hauteur ellipsoïdale (HAE), en élévation (MSL), ou avec une hauteur ellipsoïdale et une constante représentant la valeur de l’ondulation du géoïde à l’endroit du point observé.

Pour une saisie en élévation (MSL), un modèle de géoïde doit être sélectionné.

  • Choisir le modèle dans la liste déroulante, ou
  • utiliser « Parcourir » pour sélectionner un nouveau modèle disponible sur le PC. Il peut être situé dans le répertoire de votre choix.
  • « Sauvegarder » permet d’enregistrer le chemin d’accès du modèle dans config.ini. La grille sera automatiquement proposée dans le menu déroulant au prochain démarrage.
  • « Supprimer » supprime l’entrée dans config.ini, mais ne supprime pas le fichier.
Disponibilité des grilles

Aucune grille n’est fournie avec le logiciel. Il appartient à l’utilisateur de se les procurer directement auprès des producteurs de données.

Quelques exemples de sites de téléchargement des grilles (juillet 2026) :

Formats de modèles de géoïdes reconnus
ExtensionOrigineParamètres à saisir au chargement
.datFormat générique, point par pointOui (organisation des colonnes, sens de tri)
.mntIGN (France)Aucun — détectés automatiquement
.tacIGN (France)Aucun — détectés automatiquement
.gtxNOAA / PROJAucun — détectés automatiquement
.ggfTrimbleAucun — détectés automatiquement
.graGRAVSOFT (DTU, Danemark)Aucun — détectés automatiquement
.grdGolden Software (Surfer)Aucun — détectés automatiquement
.dat — format point générique

Fichier texte simple, une ligne par point (deux coordonnées et une valeur d’ondulation). Comme ce format ne comporte aucun entête, l’application demande comment l’interpréter au moment du chargement :

  • Signification de la première colonne (latitude ou longitude).
  • Ordre dans lequel les valeurs sont triées.
Exemple : latitude en première colonne, longitudes croissantes à latitude fixe, puis latitudes croissantes.
48.5000000 1.0000000 43.316
48.5000000 1.0150000 43.306
...
48.5000000 6.9850000 46.685
48.5000000 7.0000000 46.724
48.5100000 1.0000000 43.318
48.5100000 1.0150000 43.308
...
52.5000000 6.9850000 40.434
52.5000000 7.0000000 40.443
.mnt et .tac — grilles IGN (France)

Format retenu par l’Institut national de l’information géographique et forestière (France), utilisé en particulier pour ses grilles de conversion altimétrique en France métropolitaine et outremarine (RAF, grilles NTF↔RGF93, etc.). Pour plus de détails, voir la description des formats de grilles IGN.

.gtx — format NOAA / PROJ

Format binaire compact, largement diffusé par la bibliothèque cartographique PROJ et par l’agence américaine NOAA. Pour plus de détails, voir la documentation GDAL.

.ggf — format Trimble

Format binaire utilisé par certains logiciels topographiques Trimble (Trimble Business Center notamment). Pour plus de détails, voir la description du format GGF.

.gra — format GRAVSOFT

Format texte du logiciel GRAVSOFT, développé par l’université technique du Danemark (DTU), utilisé notamment pour certaines grilles de géoïde outremarines (La Réunion). Pour plus de détails, voir le manuel GRAVSOFT.

.grd — Golden Software ASCII Grid

Format texte des logiciels Golden Software (Surfer, Grapher, Voxler), identifiable par le mot-clé DSAA en début de fichier. Pour plus de détails, voir la documentation Surfer.

9.4Importation

Les coordonnées peuvent être extraites de plusieurs sources.

9.4.1Fichier texte

Le fichier peut contenir plusieurs lignes, mais une seule ligne peut être sélectionnée. Il est possible d’indiquer le séparateur de liste (plusieurs possibilités) ou de découper le fichier en colonnes.

Avec séparateur : choisir le séparateur si la détection automatique ne fonctionne pas, puis procéder à l’affectation des colonnes aux champs X, Y et Z.

Avec colonnage : cliquer dans la ligne supérieure et faire glisser le trait de séparation jusqu’à l’endroit souhaité, puis procéder à l’affectation des colonnes aux champs X, Y et Z.

9.4.2Rapport de calcul réseau IGN France

Ces rapports sont issus d’un calcul en ligne effectué sur le site rgp.ign.fr.

Typiquement, après décompression du rapport au format .tar.gz, le nom du fichier analysé est de la forme cr_STAT_AAMMJJi_rd.txt, avec STAT pour l’identifiant de la station, AAMMJJ pour la date et i pour l’indice de session.

Le logiciel recherche les valeurs indiquées au paragraphe « IV/ RESULTATS » du rapport et propose les solutions dans plusieurs référentiels (dépendant de la date de mesure et de la localisation du point observé).

9.4.3Rapport de calcul réseau PPP France

Ces rapports sont issus d’un calcul en ligne effectué sur le site rgp.ign.fr. Typiquement, après décompression du rapport au format .tar.gz, le nom du fichier analysé est report.txt.

Le logiciel recherche les valeurs finales, après application du calcul de marée terrestre et de la surcharge océanique (MEAN XYZ with O_LOAD applied).

Il propose les solutions dans plusieurs référentiels (dépendant de la date de mesure et de la localisation du point observé).

9.4.4Rapport de calcul Trimble RTX Positioning

Ces rapports sont issus d’un calcul en ligne effectué sur le site trimblepositioninghub.trimble.com.

Typiquement, après décompression du rapport au format .zip, les fichiers analysés sont de la forme Report_nnnnnnnn.xml, où « nnnnnnnn » est un numéro interne à Trimble. Le logiciel recherche les valeurs contenues dans les éléments POSITION de type « INTERNAL » ou « CUSTOM », ce dernier correspondant au choix de l’utilisateur. Il propose les solutions dans deux référentiels :

  • « INTERNAL » dans un référentiel ITRF générique, époque de la mesure.
  • « CUSTOM » dans le référentiel sélectionné par l’utilisateur.

9.4.5Rapport de calcul SCRS-PPP (Canada)

Ces rapports sont issus d’un calcul en ligne effectué sur le site webapp.csrs-scrs.nrcan-rncan.gc.ca. Typiquement, après décompression du rapport au format .zip, les fichiers analysés sont de la forme fichier.sum, où « fichier » est le nom du fichier RINEX calculé.

Le logiciel recherche les valeurs contenues dans les lignes « POS X », « POS Y » et « POS Z » du rapport, colonne « ESTIMATED ». Il propose une solution unique dans le référentiel ITRF.

Le site propose plusieurs options de calcul :

  • NAD83 ou ITRF pour le référentiel de référence. La valeur prise en compte dépend du système choisi.
  • Statique ou cinématique. Seul le mode statique est exploitable : le rapport de calcul cinématique avec extension .sum ne contient pas de position « ESTIMATED », et TopoSat Rinex Editor n’en extrait donc aucune position.

Il faut cliquer sur le résultat pour utiliser les valeurs.

9.5Localiser

L’action sur ce bouton crée un fichier « mna.kml » (mna étant le Marker Name) dans le répertoire Documents/TopoSat Rinex Editor/Datas, ou « TopoSat_position.kml » si le Marker Name est vide. Ce fichier est utilisé en argument par un visualiseur externe, à sélectionner parmi une liste de sites en ligne proposés ou parmi les programmes installés sur le PC.

Le lien personnalisé et le programme choisi (« Autre programme… ») sont sauvegardés dans le fichier kml_viewer.json du répertoire Documents/TopoSat Rinex Editor/Config.

9.6Exporter KML/KMZ

Permet de créer un fichier contenant la position XYZ dans le répertoire de son choix. Contrairement à « Localiser », cette action ne lance pas le visualiseur.

9.7Conversion en valeurs géographiques ou projetées

Les boutons « Convertir LLH » et « Convertir NEH » permettent la conversion des coordonnées XYZ affichées dans l’entête en coordonnées géographiques ou projetées.

Se reporter à la description et au fonctionnement de ces fenêtres dans les paragraphes précédents.

10Constellations et signaux

10.1Suppression d’enregistrements

TopoSat Rinex Editor permet de désactiver :

  • Des constellations entières, en décochant une constellation.
Note
RINEX 2 historique : lors d’une conversion RINEX 3 ou 4 vers RINEX 2 destinée à un logiciel ancien qui n’accepte que le GPS, il faut décocher GLONASS avant de lancer la production du RINEX 2 (ou retirer cette constellation du RINEX 2 créé dans un traitement ultérieur).
  • Des satellites un par un, en affichant la liste des satellites d’une constellation donnée.
  • Des signaux un par un.
  • En cochant « Purger constellations non disponibles », les lignes de l’entête correspondant aux constellations absentes sont supprimées de l’entête.
  • En cochant « Supprimer lignes aberrantes », les lignes du corps du fichier correspondant aux enregistrements concernés ne sont pas écrites dans le fichier RINEX produit. Décoché par défaut.
  • Le bouton « Tout réactiver » réactive en bloc tous les éléments désactivés (constellations entières, satellites individuels, signaux observés).

10.2Liste des signaux

Code civil classique
C
C/A (Coarse/Acquisition), le code civil historique, présent depuis les débuts du GPS. C’est le canal le plus universellement supporté.
Codes précis / militaires (chiffrés ou semi-accessibles)
P
Code P direct, non chiffré (rare aujourd’hui, la plupart des systèmes chiffrent ce code).
Y
Code Y, la version chiffrée du code P, suivie directement — nécessite une clé de déchiffrement (récepteurs autorisés ou militaires).
W
Suivi « semi-codeless » (Z-tracking) du code Y chiffré — technique utilisée par les récepteurs civils et géodésiques pour accéder malgré tout à ces mesures sans posséder la clé.
M
Code M, la génération militaire moderne (plus résistante au brouillage).
N
Suivi « codeless » générique, technique plus ancienne, même finalité que W mais non normalisée comme le Z-tracking.
Codes civils modernisés (signaux L2C, L5, L1C — apparus après 2005)
S
Composante « courte » ou « données » du signal modernisé (par exemple L2C(M), ou la composante « données » de L1C).
L
Composante « longue » ou pilote du signal modernisé (par exemple L2C(L), la composante pilote de L1C) — porte les mesures mais pas de données de navigation, donc souvent plus propre.
X
Suivi combiné des deux composantes S+L (ou I+Q) ensemble, en un seul canal.
I
Composante « en phase » (porte les données) des signaux structurés I/Q (par exemple L5I).
Q
Composante « en quadrature » (pilote, sans données) des signaux I/Q (par exemple L5Q).
A, B
Canaux spécifiques Galileo / BeiDou / QZSS / IRNSS (service public réglementé, ou composantes données/pilote selon le système).

11Utilisation en ligne de commande

L’utilisation en ligne de commande permet de modifier les fichiers RINEX en effectuant un traitement automatisé, fichier par fichier ou au sein d’une commande batch.

La structure générale d’une ligne de commande est la suivante :

Windows :

toposat-rinex-editor-cli.exe --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Linux :

toposat-rinex-editor-cli --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Avec, pour --cmd -argument, les possibilités suivantes :

--in

Fichier à traiter. Doit être suivi du nom complet du fichier.

  • --in -C:/Data/fichier_lu.rnx
  • --in -"C:/Data/mon fichier_lu.rnx" (guillemets s’il y a un espace dans le nom du fichier ou de l’arborescence)
  • Ce n’est pas nécessairement la première commande de la ligne, mais c’est recommandé pour la lisibilité.
--out

Nom complet du fichier à produire. Commande optionnelle : en son absence, le nom du fichier produit est celui du fichier lu complété de « _edited », écrit dans ~/TopoSat Rinex Editor/Datas/.

  • Si elle est utilisée, elle doit être suivie du nom du fichier à créer en argument.
  • Si le nom contient un chemin existant de l’arborescence, le fichier est écrit à l’emplacement indiqué ; à défaut — et sauf s’il contient des caractères interdits, ce qui provoque une erreur — il est écrit dans ~/TopoSat Rinex Editor/Datas/.
  • Si le fichier à créer est déjà présent dans le répertoire cible, cela provoque une erreur.
  • Elle ne doit pas nécessairement suivre la commande --in, mais c’est recommandé pour la lisibilité.
--outx

Identique à --out, mais force l’écrasement d’un fichier existant.

  • --out et --outx ne peuvent pas être présentes toutes les deux dans la même ligne de commande.
--rnx

Conversion du fichier RINEX vers un autre format RINEX. La conversion ne peut se faire que vers une version antérieure. Exemple : --rnx -2.11.

  • L’argument de version est obligatoire.
  • L’argument de nom est facultatif ; s’il est présent, il vient obligatoirement après le numéro de version. Exemple : --rnx -2.11 -"mon fichier rinex converti".
  • S’il est absent, les règles d’écriture sont identiques à celles des commandes --out et --outx.
  • Pour une conversion vers un format RINEX 2, la convention de nommage RINEX 2 (8 caractères et une extension) est retenue à la place de l’ajout de « _edited ».
  • Si le fichier à créer est déjà présent dans le répertoire cible, ou si le répertoire cible n’existe pas, cela provoque une erreur.
  • La conversion vers RINEX 2 ne conserve que GPS et GLONASS.
--rnxx

Identique à --rnx, mais force l’écrasement d’un fichier existant.

  • --rnx et --rnxx ne peuvent pas être présentes toutes les deux dans la même ligne de commande.
  • --rnx et --rnxx ne peuvent pas cohabiter avec --out ou --outx dans la même ligne de commande.
--mna

Marker Name. Exemple : --mna -CORS. Limité à 60 caractères.

--mnu

Marker Number. Exemple : --mnu -18256M001. Limité à 20 caractères.

--mty

Marker Type. Exemple : --mty -GEODETIC. Limité à 20 caractères, réservé à RINEX 3/4 : la commande est refusée (erreur) sur un fichier RINEX 2.

--obs

Observer. Exemple : --obs -Bertrand. Limité à 20 caractères.

--age

Agency. Exemple : --age -TopoSat. Limité à 40 caractères.

--nur

Numéro de série du récepteur. Exemple : --nur -4503789. Limité à 20 caractères.

--tyr

Type du récepteur. Exemple : --tyr -"TRIMBLE NETR9". Limité à 20 caractères.

--ver

Version du récepteur. Exemple : --ver -4.85. Limité à 20 caractères.

--nua

Numéro de série de l’antenne. Exemple : --nua -231312. Limité à 20 caractères.

--tya

Type d’antenne. Exemple : --tya -TRM7991.00.

--tyax

Type d’antenne, en évitant l’affichage du message d’avertissement signalant une modification du type d’antenne.

--xyz

Les 3 valeurs X, Y, Z de la position, séparées par un espace et groupées entre parenthèses.

  • --xyz -(3381677.0832 4910158.6366 -2258516.1187)
--adh

Delta H : hauteur verticale du point de référence d’antenne (ARP) au-dessus du marqueur. Exemple : --adh -2.000.

  • Bloque au-delà de 99,9999 m et avertit (sans bloquer) si la valeur est négative.
--ade

Delta E : excentricité horizontale Est de l’ARP par rapport au marqueur. Exemple : --ade -0.000.

  • Bloque au-delà de 0,0500 m (50 mm) et avertit au-delà de 0,0200 m (20 mm).
--adn

Delta N : excentricité horizontale Nord de l’ARP par rapport au marqueur. Exemple : --adn -0.000.

  • Bloque au-delà de 0,0500 m (50 mm) et avertit au-delà de 0,0200 m (20 mm).
--int

Intervalle d’enregistrement en secondes. Exemple : --int -30.

  • Bloque si la valeur est ≤ 0, si elle est inférieure à l’intervalle déjà présent dans les données, ou si elle n’en est pas un multiple exact.
--tfo

Time of First Observation.

  • --tfo -2026-03-12 — si aucune heure n’est indiquée, l’enregistrement démarre à la première époque disponible de la journée.
  • --tfo -2026-03-12T17:18:25 (seconde entière)
  • --tfo -2026-03-12T17:18:25.32 (avec fraction de seconde)
  • --tfo -20260312171825.32 (sans séparateur)
  • --tfo -"2026-03-12 17:18:25" (guillemets si un espace remplace le T)
  • Si --tfo est présente en même temps que --int dans la même ligne de commande, --int doit la précéder.
  • La fraction de seconde est bloquée si l’intervalle natif du fichier est entier (≥ 1 s).
--tfo+

Insère une ligne « TIME OF FIRST OBS » dans l’entête si cette ligne est absente. Sans argument.

  • Ne modifie rien si la ligne existe déjà dans le fichier.
  • Ne peut pas être présente avant --tfo sur une même ligne de commande.
--tlo

Time of Last Observation. Fonctionnement similaire à --tfo.

  • Le dernier enregistrement est celui de la dernière époque valide respectant l’heure indiquée.
--tlo+

Insère une ligne « TIME OF LAST OBS » dans l’entête si cette ligne est absente. Sans argument.

  • Fonctionnement similaire à --tfo+.
--del -X

Supprime tous les satellites d’une constellation (X = G, R, E, C, J, I, S…). Exemple : --del -S pour supprimer les SBAS.

  • Supprime également dans l’entête les informations relatives à cette constellation.
  • Pour une conversion de RINEX 3 ou 4 vers RINEX 2 avec suppression de GLONASS, insérer --del -R avant --rnx ou --rnxx.
--del -Xnn

Supprime un satellite unique. Exemple : --del -E11.

--dmsw

Convertit les coordonnées XYZ de l’entête en coordonnées géographiques sexagésimales, ellipsoïde WGS84. Refuse une position aberrante.

  • --dmsw (sans argument) ou --dmsw -32 : séparateur espace.
  • --dmsw -44 : séparateur virgule.
  • --dmsw -58 : séparateur deux-points.
  • --dmsw -59 : séparateur point-virgule.
  • Le fichier texte est créé dans le répertoire Documents/TopoSat Rinex Editor/Datas, avec le nom du point si MARKER NAME est renseigné, ou le nom du fichier RINEX à défaut.
--dmsg

Identique à --dmsw pour l’ellipsoïde GRS80.

--ddw

Identique à --dmsw, mais exporte en degrés décimaux (ellipsoïde WGS84).

--ddg

Identique à --dmsg, mais exporte en degrés décimaux (ellipsoïde GRS80).

--kml

Crée un fichier KML à la position XYZ. Refuse une position aberrante.

  • Le fichier est créé dans le répertoire Documents/TopoSat Rinex Editor/Datas, avec le MARKER NAME s’il est renseigné, ou le nom du fichier RINEX si MARKER NAME est vide.
--kmz

Identique à --kml, mais produit une archive compressée .kmz.

--wip

Purge de l’entête les informations relatives à des constellations déclarées mais non disponibles dans les données. Sans argument, réservé à RINEX 3/4.

  • Lignes purgées : SYS / # / OBS TYPES, SYS / PHASE SHIFT, GLONASS SLOT / FRQ #, GLONASS COD/PHS/BIS, SYS / DCBS APPLIED, SYS / PCVS APPLIED, SYS / SCALE FACTOR.
--help

Affiche l’aide sur les commandes et quitte. Sans argument.

Note
Les arguments nécessitant un espace, comme TRM57971.00 NONE, doivent être saisis entre guillemets, par exemple --tya -"TRM57971.00 NONE".

L’application indique un code de retour dans la console :

  • 0 = succès
  • 1 = erreur dans la formulation de la commande
  • 2 = utilisation du mauvais exécutable.

12Licence d’utilisation

Copyright © 2026 — Bertrand Boullard — toposat.com

12.1Type de licence

Freeware propriétaire (non open source).

12.2Autorisation d’utilisation

Le logiciel est fourni gratuitement et peut être utilisé à des fins personnelles et professionnelles.

12.3Forme de distribution

  • Le logiciel est distribué exclusivement sous forme de code exécutable (binaire compilé). Aucune obligation de fourniture du code source n’incombe à l’auteur.
  • Le logiciel peut être distribué sous forme de plusieurs versions adaptées à différents systèmes d’exploitation (Windows, Linux, ou autres).
  • Les présentes conditions s’appliquent à l’ensemble de ces versions, quelle que soit la plateforme cible.

12.4Distribution

La redistribution est autorisée, à condition que :

  • le logiciel soit distribué gratuitement ;
  • cette licence soit incluse ;
  • le nom de l’auteur et les mentions de copyright soient conservés.

12.5Restrictions

Il est strictement interdit de :

  • modifier, adapter, traduire ou créer des œuvres dérivées du logiciel ;
  • décompiler, désassembler ou tenter d’extraire le code source, sauf disposition légale contraire ;
  • intégrer, incorporer, compiler conjointement, appeler via API/librairie, ou inclure tout ou partie du code source, des exécutables ou des ressources du présent logiciel au sein d’un autre programme, module, plugin ou service tiers, sans l’autorisation écrite préalable et expresse de l’auteur. Cette interdiction s’applique que l’intégration soit effectuée à des fins commerciales ou non commerciales.

12.6Composants tiers

Ce logiciel intègre l’interpréteur Python ainsi que les bibliothèques tierces suivantes, chacune soumise à sa propre licence open source :

  • Python — interpréteur et bibliothèque standard, incluant le module tkinter (Python Software Foundation License Version 2 — PSF-2.0) ;
  • Tcl/Tk — bibliothèque graphique pilotée par tkinter (Tcl/Tk License, licence de type BSD) ;
  • Nuitka — compilateur Python utilisé pour produire l’exécutable, dont la bibliothèque d’exécution (« runtime ») est liée au binaire distribué (GNU Affero General Public License version 3, avec l’exception « Nuitka Runtime Library Exception » version 1.0).

Le texte complet de ces licences est disponible dans le fichier THIRD-PARTY-LICENSES.txt fourni avec le logiciel.

12.7Services tiers

Les fonctions de visualisation en ligne ouvrent simplement votre navigateur sur des sites tiers. Aucune donnée cartographique n’est incorporée à ce logiciel.

  • OpenStreetMap et OpenTopoMap sont des projets indépendants — données sous licence ODbL, voir openstreetmap.org/copyright.
  • Google Earth est une marque de Google LLC. TopoSat Rinex Editor n’est ni affilié à Google, ni approuvé par Google.

L’utilisation de ces sites est soumise à leurs propres conditions.

12.8Propriété

Le logiciel reste la propriété exclusive de l’auteur.

12.9Responsabilité

  • Le logiciel est fourni « tel quel », sans garantie d’aucune sorte. L’auteur ne pourra être tenu responsable des dommages liés à son utilisation.
  • Il appartient à l’utilisateur de contrôler l’exactitude des conversions de coordonnées par un autre moyen avant toute utilisation, et de vérifier la compatibilité des fichiers créés avec ses besoins.

12.10Texte intégral et versions traduites

Voir le fichier LICENSE.txt fourni avec le logiciel.

Help

TopoSat Rinex Editor

Edit, analyse and check RINEX 2, 3 and 4 observation files — graphical interface and command line.

v1.10GUI + command lineRINEX 2.10 → 4.02

1Disclaimer

The software is provided “as is”, without warranty of any kind. The author cannot be held liable for any damage arising from its use.

It is the user’s responsibility to check the accuracy of coordinate conversions by another means before any use, and to verify that the files produced suit their needs.

2Main features

TopoSat Rinex Editor is a utility for editing RINEX files (formats 2, 3 and 4) in order to analyse the constellations present, the satellites and signals used, and to modify some of the information held in the header. It can be used through a graphical interface or from the command line.

It is available in English, Spanish, French and Portuguese (Europe and Brazil).

Its strengths are:

  • Analysis of the source file, with a summary display of that analysis.
  • Export with specific constellations, satellites or signals disabled.
  • Header ECEF coordinates that can be entered from geographic or projected coordinates (with or without a geoid model).
  • Reading of online processing reports: IGN France, Trimble RTX, SCRS-PPP (Canada).
  • Direct conversion of ECEF coordinates into geographic or projected coordinates.
  • Display of those ECEF coordinates in a KML viewer, plus KML/KMZ export.
  • Conversion of a RINEX 3 or 4 file to an earlier version.

It also allows the following changes:

  • Recording interval.
  • Start and end times of the recording.
  • Marker Name, Marker Number and Marker Type.
  • Observer / Agency.
  • Antenna height.

After changing the time bounds, the recording interval and the constellations or satellites used, the size of the file to be exported is estimated (indicative value).

Note
The complete documentation on RINEX formats can be downloaded from files.igs.org/pub/data/format.

3First run

The graphical interface is launched with the TopoSat_Rinex_Editor.exe executable, or from a Start-menu shortcut. For command-line use, see the “Command-line use” chapter.

On first use, the program creates a “TopoSat Rinex Editor” subfolder in the user’s “Documents” folder (unless a different setting is configured):

  • C:\Users\<username>\Documents on Windows.
  • /home/<username>/Documents on Linux.

This folder is used to store:

  • In a /Config subfolder:
    • A config.ini file (language, theme, folders, …).
    • A custom_projections.json file with the custom Lambert/Transverse Mercator projections saved by the user.
    • A last_projection_zone.json file with the last zone or projection used in the UTM/TM, Lambert conic and mainland-France dialogs (shared between the two conversion directions).
    • A kml_viewer.json file with the external program chosen to open a local KML file, and the custom URL template for an online map.
  • In a /Datas subfolder:
    • Various data produced by the program during use (text files, KML, …).

4Selecting the source file

The accepted extensions are .rnx, .obs and .??o. Zipped files and Hatanaka-compressed files are not supported.

When the file is opened, several pieces of information are listed directly below the file name: RINEX format, number of epochs and header size.

Changes made to the editable values do not affect the source file. They are applied only to a new file created by the “Save” button at the bottom right of the window.

The “Reload” button re-reads the source file and resets the display if changes have been made, without having to look for the file again in the PC’s folder tree. This button stays inactive until a change has been made.

5Selecting the destination file

The size of the destination file is estimated taking the various planned changes into account. It is recalculated after each change, when you click on another editable value or on the “Refresh” button.

Some RINEX files contain kinematic data markers. These markers can be removed in order to use the file as a static file, or for pure trajectory work.

5.1Without RINEX conversion

By default, the destination file takes the name of the source file with “_edited” appended, and the extension of the source file.

It is saved in the same folder as the source file. The name and folder can be chosen differently (“Modify” button).

5.2With RINEX conversion

5.2.1How it works

RINEX conversion of a file can be carried out from version 4.02 down to any earlier valid version.

When converting RINEX 3 or 4 to RINEX 2, the destination file is named using the first 4 characters of the MARKER NAME, the day of the year, the digit 1 standing for the session number, and the extension of the source file. If there is no MARKER NAME, the first 4 characters of the source file name are used instead.

It is saved in the same folder as the source file. The name and folder can be chosen differently (“Modify” button).

5.2.2Signal loss caused by conversion to RINEX 2.nn

Caution
Signal loss is sometimes unavoidable: RINEX 2 has only one slot per frequency and per observable type (one for the L2 phase, one for the C2 code, and so on), whereas RINEX 3/4 can hold several channels on the same frequency at once (for example civil L2C and precise L2W together). When that happens, only one channel can be kept — the one with the highest priority — and the other is lost: this is a limitation of the RINEX 2 format itself, not of the converter.

The priority order between channels is set from the Options / RINEX 2 channel priority… menu.

It can also be changed with a text editor in config.ini (Documents/TopoSat Rinex Editor/Config/), section [rnx_downgrade], key channel_priority.

  • Default: CPWYMNSLXIQ. This order favours the most universal and oldest channel (C) when there is a duplicate, then the precise codes (P/W/Y/M/N, historically the ones RINEX 2 software expected), and only last the modernised channels (S/L/X/I/Q).
  • To favour the modernised civil channels instead (for example L2C rather than L2W): channel_priority = SLXIQCPWYMN.
  • This key is read when the application starts and saved when it closes, like everything else stored in config.ini. To change it and have the change taken into account, close the application before editing it by hand. If the value is invalid (missing letter, unknown channel, stray character, and so on) it is automatically reset to its default. It is displayed in the “Destination file” panel when conversion to RINEX 2.nn is selected.

These letters describe which channel or code the receiver tracked to produce the observation. For more detail on what they mean, see the list of signals.

6Interval and time bounds

The information shown is taken from a line-by-line analysis of the file, without relying on the TIME OF FIRST/LAST OBS lines.

The “Reset” button restores the file’s original interval and time bounds. It does not reset the whole page (the “Reload” button in the left-hand panel does that), only this panel. It stays inactive until a change has been made.

If one of the TIME OF FIRST/LAST OBS lines is missing from the header, it can be added.

6.1Recording interval

It is expressed in seconds. This interval can be changed, provided the new value is an exact multiple of the original interval and larger than it (for example 60 seconds where the original was 15 seconds).

6.2Time bounds

The display and editing of the start and end times accepts:

  • GPS time (default).
  • Local time (that of the computer).
  • Any UTC offset.

The RINEX file produced keeps GPS times. Local or UTC times only serve to make entry or reading easier.

FIRST and LAST OBS times are always snapped to compatible epochs: the next one for FIRST OBS, the previous one for LAST OBS.

7Source file preview

Three tabs are available.

7.1“Journal” tab

This tab lists the successive changes made to the header. It stays empty until a change has been made. This information is also included in a .log file created when the modified file is saved.

7.2“Quality Check” tab

This tab lists the amount of data available in the file, constellation by constellation, and reports any anomalies. This information is also included in the .log file saved alongside the file produced.

7.3“Header” tab

This tab shows the header lines of the source file. It is not editable.

8Other editable data

8.1Markers and operator

  • MARKER NAME: 60 characters max. (columns 1 to 60 of the RINEX line)
  • MARKER NUMBER: 20 characters max. (columns 1 to 20 of the RINEX line)
  • MARKER TYPE: 20 characters max. (columns 1 to 20 of the RINEX line) — cannot be entered in RINEX 2.xx
  • OBSERVER: 20 characters max. (columns 1 to 20 of the RINEX line)
  • AGENCY: 40 characters max. (columns 21 to 60 of the RINEX line)

The number of characters used / allowed is displayed. Entering more characters than the quota allows is not possible.

8.2Receiver / Antenna

The number of characters used / allowed is displayed. Entering more characters than the quota allows is not possible.

The antenna type is not validated when it is changed, but a warning message is displayed.

  • The antenna height must be less than 99.9999 m.
  • The E/N offset is limited to 50 mm.

9APPROX POSITION XYZ (ECEF coordinates)

ECEF coordinates can be entered by hand in the editable field. A consistency check verifies the physical limits of each component (X, Y, Z), the distance to the centre of the Earth, the geodetic height above the GRS80 ellipsoid, and the difference from the approximate position given in the header of the source file.

They can also be:

  • Entered as geographic or projected values.
  • Imported from various formats.
  • Exported to KML/KMZ, or displayed in a KML viewer.
  • Converted into geographic or projected values.

9.1Consistency check on XYZ coordinates

The following checks are carried out:

CheckThresholdConsequence
X, Y or Z component out of range|X|, |Y| > a + 50 km ; |Z| > b + 50 kmWarning
Distance to the centre of the Earth too smallD < min_distance_mConversion blocked
Distance to the centre of the Earth too largeD > a + max_margin_mConversion blocked
Very high geodetic height (above the ellipsoid)HAE > 10 kmWarning
Very negative geodetic heightHAE < −200 mWarning
Shift from the original position> 10 mWarning
  • a and b are the semi-major and semi-minor axes of the ellipsoid respectively.
  • min_distance_m is the distance in metres to the centre of the Earth below which a distance is considered too small.
  • max_margin_m is the ellipsoidal height above which that height is considered too large.
  • min_distance_m and max_margin_m are stored in config.ini and can be edited by hand by the user.

Warnings are not blocking, but incorrect information may cause problems when the file is processed by GNSS post-processing software.

9.2Entering geographic coordinates by hand — LLH (°)

9.2.1Format

Latitude / longitude / ellipsoidal height coordinates can be entered as decimal or sexagesimal values. They can be computed for the GRS80 or WGS84 ellipsoids. The accepted formats are:

  • Longitude:
    • 2.24981292 or 2 14 59.3265 (positive for East)
    • -2.24981292 or -2 14 59.3265 (negative for West)
  • Latitude:
    • 48.5909138 or 48 35 27.2895 (positive for North)
    • -48.5909138 or -48 35 27.2895 (negative for South)

9.2.2Entry dialog

9.3Entering projected coordinates by hand — NEH (m)

9.3.1Horizontal coordinates

Geodetic systems and projections

Projected coordinates can be entered in the following systems and projections:

  • UTM projection, with a choice between the GRS80 (default) and WGS84 ellipsoids.
    • The UTM zone and the hemisphere (North or South) must be given.
  • Transverse Mercator projection.
    • The projection parameters must be given.
    • These parameters can be saved in the custom_projections.json file in the “Documents / TopoSat Rinex Editor” folder. That file is read back automatically on subsequent calls.
  • Lambert conformal conic.
    • Works in the same way as the Transverse Mercator projection.
  • Mainland France projections:
    • RGF93 / Lambert 93
    • RGF93 / Lambert CC zone
  • French overseas projections:
    • Guadeloupe (RGAF09 — UTM 20N)
    • French Guiana (RGFG95 — UTM 22N)
    • Réunion (RGR92 — UTM 40S)
    • Martinique (RGAF09 — UTM 20N)
    • Mayotte (RGM04 — UTM 38S)
    • New Caledonia — Grande Terre and Loyalty Islands (RGNC91-93 / Lambert NC)
    • New Caledonia — maritime zone (RGNC91-93 — UTM 57S)
    • New Caledonia — maritime zone (RGNC91-93 — UTM 58S)
    • New Caledonia — maritime zone (RGNC91-93 — UTM 59S)
    • French Polynesia (RGPF — UTM 5S)
    • French Polynesia (RGPF — UTM 6S)
    • French Polynesia (RGPF — UTM 7S)
    • French Polynesia (RGPF — UTM 8S)
Note
Only the most populated territories have been included. Users can extend this list as needed with “Transverse Mercator” projections by entering the appropriate parameters: a UTM projection is a Transverse Mercator projection with standardised parameters, but the mathematical formulas are the same.
  • Belgium (ETRF2000 / Lambert 2008)
Entry dialog

The dialog for entering horizontal coordinates is as follows:

9.3.2Vertical component

Entry dialog

It can be entered as an ellipsoidal height (HAE), as an elevation (MSL), or as an ellipsoidal height plus a constant standing for the geoid undulation at the observed point.

To enter an elevation (MSL), a geoid model must be selected.

  • Choose the model from the drop-down list, or
  • use “Browse” to select a new model available on the PC. It may be held in any folder you like.
  • “Save” stores the path to the model in config.ini. The grid will then be offered in the drop-down list at the next startup.
  • “Delete” removes the entry from config.ini, but does not delete the file.
Where to get the grids

No grid is supplied with the software. It is up to the user to obtain them directly from the data producers.

A few examples of grid download sites (July 2026):

Supported geoid model formats
ExtensionOriginParameters to enter when loading
.datGeneric point-by-point formatYes (column layout, sort order)
.mntIGN (France)None — detected automatically
.tacIGN (France)None — detected automatically
.gtxNOAA / PROJNone — detected automatically
.ggfTrimbleNone — detected automatically
.graGRAVSOFT (DTU, Denmark)None — detected automatically
.grdGolden Software (Surfer)None — detected automatically
.dat — generic point format

A plain text file, one line per point (two coordinates and an undulation value). As this format has no header, the application asks how to interpret it when loading:

  • Meaning of the first column (latitude or longitude).
  • Order in which the values are sorted.
Example: latitude in the first column, increasing longitudes at a fixed latitude, then increasing latitudes.
48.5000000 1.0000000 43.316
48.5000000 1.0150000 43.306
...
48.5000000 6.9850000 46.685
48.5000000 7.0000000 46.724
48.5100000 1.0000000 43.318
48.5100000 1.0150000 43.308
...
52.5000000 6.9850000 40.434
52.5000000 7.0000000 40.443
.mnt and .tac — IGN grids (France)

The format adopted by the French national mapping agency (IGN), used in particular for its vertical conversion grids in mainland and overseas France (RAF, NTF↔RGF93 grids, and so on). For more detail, see the IGN grid format description.

.gtx — NOAA / PROJ format

A compact binary format, widely distributed by the PROJ cartographic library and by the American agency NOAA. For more detail, see the GDAL documentation.

.ggf — Trimble format

A binary format used by some Trimble surveying software (Trimble Business Center in particular). For more detail, see the GGF format description.

.gra — GRAVSOFT format

The text format of the GRAVSOFT software developed by the Technical University of Denmark (DTU), used in particular for some overseas geoid grids (Réunion). For more detail, see the GRAVSOFT manual.

.grd — Golden Software ASCII Grid

The text format of Golden Software products (Surfer, Grapher, Voxler), identified by the DSAA keyword at the start of the file. For more detail, see the Surfer documentation.

9.4Import

Coordinates can be extracted from several sources.

9.4.1Text file

The file may contain several lines, but only one line can be selected. You can either specify the list separator (several options are available) or split the file into columns.

With a separator: choose the separator if automatic detection fails, then assign the columns to the X, Y and Z fields.

With fixed columns: click in the top line and drag the separating rule to the position you want, then assign the columns to the X, Y and Z fields.

9.4.2IGN France network processing report

These reports come from an online computation carried out on rgp.ign.fr.

Typically, once the .tar.gz report has been unpacked, the name of the file to be read is of the form cr_STAT_YYMMDDi_rd.txt, where STAT is the station identifier, YYMMDD the date and i the session index.

The software looks for the values given in section “IV/ RESULTATS” of the report and offers solutions in several reference frames (depending on the date of measurement and the location of the observed point).

9.4.3PPP France network processing report

These reports come from an online computation carried out on rgp.ign.fr. Typically, once the .tar.gz report has been unpacked, the file to be read is named report.txt.

The software looks for the final values, after the solid Earth tide and ocean loading corrections have been applied (MEAN XYZ with O_LOAD applied).

It offers solutions in several reference frames (depending on the date of measurement and the location of the observed point).

9.4.4Trimble RTX Positioning report

These reports come from an online computation carried out on trimblepositioninghub.trimble.com.

Typically, once the .zip report has been unpacked, the files to be read are of the form Report_nnnnnnnn.xml, where “nnnnnnnn” is an internal Trimble number. The software looks for the values held in the POSITION elements of type “INTERNAL” or “CUSTOM”, the latter matching the user’s own choice. It offers solutions in two reference frames:

  • “INTERNAL” in a generic ITRF frame, at the epoch of measurement.
  • “CUSTOM” in the frame selected by the user.

9.4.5SCRS-PPP processing report (Canada)

These reports come from an online computation carried out on webapp.csrs-scrs.nrcan-rncan.gc.ca. Typically, once the .zip report has been unpacked, the files to be read are of the form file.sum, where “file” is the name of the RINEX file that was processed.

The software looks for the values held in the “POS X”, “POS Y” and “POS Z” lines of the report, column “ESTIMATED”. It offers a single solution in the ITRF frame.

The site offers several processing options:

  • NAD83 or ITRF as the reference frame. The value used depends on the system chosen.
  • Static or kinematic. Only static mode can be used: the kinematic report with the .sum extension contains no “ESTIMATED” position, so TopoSat Rinex Editor extracts no position from it.

Click on the result to use the values.

9.5Locate

Clicking this button creates a file named mna.kml (mna being the Marker Name) in the Documents/TopoSat Rinex Editor/Datas folder, or TopoSat_position.kml if the Marker Name is empty. This file is passed as an argument to an external viewer, to be chosen from a list of suggested online sites or from the programs installed on the PC.

The custom link and the chosen program (“Other program…”) are saved in the kml_viewer.json file in the Documents/TopoSat Rinex Editor/Config folder.

9.6Export KML/KMZ

Creates a file holding the XYZ position in the folder of your choice. Unlike “Locate”, this action does not launch the viewer.

9.7Conversion to geographic or projected values

The “Convert LLH” and “Convert NEH” buttons convert the XYZ coordinates shown in the header into geographic or projected coordinates.

See the description of these dialogs and how they work in the sections above.

10Constellations and signals

10.1Removing records

TopoSat Rinex Editor can disable:

  • Whole constellations, by clearing a constellation checkbox.
Note
Legacy RINEX 2: when converting RINEX 3 or 4 to RINEX 2 for older software that only accepts GPS, clear GLONASS before producing the RINEX 2 file (or remove that constellation from the RINEX 2 file later in the workflow).
  • Individual satellites, by displaying the satellite list of a given constellation.
  • Individual signals.
  • Ticking “Purge unavailable constellations” removes the header lines belonging to constellations that are not present.
  • Ticking “Remove aberrant lines” means the lines in the body of the file belonging to the records concerned are not written to the RINEX file produced. Cleared by default.
  • The “Re-enable all” button restores every disabled item at once (whole constellations, individual satellites, observed signals).

10.2List of signals

Classic civil code
C
C/A (Coarse/Acquisition), the historical civil code, present since the early days of GPS. It is the most universally supported channel.
Precise / military codes (encrypted or semi-accessible)
P
Direct, unencrypted P code (rare today, as most systems encrypt this code).
Y
Y code, the encrypted version of the P code, tracked directly — requires a decryption key (authorised or military receivers).
W
“Semi-codeless” tracking (Z-tracking) of the encrypted Y code — the technique used by civil and geodetic receivers to reach those measurements without holding the key.
M
M code, the modern military generation (more resistant to jamming).
N
Generic “codeless” tracking, an older technique with the same purpose as W but not standardised in the way Z-tracking is.
Modernised civil codes (L2C, L5, L1C signals — introduced after 2005)
S
“Short” or data component of the modernised signal (for example L2C(M), or the data component of L1C).
L
“Long” or pilot component of the modernised signal (for example L2C(L), the pilot component of L1C) — it carries the measurements but no navigation data, so it is often cleaner.
X
Combined tracking of both S+L (or I+Q) components together, on a single channel.
I
“In-phase” component (carrying the data) of structured I/Q signals (for example L5I).
Q
“Quadrature” component (pilot, no data) of I/Q signals (for example L5Q).
A, B
Channels specific to Galileo / BeiDou / QZSS / IRNSS (public regulated service, or data/pilot components depending on the system).

11Command-line use

Command-line use makes it possible to modify RINEX files as automated processing, file by file or inside a batch command.

The general structure of a command line is as follows:

Windows:

toposat-rinex-editor-cli.exe --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Linux:

toposat-rinex-editor-cli --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Where --cmd -argument can be any of the following:

--in

File to process. Must be followed by the full file name.

  • --in -C:/Data/source_file.rnx
  • --in -"C:/Data/my source file.rnx" (quotes if the file name or path contains a space)
  • It does not have to be the first command on the line, but that is recommended for readability.
--out

Full name of the file to produce. Optional command: without it, the produced file’s name is that of the file read with “_edited” appended, written to ~/TopoSat Rinex Editor/Datas/.

  • If used, it must be followed by the name of the file to create as its argument.
  • If the name includes an existing path, the file is written there; otherwise — and unless it contains forbidden characters, which raises an error — it is written to ~/TopoSat Rinex Editor/Datas/.
  • If the file to create already exists in the target folder, this raises an error.
  • It does not have to follow --in, but that is recommended for readability.
--outx

Same as --out, but forces an existing file to be overwritten.

  • --out and --outx cannot both be present on the same command line.
--rnx

Converts the RINEX file to another RINEX format. Conversion is only possible to an earlier version. Example: --rnx -2.11.

  • The version argument is mandatory.
  • The name argument is optional; if present, it must come after the version number. Example: --rnx -2.11 -"my converted rinex file".
  • If it is absent, the naming rules are the same as for --out and --outx.
  • For a conversion to a RINEX 2 format, the RINEX 2 naming convention (8 characters and an extension) is used instead of appending “_edited”.
  • If the file to create already exists in the target folder, or the target folder does not exist, this raises an error.
  • Conversion to RINEX 2 keeps only GPS and GLONASS.
--rnxx

Same as --rnx, but forces an existing file to be overwritten.

  • --rnx and --rnxx cannot both be present on the same command line.
  • --rnx and --rnxx cannot be combined with --out or --outx on the same command line.
--mna

Marker Name. Example: --mna -CORS. Limited to 60 characters.

--mnu

Marker Number. Example: --mnu -18256M001. Limited to 20 characters.

--mty

Marker Type. Example: --mty -GEODETIC. Limited to 20 characters, RINEX 3/4 only: the command is rejected (error) on a RINEX 2 file.

--obs

Observer. Example: --obs -Bertrand. Limited to 20 characters.

--age

Agency. Example: --age -TopoSat. Limited to 40 characters.

--nur

Receiver serial number. Example: --nur -4503789. Limited to 20 characters.

--tyr

Receiver type. Example: --tyr -"TRIMBLE NETR9". Limited to 20 characters.

--ver

Receiver version. Example: --ver -4.85. Limited to 20 characters.

--nua

Antenna serial number. Example: --nua -231312. Limited to 20 characters.

--tya

Antenna type. Example: --tya -TRM7991.00.

--tyax

Antenna type, without displaying the warning message that reports a change of antenna type.

--xyz

The 3 position values X, Y, Z, separated by spaces and grouped in brackets.

  • --xyz -(3381677.0832 4910158.6366 -2258516.1187)
--adh

Delta H: vertical height of the antenna reference point (ARP) above the marker. Example: --adh -2.000.

  • Blocks beyond 99.9999 m, and warns (without blocking) if the value is negative.
--ade

Delta E: horizontal eastward eccentricity of the ARP relative to the marker. Example: --ade -0.000.

  • Blocks beyond 0.0500 m (50 mm), and warns beyond 0.0200 m (20 mm).
--adn

Delta N: horizontal northward eccentricity of the ARP relative to the marker. Example: --adn -0.000.

  • Blocks beyond 0.0500 m (50 mm), and warns beyond 0.0200 m (20 mm).
--int

Recording interval in seconds. Example: --int -30.

  • Blocks if the value is ≤ 0, if it is smaller than the interval already present in the data, or if it is not an exact multiple of it.
--tfo

Time of First Observation.

  • --tfo -2026-03-12 — if no time is given, recording starts at the first epoch available that day.
  • --tfo -2026-03-12T17:18:25 (whole second)
  • --tfo -2026-03-12T17:18:25.32 (with fractional second)
  • --tfo -20260312171825.32 (no separator)
  • --tfo -"2026-03-12 17:18:25" (quotes if a space replaces the T)
  • If --tfo is used together with --int on the same command line, --int must come first.
  • The fractional second is blocked if the file’s native interval is a whole number (≥ 1 s).
--tfo+

Inserts a “TIME OF FIRST OBS” line in the header if that line is missing. No argument.

  • Changes nothing if the line is already present in the file.
  • Cannot be present before --tfo on the same command line.
--tlo

Time of Last Observation. Works the same way as --tfo.

  • The last record is the last valid epoch that meets the given time.
--tlo+

Inserts a “TIME OF LAST OBS” line in the header if that line is missing. No argument.

  • Works the same way as --tfo+.
--del -X

Removes every satellite of a constellation (X = G, R, E, C, J, I, S…). Example: --del -S to remove SBAS.

  • Also removes the header information relating to that constellation.
  • When converting RINEX 3 or 4 to RINEX 2 with GLONASS removed, place --del -R before --rnx or --rnxx.
--del -Xnn

Removes a single satellite. Example: --del -E11.

--dmsw

Converts the header XYZ coordinates into sexagesimal geographic coordinates, WGS84 ellipsoid. Refuses an aberrant position.

  • --dmsw (no argument) or --dmsw -32: space separator.
  • --dmsw -44: comma separator.
  • --dmsw -58: colon separator.
  • --dmsw -59: semicolon separator.
  • The text file is created in the Documents/TopoSat Rinex Editor/Datas folder, named after the point if MARKER NAME is filled in, or after the RINEX file otherwise.
--dmsg

Same as --dmsw for the GRS80 ellipsoid.

--ddw

Same as --dmsw, but exports decimal degrees (WGS84 ellipsoid).

--ddg

Same as --dmsg, but exports decimal degrees (GRS80 ellipsoid).

--kml

Creates a KML file at the XYZ position. Refuses an aberrant position.

  • The file is created in the Documents/TopoSat Rinex Editor/Datas folder, using the MARKER NAME if it is filled in, or the RINEX file name if MARKER NAME is empty.
--kmz

Same as --kml, but produces a compressed .kmz archive.

--wip

Purges from the header the information relating to constellations that are declared but not available in the data. No argument, RINEX 3/4 only.

  • Lines purged: SYS / # / OBS TYPES, SYS / PHASE SHIFT, GLONASS SLOT / FRQ #, GLONASS COD/PHS/BIS, SYS / DCBS APPLIED, SYS / PCVS APPLIED, SYS / SCALE FACTOR.
--help

Displays help on the commands and exits. No argument.

Note
Arguments that contain a space, such as TRM57971.00 NONE, must be enclosed in quotes, for example --tya -"TRM57971.00 NONE".

The application reports a return code in the console:

  • 0 = success
  • 1 = error in how the command was written
  • 2 = wrong executable used.

12Licence

Copyright © 2026 — Bertrand Boullard — toposat.com

12.1Licence type

Proprietary freeware (not open source).

12.2Permission to use

The software is supplied free of charge and may be used for personal and professional purposes.

12.3Form of distribution

  • The software is distributed exclusively as executable code (compiled binary). The author is under no obligation to supply the source code.
  • The software may be distributed as several versions suited to different operating systems (Windows, Linux, or others).
  • These terms apply to all such versions, whatever the target platform.

12.4Redistribution

Redistribution is permitted, provided that:

  • the software is distributed free of charge;
  • this licence is included;
  • the author’s name and the copyright notices are kept.

12.5Restrictions

It is strictly forbidden to:

  • modify, adapt, translate or create derivative works of the software;
  • decompile, disassemble or attempt to extract the source code, except where the law provides otherwise;
  • integrate, incorporate, compile together, call through an API or library, or include all or part of the source code, executables or resources of this software within another program, module, plug-in or third-party service, without the author’s prior express written permission. This prohibition applies whether the integration is for commercial or non-commercial purposes.

12.6Third-party components

This software embeds the Python interpreter as well as the following third-party libraries, each subject to its own open-source licence:

  • Python — interpreter and standard library, including the tkinter module (Python Software Foundation License Version 2 — PSF-2.0);
  • Tcl/Tk — the graphical library driven by tkinter (Tcl/Tk License, a BSD-style licence);
  • Nuitka — the Python compiler used to build the executable, whose runtime library is linked into the distributed binary (GNU Affero General Public License version 3, with the “Nuitka Runtime Library Exception” version 1.0).

The full text of these licences is available in the THIRD-PARTY-LICENSES.txt file supplied with the software.

12.7Third-party services

The online viewing features simply open your browser on third-party websites. No mapping data is embedded in this software.

  • OpenStreetMap and OpenTopoMap are independent projects — data under the ODbL licence, see openstreetmap.org/copyright.
  • Google Earth is a trademark of Google LLC. TopoSat Rinex Editor is neither affiliated with nor endorsed by Google.

Use of these sites is subject to their own terms.

12.8Ownership

The software remains the exclusive property of the author.

12.9Liability

  • The software is provided “as is”, without warranty of any kind. The author cannot be held liable for any damage arising from its use.
  • It is the user’s responsibility to check the accuracy of coordinate conversions by another means before any use, and to verify that the files produced suit their needs.

12.10Full text and translated versions

See the LICENSE.txt file supplied with the software.

Ayuda

TopoSat Rinex Editor

Edición, análisis y control de ficheros de observación RINEX 2, 3 y 4 — interfaz gráfica y línea de comandos.

v1.10Interfaz gráfica + línea de comandosRINEX 2.10 → 4.02

1Advertencia

El software se suministra «tal cual», sin garantía de ningún tipo. El autor no podrá ser considerado responsable de los daños derivados de su uso.

Corresponde al usuario comprobar la exactitud de las conversiones de coordenadas por otro medio antes de cualquier uso, y verificar que los ficheros creados se ajustan a sus necesidades.

2Funciones principales

TopoSat Rinex Editor es una utilidad que permite editar ficheros RINEX (formatos 2, 3 y 4) para analizar las constelaciones presentes, los satélites y señales utilizados, y modificar cierta información contenida en la cabecera. Puede utilizarse con una interfaz gráfica o en línea de comandos.

Está disponible en inglés, español, francés y portugués (Europa y Brasil).

Sus puntos fuertes son:

  • Análisis del fichero de origen y presentación resumida de ese análisis.
  • Exportación con desactivación de constelaciones, satélites o señales concretas.
  • Coordenadas ECEF de la cabecera introducibles a partir de coordenadas geográficas o proyectadas (con o sin uso de un modelo de geoide).
  • Lectura de informes de cálculo en línea: IGN Francia, Trimble RTX, SCRS-PPP (Canadá).
  • Conversión directa de las coordenadas ECEF en coordenadas geográficas o proyectadas.
  • Visualización de esas coordenadas ECEF en un visor KML, y exportación KML/KMZ.
  • Conversión de un RINEX 3 o 4 a una versión anterior.

También permite realizar las modificaciones siguientes:

  • Intervalo de registro.
  • Horas de inicio y de fin de registro.
  • Marker Name, Marker Number y Marker Type.
  • Observer / Agency.
  • Altura de antena.

Tras modificar los límites temporales, el intervalo de registro y las constelaciones o satélites utilizados, se estima el tamaño del fichero que se va a exportar (valor indicativo).

Nota
La documentación completa sobre los formatos RINEX puede descargarse en files.igs.org/pub/data/format.

3Primer uso

La aplicación con interfaz gráfica se inicia con el ejecutable TopoSat_Rinex_Editor.exe, o desde un acceso directo del menú Inicio. Para el uso en línea de comandos, véase el capítulo «Uso en línea de comandos».

En el primer uso, el programa crea un subdirectorio «TopoSat Rinex Editor» en la carpeta «Documentos» del usuario (salvo configuración distinta):

  • C:\Users\<nombre de usuario>\Documents en Windows.
  • /home/<nombre de usuario>/Documents en Linux.

Esa carpeta permite guardar:

  • En un subdirectorio /Config:
    • Un fichero config.ini (idioma, tema, carpetas, …).
    • Un fichero custom_projections.json con las proyecciones Lambert/Transversa de Mercator personalizadas, guardadas por el usuario.
    • Un fichero last_projection_zone.json con la última zona o proyección utilizada en los cuadros UTM/TM, Lambert cónica y Francia metropolitana (compartido entre los dos sentidos de conversión).
    • Un fichero kml_viewer.json con el programa externo elegido para abrir un fichero KML local, y la plantilla de URL personalizada para un mapa en línea.
  • En un subdirectorio /Datas:
    • Diversos datos producidos por el programa durante su uso (ficheros de texto, KML, …).

4Selección del fichero de origen

Las extensiones admitidas son .rnx, .obs y .??o. Los ficheros comprimidos en zip o con Hatanaka no se tienen en cuenta.

Al abrir el fichero, varios datos aparecen directamente debajo del nombre del fichero: formato RINEX, número de épocas y tamaño de la cabecera.

Las modificaciones realizadas en los valores editables no afectan al fichero de origen. Se aplican únicamente a un nuevo fichero creado con el botón «Guardar», en la parte inferior derecha de la ventana.

El botón «Recargar» sirve para volver a leer el fichero de origen y reiniciar la presentación si se han realizado modificaciones, sin tener que buscarlo de nuevo en el árbol de carpetas del PC. Este botón permanece inactivo mientras no se haya realizado ninguna modificación.

5Selección del fichero de destino

El tamaño del fichero de destino se estima teniendo en cuenta las distintas modificaciones previstas. Se recalcula tras cada modificación, al hacer clic en otro valor modificable o en el botón «Actualizar».

Algunos ficheros RINEX contienen marcadores de datos cinemáticos. Esos marcadores pueden eliminarse para utilizar el fichero como fichero estático, o para trabajos de trayectoria pura.

5.1Sin conversión RINEX

Por defecto, el fichero de destino lleva el nombre del fichero de origen seguido de «_edited», y la extensión del fichero de origen.

Se guarda en el mismo directorio que el fichero de origen. El nombre y el directorio pueden elegirse de otro modo (botón «Modificar»).

5.2Con conversión RINEX

5.2.1Funcionamiento

La conversión RINEX de un fichero puede hacerse desde la versión 4.02 hacia cualquier versión anterior válida.

En el caso de una conversión de RINEX 3 o 4 a RINEX 2, el fichero de destino recibe un nombre compuesto por los 4 primeros caracteres del MARKER NAME, el número del día del año, la cifra 1 que representa el número de sesión y la extensión del fichero de origen. A falta de MARKER NAME, se utilizan los 4 primeros caracteres del nombre del fichero de origen.

Se guarda en el mismo directorio que el fichero de origen. El nombre y el directorio pueden elegirse de otro modo (botón «Modificar»).

5.2.2Pérdidas de señal ligadas a la conversión a RINEX 2.nn

Atención
A veces la pérdida de señal es inevitable: RINEX 2 solo dispone de una casilla por frecuencia y por tipo de observable (una para la fase L2, una para el código C2…), mientras que RINEX 3/4 puede acoger varios canales en la misma frecuencia a la vez (por ejemplo L2C civil y L2W preciso al mismo tiempo). Si eso ocurre, solo puede conservarse un canal — el de mayor prioridad — y el otro se pierde: es una limitación del propio formato RINEX 2, no del convertidor.

El orden de prioridad entre canales se ajusta en el menú Opciones / Prioridad de canales RINEX 2…

También puede modificarse con un editor de texto en config.ini (Documentos/TopoSat Rinex Editor/Config/), sección [rnx_downgrade], clave channel_priority.

  • Por defecto: CPWYMNSLXIQ. Este orden favorece el canal más universal y más antiguo (C) en caso de duplicado, después los códigos precisos (P/W/Y/M/N, históricamente los que esperaban los programas RINEX 2), y solo en último lugar los canales modernizados (S/L/X/I/Q).
  • Para favorecer en cambio los canales civiles modernizados (por ejemplo L2C en lugar de L2W): channel_priority = SLXIQCPWYMN.
  • Esta clave se lee al iniciar la aplicación y se guarda al cerrarla, igual que el resto de las indicaciones que figuran en config.ini. Para modificarla y que se tenga en cuenta, hay que cerrar la aplicación antes de editarla manualmente. Si no es válida (letra ausente, canal no previsto, carácter cualquiera…), se restablece automáticamente a su valor por defecto. Se muestra en el marco «Fichero de destino» cuando se selecciona la conversión a RINEX 2.nn.

Estas letras describen qué canal o qué código ha seguido el receptor para producir la observación. Para más detalles sobre su significado, consulte la lista de señales.

6Intervalo y límites temporales

La información mostrada se extrae del análisis línea por línea del fichero, sin basarse en las líneas TIME OF FIRST/LAST OBS.

El botón «Restablecer» restablece el intervalo y los límites temporales originales del fichero. No reinicia toda la página (para eso está el botón «Recargar» del marco de la izquierda), sino solo este marco. Permanece inactivo mientras no se haya realizado ninguna modificación.

Si falta una de las líneas TIME OF FIRST/LAST OBS en la cabecera, es posible añadirla.

6.1Intervalo de registro

Se expresa en segundos. Es posible cambiar este intervalo siempre que el nuevo valor sea un múltiplo exacto del intervalo original y superior a él (por ejemplo 60 segundos cuando el original era de 15 segundos).

6.2Límites temporales

La visualización y la modificación de las horas de inicio y de fin de registro admiten:

  • La hora GPS (por defecto).
  • La hora local (la del ordenador).
  • La de cualquier huso UTC.

El fichero RINEX creado conserva las horas GPS. Las horas locales o UTC solo sirven para facilitar la introducción o la lectura.

Las horas de FIRST y LAST OBS se ajustan siempre a las épocas compatibles: la siguiente para FIRST OBS, la anterior para LAST OBS.

7Vista previa del fichero de origen

Hay tres pestañas disponibles.

7.1Pestaña «Registro»

Esta pestaña enumera las modificaciones sucesivas aplicadas a la cabecera. Permanece vacía mientras no se haya realizado ninguna modificación. Esta información se recoge también en un fichero .log creado al guardar el fichero modificado.

7.2Pestaña «Control Calidad»

Esta pestaña enumera la cantidad de datos disponibles en el fichero, constelación por constelación, y señala en su caso las anomalías. Esta información también se recoge en el fichero .log guardado junto con el fichero creado.

7.3Pestaña «Cabecera»

Esta pestaña permite ver las líneas de cabecera del fichero de origen. No es editable.

8Otros datos editables

8.1Markers y operador

  • MARKER NAME: 60 caracteres máx. (columnas 1 a 60 de la línea RINEX)
  • MARKER NUMBER: 20 caracteres máx. (columnas 1 a 20 de la línea RINEX)
  • MARKER TYPE: 20 caracteres máx. (columnas 1 a 20 de la línea RINEX) — no editable en RINEX 2.xx
  • OBSERVER: 20 caracteres máx. (columnas 1 a 20 de la línea RINEX)
  • AGENCY: 40 caracteres máx. (columnas 21 a 60 de la línea RINEX)

Se muestra el número de caracteres utilizados / autorizados. No se permite introducir más caracteres de los que admite la cuota.

8.2Receptor / Antena

Se muestra el número de caracteres utilizados / autorizados. No se permite introducir más caracteres de los que admite la cuota.

No se controla el tipo de antena cuando se cambia, pero se muestra un mensaje de advertencia.

  • La altura de antena debe ser inferior a 99,9999 m.
  • El desplazamiento E/N está limitado a 50 mm.

9APPROX POSITION XYZ (coordenadas ECEF)

Las coordenadas ECEF pueden introducirse manualmente en el campo editable. Un control de coherencia verifica los límites físicos de cada componente (X, Y, Z), la distancia al centro de la Tierra, la altitud geodésica sobre el elipsoide GRS80 y la diferencia respecto a la posición aproximada indicada en la cabecera del fichero de origen.

También pueden ser:

  • Introducidas como valores geográficos o proyectados.
  • Importadas desde distintos formatos.
  • Exportadas a KML/KMZ o mostradas en un visor KML.
  • Convertidas a valores geográficos o proyectados.

9.1Control de coherencia de las coordenadas XYZ

Se efectúan los controles siguientes:

ControlUmbralConsecuencia
Componente X, Y o Z fuera de límites|X|, |Y| > a + 50 km ; |Z| > b + 50 kmAdvertencia
Distancia al centro de la Tierra demasiado pequeñaD < min_distance_mConversión bloqueada
Distancia al centro de la Tierra demasiado grandeD > a + max_margin_mConversión bloqueada
Altitud geodésica muy elevada (sobre el elipsoide)HAE > 10 kmAdvertencia
Altitud geodésica muy negativaHAE < −200 mAdvertencia
Desplazamiento respecto a la posición original> 10 mAdvertencia
  • a y b representan respectivamente el semieje mayor y el semieje menor del elipsoide.
  • min_distance_m es la distancia en metros al centro de la Tierra por debajo de la cual una distancia se considera demasiado pequeña.
  • max_margin_m es la altura elipsoidal por encima de la cual esa altura se considera demasiado grande.
  • min_distance_m y max_margin_m se guardan en config.ini y el usuario puede modificarlas manualmente.

Las advertencias no son bloqueantes, pero una información errónea puede causar problemas durante el tratamiento con un programa de posprocesado GNSS.

9.2Introducción manual de coordenadas geográficas — LLH (°)

9.2.1Formato

Las coordenadas latitud / longitud / altura elipsoidal pueden introducirse en valores decimales o sexagesimales. Son calculables para los elipsoides GRS80 o WGS84. Los formatos admitidos son:

  • Longitud:
    • 2.24981292 o 2 14 59.3265 (valor positivo para el Este)
    • -2.24981292 o -2 14 59.3265 (valor negativo para el Oeste)
  • Latitud:
    • 48.5909138 o 48 35 27.2895 (valor positivo para el Norte)
    • -48.5909138 o -48 35 27.2895 (valor negativo para el Sur)

9.2.2Ventana de introducción

9.3Introducción manual de coordenadas proyectadas — NEH (m)

9.3.1Coordenadas planimétricas

Sistemas geodésicos y proyecciones

Las coordenadas proyectadas pueden introducirse en los sistemas y proyecciones siguientes:

  • Proyección UTM, con elección entre los elipsoides GRS80 (por defecto) y WGS84.
    • Hay que indicar el huso UTM y el hemisferio (Norte o Sur).
  • Proyección Transversa de Mercator.
    • Hay que indicar los parámetros de la proyección.
    • Estos parámetros pueden guardarse en el fichero custom_projections.json del directorio «Documentos / TopoSat Rinex Editor». Ese fichero se lee automáticamente en las llamadas siguientes.
  • Cónica conforme de Lambert.
    • Funciona igual que la proyección Transversa de Mercator.
  • Proyecciones de la Francia metropolitana:
    • RGF93 / Lambert 93
    • RGF93 / Lambert zona CC
  • Proyecciones de los territorios franceses de ultramar:
    • Guadalupe (RGAF09 — UTM 20N)
    • Guayana Francesa (RGFG95 — UTM 22N)
    • La Reunión (RGR92 — UTM 40S)
    • Martinica (RGAF09 — UTM 20N)
    • Mayotte (RGM04 — UTM 38S)
    • Nueva Caledonia — Grande Terre e islas Lealtad (RGNC91-93 / Lambert NC)
    • Nueva Caledonia — zona marítima (RGNC91-93 — UTM 57S)
    • Nueva Caledonia — zona marítima (RGNC91-93 — UTM 58S)
    • Nueva Caledonia — zona marítima (RGNC91-93 — UTM 59S)
    • Polinesia Francesa (RGPF — UTM 5S)
    • Polinesia Francesa (RGPF — UTM 6S)
    • Polinesia Francesa (RGPF — UTM 7S)
    • Polinesia Francesa (RGPF — UTM 8S)
Nota
Solo se han integrado los territorios más poblados. El usuario puede completar esta lista si lo necesita con proyecciones «Transversa de Mercator» indicando los parámetros adecuados: una proyección UTM es una proyección Transversa de Mercator con parámetros estandarizados, pero las fórmulas matemáticas son las mismas.
  • Bélgica (ETRF2000 / Lambert 2008)
Ventana de introducción

La ventana de introducción de las coordenadas planimétricas es la siguiente:

9.3.2Componente vertical

Ventana de introducción

Puede introducirse como altura elipsoidal (HAE), como elevación (MSL), o como altura elipsoidal más una constante que representa el valor de la ondulación del geoide en el punto observado.

Para introducir una elevación (MSL), debe seleccionarse un modelo de geoide.

  • Elegir el modelo en la lista desplegable, o
  • utilizar «Examinar» para seleccionar un nuevo modelo disponible en el PC. Puede estar en el directorio que se desee.
  • «Guardar» permite registrar la ruta de acceso del modelo en config.ini. La rejilla se ofrecerá automáticamente en el menú desplegable en el próximo arranque.
  • «Eliminar» suprime la entrada en config.ini, pero no borra el fichero.
Disponibilidad de las rejillas

No se suministra ninguna rejilla con el software. Corresponde al usuario obtenerlas directamente de los productores de datos.

Algunos ejemplos de sitios de descarga de rejillas (julio de 2026):

Formatos de modelos de geoide reconocidos
ExtensiónOrigenParámetros a indicar durante la carga
.datFormato genérico, punto por puntoSí (organización de las columnas, orden de clasificación)
.mntIGN (Francia)Ninguno — detectados automáticamente
.tacIGN (Francia)Ninguno — detectados automáticamente
.gtxNOAA / PROJNinguno — detectados automáticamente
.ggfTrimbleNinguno — detectados automáticamente
.graGRAVSOFT (DTU, Dinamarca)Ninguno — detectados automáticamente
.grdGolden Software (Surfer)Ninguno — detectados automáticamente
.dat — formato de puntos genérico

Fichero de texto simple, una línea por punto (dos coordenadas y un valor de ondulación). Como este formato no tiene cabecera, la aplicación pregunta cómo interpretarlo en el momento de la carga:

  • Significado de la primera columna (latitud o longitud).
  • Orden en el que están clasificados los valores.
Ejemplo: latitud en la primera columna, longitudes crecientes a latitud fija, después latitudes crecientes.
48.5000000 1.0000000 43.316
48.5000000 1.0150000 43.306
...
48.5000000 6.9850000 46.685
48.5000000 7.0000000 46.724
48.5100000 1.0000000 43.318
48.5100000 1.0150000 43.308
...
52.5000000 6.9850000 40.434
52.5000000 7.0000000 40.443
.mnt y .tac — rejillas IGN (Francia)

Formato adoptado por el Instituto nacional de información geográfica y forestal de Francia (IGN), utilizado en particular para sus rejillas de conversión altimétrica en la Francia metropolitana y de ultramar (RAF, rejillas NTF↔RGF93, etc.). Para más detalles, consulte la descripción de los formatos de rejillas IGN.

.gtx — formato NOAA / PROJ

Formato binario compacto, muy difundido por la biblioteca cartográfica PROJ y por la agencia estadounidense NOAA. Para más detalles, consulte la documentación de GDAL.

.ggf — formato Trimble

Formato binario utilizado por algunos programas topográficos de Trimble (Trimble Business Center en particular). Para más detalles, consulte la descripción del formato GGF.

.gra — formato GRAVSOFT

Formato de texto del programa GRAVSOFT, desarrollado por la Universidad Técnica de Dinamarca (DTU), utilizado en particular para algunas rejillas de geoide de ultramar (La Reunión). Para más detalles, consulte el manual de GRAVSOFT.

.grd — Golden Software ASCII Grid

Formato de texto de los programas de Golden Software (Surfer, Grapher, Voxler), identificable por la palabra clave DSAA al principio del fichero. Para más detalles, consulte la documentación de Surfer.

9.4Importación

Las coordenadas pueden extraerse de varias fuentes.

9.4.1Fichero de texto

El fichero puede contener varias líneas, pero solo puede seleccionarse una. Es posible indicar el separador de lista (varias posibilidades) o dividir el fichero en columnas.

Con separador: elegir el separador si la detección automática no funciona y proceder a la asignación de las columnas a los campos X, Y y Z.

Con columnas fijas: hacer clic en la línea superior y arrastrar la línea de separación hasta el lugar deseado, y después proceder a la asignación de las columnas a los campos X, Y y Z.

9.4.2Informe de cálculo de red IGN Francia

Estos informes proceden de un cálculo en línea realizado en el sitio rgp.ign.fr.

Normalmente, tras descomprimir el informe en formato .tar.gz, el nombre del fichero analizado tiene la forma cr_STAT_AAMMDDi_rd.txt, con STAT como identificador de la estación, AAMMDD como fecha e i como índice de sesión.

El programa busca los valores indicados en el apartado «IV/ RESULTATS» del informe y propone las soluciones en varios sistemas de referencia (dependientes de la fecha de medida y de la localización del punto observado).

9.4.3Informe de cálculo de red PPP Francia

Estos informes proceden de un cálculo en línea realizado en el sitio rgp.ign.fr. Normalmente, tras descomprimir el informe en formato .tar.gz, el fichero analizado se llama report.txt.

El programa busca los valores finales, tras aplicar el cálculo de marea terrestre y de la carga oceánica (MEAN XYZ with O_LOAD applied).

Propone las soluciones en varios sistemas de referencia (dependientes de la fecha de medida y de la localización del punto observado).

9.4.4Informe de cálculo Trimble RTX Positioning

Estos informes proceden de un cálculo en línea realizado en el sitio trimblepositioninghub.trimble.com.

Normalmente, tras descomprimir el informe en formato .zip, los ficheros analizados tienen la forma Report_nnnnnnnn.xml, donde «nnnnnnnn» es un número interno de Trimble. El programa busca los valores contenidos en los elementos POSITION de tipo «INTERNAL» o «CUSTOM», este último correspondiente a la elección del usuario. Propone las soluciones en dos sistemas de referencia:

  • «INTERNAL» en un sistema ITRF genérico, época de la medida.
  • «CUSTOM» en el sistema seleccionado por el usuario.

9.4.5Informe de cálculo SCRS-PPP (Canadá)

Estos informes proceden de un cálculo en línea realizado en el sitio webapp.csrs-scrs.nrcan-rncan.gc.ca. Normalmente, tras descomprimir el informe en formato .zip, los ficheros analizados tienen la forma fichero.sum, donde «fichero» es el nombre del fichero RINEX calculado.

El programa busca los valores contenidos en las líneas «POS X», «POS Y» y «POS Z» del informe, columna «ESTIMATED». Propone una solución única en el sistema ITRF.

El sitio ofrece varias opciones de cálculo:

  • NAD83 o ITRF como sistema de referencia. El valor tenido en cuenta depende del sistema elegido.
  • Estático o cinemático. Solo el modo estático es aprovechable: el informe de cálculo cinemático con extensión .sum no contiene ninguna posición «ESTIMATED», por lo que TopoSat Rinex Editor no extrae de él ninguna posición.

Hay que hacer clic en el resultado para utilizar los valores.

9.5Localizar

Al pulsar este botón se crea un fichero «mna.kml» (mna es el Marker Name) en la carpeta Documentos/TopoSat Rinex Editor/Datas, o «TopoSat_position.kml» si el Marker Name está vacío. Este fichero se utiliza como argumento de un visor externo, a elegir entre una lista de sitios en línea propuestos o entre los programas instalados en el PC.

El enlace personalizado y el programa elegido («Otro programa…») se guardan en el fichero kml_viewer.json de la carpeta Documentos/TopoSat Rinex Editor/Config.

9.6Exportar KML/KMZ

Permite crear un fichero con la posición XYZ en el directorio que se desee. A diferencia de «Localizar», esta acción no abre el visor.

9.7Conversión a valores geográficos o proyectados

Los botones «Convertir LLH» y «Convertir NEH» permiten convertir las coordenadas XYZ mostradas en la cabecera en coordenadas geográficas o proyectadas.

Consulte la descripción y el funcionamiento de estas ventanas en los apartados anteriores.

10Constelaciones y señales

10.1Supresión de registros

TopoSat Rinex Editor permite desactivar:

  • Constelaciones enteras, desmarcando una constelación.
Nota
RINEX 2 histórico: en una conversión de RINEX 3 o 4 a RINEX 2 destinada a un programa antiguo que solo admite GPS, hay que desmarcar GLONASS antes de generar el RINEX 2 (o retirar esa constelación del RINEX 2 creado en un tratamiento posterior).
  • Satélites uno a uno, mostrando la lista de satélites de una constelación dada.
  • Señales una a una.
  • Al marcar «Purgar constelaciones no disponibles», las líneas de la cabecera correspondientes a las constelaciones ausentes se suprimen de la cabecera.
  • Al marcar «Eliminar líneas aberrantes», las líneas del cuerpo del fichero correspondientes a los registros afectados no se escriben en el fichero RINEX generado. Desmarcado por defecto.
  • El botón «Reactivar todo» reactiva en bloque todos los elementos desactivados (constelaciones enteras, satélites individuales, señales observadas).

10.2Lista de señales

Código civil clásico
C
C/A (Coarse/Acquisition), el código civil histórico, presente desde los inicios del GPS. Es el canal con soporte más universal.
Códigos precisos / militares (cifrados o semiaccesibles)
P
Código P directo, sin cifrar (raro hoy en día, ya que la mayoría de los sistemas cifran este código).
Y
Código Y, la versión cifrada del código P, seguida directamente — requiere una clave de descifrado (receptores autorizados o militares).
W
Seguimiento «semi-codeless» (Z-tracking) del código Y cifrado — técnica utilizada por los receptores civiles y geodésicos para acceder a pesar de todo a esas medidas sin poseer la clave.
M
Código M, la generación militar moderna (más resistente a las interferencias).
N
Seguimiento «codeless» genérico, técnica más antigua, con la misma finalidad que W pero no normalizada como el Z-tracking.
Códigos civiles modernizados (señales L2C, L5, L1C — aparecidas después de 2005)
S
Componente «corta» o de datos de la señal modernizada (por ejemplo L2C(M), o la componente de datos de L1C).
L
Componente «larga» o piloto de la señal modernizada (por ejemplo L2C(L), la componente piloto de L1C) — lleva las medidas pero no datos de navegación, por lo que suele ser más limpia.
X
Seguimiento combinado de las dos componentes S+L (o I+Q) juntas, en un solo canal.
I
Componente «en fase» (que lleva los datos) de las señales estructuradas I/Q (por ejemplo L5I).
Q
Componente «en cuadratura» (piloto, sin datos) de las señales I/Q (por ejemplo L5Q).
A, B
Canales específicos de Galileo / BeiDou / QZSS / IRNSS (servicio público regulado, o componentes de datos/piloto según el sistema).

11Uso en línea de comandos

El uso en línea de comandos permite modificar los ficheros RINEX mediante un tratamiento automatizado, fichero por fichero o dentro de un comando batch.

La estructura general de una línea de comandos es la siguiente:

Windows:

toposat-rinex-editor-cli.exe --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Linux:

toposat-rinex-editor-cli --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Donde --cmd -argumento puede ser cualquiera de los siguientes:

--in

Fichero a tratar. Debe ir seguido del nombre completo del fichero.

  • --in -C:/Data/fichero_leido.rnx
  • --in -"C:/Data/mi fichero leido.rnx" (comillas si hay un espacio en el nombre del fichero o de la ruta)
  • No tiene por qué ser el primer comando de la línea, pero se recomienda para mayor legibilidad.
--out

Nombre completo del fichero a generar. Comando opcional: en su ausencia, el nombre del fichero producido es el del fichero leído con «_edited» añadido, escrito en ~/TopoSat Rinex Editor/Datas/.

  • Si se utiliza, debe ir seguida del nombre del fichero a crear como argumento.
  • Si el nombre incluye una ruta existente, el fichero se escribe en la ubicación indicada; en su defecto —y salvo que contenga caracteres prohibidos, lo que provoca un error— se escribe en ~/TopoSat Rinex Editor/Datas/.
  • Si el fichero a crear ya existe en la carpeta de destino, esto provoca un error.
  • No tiene por qué seguir al comando --in, pero se recomienda para mayor legibilidad.
--outx

Idéntica a --out, pero fuerza la sobrescritura de un fichero existente.

  • --out y --outx no pueden estar presentes las dos en la misma línea de comandos.
--rnx

Conversión del fichero RINEX a otro formato RINEX. La conversión solo puede hacerse hacia una versión anterior. Ejemplo: --rnx -2.11.

  • El argumento de versión es obligatorio.
  • El argumento de nombre es opcional; si está presente, va obligatoriamente después del número de versión. Ejemplo: --rnx -2.11 -"mi fichero rinex convertido".
  • Si está ausente, las reglas de escritura son idénticas a las de los comandos --out y --outx.
  • Para una conversión a un formato RINEX 2, se utiliza la convención de nomenclatura RINEX 2 (8 caracteres y una extensión) en lugar de añadir «_edited».
  • Si el fichero a crear ya existe en la carpeta de destino, o si la carpeta de destino no existe, esto provoca un error.
  • La conversión a RINEX 2 solo conserva GPS y GLONASS.
--rnxx

Idéntica a --rnx, pero fuerza la sobrescritura de un fichero existente.

  • --rnx y --rnxx no pueden estar presentes las dos en la misma línea de comandos.
  • --rnx y --rnxx no pueden combinarse con --out o --outx en la misma línea de comandos.
--mna

Marker Name. Ejemplo: --mna -CORS. Limitado a 60 caracteres.

--mnu

Marker Number. Ejemplo: --mnu -18256M001. Limitado a 20 caracteres.

--mty

Marker Type. Ejemplo: --mty -GEODETIC. Limitado a 20 caracteres, solo RINEX 3/4: el comando se rechaza (error) en un fichero RINEX 2.

--obs

Observer. Ejemplo: --obs -Bertrand. Limitado a 20 caracteres.

--age

Agency. Ejemplo: --age -TopoSat. Limitado a 40 caracteres.

--nur

Número de serie del receptor. Ejemplo: --nur -4503789. Limitado a 20 caracteres.

--tyr

Tipo de receptor. Ejemplo: --tyr -"TRIMBLE NETR9". Limitado a 20 caracteres.

--ver

Versión del receptor. Ejemplo: --ver -4.85. Limitado a 20 caracteres.

--nua

Número de serie de la antena. Ejemplo: --nua -231312. Limitado a 20 caracteres.

--tya

Tipo de antena. Ejemplo: --tya -TRM7991.00.

--tyax

Tipo de antena, evitando la presentación del mensaje de advertencia que señala una modificación del tipo de antena.

--xyz

Los 3 valores X, Y, Z de la posición, separados por un espacio y agrupados entre paréntesis.

  • --xyz -(3381677.0832 4910158.6366 -2258516.1187)
--adh

Delta H: altura vertical del punto de referencia de la antena (ARP) por encima del marcador. Ejemplo: --adh -2.000.

  • Bloquea por encima de 99,9999 m y avisa (sin bloquear) si el valor es negativo.
--ade

Delta E: excentricidad horizontal Este del ARP respecto al marcador. Ejemplo: --ade -0.000.

  • Bloquea por encima de 0,0500 m (50 mm) y avisa por encima de 0,0200 m (20 mm).
--adn

Delta N: excentricidad horizontal Norte del ARP respecto al marcador. Ejemplo: --adn -0.000.

  • Bloquea por encima de 0,0500 m (50 mm) y avisa por encima de 0,0200 m (20 mm).
--int

Intervalo de registro en segundos. Ejemplo: --int -30.

  • Bloquea si el valor es ≤ 0, si es inferior al intervalo ya presente en los datos, o si no es un múltiplo exacto de este.
--tfo

Time of First Observation.

  • --tfo -2026-03-12 — si no se indica ninguna hora, el registro comienza en la primera época disponible del día.
  • --tfo -2026-03-12T17:18:25 (segundo entero)
  • --tfo -2026-03-12T17:18:25.32 (con fracción de segundo)
  • --tfo -20260312171825.32 (sin separador)
  • --tfo -"2026-03-12 17:18:25" (comillas si un espacio sustituye a la T)
  • Si --tfo se utiliza junto con --int en la misma línea de comandos, --int debe ir antes.
  • La fracción de segundo se bloquea si el intervalo nativo del fichero es entero (≥ 1 s).
--tfo+

Inserta una línea «TIME OF FIRST OBS» en la cabecera si falta. Sin argumento.

  • No modifica nada si la línea ya existe en el fichero.
  • No puede estar presente antes de --tfo en la misma línea de comandos.
--tlo

Time of Last Observation. Funcionamiento similar a --tfo.

  • El último registro es el de la última época válida que respeta la hora indicada.
--tlo+

Inserta una línea «TIME OF LAST OBS» en la cabecera si falta. Sin argumento.

  • Funcionamiento similar a --tfo+.
--del -X

Suprime todos los satélites de una constelación (X = G, R, E, C, J, I, S…). Ejemplo: --del -S para suprimir los SBAS.

  • Suprime también en la cabecera la información relativa a esa constelación.
  • Para una conversión de RINEX 3 o 4 a RINEX 2 con supresión de GLONASS, colocar --del -R antes de --rnx o --rnxx.
--del -Xnn

Suprime un único satélite. Ejemplo: --del -E11.

--dmsw

Convierte las coordenadas XYZ de la cabecera en coordenadas geográficas sexagesimales, elipsoide WGS84. Rechaza una posición aberrante.

  • --dmsw (sin argumento) o --dmsw -32: separador espacio.
  • --dmsw -44: separador coma.
  • --dmsw -58: separador dos puntos.
  • --dmsw -59: separador punto y coma.
  • El fichero de texto se crea en la carpeta Documentos/TopoSat Rinex Editor/Datas, con el nombre del punto si MARKER NAME está indicado, o el nombre del fichero RINEX en su defecto.
--dmsg

Idéntica a --dmsw para el elipsoide GRS80.

--ddw

Idéntica a --dmsw, pero exporta en grados decimales (elipsoide WGS84).

--ddg

Idéntica a --dmsg, pero exporta en grados decimales (elipsoide GRS80).

--kml

Crea un fichero KML en la posición XYZ. Rechaza una posición aberrante.

  • El fichero se crea en la carpeta Documentos/TopoSat Rinex Editor/Datas, utilizando el MARKER NAME si está indicado, o el nombre del fichero RINEX si MARKER NAME está vacío.
--kmz

Idéntica a --kml, pero genera un archivo comprimido .kmz.

--wip

Purga de la cabecera la información relativa a las constelaciones declaradas pero no disponibles en los datos. Sin argumento, solo RINEX 3/4.

  • Líneas purgadas: SYS / # / OBS TYPES, SYS / PHASE SHIFT, GLONASS SLOT / FRQ #, GLONASS COD/PHS/BIS, SYS / DCBS APPLIED, SYS / PCVS APPLIED, SYS / SCALE FACTOR.
--help

Muestra la ayuda sobre los comandos y sale. Sin argumento.

Nota
Los argumentos que necesitan un espacio, como TRM57971.00 NONE, deben escribirse entre comillas, por ejemplo --tya -"TRM57971.00 NONE".

La aplicación indica un código de retorno en la consola:

  • 0 = éxito
  • 1 = error en la formulación del comando
  • 2 = ejecutable incorrecto utilizado.

12Licencia de uso

Copyright © 2026 — Bertrand Boullard — toposat.com

12.1Tipo de licencia

Freeware propietario (no de código abierto).

12.2Autorización de uso

El software se suministra gratuitamente y puede utilizarse con fines personales y profesionales.

12.3Forma de distribución

  • El software se distribuye exclusivamente en forma de código ejecutable (binario compilado). El autor no tiene ninguna obligación de suministrar el código fuente.
  • El software puede distribuirse en varias versiones adaptadas a distintos sistemas operativos (Windows, Linux u otros).
  • Las presentes condiciones se aplican a todas esas versiones, sea cual sea la plataforma de destino.

12.4Distribución

La redistribución está autorizada, siempre que:

  • el software se distribuya gratuitamente;
  • esta licencia se incluya;
  • se conserven el nombre del autor y las menciones de copyright.

12.5Restricciones

Está estrictamente prohibido:

  • modificar, adaptar, traducir o crear obras derivadas del software;
  • descompilar, desensamblar o intentar extraer el código fuente, salvo disposición legal en contrario;
  • integrar, incorporar, compilar conjuntamente, llamar mediante API/biblioteca o incluir la totalidad o parte del código fuente, los ejecutables o los recursos de este software dentro de otro programa, módulo, plugin o servicio de terceros, sin la autorización escrita previa y expresa del autor. Esta prohibición se aplica tanto si la integración se realiza con fines comerciales como no comerciales.

12.6Componentes de terceros

Este software integra el intérprete Python así como las bibliotecas de terceros siguientes, cada una sujeta a su propia licencia de código abierto:

  • Python — intérprete y biblioteca estándar, incluido el módulo tkinter (Python Software Foundation License Version 2 — PSF-2.0);
  • Tcl/Tk — biblioteca gráfica controlada por tkinter (Tcl/Tk License, licencia de tipo BSD);
  • Nuitka — compilador de Python utilizado para generar el ejecutable, cuya biblioteca de ejecución («runtime») va enlazada en el binario distribuido (GNU Affero General Public License versión 3, con la excepción «Nuitka Runtime Library Exception» versión 1.0).

El texto completo de estas licencias está disponible en el fichero THIRD-PARTY-LICENSES.txt suministrado con el software.

12.7Servicios de terceros

Las funciones de visualización en línea simplemente abren su navegador en sitios de terceros. Este software no incorpora ningún dato cartográfico.

  • OpenStreetMap y OpenTopoMap son proyectos independientes — datos bajo licencia ODbL, véase openstreetmap.org/copyright.
  • Google Earth es una marca de Google LLC. TopoSat Rinex Editor no está afiliado a Google ni cuenta con su respaldo.

El uso de estos sitios está sujeto a sus propias condiciones.

12.8Propiedad

El software sigue siendo propiedad exclusiva del autor.

12.9Responsabilidad

  • El software se suministra «tal cual», sin garantía de ningún tipo. El autor no podrá ser considerado responsable de los daños derivados de su uso.
  • Corresponde al usuario comprobar la exactitud de las conversiones de coordenadas por otro medio antes de cualquier uso, y verificar que los ficheros creados se ajustan a sus necesidades.

12.10Texto íntegro y versiones traducidas

Véase el fichero LICENSE.txt suministrado con el software.

Ajuda

TopoSat Rinex Editor

Edição, análise e controlo de ficheiros de observação RINEX 2, 3 e 4 — interface gráfica e linha de comandos.

v1.10Interface gráfica + linha de comandosRINEX 2.10 → 4.02

1Aviso

O software é fornecido «tal como está», sem garantia de qualquer tipo. O autor não pode ser responsabilizado por danos decorrentes da sua utilização.

Cabe ao utilizador verificar a exatidão das conversões de coordenadas por outro meio antes de qualquer utilização, e confirmar que os ficheiros criados são compatíveis com as suas necessidades.

2Funcionalidades principais

O TopoSat Rinex Editor é um utilitário que permite editar ficheiros RINEX (formatos 2, 3 e 4) para analisar as constelações presentes, os satélites e sinais utilizados, e modificar algumas informações contidas no cabeçalho. Pode ser utilizado com uma interface gráfica ou na linha de comandos.

Está disponível em inglês, espanhol, francês e português (Europa e Brasil).

Os seus pontos fortes são:

  • Análise do ficheiro de origem e apresentação resumida dessa análise.
  • Exportação com desativação de constelações, satélites ou sinais específicos.
  • Coordenadas ECEF do cabeçalho introduzíveis a partir de coordenadas geográficas ou projetadas (com ou sem utilização de um modelo de geoide).
  • Leitura de relatórios de cálculo em linha: IGN França, Trimble RTX, SCRS-PPP (Canadá).
  • Conversão direta das coordenadas ECEF em coordenadas geográficas ou projetadas.
  • Visualização dessas coordenadas ECEF num visualizador KML, e exportação KML/KMZ.
  • Conversão de um RINEX 3 ou 4 para uma versão anterior.

Permite também introduzir as seguintes modificações:

  • Intervalo de registo.
  • Horas de início e de fim de registo.
  • Marker Name, Marker Number e Marker Type.
  • Observer / Agency.
  • Altura de antena.

Após a modificação dos limites temporais, do intervalo de registo e das constelações ou satélites utilizados, o tamanho do ficheiro a exportar é estimado (valor indicativo).

Nota
A documentação completa sobre os formatos RINEX pode ser descarregada em files.igs.org/pub/data/format.

3Primeira utilização

A aplicação com interface gráfica é iniciada com o executável TopoSat_Rinex_Editor.exe, ou a partir de um atalho do menu Iniciar. Para a utilização em linha de comandos, consulte o capítulo «Utilização na linha de comandos».

Na primeira utilização, o programa cria uma subpasta «TopoSat Rinex Editor» na pasta «Documentos» do utilizador (salvo configuração diferente):

  • C:\Users\<nome de utilizador>\Documents no Windows.
  • /home/<nome de utilizador>/Documents no Linux.

Essa pasta permite guardar:

  • Numa subpasta /Config:
    • Um ficheiro config.ini (idioma, tema, pastas, …).
    • Um ficheiro custom_projections.json com as projeções Lambert/Transversa de Mercator personalizadas, guardadas pelo utilizador.
    • Um ficheiro last_projection_zone.json com a última zona ou projeção utilizada nas janelas UTM/TM, Lambert cónica e França metropolitana (partilhado entre os dois sentidos de conversão).
    • Um ficheiro kml_viewer.json com o programa externo escolhido para abrir um ficheiro KML local, e o modelo de URL personalizado para um mapa em linha.
  • Numa subpasta /Datas:
    • Diversos dados produzidos pelo programa ao longo da sua utilização (ficheiros de texto, KML, …).

4Seleção do ficheiro de origem

As extensões aceites são .rnx, .obs e .??o. Os ficheiros comprimidos em zip ou com Hatanaka não são suportados.

Ao abrir o ficheiro, várias informações são apresentadas diretamente abaixo do nome do ficheiro: formato RINEX, número de épocas e tamanho do cabeçalho.

As modificações efetuadas nos valores editáveis não afetam o ficheiro de origem. São aplicadas apenas a um novo ficheiro criado pelo botão «Guardar», no canto inferior direito da janela.

O botão «Recarregar» serve para reler o ficheiro de origem e reinicializar a apresentação se tiverem sido efetuadas modificações, sem ter de o procurar novamente na árvore de pastas do PC. Este botão permanece inativo enquanto não for efetuada qualquer modificação.

5Seleção do ficheiro de destino

O tamanho do ficheiro de destino é estimado tendo em conta as várias modificações previstas. É recalculado após cada modificação, ao clicar noutro valor modificável ou no botão «Atualizar».

Alguns ficheiros RINEX contêm marcadores de dados cinemáticos. Esses marcadores podem ser removidos para utilizar o ficheiro como ficheiro estático, ou para trabalhos de trajetória pura.

5.1Sem conversão RINEX

Por predefinição, o ficheiro de destino tem o nome do ficheiro de origem seguido de «_edited», e a extensão do ficheiro de origem.

É guardado na mesma pasta que o ficheiro de origem. O nome e a pasta podem ser escolhidos de outra forma (botão «Modificar»).

5.2Com conversão RINEX

5.2.1Funcionamento

A conversão RINEX de um ficheiro pode ser feita a partir da versão 4.02 para qualquer versão anterior válida.

No caso de uma conversão de RINEX 3 ou 4 para RINEX 2, o ficheiro de destino recebe um nome composto pelos 4 primeiros caracteres do MARKER NAME, pelo número do dia do ano, pelo dígito 1 que representa o número da sessão e pela extensão do ficheiro de origem. Na ausência de MARKER NAME, são utilizados os 4 primeiros caracteres do nome do ficheiro de origem.

É guardado na mesma pasta que o ficheiro de origem. O nome e a pasta podem ser escolhidos de outra forma (botão «Modificar»).

5.2.2Perdas de sinal associadas à conversão para RINEX 2.nn

Atenção
Às vezes a perda de sinal é inevitável: o RINEX 2 tem apenas um espaço por frequência e por tipo de observável (um para a fase L2, um para o código C2…), enquanto o RINEX 3/4 pode acolher vários canais na mesma frequência ao mesmo tempo (por exemplo L2C civil e L2W preciso simultaneamente). Se isso acontecer, apenas um canal pode ser conservado — o de maior prioridade — e o outro é perdido: é uma limitação do próprio formato RINEX 2, não do conversor.

A ordem de prioridade entre canais define-se no menu Opções / Prioridade dos canais RINEX 2…

Também pode ser alterada com um editor de texto em config.ini (Documentos/TopoSat Rinex Editor/Config/), secção [rnx_downgrade], chave channel_priority.

  • Por predefinição: CPWYMNSLXIQ. Esta ordem privilegia o canal mais universal e mais antigo (C) em caso de duplicação, depois os códigos precisos (P/W/Y/M/N, historicamente aqueles que o software RINEX 2 esperava), e só em último lugar os canais modernizados (S/L/X/I/Q).
  • Para privilegiar, ao contrário, os canais civis modernizados (por exemplo L2C em vez de L2W): channel_priority = SLXIQCPWYMN.
  • Esta chave é lida ao iniciar a aplicação e guardada ao fechá-la, tal como as restantes indicações que constam em config.ini. Para a modificar e que seja tida em conta, é preciso fechar a aplicação antes de a editar manualmente. Se não for válida (letra ausente, canal não previsto, carácter qualquer…), é automaticamente reposta no seu valor predefinido. É apresentada no painel «Ficheiro de destino» quando a conversão para RINEX 2.nn está selecionada.

Estas letras descrevem qual o canal ou o código que o recetor seguiu para produzir a observação. Para mais detalhes sobre o seu significado, consulte a lista dos sinais.

6Intervalo e limites temporais

As informações apresentadas resultam da análise linha por linha do ficheiro, sem depender das linhas TIME OF FIRST/LAST OBS.

O botão «Repor» restabelece o intervalo e os limites temporais originais do ficheiro. Não repõe toda a página (o botão «Recarregar» do painel da esquerda serve para isso), mas apenas este painel. Permanece inativo enquanto não for efetuada qualquer modificação.

Se faltar uma das linhas TIME OF FIRST/LAST OBS no cabeçalho, é possível acrescentá-la.

6.1Intervalo de registo

É expresso em segundos. É possível alterar este intervalo, desde que o novo valor seja um múltiplo exato do intervalo original e superior a ele (por exemplo 60 segundos quando o original era de 15 segundos).

6.2Limites temporais

A apresentação e a modificação das horas de início e de fim de registo aceitam:

  • A hora GPS (predefinição).
  • A hora local (a do computador).
  • A de qualquer fuso UTC.

O ficheiro RINEX criado conserva as horas GPS. As horas locais ou UTC servem apenas para facilitar a introdução ou a leitura.

As horas de FIRST e LAST OBS são sempre ajustadas às épocas compatíveis: a seguinte para FIRST OBS, a anterior para LAST OBS.

7Pré-visualização do ficheiro de origem

Existem três separadores.

7.1Separador «Registo»

Este separador lista as modificações sucessivas aplicadas ao cabeçalho. Permanece vazio enquanto não for feita nenhuma modificação. Esta informação é também incluída num ficheiro .log criado ao guardar o ficheiro modificado.

7.2Separador «Controlo de Qualidade»

Este separador lista a quantidade de dados disponíveis no ficheiro, constelação por constelação, e assinala eventualmente as anomalias. Estas informações são também incluídas no ficheiro .log guardado com o ficheiro criado.

7.3Separador «Cabeçalho»

Este separador permite ver as linhas de cabeçalho do ficheiro de origem. Não é editável.

8Outros dados editáveis

8.1Markers e operador

  • MARKER NAME: 60 caracteres no máx. (colunas 1 a 60 da linha RINEX)
  • MARKER NUMBER: 20 caracteres no máx. (colunas 1 a 20 da linha RINEX)
  • MARKER TYPE: 20 caracteres no máx. (colunas 1 a 20 da linha RINEX) — não editável em RINEX 2.xx
  • OBSERVER: 20 caracteres no máx. (colunas 1 a 20 da linha RINEX)
  • AGENCY: 40 caracteres no máx. (colunas 21 a 60 da linha RINEX)

É apresentado o número de caracteres utilizados / autorizados. Não é permitido introduzir mais caracteres do que a quota admite.

8.2Recetor / Antena

É apresentado o número de caracteres utilizados / autorizados. Não é permitido introduzir mais caracteres do que a quota admite.

Não existe controlo do tipo de antena quando este é alterado, mas é apresentada uma mensagem de aviso.

  • A altura de antena deve ser inferior a 99,9999 m.
  • O desvio E/N está limitado a 50 mm.

9APPROX POSITION XYZ (coordenadas ECEF)

As coordenadas ECEF podem ser introduzidas manualmente no campo editável. Um controlo de coerência verifica os limites físicos de cada componente (X, Y, Z), a distância ao centro da Terra, a altitude geodésica acima do elipsoide GRS80 e o desvio relativamente à posição aproximada indicada no cabeçalho do ficheiro de origem.

Podem também ser:

  • Introduzidas em valores geográficos ou projetados.
  • Importadas a partir de diferentes formatos.
  • Exportadas em KML/KMZ ou apresentadas num visualizador KML.
  • Convertidas em valores geográficos ou projetados.

9.1Controlo de coerência das coordenadas XYZ

São efetuados os seguintes controlos:

ControloLimiarConsequência
Componente X, Y ou Z fora dos limites|X|, |Y| > a + 50 km ; |Z| > b + 50 kmAviso
Distância ao centro da Terra demasiado pequenaD < min_distance_mConversão bloqueada
Distância ao centro da Terra demasiado grandeD > a + max_margin_mConversão bloqueada
Altitude geodésica muito elevada (acima do elipsoide)HAE > 10 kmAviso
Altitude geodésica muito negativaHAE < −200 mAviso
Deslocamento relativamente à posição original> 10 mAviso
  • a e b representam respetivamente o semieixo maior e o semieixo menor do elipsoide.
  • min_distance_m é a distância em metros ao centro da Terra abaixo da qual uma distância é considerada demasiado pequena.
  • max_margin_m é a altura elipsoidal acima da qual essa altura é considerada demasiado grande.
  • min_distance_m e max_margin_m são guardadas em config.ini e podem ser modificadas manualmente pelo utilizador.

Os avisos não são bloqueantes, mas uma informação errada pode causar problemas no tratamento por software de pós-processamento GNSS.

9.2Introdução manual de coordenadas geográficas — LLH (°)

9.2.1Formato

As coordenadas latitude / longitude / altura elipsoidal podem ser introduzidas em valores decimais ou sexagesimais. São calculáveis para os elipsoides GRS80 ou WGS84. Os formatos aceites são:

  • Longitude:
    • 2.24981292 ou 2 14 59.3265 (valor positivo para Este)
    • -2.24981292 ou -2 14 59.3265 (valor negativo para Oeste)
  • Latitude:
    • 48.5909138 ou 48 35 27.2895 (valor positivo para Norte)
    • -48.5909138 ou -48 35 27.2895 (valor negativo para Sul)

9.2.2Janela de introdução

9.3Introdução manual de coordenadas projetadas — NEH (m)

9.3.1Coordenadas planimétricas

Sistemas geodésicos e projeções

As coordenadas projetadas podem ser introduzidas nos seguintes sistemas e projeções:

  • Projeção UTM, com escolha entre os elipsoides GRS80 (predefinição) e WGS84.
    • É necessário indicar o fuso UTM e o hemisfério (Norte ou Sul).
  • Projeção Transversa de Mercator.
    • É necessário indicar os parâmetros da projeção.
    • Estes parâmetros podem ser guardados no ficheiro custom_projections.json da pasta «Documentos / TopoSat Rinex Editor». Esse ficheiro é lido automaticamente nas chamadas seguintes.
  • Cónica conforme de Lambert.
    • Funcionamento idêntico ao da projeção Transversa de Mercator.
  • Projeções da França metropolitana:
    • RGF93 / Lambert 93
    • RGF93 / Lambert zona CC
  • Projeções dos territórios franceses de além-mar:
    • Guadalupe (RGAF09 — UTM 20N)
    • Guiana Francesa (RGFG95 — UTM 22N)
    • Reunião (RGR92 — UTM 40S)
    • Martinica (RGAF09 — UTM 20N)
    • Maiote (RGM04 — UTM 38S)
    • Nova Caledónia — Grande Terre e ilhas Lealdade (RGNC91-93 / Lambert NC)
    • Nova Caledónia — zona marítima (RGNC91-93 — UTM 57S)
    • Nova Caledónia — zona marítima (RGNC91-93 — UTM 58S)
    • Nova Caledónia — zona marítima (RGNC91-93 — UTM 59S)
    • Polinésia Francesa (RGPF — UTM 5S)
    • Polinésia Francesa (RGPF — UTM 6S)
    • Polinésia Francesa (RGPF — UTM 7S)
    • Polinésia Francesa (RGPF — UTM 8S)
Nota
Apenas os territórios mais povoados foram integrados. O utilizador pode completar esta lista, se necessário, com projeções «Transversa de Mercator» indicando os parâmetros adequados: uma projeção UTM é uma projeção Transversa de Mercator com parâmetros normalizados, mas as fórmulas matemáticas são as mesmas.
  • Bélgica (ETRF2000 / Lambert 2008)
Janela de introdução

A janela de introdução das coordenadas planimétricas é a seguinte:

9.3.2Componente vertical

Janela de introdução

Pode ser introduzida em altura elipsoidal (HAE), em elevação (MSL), ou com uma altura elipsoidal e uma constante que representa o valor da ondulação do geoide no local do ponto observado.

Para uma introdução em elevação (MSL), deve ser selecionado um modelo de geoide.

  • Escolher o modelo na lista pendente, ou
  • utilizar «Procurar» para selecionar um novo modelo disponível no PC. Pode estar na pasta que quiser.
  • «Guardar» permite registar o caminho de acesso do modelo em config.ini. A grelha passará a ser proposta automaticamente na lista pendente no arranque seguinte.
  • «Eliminar» remove a entrada em config.ini, mas não apaga o ficheiro.
Disponibilidade das grelhas

Não é fornecida nenhuma grelha com o software. Cabe ao utilizador obtê-las diretamente junto dos produtores de dados.

Alguns exemplos de sítios para descarregar grelhas (julho de 2026):

Formatos de modelos de geoide reconhecidos
ExtensãoOrigemParâmetros a indicar no carregamento
.datFormato genérico, ponto por pontoSim (organização das colunas, ordenação)
.mntIGN (França)Nenhum — detetados automaticamente
.tacIGN (França)Nenhum — detetados automaticamente
.gtxNOAA / PROJNenhum — detetados automaticamente
.ggfTrimbleNenhum — detetados automaticamente
.graGRAVSOFT (DTU, Dinamarca)Nenhum — detetados automaticamente
.grdGolden Software (Surfer)Nenhum — detetados automaticamente
.dat — formato de pontos genérico

Ficheiro de texto simples, uma linha por ponto (duas coordenadas e um valor de ondulação). Como este formato não tem cabeçalho, a aplicação pergunta como interpretá-lo no momento do carregamento:

  • Significado da primeira coluna (latitude ou longitude).
  • Ordem pela qual os valores estão ordenados.
Exemplo: latitude na primeira coluna, longitudes crescentes com latitude fixa, depois latitudes crescentes.
48.5000000 1.0000000 43.316
48.5000000 1.0150000 43.306
...
48.5000000 6.9850000 46.685
48.5000000 7.0000000 46.724
48.5100000 1.0000000 43.318
48.5100000 1.0150000 43.308
...
52.5000000 6.9850000 40.434
52.5000000 7.0000000 40.443
.mnt e .tac — grelhas IGN (França)

Formato adotado pelo Instituto nacional de informação geográfica e florestal de França (IGN), utilizado em particular nas suas grelhas de conversão altimétrica na França metropolitana e de além-mar (RAF, grelhas NTF↔RGF93, etc.). Para mais detalhes, consulte a descrição dos formatos de grelhas IGN.

.gtx — formato NOAA / PROJ

Formato binário compacto, largamente difundido pela biblioteca cartográfica PROJ e pela agência norte-americana NOAA. Para mais detalhes, consulte a documentação do GDAL.

.ggf — formato Trimble

Formato binário utilizado por algum software topográfico da Trimble (Trimble Business Center em particular). Para mais detalhes, consulte a descrição do formato GGF.

.gra — formato GRAVSOFT

Formato de texto do software GRAVSOFT, desenvolvido pela Universidade Técnica da Dinamarca (DTU), utilizado em particular em algumas grelhas de geoide de além-mar (Reunião). Para mais detalhes, consulte o manual do GRAVSOFT.

.grd — Golden Software ASCII Grid

Formato de texto do software da Golden Software (Surfer, Grapher, Voxler), identificável pela palavra-chave DSAA no início do ficheiro. Para mais detalhes, consulte a documentação do Surfer.

9.4Importação

As coordenadas podem ser extraídas de várias fontes.

9.4.1Ficheiro de texto

O ficheiro pode conter várias linhas, mas apenas uma linha pode ser selecionada. É possível indicar o separador de lista (várias possibilidades) ou dividir o ficheiro em colunas.

Com separador: escolher o separador se a deteção automática não funcionar e proceder à atribuição das colunas aos campos X, Y e Z.

Com colunas fixas: clicar na linha superior e arrastar a linha de separação até ao local desejado, e depois proceder à atribuição das colunas aos campos X, Y e Z.

9.4.2Relatório de cálculo de rede IGN França

Estes relatórios resultam de um cálculo em linha efetuado no sítio rgp.ign.fr.

Tipicamente, após a descompressão do relatório no formato .tar.gz, o nome do ficheiro analisado tem a forma cr_STAT_AAMMDDi_rd.txt, em que STAT é o identificador da estação, AAMMDD a data e i o índice da sessão.

O programa procura os valores indicados no parágrafo «IV/ RESULTATS» do relatório e propõe as soluções em vários sistemas de referência (dependentes da data de medição e da localização do ponto observado).

9.4.3Relatório de cálculo da rede PPP França

Estes relatórios resultam de um cálculo em linha efetuado no sítio rgp.ign.fr. Tipicamente, após a descompressão do relatório no formato .tar.gz, o ficheiro analisado chama-se report.txt.

O programa procura os valores finais, após a aplicação do cálculo da maré terrestre e da sobrecarga oceânica (MEAN XYZ with O_LOAD applied).

Propõe as soluções em vários sistemas de referência (dependentes da data de medição e da localização do ponto observado).

9.4.4Relatório de cálculo Trimble RTX Positioning

Estes relatórios resultam de um cálculo em linha efetuado no sítio trimblepositioninghub.trimble.com.

Tipicamente, após a descompressão do relatório no formato .zip, os ficheiros analisados têm a forma Report_nnnnnnnn.xml, em que «nnnnnnnn» é um número interno da Trimble. O programa procura os valores contidos nos elementos POSITION do tipo «INTERNAL» ou «CUSTOM», este último correspondente à escolha do utilizador. Propõe as soluções em dois sistemas de referência:

  • «INTERNAL» num sistema ITRF genérico, época da medição.
  • «CUSTOM» no sistema selecionado pelo utilizador.

9.4.5Relatório de cálculo SCRS-PPP (Canadá)

Estes relatórios resultam de um cálculo em linha efetuado no sítio webapp.csrs-scrs.nrcan-rncan.gc.ca. Tipicamente, após a descompressão do relatório no formato .zip, os ficheiros analisados têm a forma ficheiro.sum, em que «ficheiro» é o nome do ficheiro RINEX calculado.

O programa procura os valores contidos nas linhas «POS X», «POS Y» e «POS Z» do relatório, coluna «ESTIMATED». Propõe uma solução única no sistema ITRF.

O sítio propõe várias opções de cálculo:

  • NAD83 ou ITRF como sistema de referência. O valor tido em conta depende do sistema escolhido.
  • Estático ou cinemático. Apenas o modo estático é aproveitável: o relatório de cálculo cinemático com extensão .sum não contém nenhuma posição «ESTIMATED», pelo que o TopoSat Rinex Editor não extrai dele qualquer posição.

É preciso clicar no resultado para utilizar os valores.

9.5Localizar

A ação neste botão cria um ficheiro «mna.kml» (mna sendo o Marker Name) na pasta Documentos/TopoSat Rinex Editor/Datas, ou «TopoSat_position.kml» se o Marker Name estiver vazio. Este ficheiro é utilizado como argumento por um visualizador externo, a escolher numa lista de sites em linha propostos ou entre os programas instalados no PC.

A ligação personalizada e o programa escolhido («Outro programa…») são guardados no ficheiro kml_viewer.json da pasta Documentos/TopoSat Rinex Editor/Config.

9.6Exportar KML/KMZ

Permite criar um ficheiro com a posição XYZ na pasta que quiser. Ao contrário de «Localizar», esta ação não inicia o visualizador.

9.7Conversão em valores geográficos ou projetados

Os botões «Converter LLH» e «Converter NEH» permitem converter as coordenadas XYZ apresentadas no cabeçalho em coordenadas geográficas ou projetadas.

Consulte a descrição e o funcionamento destas janelas nos parágrafos anteriores.

10Constelações e sinais

10.1Supressão de registos

O TopoSat Rinex Editor permite desativar:

  • Constelações inteiras, desmarcando uma constelação.
Nota
RINEX 2 histórico: numa conversão de RINEX 3 ou 4 para RINEX 2 destinada a software antigo que apenas aceita GPS, é preciso desmarcar GLONASS antes de gerar o RINEX 2 (ou retirar essa constelação do RINEX 2 criado num tratamento posterior).
  • Satélites um a um, apresentando a lista de satélites de uma dada constelação.
  • Sinais um a um.
  • Ao marcar «Purgar constelações indisponíveis», as linhas do cabeçalho correspondentes às constelações ausentes são suprimidas do cabeçalho.
  • Ao marcar «Eliminar linhas aberrantes», as linhas do corpo do ficheiro correspondentes aos registos em causa não são escritas no ficheiro RINEX produzido. Desmarcado por predefinição.
  • O botão «Reativar tudo» reativa em bloco todos os elementos desativados (constelações inteiras, satélites individuais, sinais observados).

10.2Lista dos sinais

Código civil clássico
C
C/A (Coarse/Acquisition), o código civil histórico, presente desde os inícios do GPS. É o canal com suporte mais universal.
Códigos precisos / militares (cifrados ou semiacessíveis)
P
Código P direto, não cifrado (raro atualmente, já que a maioria dos sistemas cifra este código).
Y
Código Y, a versão cifrada do código P, seguida diretamente — exige uma chave de desencriptação (recetores autorizados ou militares).
W
Seguimento «semi-codeless» (Z-tracking) do código Y cifrado — técnica utilizada pelos recetores civis e geodésicos para acederem apesar de tudo a essas medições sem possuírem a chave.
M
Código M, a geração militar moderna (mais resistente à interferência).
N
Seguimento «codeless» genérico, técnica mais antiga, com a mesma finalidade que W mas não normalizada como o Z-tracking.
Códigos civis modernizados (sinais L2C, L5, L1C — surgidos depois de 2005)
S
Componente «curta» ou de dados do sinal modernizado (por exemplo L2C(M), ou a componente de dados de L1C).
L
Componente «longa» ou piloto do sinal modernizado (por exemplo L2C(L), a componente piloto de L1C) — transporta as medições mas não dados de navegação, sendo por isso frequentemente mais limpa.
X
Seguimento combinado das duas componentes S+L (ou I+Q) em conjunto, num único canal.
I
Componente «em fase» (que transporta os dados) dos sinais estruturados I/Q (por exemplo L5I).
Q
Componente «em quadratura» (piloto, sem dados) dos sinais I/Q (por exemplo L5Q).
A, B
Canais específicos Galileo / BeiDou / QZSS / IRNSS (serviço público regulado, ou componentes de dados/piloto conforme o sistema).

11Utilização na linha de comandos

A utilização na linha de comandos permite modificar os ficheiros RINEX através de um tratamento automatizado, ficheiro a ficheiro ou dentro de um comando batch.

A estrutura geral de uma linha de comandos é a seguinte:

Windows:

toposat-rinex-editor-cli.exe --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Linux:

toposat-rinex-editor-cli --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Em que --cmd -argumento pode ser qualquer um dos seguintes:

--in

Ficheiro a tratar. Deve ser seguido do nome completo do ficheiro.

  • --in -C:/Data/ficheiro_lido.rnx
  • --in -"C:/Data/o meu ficheiro lido.rnx" (aspas se houver um espaço no nome do ficheiro ou no caminho)
  • Não tem de ser obrigatoriamente o primeiro comando da linha, mas isso é recomendado para legibilidade.
--out

Nome completo do ficheiro a produzir. Comando opcional: na sua ausência, o nome do ficheiro produzido é o do ficheiro lido com «_edited» acrescentado, escrito em ~/TopoSat Rinex Editor/Datas/.

  • Se for utilizada, deve ser seguida do nome do ficheiro a criar como argumento.
  • Se o nome incluir um caminho existente, o ficheiro é escrito nesse local; caso contrário — e salvo se contiver caracteres proibidos, o que provoca um erro — é escrito em ~/TopoSat Rinex Editor/Datas/.
  • Se o ficheiro a criar já existir na pasta de destino, isso provoca um erro.
  • Não tem de vir obrigatoriamente depois do comando --in, mas isso é recomendado para legibilidade.
--outx

Idêntica a --out, mas força a substituição de um ficheiro existente.

  • --out e --outx não podem estar ambas presentes na mesma linha de comandos.
--rnx

Conversão do ficheiro RINEX para outro formato RINEX. A conversão só pode ser feita para uma versão anterior. Exemplo: --rnx -2.11.

  • O argumento de versão é obrigatório.
  • O argumento de nome é facultativo; se estiver presente, vem obrigatoriamente depois do número de versão. Exemplo: --rnx -2.11 -"o meu ficheiro rinex convertido".
  • Se estiver ausente, as regras de escrita são idênticas às dos comandos --out e --outx.
  • Para uma conversão para um formato RINEX 2, é utilizada a convenção de nomenclatura RINEX 2 (8 caracteres e uma extensão) em vez do acrescento de «_edited».
  • Se o ficheiro a criar já existir na pasta de destino, ou se a pasta de destino não existir, isso provoca um erro.
  • A conversão para RINEX 2 só conserva GPS e GLONASS.
--rnxx

Idêntica a --rnx, mas força a substituição de um ficheiro existente.

  • --rnx e --rnxx não podem estar ambas presentes na mesma linha de comandos.
  • --rnx e --rnxx não podem ser combinadas com --out ou --outx na mesma linha de comandos.
--mna

Marker Name. Exemplo: --mna -CORS. Limitado a 60 caracteres.

--mnu

Marker Number. Exemplo: --mnu -18256M001. Limitado a 20 caracteres.

--mty

Marker Type. Exemplo: --mty -GEODETIC. Limitado a 20 caracteres, apenas RINEX 3/4: o comando é rejeitado (erro) num ficheiro RINEX 2.

--obs

Observer. Exemplo: --obs -Bertrand. Limitado a 20 caracteres.

--age

Agency. Exemplo: --age -TopoSat. Limitado a 40 caracteres.

--nur

Número de série do recetor. Exemplo: --nur -4503789. Limitado a 20 caracteres.

--tyr

Tipo do recetor. Exemplo: --tyr -"TRIMBLE NETR9". Limitado a 20 caracteres.

--ver

Versão do recetor. Exemplo: --ver -4.85. Limitado a 20 caracteres.

--nua

Número de série da antena. Exemplo: --nua -231312. Limitado a 20 caracteres.

--tya

Tipo de antena. Exemplo: --tya -TRM7991.00.

--tyax

Tipo de antena, evitando a apresentação da mensagem de aviso que assinala uma modificação do tipo de antena.

--xyz

Os 3 valores X, Y, Z da posição, separados por um espaço e agrupados entre parênteses.

  • --xyz -(3381677.0832 4910158.6366 -2258516.1187)
--adh

Delta H: altura vertical do ponto de referência da antena (ARP) acima do marcador. Exemplo: --adh -2.000.

  • Bloqueia acima de 99,9999 m e avisa (sem bloquear) se o valor for negativo.
--ade

Delta E: excentricidade horizontal Este do ARP relativamente ao marcador. Exemplo: --ade -0.000.

  • Bloqueia acima de 0,0500 m (50 mm) e avisa acima de 0,0200 m (20 mm).
--adn

Delta N: excentricidade horizontal Norte do ARP relativamente ao marcador. Exemplo: --adn -0.000.

  • Bloqueia acima de 0,0500 m (50 mm) e avisa acima de 0,0200 m (20 mm).
--int

Intervalo de registo em segundos. Exemplo: --int -30.

  • Bloqueia se o valor for ≤ 0, se for inferior ao intervalo já presente nos dados, ou se não for um múltiplo exato deste.
--tfo

Time of First Observation.

  • --tfo -2026-03-12 — se não for indicada nenhuma hora, o registo começa na primeira época disponível do dia.
  • --tfo -2026-03-12T17:18:25 (segundo inteiro)
  • --tfo -2026-03-12T17:18:25.32 (com fração de segundo)
  • --tfo -20260312171825.32 (sem separador)
  • --tfo -"2026-03-12 17:18:25" (aspas se um espaço substituir o T)
  • Se --tfo for utilizada em conjunto com --int na mesma linha de comandos, --int deve vir antes.
  • A fração de segundo é bloqueada se o intervalo nativo do ficheiro for inteiro (≥ 1 s).
--tfo+

Insere uma linha «TIME OF FIRST OBS» no cabeçalho se essa linha estiver ausente. Sem argumento.

  • Não altera nada se a linha já existir no ficheiro.
  • Não pode estar presente antes de --tfo na mesma linha de comandos.
--tlo

Time of Last Observation. Funcionamento semelhante a --tfo.

  • O último registo é o da última época válida que respeita a hora indicada.
--tlo+

Insere uma linha «TIME OF LAST OBS» no cabeçalho se essa linha estiver ausente. Sem argumento.

  • Funcionamento semelhante a --tfo+.
--del -X

Suprime todos os satélites de uma constelação (X = G, R, E, C, J, I, S…). Exemplo: --del -S para suprimir os SBAS.

  • Suprime também no cabeçalho as informações relativas a essa constelação.
  • Para uma conversão de RINEX 3 ou 4 para RINEX 2 com supressão do GLONASS, inserir --del -R antes de --rnx ou --rnxx.
--del -Xnn

Suprime um único satélite. Exemplo: --del -E11.

--dmsw

Converte as coordenadas XYZ do cabeçalho em coordenadas geográficas sexagesimais, elipsoide WGS84. Recusa uma posição aberrante.

  • --dmsw (sem argumento) ou --dmsw -32: separador espaço.
  • --dmsw -44: separador vírgula.
  • --dmsw -58: separador dois pontos.
  • --dmsw -59: separador ponto e vírgula.
  • O ficheiro de texto é criado na pasta Documentos/TopoSat Rinex Editor/Datas, com o nome do ponto se MARKER NAME estiver preenchido, ou o nome do ficheiro RINEX na sua falta.
--dmsg

Idêntica a --dmsw para o elipsoide GRS80.

--ddw

Idêntica a --dmsw, mas exporta em graus decimais (elipsoide WGS84).

--ddg

Idêntica a --dmsg, mas exporta em graus decimais (elipsoide GRS80).

--kml

Cria um ficheiro KML na posição XYZ. Recusa uma posição aberrante.

  • O ficheiro é criado na pasta Documentos/TopoSat Rinex Editor/Datas, com o MARKER NAME se estiver preenchido, ou o nome do ficheiro RINEX se MARKER NAME estiver vazio.
--kmz

Idêntica a --kml, mas produz um arquivo comprimido .kmz.

--wip

Purga do cabeçalho as informações relativas às constelações declaradas mas não disponíveis nos dados. Sem argumento, apenas RINEX 3/4.

  • Linhas purgadas: SYS / # / OBS TYPES, SYS / PHASE SHIFT, GLONASS SLOT / FRQ #, GLONASS COD/PHS/BIS, SYS / DCBS APPLIED, SYS / PCVS APPLIED, SYS / SCALE FACTOR.
--help

Apresenta a ajuda sobre os comandos e sai. Sem argumento.

Nota
Os argumentos que necessitam de um espaço, como TRM57971.00 NONE, devem ser escritos entre aspas, por exemplo --tya -"TRM57971.00 NONE".

A aplicação indica um código de retorno na consola:

  • 0 = sucesso
  • 1 = erro na formulação do comando
  • 2 = utilização do executável errado.

12Licença de utilização

Copyright © 2026 — Bertrand Boullard — toposat.com

12.1Tipo de licença

Freeware proprietário (não open source).

12.2Autorização de utilização

O software é fornecido gratuitamente e pode ser utilizado para fins pessoais e profissionais.

12.3Forma de distribuição

  • O software é distribuído exclusivamente sob a forma de código executável (binário compilado). Não recai sobre o autor qualquer obrigação de fornecer o código-fonte.
  • O software pode ser distribuído sob a forma de várias versões adaptadas a diferentes sistemas operativos (Windows, Linux ou outros).
  • As presentes condições aplicam-se a todas essas versões, qualquer que seja a plataforma de destino.

12.4Distribuição

A redistribuição é autorizada, desde que:

  • o software seja distribuído gratuitamente;
  • esta licença seja incluída;
  • o nome do autor e as menções de copyright sejam conservados.

12.5Restrições

É estritamente proibido:

  • modificar, adaptar, traduzir ou criar obras derivadas do software;
  • descompilar, desmontar ou tentar extrair o código-fonte, salvo disposição legal em contrário;
  • integrar, incorporar, compilar conjuntamente, chamar através de API/biblioteca, ou incluir a totalidade ou parte do código-fonte, dos executáveis ou dos recursos deste software noutro programa, módulo, plug-in ou serviço de terceiros, sem a autorização escrita prévia e expressa do autor. Esta proibição aplica-se quer a integração seja efetuada com fins comerciais ou não comerciais.

12.6Componentes de terceiros

Este software integra o interpretador Python bem como as seguintes bibliotecas de terceiros, cada uma sujeita à sua própria licença de código aberto:

  • Python — interpretador e biblioteca padrão, incluindo o módulo tkinter (Python Software Foundation License Version 2 — PSF-2.0);
  • Tcl/Tk — biblioteca gráfica controlada pelo tkinter (Tcl/Tk License, licença do tipo BSD);
  • Nuitka — compilador Python utilizado para produzir o executável, cuja biblioteca de execução («runtime») é ligada ao binário distribuído (GNU Affero General Public License versão 3, com a exceção «Nuitka Runtime Library Exception» versão 1.0).

O texto completo destas licenças está disponível no ficheiro THIRD-PARTY-LICENSES.txt fornecido com o software.

12.7Serviços de terceiros

As funções de visualização em linha limitam-se a abrir o seu navegador em sites de terceiros. Nenhum dado cartográfico está incorporado neste software.

  • O OpenStreetMap e o OpenTopoMap são projetos independentes — dados sob licença ODbL, veja openstreetmap.org/copyright.
  • Google Earth é uma marca da Google LLC. O TopoSat Rinex Editor não é afiliado nem aprovado pela Google.

A utilização destes sites está sujeita às suas próprias condições.

12.8Propriedade

O software continua a ser propriedade exclusiva do autor.

12.9Responsabilidade

  • O software é fornecido «tal como está», sem garantia de qualquer tipo. O autor não pode ser responsabilizado por danos decorrentes da sua utilização.
  • Cabe ao utilizador verificar a exatidão das conversões de coordenadas por outro meio antes de qualquer utilização, e confirmar que os ficheiros criados são compatíveis com as suas necessidades.

12.10Texto integral e versões traduzidas

Veja o ficheiro LICENSE.txt fornecido com o software.

Ajuda

TopoSat Rinex Editor

Edição, análise e verificação de arquivos de observação RINEX 2, 3 e 4 — interface gráfica e linha de comando.

v1.10Interface gráfica + linha de comandoRINEX 2.10 → 4.02

1Aviso

O software é fornecido “no estado em que se encontra”, sem garantia de nenhum tipo. O autor não pode ser responsabilizado por danos decorrentes de seu uso.

Cabe ao usuário verificar a exatidão das conversões de coordenadas por outro meio antes de qualquer uso, e conferir se os arquivos criados são compatíveis com suas necessidades.

2Funcionalidades principais

O TopoSat Rinex Editor é um utilitário que permite editar arquivos RINEX (formatos 2, 3 e 4) para analisar as constelações presentes, os satélites e sinais utilizados, e alterar algumas informações contidas no cabeçalho. Pode ser usado com interface gráfica ou na linha de comando.

Está disponível em inglês, espanhol, francês e português (Europa e Brasil).

Seus pontos fortes são:

  • Análise do arquivo de origem e exibição resumida dessa análise.
  • Exportação com desativação de constelações, satélites ou sinais específicos.
  • Coordenadas ECEF do cabeçalho que podem ser informadas a partir de coordenadas geográficas ou projetadas (com ou sem uso de um modelo de geoide).
  • Leitura de relatórios de processamento online: IGN França, Trimble RTX, SCRS-PPP (Canadá).
  • Conversão direta das coordenadas ECEF em coordenadas geográficas ou projetadas.
  • Exibição dessas coordenadas ECEF em um visualizador KML, além de exportação KML/KMZ.
  • Conversão de um RINEX 3 ou 4 para uma versão anterior.

Ele permite também fazer as seguintes alterações:

  • Intervalo de gravação.
  • Horários de início e de fim da gravação.
  • Marker Name, Marker Number e Marker Type.
  • Observer / Agency.
  • Altura de antena.

Depois de alterar os limites de tempo, o intervalo de gravação e as constelações ou satélites utilizados, o tamanho do arquivo a exportar é estimado (valor indicativo).

Nota
A documentação completa sobre os formatos RINEX pode ser baixada em files.igs.org/pub/data/format.

3Primeiro uso

O aplicativo com interface gráfica é iniciado com o executável TopoSat_Rinex_Editor.exe, ou a partir de um atalho do menu Iniciar. Para o uso em linha de comando, veja o capítulo “Uso na linha de comando”.

No primeiro uso, o programa cria uma subpasta “TopoSat Rinex Editor” na pasta “Documentos” do usuário (a menos que haja outra configuração):

  • C:\Users\<nome de usuário>\Documents no Windows.
  • /home/<nome de usuário>/Documents no Linux.

Essa pasta permite salvar:

  • Em uma subpasta /Config:
    • Um arquivo config.ini (idioma, tema, pastas, …).
    • Um arquivo custom_projections.json com as projeções Lambert/Transversa de Mercator personalizadas, salvas pelo usuário.
    • Um arquivo last_projection_zone.json com a última zona ou projeção usada nas janelas UTM/TM, Lambert cônica e França metropolitana (compartilhado entre os dois sentidos de conversão).
    • Um arquivo kml_viewer.json com o programa externo escolhido para abrir um arquivo KML local, e o modelo de URL personalizado para um mapa on-line.
  • Em uma subpasta /Datas:
    • Diversos dados produzidos pelo programa ao longo do uso (arquivos de texto, KML, …).

4Seleção do arquivo de origem

As extensões aceitas são .rnx, .obs e .??o. Arquivos compactados em zip ou com Hatanaka não são aceitos.

Ao abrir o arquivo, várias informações aparecem logo abaixo do nome do arquivo: formato RINEX, número de épocas e tamanho do cabeçalho.

As alterações feitas nos valores editáveis não afetam o arquivo de origem. Elas são aplicadas somente a um novo arquivo criado pelo botão “Salvar”, no canto inferior direito da janela.

O botão “Recarregar” serve para ler novamente o arquivo de origem e reiniciar a exibição caso alterações tenham sido feitas, sem precisar procurá-lo outra vez nas pastas do computador. Esse botão fica inativo enquanto nenhuma alteração for feita.

5Seleção do arquivo de destino

O tamanho do arquivo de destino é estimado levando em conta as diversas alterações previstas. Ele é recalculado após cada alteração, ao clicar em outro valor modificável ou no botão “Atualizar”.

Alguns arquivos RINEX contêm marcadores de dados cinemáticos. Esses marcadores podem ser removidos para usar o arquivo como arquivo estático, ou para trabalhos de trajetória pura.

5.1Sem conversão RINEX

Por padrão, o arquivo de destino recebe o nome do arquivo de origem seguido de “_edited”, e a extensão do arquivo de origem.

Ele é salvo na mesma pasta do arquivo de origem. O nome e a pasta podem ser escolhidos de outra forma (botão “Modificar”).

5.2Com conversão RINEX

5.2.1Funcionamento

A conversão RINEX de um arquivo pode ser feita a partir da versão 4.02 para qualquer versão anterior válida.

No caso de uma conversão de RINEX 3 ou 4 para RINEX 2, o arquivo de destino recebe um nome formado pelos 4 primeiros caracteres do MARKER NAME, pelo número do dia do ano, pelo dígito 1 que representa o número da sessão e pela extensão do arquivo de origem. Na ausência de MARKER NAME, são usados os 4 primeiros caracteres do nome do arquivo de origem.

Ele é salvo na mesma pasta do arquivo de origem. O nome e a pasta podem ser escolhidos de outra forma (botão “Modificar”).

5.2.2Perdas de sinal ligadas à conversão para RINEX 2.nn

Atenção
Às vezes a perda de sinal é inevitável: o RINEX 2 tem apenas um espaço por frequência e por tipo de observável (um para a fase L2, um para o código C2…), enquanto o RINEX 3/4 pode receber vários canais na mesma frequência ao mesmo tempo (por exemplo L2C civil e L2W preciso simultaneamente). Se isso acontecer, apenas um canal pode ser mantido — o de maior prioridade — e o outro é perdido: é uma limitação do próprio formato RINEX 2, não do conversor.

A ordem de prioridade entre canais é definida no menu Opções / Prioridade de canais RINEX 2…

Também pode ser alterada com um editor de texto no config.ini (Documentos/TopoSat Rinex Editor/Config/), seção [rnx_downgrade], chave channel_priority.

  • Padrão: CPWYMNSLXIQ. Essa ordem privilegia o canal mais universal e mais antigo (C) em caso de duplicidade, depois os códigos precisos (P/W/Y/M/N, historicamente os que os programas RINEX 2 esperavam), e apenas por último os canais modernizados (S/L/X/I/Q).
  • Para privilegiar, ao contrário, os canais civis modernizados (por exemplo L2C em vez de L2W): channel_priority = SLXIQCPWYMN.
  • Essa chave é lida na inicialização do aplicativo e salva ao fechá-lo, como as demais informações do config.ini. Para alterá-la e que a alteração seja considerada, é preciso fechar o aplicativo antes de editá-la manualmente. Se não estiver válida (letra ausente, canal não previsto, caractere qualquer…), ela volta automaticamente ao valor padrão. Ela é exibida no quadro “Arquivo de destino” quando a conversão para RINEX 2.nn está selecionada.

Essas letras descrevem qual canal ou código o receptor rastreou para produzir a observação. Para mais detalhes sobre o significado delas, consulte a lista dos sinais.

6Intervalo e limites de tempo

As informações exibidas vêm da análise linha por linha do arquivo, sem se basear nas linhas TIME OF FIRST/LAST OBS.

O botão “Repor” restaura o intervalo e os limites de tempo originais do arquivo. Ele não repõe a página inteira (o botão “Recarregar” do quadro à esquerda faz isso), apenas este quadro. Fica inativo enquanto nenhuma alteração for feita.

Se uma das linhas TIME OF FIRST/LAST OBS estiver ausente do cabeçalho, é possível acrescentá-la.

6.1Intervalo de gravação

É expresso em segundos. É possível alterar esse intervalo, desde que o novo valor seja um múltiplo exato do intervalo original e maior que ele (por exemplo 60 segundos quando o original era de 15 segundos).

6.2Limites de tempo

A exibição e a alteração dos horários de início e de fim da gravação aceitam:

  • O horário GPS (padrão).
  • O horário local (o do computador).
  • O de qualquer fuso UTC.

O arquivo RINEX criado mantém os horários GPS. Os horários locais ou UTC servem apenas para facilitar a digitação ou a leitura.

Os horários de FIRST e LAST OBS são sempre ajustados às épocas compatíveis: a seguinte para FIRST OBS, a anterior para LAST OBS.

7Visualização do arquivo de origem

Há três abas.

7.1Aba “Registro”

Esta aba lista as alterações sucessivas feitas no cabeçalho. Permanece vazia enquanto nenhuma alteração for feita. Essa informação também é registrada em um arquivo .log criado ao salvar o arquivo modificado.

7.2Aba “Controlo de Qualidade”

Esta aba lista a quantidade de dados disponíveis no arquivo, constelação por constelação, e aponta eventuais anomalias. Essas informações também constam no arquivo .log salvo junto com o arquivo criado.

7.3Aba “Cabeçalho”

Esta aba permite ver as linhas de cabeçalho do arquivo de origem. Ela não é editável.

8Outros dados editáveis

8.1Markers e operador

  • MARKER NAME: 60 caracteres no máx. (colunas 1 a 60 da linha RINEX)
  • MARKER NUMBER: 20 caracteres no máx. (colunas 1 a 20 da linha RINEX)
  • MARKER TYPE: 20 caracteres no máx. (colunas 1 a 20 da linha RINEX) — não editável em RINEX 2.xx
  • OBSERVER: 20 caracteres no máx. (colunas 1 a 20 da linha RINEX)
  • AGENCY: 40 caracteres no máx. (colunas 21 a 60 da linha RINEX)

O número de caracteres usados / permitidos é exibido. Não é possível digitar mais caracteres do que a cota permite.

8.2Receptor / Antena

O número de caracteres usados / permitidos é exibido. Não é possível digitar mais caracteres do que a cota permite.

Não há verificação do tipo de antena quando ele é alterado, mas uma mensagem de aviso é exibida.

  • A altura de antena deve ser menor que 99,9999 m.
  • O deslocamento E/N é limitado a 50 mm.

9APPROX POSITION XYZ (coordenadas ECEF)

As coordenadas ECEF podem ser digitadas manualmente no campo editável. Uma verificação de coerência confere os limites físicos de cada componente (X, Y, Z), a distância ao centro da Terra, a altitude geodésica acima do elipsoide GRS80 e a diferença em relação à posição aproximada indicada no cabeçalho do arquivo de origem.

Elas também podem ser:

  • Digitadas como valores geográficos ou projetados.
  • Importadas de diferentes formatos.
  • Exportadas em KML/KMZ ou exibidas em um visualizador KML.
  • Convertidas em valores geográficos ou projetados.

9.1Verificação de coerência das coordenadas XYZ

São feitas as seguintes verificações:

VerificaçãoLimiteConsequência
Componente X, Y ou Z fora dos limites|X|, |Y| > a + 50 km ; |Z| > b + 50 kmAviso
Distância ao centro da Terra pequena demaisD < min_distance_mConversão bloqueada
Distância ao centro da Terra grande demaisD > a + max_margin_mConversão bloqueada
Altitude geodésica muito elevada (acima do elipsoide)HAE > 10 kmAviso
Altitude geodésica muito negativaHAE < −200 mAviso
Deslocamento em relação à posição original> 10 mAviso
  • a e b representam respectivamente o semieixo maior e o semieixo menor do elipsoide.
  • min_distance_m é a distância em metros ao centro da Terra abaixo da qual uma distância é considerada pequena demais.
  • max_margin_m é a altura elipsoidal acima da qual essa altura é considerada grande demais.
  • min_distance_m e max_margin_m são salvas no config.ini e podem ser alteradas manualmente pelo usuário.

Os avisos não são bloqueantes, mas uma informação errada pode causar problemas no processamento por um software de pós-processamento GNSS.

9.2Entrada manual de coordenadas geográficas — LLH (°)

9.2.1Formato

As coordenadas latitude / longitude / altura elipsoidal podem ser digitadas em valores decimais ou sexagesimais. Elas podem ser calculadas para os elipsoides GRS80 ou WGS84. Os formatos aceitos são:

  • Longitude:
    • 2.24981292 ou 2 14 59.3265 (valor positivo para Leste)
    • -2.24981292 ou -2 14 59.3265 (valor negativo para Oeste)
  • Latitude:
    • 48.5909138 ou 48 35 27.2895 (valor positivo para Norte)
    • -48.5909138 ou -48 35 27.2895 (valor negativo para Sul)

9.2.2Janela de entrada

9.3Entrada manual de coordenadas projetadas — NEH (m)

9.3.1Coordenadas planimétricas

Sistemas geodésicos e projeções

As coordenadas projetadas podem ser digitadas nos seguintes sistemas e projeções:

  • Projeção UTM, com escolha entre os elipsoides GRS80 (padrão) e WGS84.
    • É preciso informar o fuso UTM e o hemisfério (Norte ou Sul).
  • Projeção Transversa de Mercator.
    • É preciso informar os parâmetros da projeção.
    • Esses parâmetros podem ser salvos no arquivo custom_projections.json da pasta “Documentos / TopoSat Rinex Editor”. Esse arquivo é lido automaticamente nas chamadas seguintes.
  • Cônica conforme de Lambert.
    • Funcionamento idêntico ao da projeção Transversa de Mercator.
  • Projeções da França metropolitana:
    • RGF93 / Lambert 93
    • RGF93 / Lambert zona CC
  • Projeções dos territórios franceses de ultramar:
    • Guadalupe (RGAF09 — UTM 20N)
    • Guiana Francesa (RGFG95 — UTM 22N)
    • Reunião (RGR92 — UTM 40S)
    • Martinica (RGAF09 — UTM 20N)
    • Mayotte (RGM04 — UTM 38S)
    • Nova Caledônia — Grande Terre e ilhas Lealdade (RGNC91-93 / Lambert NC)
    • Nova Caledônia — zona marítima (RGNC91-93 — UTM 57S)
    • Nova Caledônia — zona marítima (RGNC91-93 — UTM 58S)
    • Nova Caledônia — zona marítima (RGNC91-93 — UTM 59S)
    • Polinésia Francesa (RGPF — UTM 5S)
    • Polinésia Francesa (RGPF — UTM 6S)
    • Polinésia Francesa (RGPF — UTM 7S)
    • Polinésia Francesa (RGPF — UTM 8S)
Nota
Somente os territórios mais populosos foram incluídos. O usuário pode completar essa lista, se necessário, com projeções “Transversa de Mercator” informando os parâmetros adequados: uma projeção UTM é uma projeção Transversa de Mercator com parâmetros padronizados, mas as fórmulas matemáticas são as mesmas.
  • Bélgica (ETRF2000 / Lambert 2008)
Janela de entrada

A janela de entrada das coordenadas planimétricas é a seguinte:

9.3.2Componente vertical

Janela de entrada

Ela pode ser digitada em altura elipsoidal (HAE), em elevação (MSL), ou como uma altura elipsoidal mais uma constante que representa o valor da ondulação do geoide no local do ponto observado.

Para digitar uma elevação (MSL), é preciso selecionar um modelo de geoide.

  • Escolher o modelo na lista suspensa, ou
  • usar “Procurar” para selecionar um novo modelo disponível no computador. Ele pode estar na pasta que você quiser.
  • “Salvar” permite registrar o caminho do modelo no config.ini. A grade passará a ser oferecida automaticamente na lista suspensa na próxima inicialização.
  • “Excluir” remove a entrada do config.ini, mas não apaga o arquivo.
Disponibilidade das grades

Nenhuma grade é fornecida com o software. Cabe ao usuário obtê-las diretamente com os produtores de dados.

Alguns exemplos de sites para baixar grades (julho de 2026):

Formatos de modelos de geoide reconhecidos
ExtensãoOrigemParâmetros a informar no carregamento
.datFormato genérico, ponto por pontoSim (organização das colunas, ordenação)
.mntIGN (França)Nenhum — detectados automaticamente
.tacIGN (França)Nenhum — detectados automaticamente
.gtxNOAA / PROJNenhum — detectados automaticamente
.ggfTrimbleNenhum — detectados automaticamente
.graGRAVSOFT (DTU, Dinamarca)Nenhum — detectados automaticamente
.grdGolden Software (Surfer)Nenhum — detectados automaticamente
.dat — formato de pontos genérico

Arquivo de texto simples, uma linha por ponto (duas coordenadas e um valor de ondulação). Como esse formato não tem cabeçalho, o aplicativo pergunta como interpretá-lo no momento do carregamento:

  • Significado da primeira coluna (latitude ou longitude).
  • Ordem em que os valores estão classificados.
Exemplo: latitude na primeira coluna, longitudes crescentes com latitude fixa, depois latitudes crescentes.
48.5000000 1.0000000 43.316
48.5000000 1.0150000 43.306
...
48.5000000 6.9850000 46.685
48.5000000 7.0000000 46.724
48.5100000 1.0000000 43.318
48.5100000 1.0150000 43.308
...
52.5000000 6.9850000 40.434
52.5000000 7.0000000 40.443
.mnt e .tac — grades IGN (França)

Formato adotado pelo Instituto nacional de informação geográfica e florestal da França (IGN), usado em particular em suas grades de conversão altimétrica na França metropolitana e de ultramar (RAF, grades NTF↔RGF93 etc.). Para mais detalhes, consulte a descrição dos formatos de grades do IGN.

.gtx — formato NOAA / PROJ

Formato binário compacto, amplamente difundido pela biblioteca cartográfica PROJ e pela agência norte-americana NOAA. Para mais detalhes, consulte a documentação do GDAL.

.ggf — formato Trimble

Formato binário usado por alguns softwares topográficos da Trimble (Trimble Business Center em particular). Para mais detalhes, consulte a descrição do formato GGF.

.gra — formato GRAVSOFT

Formato de texto do software GRAVSOFT, desenvolvido pela Universidade Técnica da Dinamarca (DTU), usado em particular em algumas grades de geoide de ultramar (Reunião). Para mais detalhes, consulte o manual do GRAVSOFT.

.grd — Golden Software ASCII Grid

Formato de texto dos softwares da Golden Software (Surfer, Grapher, Voxler), identificável pela palavra-chave DSAA no início do arquivo. Para mais detalhes, consulte a documentação do Surfer.

9.4Importação

As coordenadas podem ser extraídas de várias fontes.

9.4.1Arquivo de texto

O arquivo pode conter várias linhas, mas apenas uma linha pode ser selecionada. É possível indicar o separador de lista (várias opções) ou dividir o arquivo em colunas.

Com separador: escolher o separador se a detecção automática não funcionar e depois atribuir as colunas aos campos X, Y e Z.

Com colunas fixas: clicar na linha superior e arrastar a linha de separação até o local desejado, e depois atribuir as colunas aos campos X, Y e Z.

9.4.2Relatório de processamento de rede IGN França

Esses relatórios vêm de um processamento online feito no site rgp.ign.fr.

Normalmente, após descompactar o relatório no formato .tar.gz, o nome do arquivo analisado tem a forma cr_STAT_AAMMDDi_rd.txt, em que STAT é o identificador da estação, AAMMDD a data e i o índice da sessão.

O programa procura os valores indicados no item “IV/ RESULTATS” do relatório e propõe as soluções em vários sistemas de referência (dependentes da data de medição e da localização do ponto observado).

9.4.3Relatório de processamento da rede PPP França

Esses relatórios vêm de um processamento online feito no site rgp.ign.fr. Normalmente, após descompactar o relatório no formato .tar.gz, o arquivo analisado se chama report.txt.

O programa procura os valores finais, após a aplicação do cálculo da maré terrestre e da sobrecarga oceânica (MEAN XYZ with O_LOAD applied).

Ele propõe as soluções em vários sistemas de referência (dependentes da data de medição e da localização do ponto observado).

9.4.4Relatório de processamento Trimble RTX Positioning

Esses relatórios vêm de um processamento online feito no site trimblepositioninghub.trimble.com.

Normalmente, após descompactar o relatório no formato .zip, os arquivos analisados têm a forma Report_nnnnnnnn.xml, em que “nnnnnnnn” é um número interno da Trimble. O programa procura os valores contidos nos elementos POSITION do tipo “INTERNAL” ou “CUSTOM”, este último correspondendo à escolha do usuário. Ele propõe as soluções em dois sistemas de referência:

  • “INTERNAL” em um sistema ITRF genérico, época da medição.
  • “CUSTOM” no sistema selecionado pelo usuário.

9.4.5Relatório de processamento SCRS-PPP (Canadá)

Esses relatórios vêm de um processamento online feito no site webapp.csrs-scrs.nrcan-rncan.gc.ca. Normalmente, após descompactar o relatório no formato .zip, os arquivos analisados têm a forma arquivo.sum, em que “arquivo” é o nome do arquivo RINEX processado.

O programa procura os valores contidos nas linhas “POS X”, “POS Y” e “POS Z” do relatório, coluna “ESTIMATED”. Ele propõe uma solução única no sistema ITRF.

O site oferece várias opções de processamento:

  • NAD83 ou ITRF como sistema de referência. O valor considerado depende do sistema escolhido.
  • Estático ou cinemático. Apenas o modo estático é aproveitável: o relatório de processamento cinemático com extensão .sum não contém nenhuma posição “ESTIMATED”, e por isso o TopoSat Rinex Editor não extrai dele nenhuma posição.

É preciso clicar no resultado para usar os valores.

9.5Localizar

Ao clicar nesse botão, é criado um arquivo “mna.kml” (mna sendo o Marker Name) na pasta Documentos/TopoSat Rinex Editor/Datas, ou “TopoSat_position.kml” se o Marker Name estiver vazio. Esse arquivo é usado como argumento por um visualizador externo, a escolher em uma lista de sites on-line sugeridos ou entre os programas instalados no computador.

O link personalizado e o programa escolhido (“Outro programa…”) são salvos no arquivo kml_viewer.json da pasta Documentos/TopoSat Rinex Editor/Config.

9.6Exportar KML/KMZ

Permite criar um arquivo com a posição XYZ na pasta que você quiser. Diferentemente de “Localizar”, essa ação não abre o visualizador.

9.7Conversão em valores geográficos ou projetados

Os botões “Converter LLH” e “Converter NEH” permitem converter as coordenadas XYZ exibidas no cabeçalho em coordenadas geográficas ou projetadas.

Consulte a descrição e o funcionamento dessas janelas nos itens anteriores.

10Constelações e sinais

10.1Remoção de registros

O TopoSat Rinex Editor permite desativar:

  • Constelações inteiras, desmarcando uma constelação.
Nota
RINEX 2 histórico: em uma conversão de RINEX 3 ou 4 para RINEX 2 destinada a um software antigo que só aceita GPS, é preciso desmarcar GLONASS antes de gerar o RINEX 2 (ou retirar essa constelação do RINEX 2 criado em um processamento posterior).
  • Satélites um a um, exibindo a lista de satélites de uma determinada constelação.
  • Sinais um a um.
  • Ao marcar “Purgar constelações indisponíveis”, as linhas do cabeçalho correspondentes às constelações ausentes são removidas do cabeçalho.
  • Ao marcar “Excluir linhas aberrantes”, as linhas do corpo do arquivo correspondentes aos registros em questão não são escritas no arquivo RINEX produzido. Desmarcado por padrão.
  • O botão “Reativar tudo” reativa em bloco todos os elementos desativados (constelações inteiras, satélites individuais, sinais observados).

10.2Lista dos sinais

Código civil clássico
C
C/A (Coarse/Acquisition), o código civil histórico, presente desde o início do GPS. É o canal com suporte mais universal.
Códigos precisos / militares (criptografados ou semiacessíveis)
P
Código P direto, sem criptografia (raro hoje, pois a maioria dos sistemas criptografa esse código).
Y
Código Y, a versão criptografada do código P, rastreada diretamente — exige uma chave de descriptografia (receptores autorizados ou militares).
W
Rastreamento “semi-codeless” (Z-tracking) do código Y criptografado — técnica usada pelos receptores civis e geodésicos para acessar essas medições mesmo sem ter a chave.
M
Código M, a geração militar moderna (mais resistente a interferências).
N
Rastreamento “codeless” genérico, técnica mais antiga, com a mesma finalidade que W mas não padronizada como o Z-tracking.
Códigos civis modernizados (sinais L2C, L5, L1C — surgidos depois de 2005)
S
Componente “curta” ou de dados do sinal modernizado (por exemplo L2C(M), ou a componente de dados de L1C).
L
Componente “longa” ou piloto do sinal modernizado (por exemplo L2C(L), a componente piloto de L1C) — carrega as medições mas não os dados de navegação, sendo por isso muitas vezes mais limpa.
X
Rastreamento combinado das duas componentes S+L (ou I+Q) juntas, em um único canal.
I
Componente “em fase” (que carrega os dados) dos sinais estruturados I/Q (por exemplo L5I).
Q
Componente “em quadratura” (piloto, sem dados) dos sinais I/Q (por exemplo L5Q).
A, B
Canais específicos Galileo / BeiDou / QZSS / IRNSS (serviço público regulado, ou componentes de dados/piloto conforme o sistema).

11Uso na linha de comando

O uso em linha de comando permite alterar os arquivos RINEX por meio de um processamento automatizado, arquivo por arquivo ou dentro de um comando em lote.

A estrutura geral de uma linha de comando é a seguinte:

Windows:

toposat-rinex-editor-cli.exe --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Linux:

toposat-rinex-editor-cli --in -fichier_lu.rnx --out -fichier_produit.rnx --cmd -argument

Em que --cmd -argumento pode ser qualquer um dos seguintes:

--in

Arquivo a processar. Deve ser seguido do nome completo do arquivo.

  • --in -C:/Data/arquivo_lido.rnx
  • --in -"C:/Data/meu arquivo lido.rnx" (aspas se houver espaço no nome do arquivo ou no caminho)
  • Não precisa ser o primeiro comando da linha, mas isso é recomendado para facilitar a leitura.
--out

Nome completo do arquivo a produzir. Comando opcional: sem ele, o nome do arquivo produzido será o do arquivo lido com “_edited” acrescentado, gravado em ~/TopoSat Rinex Editor/Datas/.

  • Se for usada, deve ser seguida do nome do arquivo a criar como argumento.
  • Se o nome incluir um caminho existente, o arquivo é gravado nesse local; caso contrário — e a menos que contenha caracteres proibidos, o que gera um erro — é gravado em ~/TopoSat Rinex Editor/Datas/.
  • Se o arquivo a criar já existir na pasta de destino, isso gera um erro.
  • Não precisa vir depois do comando --in, mas isso é recomendado para facilitar a leitura.
--outx

Idêntica a --out, mas força a substituição de um arquivo existente.

  • --out e --outx não podem estar as duas na mesma linha de comando.
--rnx

Conversão do arquivo RINEX para outro formato RINEX. A conversão só pode ser feita para uma versão anterior. Exemplo: --rnx -2.11.

  • O argumento de versão é obrigatório.
  • O argumento de nome é opcional; se estiver presente, vem obrigatoriamente depois do número da versão. Exemplo: --rnx -2.11 -"meu arquivo rinex convertido".
  • Se estiver ausente, as regras de nomeação são idênticas às dos comandos --out e --outx.
  • Para uma conversão para um formato RINEX 2, é usada a convenção de nomenclatura RINEX 2 (8 caracteres e uma extensão) em vez do acréscimo de “_edited”.
  • Se o arquivo a criar já existir na pasta de destino, ou se a pasta de destino não existir, isso gera um erro.
  • A conversão para RINEX 2 mantém apenas GPS e GLONASS.
--rnxx

Idêntica a --rnx, mas força a substituição de um arquivo existente.

  • --rnx e --rnxx não podem estar as duas na mesma linha de comando.
  • --rnx e --rnxx não podem ser combinadas com --out ou --outx na mesma linha de comando.
--mna

Marker Name. Exemplo: --mna -CORS. Limitado a 60 caracteres.

--mnu

Marker Number. Exemplo: --mnu -18256M001. Limitado a 20 caracteres.

--mty

Marker Type. Exemplo: --mty -GEODETIC. Limitado a 20 caracteres, somente RINEX 3/4: o comando é rejeitado (erro) em um arquivo RINEX 2.

--obs

Observer. Exemplo: --obs -Bertrand. Limitado a 20 caracteres.

--age

Agency. Exemplo: --age -TopoSat. Limitado a 40 caracteres.

--nur

Número de série do receptor. Exemplo: --nur -4503789. Limitado a 20 caracteres.

--tyr

Tipo do receptor. Exemplo: --tyr -"TRIMBLE NETR9". Limitado a 20 caracteres.

--ver

Versão do receptor. Exemplo: --ver -4.85. Limitado a 20 caracteres.

--nua

Número de série da antena. Exemplo: --nua -231312. Limitado a 20 caracteres.

--tya

Tipo de antena. Exemplo: --tya -TRM7991.00.

--tyax

Tipo de antena, evitando a exibição da mensagem de aviso que sinaliza uma alteração do tipo de antena.

--xyz

Os 3 valores X, Y, Z da posição, separados por um espaço e agrupados entre parênteses.

  • --xyz -(3381677.0832 4910158.6366 -2258516.1187)
--adh

Delta H: altura vertical do ponto de referência da antena (ARP) acima do marco. Exemplo: --adh -2.000.

  • Bloqueia acima de 99,9999 m e avisa (sem bloquear) se o valor for negativo.
--ade

Delta E: excentricidade horizontal Leste do ARP em relação ao marco. Exemplo: --ade -0.000.

  • Bloqueia acima de 0,0500 m (50 mm) e avisa acima de 0,0200 m (20 mm).
--adn

Delta N: excentricidade horizontal Norte do ARP em relação ao marco. Exemplo: --adn -0.000.

  • Bloqueia acima de 0,0500 m (50 mm) e avisa acima de 0,0200 m (20 mm).
--int

Intervalo de gravação em segundos. Exemplo: --int -30.

  • Bloqueia se o valor for ≤ 0, se for menor que o intervalo já presente nos dados, ou se não for um múltiplo exato dele.
--tfo

Time of First Observation.

  • --tfo -2026-03-12 — se nenhum horário for indicado, a gravação começa na primeira época disponível do dia.
  • --tfo -2026-03-12T17:18:25 (segundo inteiro)
  • --tfo -2026-03-12T17:18:25.32 (com fração de segundo)
  • --tfo -20260312171825.32 (sem separador)
  • --tfo -"2026-03-12 17:18:25" (aspas se um espaço substituir o T)
  • Se --tfo for usada junto com --int na mesma linha de comando, --int deve vir antes.
  • A fração de segundo é bloqueada se o intervalo nativo do arquivo for inteiro (≥ 1 s).
--tfo+

Insere uma linha “TIME OF FIRST OBS” no cabeçalho se essa linha estiver ausente. Sem argumento.

  • Não altera nada se a linha já existir no arquivo.
  • Não pode estar presente antes de --tfo na mesma linha de comando.
--tlo

Time of Last Observation. Funcionamento semelhante ao de --tfo.

  • O último registro é o da última época válida que respeita o horário indicado.
--tlo+

Insere uma linha “TIME OF LAST OBS” no cabeçalho se essa linha estiver ausente. Sem argumento.

  • Funcionamento semelhante ao de --tfo+.
--del -X

Remove todos os satélites de uma constelação (X = G, R, E, C, J, I, S…). Exemplo: --del -S para remover os SBAS.

  • Remove também do cabeçalho as informações relativas a essa constelação.
  • Para uma conversão de RINEX 3 ou 4 para RINEX 2 com remoção do GLONASS, inserir --del -R antes de --rnx ou --rnxx.
--del -Xnn

Remove um único satélite. Exemplo: --del -E11.

--dmsw

Converte as coordenadas XYZ do cabeçalho em coordenadas geográficas sexagesimais, elipsoide WGS84. Recusa uma posição aberrante.

  • --dmsw (sem argumento) ou --dmsw -32: separador espaço.
  • --dmsw -44: separador vírgula.
  • --dmsw -58: separador dois-pontos.
  • --dmsw -59: separador ponto e vírgula.
  • O arquivo de texto é criado na pasta Documentos/TopoSat Rinex Editor/Datas, com o nome do ponto se MARKER NAME estiver preenchido, ou o nome do arquivo RINEX caso contrário.
--dmsg

Idêntica a --dmsw para o elipsoide GRS80.

--ddw

Idêntica a --dmsw, mas exporta em graus decimais (elipsoide WGS84).

--ddg

Idêntica a --dmsg, mas exporta em graus decimais (elipsoide GRS80).

--kml

Cria um arquivo KML na posição XYZ. Recusa uma posição aberrante.

  • O arquivo é criado na pasta Documentos/TopoSat Rinex Editor/Datas, com o MARKER NAME se estiver preenchido, ou o nome do arquivo RINEX se MARKER NAME estiver vazio.
--kmz

Idêntica a --kml, mas produz um arquivo compactado .kmz.

--wip

Remove do cabeçalho as informações relativas às constelações declaradas mas não disponíveis nos dados. Sem argumento, somente RINEX 3/4.

  • Linhas removidas: SYS / # / OBS TYPES, SYS / PHASE SHIFT, GLONASS SLOT / FRQ #, GLONASS COD/PHS/BIS, SYS / DCBS APPLIED, SYS / PCVS APPLIED, SYS / SCALE FACTOR.
--help

Exibe a ajuda sobre os comandos e sai. Sem argumento.

Nota
Os argumentos que precisam de um espaço, como TRM57971.00 NONE, devem ser escritos entre aspas, por exemplo --tya -"TRM57971.00 NONE".

O aplicativo indica um código de retorno no console:

  • 0 = sucesso
  • 1 = erro na formulação do comando
  • 2 = uso do executável errado.

12Licença de uso

Copyright © 2026 — Bertrand Boullard — toposat.com

12.1Tipo de licença

Freeware proprietário (não é open source).

12.2Autorização de uso

O software é fornecido gratuitamente e pode ser usado para fins pessoais e profissionais.

12.3Forma de distribuição

  • O software é distribuído exclusivamente na forma de código executável (binário compilado). O autor não tem nenhuma obrigação de fornecer o código-fonte.
  • O software pode ser distribuído em várias versões adaptadas a diferentes sistemas operacionais (Windows, Linux ou outros).
  • As presentes condições se aplicam a todas essas versões, qualquer que seja a plataforma de destino.

12.4Distribuição

A redistribuição é permitida, desde que:

  • o software seja distribuído gratuitamente;
  • esta licença seja incluída;
  • o nome do autor e os avisos de copyright sejam mantidos.

12.5Restrições

É estritamente proibido:

  • modificar, adaptar, traduzir ou criar obras derivadas do software;
  • descompilar, desmontar ou tentar extrair o código-fonte, salvo disposição legal em contrário;
  • integrar, incorporar, compilar em conjunto, chamar via API/biblioteca, ou incluir todo ou parte do código-fonte, dos executáveis ou dos recursos deste software em outro programa, módulo, plug-in ou serviço de terceiros, sem a autorização escrita prévia e expressa do autor. Essa proibição se aplica tanto se a integração for para fins comerciais como não comerciais.

12.6Componentes de terceiros

Este software integra o interpretador Python bem como as seguintes bibliotecas de terceiros, cada uma sujeita à sua própria licença de código aberto:

  • Python — interpretador e biblioteca padrão, incluindo o módulo tkinter (Python Software Foundation License Version 2 — PSF-2.0);
  • Tcl/Tk — biblioteca gráfica controlada pelo tkinter (Tcl/Tk License, licença do tipo BSD);
  • Nuitka — compilador Python usado para gerar o executável, cuja biblioteca de execução (“runtime”) é vinculada ao binário distribuído (GNU Affero General Public License versão 3, com a exceção “Nuitka Runtime Library Exception” versão 1.0).

O texto completo dessas licenças está disponível no arquivo THIRD-PARTY-LICENSES.txt fornecido com o software.

12.7Serviços de terceiros

Os recursos de visualização on-line apenas abrem seu navegador em sites de terceiros. Nenhum dado cartográfico é incorporado a este software.

  • OpenStreetMap e OpenTopoMap são projetos independentes — dados sob licença ODbL, veja openstreetmap.org/copyright.
  • Google Earth é uma marca da Google LLC. O TopoSat Rinex Editor não é afiliado nem endossado pelo Google.

O uso desses sites está sujeito aos seus próprios termos.

12.8Propriedade

O software continua sendo propriedade exclusiva do autor.

12.9Responsabilidade

  • O software é fornecido “no estado em que se encontra”, sem garantia de nenhum tipo. O autor não pode ser responsabilizado por danos decorrentes de seu uso.
  • Cabe ao usuário verificar a exatidão das conversões de coordenadas por outro meio antes de qualquer uso, e conferir se os arquivos criados são compatíveis com suas necessidades.

12.10Texto integral e versões traduzidas

Veja o arquivo LICENSE.txt fornecido com o software.