Aller au contenu

Messages recommandés

Posté(e)

Salut

Regardez le code suivant :

 

command "_.insert" (getstring "\nFichier : ") (getpoint "\nPoint d'insertion : ") (getint "\nFacteur échelle X : ")(getint "\nFacteur échelle Y : ")(getint "\nAngle de rotation : "))

 

au message Facteur d'echelle X, quand j'appuie sur ENTREE et idem pour le facteur Y et l'angle de rotation ça crée une boucle interminable, il redemande encore Facteur d'echelle et ainsi de suite.

Comment faire pour lui préciser une valeur par défaut "1" pour le facteur d'echelle X et pour le facteur Y d'avoir comme valeur par défaut le facteur d'echelle en X.

 

2ème question avec la commande _.insert, surtout pour insérer un fichier comme bloc, au moment de demander "point d'insertion, le bloc n'apparait pas en mode flottant ç à dire avec le curseur. Est-ce qu'il y a une variable système à controller ou quoi?

 

Merci

@+

 

Posté(e)

bonjour Miamar

 

ton code n'est pas clair,

je parle de la présentation,

je te suggère ceci :

(setq fichier "monbloc"

pins(getpoint "\nPoint d'insertion : ")

echX "1"

echY "1"

anglerot "0"

)

 

(command "_.insert"

fichier

pins

echX

echY

anglerot

)

 

remarque que les renseignements de la commande INSERT

sont rentrés sous forme de chaînes

 

quant à ta deuxième question,

je n'en sais rien, pourquoi veux tu voir le bloc ?

l'intérêt me semble moindre ...

amicalement

 

Posté(e)

re bonjour Miamar,

 

il est possible en utilisant la case de dialogue

(color=red]Choix du FIchier[/color]

d'améliorer ton code,

mais c'est une option

il est également possible de demander à l'utilisateur

les différentes échelles et rotation,

mais il faudra utiliser la transformation

de Réel en Chaîne

en l'occurence RTOS

acronyme de RealToString

pour répondre à la commande INSERT

idem si tu as des attributs qui suivent,

 

amicalement

Posté(e)

Il ne faut surtout pas mettre des fonctions GETXXXX dans un "command".

Que des variables et du texte (c'est plus ou moins vrai mais c'est une règle à suivre strictement au début).

 

Dites-moi si je me trompe.

 

et renseigner les variables dans un processus qui a lieu avant ou appliquer le code de Didier pour les créer

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

Salut

 

Tamber, je ne vois pas pourquoi ne pas mettre des GetXXX à l'intérieur, question de logique ça revient au même de les mettre dans une variable puis de les fournir en réponse à la commande que de les demander directement au moment de la commande. Tu as raison peut être je ne sais trop. En tout si c'est une règle fondamentale, j'y eillerais à l'avenir, merci.

 

Quant à ta ta réponse didier, elle ne répond pas tout à fait à ma question. Je voudrais que mon code ait la forme suivante ( avec des getxx tamber, ne te faches pas )

 

 command "_.insert" (getstring "\nNom du Fichier à insérer: ") (getpoint "\nEntrez le Point d'insertion : ") (getreal "\nEntrez le Facteur échelle X [Color=red]<1>[/Color]: ")(getreal "\nEntrez le Facteur échelle Y ou [Color=red][/Color]: ")(getint "\nEntrez l'Angle de rotation [Color=red]<0>[/Color]: "))

 

les valeurs en rouges je voudrais qu'elles soient des valeurs par défaut, dès que j'appuie sur ENTREE il les prend comme des valeurs par défaut. J'espère que la question est claire.

 

est-ce que RTOS est nécessaire?

Merci

 

Posté(e)

Salut, petite rectif

 

Tamber, je ne vois pas pourquoi ne pas mettre des GetXXX à l'intérieur, question de logique ça revient au même de les mettre dans une variable puis de les fournir en réponse à la commande que de les demander directement au moment de la commande. Tu as raison peut être je ne sais trop. En tout si c'est une règle fondamentale, j'y eillerais à l'avenir, merci.

 

Quant à ta ta réponse didier, elle ne répond pas tout à fait à ma question. Je voudrais que mon code ait la forme suivante ( avec des getxx tamber, ne te faches pas )

 

 command "_.insert" (getstring "\nNom du Fichier à insérer: ") (getpoint "\nEntrez le Point d'insertion : ") (getreal "\nEntrez le Facteur échelle X [color=red]<1>[/color]: ")(getreal "\nEntrez le Facteur échelle Y ou [color=red][/color]: ")(getint "\nEntrez l'Angle de rotation [color=red]<0>[/color]: ")) 

 

 

 

les valeurs en rouges je voudrais qu'elles soient des valeurs par défaut, dès que j'appuie sur ENTREE il les prend comme des valeurs par défaut. J'espère que la question est claire.

 

est-ce que RTOS est nécessaire?

Merci

 

Posté(e)

Je ne sais pas qu'est-ce qu'il y a il a un mal de chien contre une phrase

 

ou Utilisez le Facteur X, voillà je l'écris sans crochets ni rien du tout, j'espère que c'est clair

 

@+

Posté(e)

(if (setq factech (= (getreal "\nEntrez le Facteur échelle X : ") nil))
.     (setq factech 1.0))

 

Voilà comment je ferais.

 

Ensuite, je mets factech en réponse à mon 'command'.

Bureau d'études dessin.

Spécialiste Escaliers

Développement - Formation

 

./__\.
(.°=°.)
Posté(e)

command "_.insert" (getstring "\nFichier : ") (getpoint "\nPoint d'insertion : ") (getint "\nFacteur échelle X : ")(getint "\nFacteur échelle Y : ")(getint "\nAngle de rotation : "))

 

 

je comprends pas très bien la démarche,

pourquoi ne pas faire :

(command "_insert")

ou (si autre commande à faire après):

(command "_insert" pause pause pause pause pause)

ou (plus joli):

(command "_insert")

(repeat 5 (command pause))

ou encore (pour les puristes):

(command "_insert")

(while (= 1 (getvar "cmdactive")) (command pause))

 

sinon, je conseille d'utiliser (initget)

 

PS: très pratique la variable cmdactive ;-)

 

 

 

Posté(e)

(command "_insert" pause pause pause pause pause)

n'est pas aussi bien que ca, car tu ne sais ce que l'utilisateur va choisir comme option pendant ces pauses.

pause est interressant à employer quand on est sûr qu'aucune autre option est possible.

 

Donc je déconseille cette méthode sous cette forme dans la pluspart des cas.

 

D'autre part je soustiens Tramber sur le non emploi de (getXXX) dans un (command).

Curieusement l'emploi de (getXXX) est supporté dans (command), ce qui n'était pas le cas avant.

 

Toujours est-il que je recommande aussi l'emploi d' (initget bit_de_controle) pour les appels à (getXXX). Dans ce cas l'emploi de getpxxx dans command devient ingérable car l'ordre attendu n'est plus le bon.

 

Donc en règle générale,

1-Définir ses variables avec getpxxx en effectuant un contrôle avec initget pour être sur que la variable sera affectée.

 

2-Faire un appel à command avec ces variables avec les options souhaitées en language international.

 

En respectant ces règles de base vous pourrez construire des lisp qui "tiennent la route".

 

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité