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é ?

#1 Fri 19 January 2007 14:23

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

label mapbasic

Salut,
comment peut on rendre visible  le label d'une couche ?
jai essayé :

set map layer 1
label
Visibility on

Hors ligne

 

#2 Fri 19 January 2007 14:55

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

non en fait je souhaite que le layer affiche les etiquettes

Hors ligne

 

#3 Fri 19 January 2007 15:07

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

c'est bon jai trouvé

Hors ligne

 

#4 Fri 19 January 2007 17:59

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

Re: label mapbasic

Passionnant monologue... smile
On aurait préféré qu'il se finisse par :  "c'est bon jai trouvé...et je vous expose la solution ci dessous"
Mais on peut encore espérer ??

Hors ligne

 

#5 Mon 22 January 2007 09:57

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

Set Map layer 1  'le numero de couche
label auto on
Visibility On

Hors ligne

 

#6 Mon 22 January 2007 19:28

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

dans le meme theme :

comment peut on faire pour placer en x et y  définis chaque etiquette d'une couche ?

merci d'avance

Hors ligne

 

#7 Mon 22 January 2007 20:48

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

Re: label mapbasic

Dans un mapper on ne définit pas un X,Y d'ancrage et une taille de police
mais un (X1,Y1),(X2,Y2) définissant un rectangle dans lequel le texte va s'inscrire, ce qui définira sa taille
Dans une mise en page le label (ou texte) a un ancrage: seul compte le X,Y ou le X1,Y1 (le X2,Y2 est ignoré) et la taille de police. Ci-après le détail de la commande:

Code:

Create Text 
    [  Into  { Window  window_id  |  Variable  var_name }  ] 
     text_string  
    ( x1, y1 )  ( x2, y2 )  
    [ Font  . . . ] 
    [ Label Line { Simple | Arrow }  (  label_x ,  label_y )  ] 
    [ Spacing  { 1.0 | 1.5 | 2.0 }  ] 
    [ Justify  { Left | Center | Right }  ] 
    [ Angle  text_angle  ] 

window_id  is an Integer window ID number, identifying a Map or Layout window
var_name  is the name of an existing object variable
text_string  specifies the string, (< 255 characters), that will constitute the text object;
x1 , y1  are floating-point coordinates of one corner of the rectangular area which the text will fill
x2 , y2  specify the opposite corner of the rectangular area which the text will fill
The Font clause specifies a text style (point-size  is ignored if  text object is created in a Mapper). 
label_x , label_y  specifies the position where the text object's label line is anchored
text_angle  is a Float value indicating the angle of rotation for the text object (in degrees)

Hors ligne

 

#8 Tue 23 January 2007 11:04

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

sinon est -il possible de recuperer le numero identifiant d'une etiquette ?

Hors ligne

 

#9 Tue 23 January 2007 14:19

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

Re: label mapbasic

On trouve ces infos dans la "labelclause" du "layerclause" du Set Map, mais si et seulement si on n'est pas passé par une labélisation automatique mais qu'on a bougé les étiquettes. Dans le WOR on retrouve même un item "anchor" qui répond à la première question. Le numéro qui suit "Object" correspond au numéro de ligne des objets dans la table étiquetée (le RowID). Dans un WOR - ou dans le texte créé par WindowInfo(window_num, 15) - ça donne:

Code:

Set Map
  Layer 1
    Display Graphic
    Global Pen (1,2,7368816)  Brush (1,16777215,16777215)  Symbol (35,0,6)  Line (1,2,16711680)  Font ("Arial",0,9,0)
    Label Line None Position Center Font ("Arial",0,14,255) Pen (1,2,0) 
      With INSEE_DEPT
      Parallel On Auto On Overlap Off Duplicates On Offset 2
      Visibility On
   Object 5 Anchor (605053.78199960664,1779678.7020197548) 
   Object 1 Anchor (621685.3539981239,1729705.823023919) 
   Object 2 Anchor (672501.56499517942,1844529.7300144797) 
   Object 4 Anchor (758587.40999114257,1905128.9910088694) 
   Object 3 Anchor (699448.59699499758,1935846.2260085139)

Hors ligne

 

#10 Tue 23 January 2007 15:11

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

Oui mais est il possible de faire :
Object 5 Anchor (605053.78199960664,1779678.7020197548) ...


pour des etiquettes venant non pas d'une table mais d'une requete ?

Hors ligne

 

#11 Tue 23 January 2007 15:25

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: label mapbasic

en fait il faudrait determiner le rowid de l'enregistrement dans la table d'ou provient la requete


merci

Dernière modification par icadedt (Tue 23 January 2007 15:26)

Hors ligne

 

#12 Tue 23 January 2007 16:29

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

Re: label mapbasic

Que ce soit une table "brute" ou une table "requête" que l'on étiquette, la manip est la même.
Reste à savoir si, au sein du Set Map, la ligne Object ID Anchor(X,Y) utilisera comme ID le RowID de l'objet dans la table "brute" ou son RowID dans la table "requête" ?
A tester

Hors ligne

 

Pied de page des forums

Powered by FluxBB