Skip To Content

esri_featurelayer_elevatetofield (AutoLISP)

La fonction (esri_featurelayer_elevatetofield) modifie les coordonnées z des entités de la couche d’entités spécifiée et de toute entité TEXT liée à ces entités.

Détails de la fonction :

  • Si aucun ensemble de sélection n’est inclus, toutes les entités de la couche d’entités sont modifiées.
  • Cette fonction prend en charge les entités des couches d’entités ponctuelles, polylignes, surfaciques et annotations.

Syntaxe

(esri_featurelayer_elevatetofield flname field [elevation_settings])

Arguments

Liste des arguments de la fonction :

  • flname | chaîne | obligatoire | Nom de couche d’entités existant dans le dessin.
  • field | chaîne | (obligatoire) | Champ attributaire d’entité numérique.
  • elevation_settings | liste associée | (facultatif) | Liste des paramètres facultatifs sous forme de paires pointées pour modifier la façon dont les altitudes seront mises à jour.

    Etiquette associéeType de valeurDescription de la valeurRequis ou facultatif
    "FIELDUNITS"

    chaîne

    "Feet", "USFeet" ou "Meters" (non sensible à la casse).

    Facultatif ("Meters" par défaut)

    "ZFACTOR"

    réel double

    Multiplie la valeur FIELD de chaque entité par cette valeur pour déterminer l’altitude. Remplace FIELDUNITS.

    Facultatif (valeur par défaut 1.0)

    "SELECTIONSET"

    ensemble de sélection

    Ensemble de sélection AutoCAD permettant de limiter les entités qui seront modifiées. S’il est omis, toutes les entités de la couche d’entités sont modifiées.

    Facultatif (par défaut, toutes les entités de la couche d’entités)

Exemple d’utilisation 1

Cet exemple modifie l’altitude de toutes les entités de la couche d’entités Contours en fonction du champ attributaire de l’entité nommée ELEVATION, dont les valeurs sont exprimées en mètres.

(esri_featurelayer_elevatetofield "Contours" "ELEVATION")

Exemple d’utilisation du résultat 1

Modifie l’altitude de toutes les entités de la couche d’entités Contours en fonction des valeurs du champ attributaire nommé ELEVATION et renvoie une liste de valeurs True avec le nombre d’entités modifiées.

(T 49)

Exemple d’utilisation 2

Cet exemple modifie l’altitude d’un ensemble d’entités sélectionnées dans la couche d’entités Spot_Elevation, pour lesquelles les altitudes stockées dans le champ ELEVATION doivent être multipliées par un facteur d’échelle afin d’effectuer la conversion des mètres en pieds.

(progn
(setq ss (ssget))
(esri_featurelayer_elevatetofield "Spot_Elevation" "ELEVATION"
  (list
    (cons "ZFACTOR" 3.28084)
    (cons "SELECTIONSET" ss)
)))

Exemple d’utilisation du résultat 2

Modifie l’altitude d’un ensemble d’entités de points cotés sélectionnés selon le facteur d’échelle fourni et renvoie une liste de valeurs True avec le nombre d’entités modifiées. :

(T 20)

Valeurs renvoyées

  • En cas de réussite, renvoie une liste de valeurs True avec le nombre d’entités modifiées : (T <n>)
  • En cas d’échec, renvoie une liste avec la première valeur nil puis une liste associée contenant la valeur principale "Error" et un message d’erreur associé sous forme de chaîne : (nil ( "Error" . "<message>")).

Valeurs d’échec renvoyées

Un échec peut être dû par exemple aux raisons suivantes :

  • (nil ("Error" . "Missing required argument."))

    Un ou plusieurs des arguments requis n’a pas été fourni.

  • (nil ("Error" . "Feature layer not found."))

    La couche d’entités spécifiée n’a pas été trouvée dans le dessin.

  • (nil ("Error" . "No supported feature layers found."))

    La couche a une géométrie de type MULTIPATCH qui n’est pas prise en charge.

  • (nil ("Error" . "Field not found."))

    Nom de champ manquant ou introuvable ou elevation_settings non valide.