AutoLisp
Supposons que vous vouliez intégrer les divers exemples dans un menu.
Voici un extrait de ce qui devrait figurer dans le fichier menu d'AutoCad sous le label DESSIN ( ou DRAW).
- ***POP7
- **DESSIN
- ID_MonTrucAmoi [->&MonTrucAmoi]
- ID_McdmParois [&Parois]$I=PAROI $I=* $S=PAROIm
- ID_McdmArbre [->&Arbre]
- ID_McdmTrace [&Dessin]^P(cond ((null C:ARBRE) +
- (prompt "En cours de Chargement")(princ) +
- (load "ARBRE")) (T (princ)));ARBRE;
- ID_McdmMasse [&Masse](masse);
- ID_McdmCdG [&Centre d'inertie](Cdg);
- ID_McdmInertie [<-&I axe ](inertie);
- ID_McdmPivot [->&Pivot]
- ID_McdmPiv1RB [Pivot&1RB]^P(cond ((null C:PIVOT1RB) +
- (prompt "En cours de Chargement")(princ) +
- (load "1RB")) (T (princ)));PIVOT1RB;
- ID_McdmPivOBL [Pivot&OBL]^P(cond ((null C:PIVOTOBL) +
- (prompt "En cours de Chargement")(princ) +
- (load "OBL")) (T (princ)));PIVOTOBL;
- ID_McdmPivCNQ [Pivot&CNQ]^P(cond ((null C:PIVOTCNQ) +
- (prompt "En cours de Chargement")(princ) +
- (load "CNQ")) (T (princ)));PIVOTCNQ;
- ID_McdmPivROT [Pivot&ROT]^P(cond ((null C:PIVOTROT) +
- (prompt "En cours de Chargement")(princ) +
- (load "ROT")) (T (princ)));PIVOTROT;
- ID_McdmPivR2T [PivotR&2T]^P(cond ((null C:PIVOTR2T) +
- (prompt "En cours de Chargement")(princ) +
- (load "R2T")) (T (princ)));PIVOTR2T;
- ID_McdmPivMIX [<-PivotMIX]^P(cond ((null C:PIVOTMIX) +
- (prompt "En cours de Chargement")(princ) +
- (load "MIX")) (T (princ)));PIVOTMIX;
- ID_McdmRlt [&Roulements]$I=SKF1 $I=* $S=RLT
- ID_McdmBut [&Butées]$I=SKF2 $I=* $S=BUT
- ID_McdmOrgan [&Organes]$I=ORG $I=* $S=ORGANE
- ID_McdmCalcul [&Calculs]^P(if (startapp (findfile "MonTrucAmoi.exe"))(princ)(alert "MonTrucAmoi.exe introuvable.")) ^P
Remarque 1 : Laisser l'instruction précédente sur une ligne
Remarque 2 : fonctionne à condition que la variable d'environnement ACAD soit définie correctement. A mon avis, cette fonction est inutile compte-tenu de l'environnement Windows si l'on dispose toutefois d'assez de mémoire vive.
Et quelque part plus loin, on trouverait les menus Image :
- ***image
- **SKF1
- [Roulements SKF]
- [rlt(1RB,1 rg de billes)]^P(cond ((null C:1RB) +
- (prompt "En cours de Chargement")(princ) +
- (load "1RB")) (T (princ)));1RB;
- [rlt(2RB,2 rg de billes)]^P(cond ((null C:2RB) +
- (prompt "En cours de Chargement")(princ) +
- (load "2RB")) (T (princ)));2RB;
- [rlt(OBL,contact oblique)]^P(cond ((null C:OBL) +
- (prompt "En cours de Chargement")(princ) +
- (load "OBL")) (T (princ)));OBL;
- [rlt(ROT2B,rotule à billes)]^P(cond ((null C:ROT) +
- (prompt "En cours de Chargement")(princ) +
- (load "ROT")) (T (princ)));ROT;
- [rlt(ROT2T,rotule à rouleaux)]^P(cond ((null C:ROT2T) +
- (prompt "En cours de Chargement")(princ) +
- (load "ROT2T")) (T (princ)));ROT2T;
- [rlt(CYL,rouleaux cylindriques)]^P(cond ((null C:CYL) +
- (prompt "En cours de Chargement")(princ) +
- (load "CYL")) (T (princ)));CYL;
- [rlt(CONI,rouleaux coniques)]^P(cond ((null C:CNQ) +
- (prompt "En cours de Chargement")(princ) +
- (load "CNQ")) (T (princ)));CNQ;
- [rlt(ECRSKF,écrou+rondelle-frein)]^P(cond ((null C:ECR) +
- (prompt "En cours de Chargement")(princ) +
- (load "ECR")) (T (princ)));ECR;
- [rlt(ETASKF,rondelle d'étanchéïté)]^P(cond ((null C:ETA) +
- (prompt "En cours de Chargement")(princ) +
- (load "ETA")) (T (princ)));ETA;
- [ Butées SKF]$I=SKF2 $I=*
- **SKF2
- [Butées SKF]
- [rlt(BSE,simple effet)]^P(cond ((null C:BSE) +
- (prompt "En cours de Chargement")(princ) +
- (load "BUTSE")) (T (princ)));BSE;
- [rlt(BSESP,simple effet sphérique)]^P(cond ((null C:BSESP) +
- (prompt "En cours de Chargement")(princ) +
- (load "BUTSESP")) (T (princ)));BSESP;
- [rlt(BDE,double effet)]^P(cond ((null C:BDE) +
- (prompt "En cours de Chargement")(princ) +
- (load "BUTDE")) (T (princ)));BDE;
- [rlt(BDESP,dble effet sphérique)]^P(cond ((null C:BDESP) +
- (prompt "En cours de Chargement")(princ) +
- (load "BUTDESP")) (T (princ)));BDESP;
- [Roulements SKF]$I=SKF1 $I=*
- **PAROI
- [Raccords de Parois moulées]
- [icoparoi(L1,en L)]^P(cond ((null C:RACCL) +
- (prompt "En cours de Chargement")(princ) +
- (load "L")) (T (princ)));RACCL;
- [icoparoi(L2,en L vif)]^P(cond ((null C:RACCLvif) +
- (prompt "En cours de Chargement")(princ) +
- (load "Lvif")) (T (princ)));RACCLvif;
- [icoparoi(V1,en V)]^P(cond ((null C:RACCV) +
- (prompt "En cours de Chargement")(princ) +
- (load "V")) (T (princ)));RACCV;
- [icoparoi(T1,en T 1er type)]^P(cond ((null C:RACCT1) +
- (prompt "En cours de Chargement")(princ) +
- (load "T1")) (T (princ)));RACCT1;
- [icoparoi(T2,en T 2ème type)]^P(cond ((null C:RACCT2) +
- (prompt "En cours de Chargement")(princ) +
- (load "T2")) (T (princ)));RACCT2;
- [icoparoi(T3,en T 3ème type)]^P(cond ((null C:RACCT3) +
- (prompt "En cours de Chargement")(princ) +
- (load "T3")) (T (princ)));RACCT3;
- [icoparoi(Y1,en Y symétrique)]^P(cond ((null C:RACCY1) +
- (prompt "En cours de Chargement")(princ) +
- (load "Y1")) (T (princ)));RACCY1;
- [icoparoi(Y2,en Y assymétr.)]^P(cond ((null C:RACCY2) +
- (prompt "En cours de Chargement")(princ) +
- (load "Y2")) (T (princ)));RACCY2;
- **ORG
- [Organes d'assemblage]
- [icorlt(vis1,vis Chc)]^P(cond ((null C:CHC) +
- (prompt "En cours de Chargement")(princ) +
- (load "CHC")) (T (princ)));CHC;
- [icorlt(H1,écrouH face)]^P(cond ((null C:H) +
- (prompt "En cours de Chargement")(princ) +
- (load "ECRH")) (T (princ)));(C:H 0 );
- [icorlt(H2,écrouH coté)]^P(cond ((null C:H) +
- (prompt "En cours de Chargement")(princ) +
- (load "ECRH")) (T (princ)));(C:H 1 );
- [icorlt(H3,écrouH dessus)]^P(cond ((null C:H) +
- (prompt "En cours de Chargement")(princ) +
- (load "ECRH")) (T (princ)));(C:H 2 );
- [icorlt(rdp1,rondelle plate)]^P(cond ((null C:ROND) +
- (prompt "En cours de Chargement")(princ) +
- (load "RONDELLE")) (T (princ)));ROND;
- [icorlt(W1,rondelle grower)]^P(cond ((null C:W) +
- (prompt "En cours de Chargement")(princ) +
- (load "W")) (T (princ)));W;