banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GEODATA DAYS 2024

#1 Thu 01 March 2007 13:43

Trotamundos
Participant assidu
Lieu: Geneva
Date d'inscription: 16 Jan 2007
Messages: 230

MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour !

Sous MapInfo 8.5, est-il possible de bloquer la taille d'un symbole afin qu'il apparaissent à sa taille réelle quelque soit le zoom ? Je m'explique, j'ai des symboles ponctuelles en taille 18 point pour une échelle de 1/5000000. Lorsque je zoom ou dézoom, ces symboles reste à la même taille et ne reflètent pas la réalité pour une édition cartographique propre. Voilà, si je me suis fais comprendre... Merci

Hors ligne

 

#2 Fri 02 March 2007 16:08

Trotamundos
Participant assidu
Lieu: Geneva
Date d'inscription: 16 Jan 2007
Messages: 230

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour !

Dans MI, on peut passer les labels en objet texte, et dans ce cas, lorsque l'on zoom, la taille des textes augmentent et en plus on peut conserver ces labels de manière permanente dans une table. Est-il possible de passer une couche de symboles en objet graphiques ponctuelles pour pouvoir obtenir un affichage de la taille différent selon le zoom ?

Hors ligne

 

#3 Sat 03 March 2007 16:46

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour,
Seule "astuce" trouvée à ce jour pour compenser cette fâcheuse absence de symboles 'scalables'
Les intégrer sous forme d'étiquettes dans une police ad-hoc (MapInfo miscellanous, Wingding, Symbol, etc...) puis les passer en table par l'outil 'Labeler'...
Une galère: trouver la lettre (quand elle existe!) qui correspond au symbole voulu ... la correspondance si je me souviens est entre le code ASCII de la lettre (ou du signe) et le numéro d'ordre du symbole

ps: ceci rejoint votre autre question, que je déplace dans ce sujet

Hors ligne

 

#4 Mon 05 March 2007 10:30

Trotamundos
Participant assidu
Lieu: Geneva
Date d'inscription: 16 Jan 2007
Messages: 230

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour et merci pour ces tuyaux !

Si je comprends bien, il faut que je crée des labels représentant mes symboles ponctuelles pour ensuite les passer, par l'outil AutoLabeler, en table permanente... Finalement, cela rejoindrait la méthode de passer les labels textuelles en objets graphiques citée auparavant. Bonjour la méthode ! Je vais faire des tests.

Hors ligne

 

#5 Tue 27 March 2007 17:02

Trotamundos
Participant assidu
Lieu: Geneva
Date d'inscription: 16 Jan 2007
Messages: 230

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour Maurice !

Pour en revenir à ces scalable symbol dans MapInfo, j'ai encore quelques soucis et j'aimerais vraiment les résoudre car c'est fastidieux autrement.

Ce que j'ai fait :

- j'ai créé un champ caractère dans ma table de symboles à cartographier en remplissant avec la lettre correspondant à mon symbol (c'est pas si difficile de trouver la lettre correspondante lorsque l'on passe par la table des caractères Windows). Par exemple, en remplissant ce champ avec la lettre L.

- par AutoLabel, je place mes labels en utilisant le champ créé précédemment.

- j'enregistre ces labels dans une table

- je peux ensuite modifier mes labels et notamment la police de caractère. En choisissant ma police de symbole, ma lettre L redevient mon symbole, et surtout scalable.

Est-ce la technique que vous me préconisiez? Ou j'ai mal compris...

En revanche, pour certaine police, je ne trouve pas le code correspondant. Par exemple avec le police Webdings. Je trouve un code de 0x2A pour l'enveloppe par exemple mais comment insérer un truc pareil dans un champ attributaire MapInfo.

Enfin, si vous pouvez m'éclairer, ou d'autres car je suis certain que tous ont connu ce problème. Merci

Hors ligne

 

#6 Tue 27 March 2007 18:23

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Pour faire vite: en Wingdings (pas Webdings), l'enveloppe c'est * ou  +
J'essaierai de trouver le temps d'expliquer pourquoi... sad

Hors ligne

 

#7 Tue 27 March 2007 21:05

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Toutes les polices de caractères windows fonctionnent sur de l'ascii étendu.
Au départ l'ASCII était prévu sur 7 bits, il ne gérait que les caractère standard utilisé au US, donc pas d'accent. Les 31 premiers étant des caractères de contrôle, l'espace 32.

Il a été étendu pour permettre la saisie des accent et ce baser sur le standard informatique le 8 bits ce qui à permet un ajout supplémentaire de caractères et permettre la saisie des accents.

Windings est une police en ce sens mais remplace les caractères lisibles par des symboles.
En général les tables Ascii sont fournit en hexadécimal, pour des raisons de présentations tableaux et de simplifications d'écriture du code binaire. La valeur est donc de 42. L'enveloppe est alors *.

Note l'unicode permet lui l'affichage de tous les caractères mondiaux (enfin simplifié pour la japonais et le chinois) qui lui est stocké sur 16 bits donc 4 chiffres hexadécimaux de description.

Hors ligne

 

#8 Tue 27 March 2007 22:01

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Merci Damien...et chapeau pour l'explication !!
ps: en Webdings l'enveloppe est en 155 qui correspond à un code ASCII non interprété par MI
Que faire alors, sinon changer de police ??

Hors ligne

 

#9 Tue 27 March 2007 23:55

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Le caractère pour afficher l'enveloppe en webdings est › avec le code hexadecimal 9B soit 155.
Mapinfo est capable d'afficher n'importe lequel caractère ascii même ceux au delà de 127.

Celà marche déjà sur la version 5, Si on arrive pas à l'écrire avec Mapbasic. Il suffit d'utiliser utiliser chr$(155) celà marche à tout les coups. J'ai réussi à l'insérer dans un champ texte et à le visualiser en utilisant la font webdings

Note j'ai oublié dans mon explication le caractère x0 fin de chaine, ou vide
Les caractères ayant une valeur de 0 à 255 en ASCII étendu.

Hors ligne

 

#10 Wed 28 March 2007 09:51

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Que dire si ce n'est : merci...
Mais il me reste une question: comment je fais, au clavier de mon portable, pour entrer ce caractère hexadécimal 9B ???
En effet, j'arrive bien à taper Alt+0155 sur mon PC de bureau, mais je n'arrive pas à reproduire ça sur mon portable non muni d'un pavé numérique. Ce n'est pas lié à MI mais j'ai toujours eu ce problème: comment faire Alt+xxx sans pavé numérique ???
Tout ce que j'ai trouvé c'est :
- d'utiliser la table de caractères
- ou alors, parce que c'est possible depuis MI85, de taper print chr$(155) dans la fenêtre MapBasic
et de copier le résultat dans la fenêtre message pour le coller en tant que contenu de mon étiquette en Webdings

Hors ligne

 

#11 Wed 28 March 2007 10:04

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

je n'arrive pas à reproduire ça sur mon portable non muni d'un pavé numérique


Ca me semble peu probable. As tu une touche Fn (d'une couleur différente en général) sur ton clavier, à côté de la touche Ctrl doit ou gauche ? Normalement elle te sert à utiliser le pad numérique qui est en couleur sur certaines lettres genre 1, 2, 3 sur les lettres J, K,L. Tu appuie dessus et le pad numérique est dispo. Il doit aussi y avoir une autre touche qui verouille la touche Fn du même genre que Caps Lock.

Robin.

Hors ligne

 

#12 Wed 28 March 2007 10:41

Gérard parcoli
Participant actif
Date d'inscription: 9 Jan 2007
Messages: 95

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

> Mais il me reste une question: comment je fais, au clavier de mon portable, pour entrer ce caractère hexadécimal 9B ???

Il faut passer le clavier en 'Verr Num' ou 'num lock'.
De cette manière les touches ayant une double fonction Lettre / Chiffre (U = 4, I = 5, ... ) retourneront un chiffre. Il suffit ensuite de taper le code numérique en maintenant la touche Alt...
Ca fonctionnait sur un portable HP, et ca continue de fonctionner sur un portable DELL... bien que je préfère utiliser l'outil charmap de windows pour trouver le bon caractère.

Gérard

Hors ligne

 

#13 Wed 28 March 2007 11:00

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Merci les gars ...et tant pis si je passe pour un crétin smile  (ça m'apprendra à mieux lire les notices!!)
Je n'avais essayé que le Caps Lock pour accéder aux chiffres...et ça ne marchait pas
J'essaie le Num Lock et/ou la touche Fn ce soir (c'est gravé dans un bleu délavé...et j'y vois mal là où je bosse: ça m'apprendra à ne pas faire de bêtes économies sur l'éclairage smile)

Hors ligne

 

#14 Wed 28 March 2007 12:40

Trotamundos
Participant assidu
Lieu: Geneva
Date d'inscription: 16 Jan 2007
Messages: 230

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour à tous !

Ce post devient intéressant et surtout très instructif.

* Pour commencer, où trouver un tableau de correspondance entre code ASCII et lettre visible sur le web.
* Ensuite, où trouver un petit soft pour convertir un code ASCII et code Hexa (je ne sais plus comment faire les conversions!)
* D'après la table de caractère Windows et vos commentaires, dans la police Wingdings, le symbole enveloppe est 0x2A en code Hexa (le préfixe 0x est la passage de l'ASCII à l'ASCII étendu donc), 42 en code ASCII et * en lettre visible. Très bien, je peux insérer mon symbole enveloppe dans une boite texte (pour un label par exemple) en tapant ALT+42 et en choisissant bien sûr la police Wingdings. La manip chr$(42) marcherait sans doute dans uen chaîne de caractère dans MapBasic mais pas dans un boite de dialogue.
* Enfin, pour en revenir à mes scalable symbol, but du topic, mon dernier souci est que lorsque je génère mes labels pour conversion en scalable symbol, même avec un offset de 0, ils sont toujours décalés par rapport à mes symboles d'origine. Comment placer un label exactement à l'endroit du symbol donc? Sinon, c'est pas jouable de travailler avec des symboles décalé, même s'ils sont scalable...

Peut-être va t'on trouver une parade à ces scalable symbol sur MapInfo??? Merci

Hors ligne

 

#15 Wed 28 March 2007 14:12

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Hello,

Si vous avez Excel, le fonction code() devrait vous donner les équivalences. Sinon, il suffit de taper ASCII dans Google pour trouver tout ce qu'il faut sur le sujet

Voilu,
Robin.

Hors ligne

 

#16 Wed 28 March 2007 20:31

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Le code 0x indique que l'on travaille en hexadécimal.

Pour avoir une conversion rapide. Utiliser la calculette windows en mode scientifique, elle permet l'écriture en hexadécimal. une foi saisi votre chiffre en hexadécimal, passer en décimal. La valeur afficher sera alors la valeur décimale du nombre dernièrement saisi.

Note: Ou est la position des points de calage de ton label?
Il devrait être centré pour que cela marche.

Hors ligne

 

#17 Thu 29 March 2007 12:34

Trotamundos
Participant assidu
Lieu: Geneva
Date d'inscription: 16 Jan 2007
Messages: 230

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Bonjour à tous!

Excellente cette calculette scientifique dans Windows. Maintenant, je peux créer tous mes scalable symboles. Pour le décalage, j'indique bien au label un offset de 0 et un point d'ancrage au milieu mais les labels apparaissent légèrement décalés en bas à droite de mes symboles. Mais bon, en fois mes labels transformés en scalable symbol, je les sélectionne tous et je les décale tout doucement avec CTRL+les flèches (en fait, tous mes symboles sont décalés de la même manière). C'est artisanal mais ça fonctionne ! Ce topic m'aura permis de faire des scalable symbols dans MapInfo et d'en apprendre sur les police de caractère. Merci

Hors ligne

 

#18 Thu 29 March 2007 14:05

Gérard parcoli
Participant actif
Date d'inscription: 9 Jan 2007
Messages: 95

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Une autre voie pour transformer une carte de symboles taille fixe en carte d’objets textes scalable, serait d’utiliser une commande de ce type dans la fenêtre mapbasic :

update matable set obj = CreateText(FrontWindow(), centroidx(obj), centroidY(obj), chr$(StyleAttr(objectinfo(obj,2),1)), 0,0,0)

ou matable serait une copie de la table originale,
une fenetre carte doit être ouverte et contenir la table affichée à l’échelle souhaitée,
La commande ci-dessus ne faisant que transformer le symbole en texte, il faut ensuite, la couche modifiable, tout sélectionner dans cette couche, et depuis la boite de dialogue style texte, choisir la bonne police de caractères, la bonne couleur, et la bonne taille.
Plus besoin de calculatrice scientifique pour trouver le bon code ASCII ;-),
et les textes sont positionnés au bon endroit, donc en prime plus de recalage à la main.

Hors ligne

 

#19 Thu 29 March 2007 14:06

jakesp
Membre
Lieu: Montreal, QC
Date d'inscription: 28 Sep 2005
Messages: 126
Site web

Re: MapInfo 8.5 - Bloquer la taille des symboles ponctuels

Le décalage entre le point d'ancrage de l'étiquette et le symbole est simple à expliquer: l'étiquette est "ancrée" par rapport au centroïde de l'objet mais ce centrage n'implique que la position relative de l'étiquette et ne touche pas au centroïde; donc quelque que soit le réglage de cet ancrage, le symbole est toujours créé sur le centroïde. Le point d'ancrage du symbole est ce même centroïde mais chaque police de caractères ou de symboles définie un point d'ancrage par rapport au dessin du symbole. Il est très rarement au centre du dessin, le plus souvent il est au coin supérieur gauche ce qui explique que le symbole semble être décalé vers le bas à droite.

Il est toujours possible de redéfinir ces points d'ancrage dans la police originale. Cette solution techniquement fastidieuse à réaliser aurait par contre l'avantage de ne pas créer de décalages proportionnels à la taille du symbole. À envisager et à partager éventuellement.

Hors ligne

 

Pied de page des forums

Powered by FluxBB