Routines LISP


Pour beaucoup, ces LISP ont été publiés sur le site CADxp, certains étaient des réponses à des demandes, beaucoup y ont évolué à la suite de tests et de suggestions des membres de ce site, merci à eux.

 

3dPolyFillet : "Raccord" sur les polylignes 3D (arc constitué des segments jointifis).
commande : 3dpolyfillet

Ac2seg : Transforme des arcs et cercles en polygone et les arcs de polylignes en succession de segments droits. Les Xdatas (ainsi que les données d'objet MAP) sont conservées.
commande : ac2seg

Ac_ob&Rac_ob : ACcroche ou RACcorde l'extémité des objets (ligne, polyligne spline) située en deçà d'une distances spécifiée au centre, point d'insertion, ou point du cercle bloc point sélectionné.
commandes : ac_ob (accrocher) rac_ob (raccorder)

AddVtx&DelVtx : Ajoute ou supprime des sommets à une polyligne (lw, 2D ou 3D).
commandes : addvtx (ajouter) delvtx (supprimer)

Anse_de_panier : crée une polyligne en anse de panier.
commande : adp

Arcedit : Permet de changer les angle de départ et de fin d'un arc (cercle ou ellipse) ou de transformer un cercle en arc.
commande : arcedit

Arcs_spec : Crée des arcs d'après le périmètre de l'arc.
commandes : arc_dcl (départ, centre, longueur), arc_cdl (centre, départ, longueur), arc_del (départ, fin, longueur)

Bbox : Crée une polyligne ou polyligne 3D figurant la "bounding box" de l'objet par rapport au SCU courant.
commande : bbox

Bissectrice : Crée une ligne sur la bissectrice de deux segments rectilignes.
commande : bissectrice

Cadre&Masque : Crée un cadre ou un masque sur les texte et mtextes sélectionnés.
commandes : ct pour un cadre mt pour un masque

CleanPoly : Supprime les sommets superposé d'une polyligne.
commande : clean_poly

Curve2Pipe : Extrude un anneau sur les chemin spécifés.
commande : curve2pipe

Dist : Retourne à la ligne de commande la distance entre 2 points ou celle de l'objet sélectionné (plus la longueur du segment pour les polylignes).
commande : dist

Diviser_Mesurer_3D : Comme les commandes diviser et mesurer avec des options supplémentaires.
commande : div3d (diviser) et mes3d (mesurer)

Edit_Bloc : Modifie les propriétes des entités composants les blocs spécifiés.
commandes : edit_bloc et edit_bloc_rep (tous les DWG d'un répertoire)

Fusion : Crée une polyligne sur le contour de chaque gorupe de polylignes fermées et contiguës sélectionnées.
commande : fusion ou ulp

GileSelScu : Active la fenêtre de sélection parallèle au SCU courant pour les commandes : copier, déplacer, échelle, effacer, miroir, rotation et 3drotation.
commande : gileselscu

Helicoide : Crée une hélicoïde (succession d'arcs elliptiques)
commande : helicoide

Increment : Incrémenter une valeur numérique, alphabétique ou alphanumérique dans une chaîne de caractères (texte ou attribut)
commandes : inctxt (insertions multiples d'un texte) ; incatt (insertions multiples d'un bloc avec attribut) ; incsuf (incrémentation de la fin des textes/attributs sélectionnés) ; incsel  (incrémentation d'une valeur dans lestextes/attributs sélectionnés) ; incadd (ajout d'une valeur incrémentée au début ou à la fin des textes/attributs sélectionnés) ; incr (boite de dialogue permettant de choisir parmi ces fonctions)

Ins3d : Insère un bloc sur le plan spécifié par 3 points.
commande : ins3d

InsTopo : Lit un fichier ascii (txt,csv...) contenant des points topo et insère des points et/ou des blocs avec attributs.
commande : instopo

Join3dpoly : Joint les objets sélectionné en une polyligne 3D.
commande : join3dpoly

Long_line : Retourne dans la fenêtre de texte la longueur de ligne et polyligne du calque sélectionné (possibilité d'enregistrer en XLS)
commande : long_line

Long_objt : Modifie la longueur totale d'un objet  en fonction du périmètre de l'objet sélectionné.
commande : long_objt

Matchset : Rend courantes le propriétés de l'entité sélectionnée qui sont cochées dans la boite dialogue
commande : matchset

Mcopy : Effectue la copie multiple d'une sélection suivant le décalage spécifié par 2 points.
commande : mcopy

Mediatrice : Crée une ligne sur la médiatrice du segment défini par 2 points.
commande : mediatrice

Model_hatch : Un LISP de BonusCAD tourné à ma façon. Récupère la définition du modèle de hachure et propose de l'enregistrer.
commande : model_hatch

MoveAtt : Permet de déplacer les attributs sélectionnés.
commande : moveatt

MsFreeze : Gèle les calques sélectionnés dans une liste ou à l'écran uniquement dans l'onglet objet.
commane : msfreeze

Obj2wipeout : Crée un "Wipeout" à partir de l'objet sélectionné (cercle, ellipse, ou polyligne avec arcs).
commande : ob2wo
 
Pline_Block : Insère un bloc contenant des attributs dont certains sont des champs dynamiques liés à une polyligne.
commande : pline_block

PlineOrg : Change le sommet de départ d'une polyligne fermée. Version 2.0 : Le nouveau point de départ peut être choisi en tout point de la polyligne
commande : plineorg

PolySegments : Permet de copier ou décaler uniquement certains segments d'une polyligne.
commandes : copsegs (copier), ofsegs (décaler)

PolySolid : Permet de créer des "polysolides" avec les versions antérieures à AutoCAD 2007
commande : polysolid

Res_hel : Crée un réseau hélicoïdal avec les objets sélectionnés.
commande : res_hel

R_Pline : Inverse le sens des sommets d'une polyligne.
commande : r_pline

Soustrac : Effectue une soustraction de solides 3d sans unir les solides
commande : soustrac

Special_Selections : Plusieurs routines pour faire des jeux de sélection suivant les propriétés d'un objet,suivant une fenêtre parallèle au SCU courant ou ou une fenêtre délimitée par un objet.
commandes : ssc (suivant la couleur), ssl (suivant le calque), sse (suivant le type d'entité), sstl (suivant le type de ligne), ssatt (suivant la valeur d'attribut), sscu (fenêtre parallèle au SCU), ssof  (fenêtre définie par un objet), ssoc (capture définie par un objet) inv_sel (inverser la sélection).

Ssfilter : Sélectionne les objets ayant les mêmes propriétés que les entités sélectionnées et qui sont cochées dans la boite dialogue.
commandes : ssf


Ssmatchssm sélectionne les objets ayant les mêmes propriétés que l'entité sélectionnée et qui sont cochées dans la boite dialogue ; ssmm permet à l'utilisateur de faire des sélections multiples.
Chacune utilise le filtre créé à partir d'un objet sélectionné et des propriétés cochées dans la boite de dialogue.

commande : ssm et ssmm

SurfDev : Crée une région représentant le développé d'un maillage 3D ouvert ou fermé à 2 sommets M (surface réglée).
commande : surfdev

Tangente : Crée une ligne sur la tangente à la courbe au point spécifié.
commande : tap

TotalArea :  Crée un lien dynamique entre un attribut du bloc "TotalArea" et la somme des aires des objets (polyligne ou mpolygon) qui lui sont liés. Le fichier ZIP contient le fichier LISP (TotalArea.lsp), un exemple de bloc (TotalArea.dwg) et un fichier texte (lisez_moi.txt).
commandes : totalarea (insertion et liaison), areaupd (mise à jour de l'attribut), areaedit (lier ou détacher des objets), areashow (mettre en surbrillance les objets liés), areaconv (facteur de conversion).

TotalPerim :  Crée un lien dynamique entre un attribut du bloc "TotalPerimeter" et la somme des aires des objets (polyligne ou mpolygon) qui lui sont liés. Le fichier ZIP contient le fichier LISP (TotalPerim.lsp), un exemple de bloc (TotalPerimeter.dwg) et un fichier texte (lisez_moi.txt).
commandes : totalperim (insertion et liaison), perimupd (mise à jour de l'attribut), perimedit (lier ou détacher des objets), perimshow (mettre en surbrillance les objets liés), perimconv (facteur de conversion).

Trapeze : Crée une polyligne trapézoïdale
commande : trapeze

Vues_pavé : Les vues prédéfinies avec le pavé numérique
commandes :  0 (Bas), 1 (Isométrie sud Ouest), 2 (Avant), 3 (Isométrie sud Est), 4 (Gauche), 5 (Haut), 6 (Droite), 7 (Isométrie Nord Ouest), 8 (Arrière), 9 ( Isométrie Nord Est)

Le coin des lispeurs
Il ne s'agit plus ici de commandes définies en LISP mais de routines LISP utilisables dans divers programmes.

Dialog : Des petites boites de dialogue pour récupérer des données de la part de l'utilisateur (un sel fichier LISP, pas de DCL séparé).
Routines :
getBlock, retourne le nom du bloc entré, sélectionné à l'écran, dans la liste déroulante ou depuis la boite de dialogue AutoCAD de sélection de fichier (getfiled).
getLayer, retourne le nom du calque entré, sélectionné à l'écran ou dans la liste déroulante.
getLayers, retourne les noms des calques cochés (possibilité de pré-cocher et/ ou de griser des calques)
InputBox, retourne la donnée entrée en réponse au message (chaîne)
DoubleInputBox, retourne la liste des données entrées en réponse aux messages (chaîne)
GetLayouts, retourne la liste des présentations choisies dans la boite de dialogue
ChooseBox, retourne la clé de l'option choisie (chaîne)

Vecteurs&Matrices : Petite librairie de fonctions de calcul vectoriel et matriciel avec quelques exemples d'application à la DAO

Listes : Petite librairie de fonctions de manipilation des listes


Sommaire