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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 04 April 2006 23:04

bondyfalat
Juste Inscrit !
Lieu: Grasse
Date d'inscription: 6 Dec 2005
Messages: 7
Site web

[MapBasic]Création de rectangle dans la couche dessin

Bonjour,

Je souhaite créer à partir de MapBasic un rectangle pour chaque entrée d'une table de données.

Voici le bout de code

Code:

Include "mapbasic.def"
Include "OpenTable.def"

Declare Sub main

Sub Main
    Dim compareTopo As String
    Dim cmd As String
    Dim px, py, deltaZ, sumD As Alias
    Dim val_px, val-py, val_deltaZ, val_sumD As Float
    Dim idWindow As integer

    compareTopo = "CompareTopo"
    call OpenTableWithTableName(compareTopo)
    
    Map From compareTopo
    idWindow = FrontWindow()
    Set Window idWindow Layer 0 editable On
    
    px = compareTopo + ".px"
    py = compareTopo + ".py"
    deltaZ = compareTopo + ".DeltaZ"
    sumD = compareTopo + ".SumD"
    Fetch First From compareTopo
    Do While Not EOT(compareTopo)
        val_px = px
        val_py = py
        val_deltaZ = py+deltaZ
        val_sumD = px+sumD
        cmd = "Create Rect Into Window " & idWindow & " (" val_px & ", " & val_py & ") (" & val_sumD & ", " & val_deltaZ & ")"
        print cmd
        run Command cmd
        Fetch Next From compareTopo
    Loop
End Sub

Lors de l'appel de cette procédure, le print s'excécute parfaitement mais rien n'apparait
dans la couche de dessin.

Si vous avez une idée !

Cordialement

Didier

Hors ligne

 

#2 Wed 05 April 2006 09:03

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

Re: [MapBasic]Création de rectangle dans la couche dessin

Bonjour
Piste:  à la place de :
Set Window idWindow Layer 0 editable On
dire:
Set Map Layer 0 editable On

Hors ligne

 

#3 Wed 05 April 2006 09:27

Florent
Participant actif
Lieu: Nantes
Date d'inscription: 5 Sep 2005
Messages: 86
Site web

Re: [MapBasic]Création de rectangle dans la couche dessin

Bonjour,

Plusieurs petits points pour que celà fonctionne

Code:

    Set Map Window idWindow Layer 0 editable On

Affecter le système de projection en vigueur

Code:

    Dim s_CoordSyst as string
    s_CoordSyst = TableInfo(compareTopo, TAB_INFO_COORDSYS_CLAUSE)
    Run command "Set " & s_CoordSyst

Cordialement


Florent

Hors ligne

 

#4 Thu 06 April 2006 09:56

bondyfalat
Juste Inscrit !
Lieu: Grasse
Date d'inscription: 6 Dec 2005
Messages: 7
Site web

Re: [MapBasic]Création de rectangle dans la couche dessin

Bonjour.

Merci à Florent, le truc est le changement de système de coordonnées.

Ca marche au poil.

Merci.

Didier

Hors ligne

 

Pied de page des forums

Powered by FluxBB