version 2.67 et graph3

Pour toute demande d'aide sur des exemples non finalisés, c'est ici.
Les exemples aboutis et intéressants seront ajoutés aux sous-forums qui suivent.

Règles du forum
Pour toute demande d'aide pour la conception (ou la confirmation d'un code) d'une figure Asymptote, c'est ici.

J'invite ceux qui ont régulièrement des questions à poser à aller dans leur panneau de l'utilisateur pour indiquer dans la signature de leurs messages :

  1. Nom du système d'exploitation (W7 ou Ubuntu 12.04 ou ...)
  2. Version d'Asymptote et éditeur utilisé pour les figures Asymptote
  3. Distribution LaTeX et éditeur utilisé pour les tex.


On va gagner du temps dans les réponses !
axiopost
Messages : 3
Enregistré le : dim. 22 nov. 2020, 13:19

version 2.67 et graph3

Message non lu par axiopost » lun. 23 nov. 2020, 10:34

Bonjour,
je ne parviens pas à générer de surfaces 3D avec la libraire graph3.

Par exemple en compilant le code minimaliste disponible sur http://gmaths.free.fr/asymptote/Surface ... repere.asy qui se contente de tracer la figure http://asy.marris.fr/asymptote/Surfaces ... 309_repere j'obtiens l'erreur suivante :
fig_zz01_200309_repere.asy: 7.24: cannot cast 'pairOrTriple()' to 'triple'

Si je modifie le code en ajoutant des parenthèses : currentpicture.userMin => currentpicture.userMin() et de même pour le max, le code se compile mais

Code : Tout sélectionner

asy -f pdf "fig_zz01_200309_repere.asy"
va donner :
GPL Ghostscript 9.53.3:
*** EPS files may not contain multiple pages.
*** Use of the %d filename format is required to output pages to multiple EPS files.
GPL Ghostscript 9.53.3: Unrecoverable error, exit code 1


Une idée de ce qui se passe et comment corriger le problème ?

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1462
Enregistré le : dim. 7 mars 2010, 14:50

Re: version 2.67 et graph3

Message non lu par GM » lun. 23 nov. 2020, 21:49

Bonsoir,
c'est un code qui a été compilé avec la version 1.95, il y a 11 ans donc se méfier des anciens codes.
Je ne sais plus pourquoi j'avais laissé cet exemple dans cette page, puisque j'ai une page dédiée aux repères ici :
http://asy.marris.fr/asymptote/Reperes_3D/index.html
Et j'avais oublié la raison du problème mais j'ai retrouvé un de mes anciens messages de 2012 quand le problème s'est posé la première fois : https://sourceforge.net/p/asymptote/dis ... /9fdc174f/
En fait, il y avait eu à l'époque un changement de version d'Asymptote et il fallait remplacer userMin par userMin() et userMax par userMax().
Je l'avais apparemment fait sur les exemples de la page http://asy.marris.fr/asymptote/Reperes_3D/index.html
en oubliant de modifier l'exemple sur la page http://asy.marris.fr/asymptote/Surfaces_3D/index.html

Quant au deuxième problème, je réfléchis.
GM
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.69)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.66-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.66-? git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1462
Enregistré le : dim. 7 mars 2010, 14:50

Re: version 2.67 et graph3

Message non lu par GM » lun. 23 nov. 2020, 22:00

Je suis personnellement avec la version 9.52 et je n'obtiens pas ce message.
Le pdf est produit (mais par contre j'ai une fenêtre blanche qui s'ouvre et que je dois forcer à se fermer).
Je ne peux pas investiguer davantage ce soir car un de mes cours n'est pas prêt pour demain.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.69)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.66-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.66-? git) + TexLive2018
Merci de préciser la votre !

axiopost
Messages : 3
Enregistré le : dim. 22 nov. 2020, 13:19

Re: version 2.67 et graph3

Message non lu par axiopost » jeu. 26 nov. 2020, 10:29

Bonjour,

J'ignorai que ces exemples étaient aussi anciens (pas de dates sur la page). En fait j'ai cherché un exemple minimaliste pour illustrer le problème. Sur la page http://asy.marris.fr/asymptote/Surfaces_3D/index.html il y a quatre exemples où figure ce problème (tous indiqués comme compilés sous la version 1.95). Comme indiqué dans mon message je me suis douté du parenthésage manquant. C'est plutôt le problème avec le rendu que je ne comprends pas : je ne voie pas à quel moment il y aurait génération de plusieurs pages !

En prenant le premier exemple des repères 3D

Figure asymptote 9646600df869be1afcffef42dcbc4e3d
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***

CODE ASYMPTOTE de la figure ci-dessus : Tout sélectionner
  1. import graph3;
  2.  
  3. size3(150,IgnoreAspect);
  4. size(8cm,0);
  5.  
  6. limits((0,0,0),(10,10,4));
  7. currentprojection=perspective(camera=(20,16,7),target=(5,5,2));
  8.  
  9. xaxis3(Bounds(),OutTicks(endlabel=false),p=blue);
  10. yaxis3(Bounds(),OutTicks(),p=red);
  11. zaxis3(Bounds(),OutTicks,p=.8green);


On obtient le même souci avec le rendu
GPL Ghostscript 9.53.3:
*** EPS files may not contain multiple pages.
*** Use of the %d filename format is required to output pages to multiple EPS files.
GPL Ghostscript 9.53.3: Unrecoverable error, exit code 1


Il serait utile de connaitre la version d'asymptote et de Ghostscript des utilisateurs chez qui le code compile. Visiblement, le problème survient après la version 2.14 qui a servi à générer l'image de l'exemple sur la page des repères 3D.

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1462
Enregistré le : dim. 7 mars 2010, 14:50

Re: version 2.67 et graph3

Message non lu par GM » jeu. 26 nov. 2020, 17:25

Bonsoir,
axiopost a écrit :
jeu. 26 nov. 2020, 10:29
J'ignorai que ces exemples étaient aussi anciens (pas de dates sur la page).
je n'ai pas voulu mettre de date globale sur la page car, j'étais susceptible d'en ajouter ultérieurement.

Par contre pour l'exemple évoqué, il était indiqué :

Code : Tout sélectionner

Asymptote - Figure 0035: fig_zz01_200309_repere.asy
(Code compilé avec Asymptote version 1.95svn)
autrement dir : Exemple du 20/03/2009 compilé avec la version 1.95.

Et pour le problème de constante userMin remplacée par une fonction userMin(), c'est intervenu 2012.
Je l'ai pris en compte dans la sous-galerie Reperes_3D en oubliant de le modifier dans la sous-galerie Surfaces_3D.

Quant au problème soulevé
"GPL Ghostscript 9.53.3:
*** EPS files may not contain multiple pages.
..."
je re-précise que je ne l'ai pas avec Ghostscript 9.52 donc n'est-ce pas un problème avec Ghostscript 9.53 ?!?
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.69)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.66-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.66-? git) + TexLive2018
Merci de préciser la votre !

axiopost
Messages : 3
Enregistré le : dim. 22 nov. 2020, 13:19

Re: version 2.67 et graph3

Message non lu par axiopost » dim. 29 nov. 2020, 18:08

Bonsoir et merci pour la réponse, cela m'évite de devoir chercher la dernière version fonctionnelle.

Pour info, il y a une nouvelle version d'Asymptote (v2.68) dont les release notes indiquent (...) Suport for Ghostscript 9.53 was implemented. (...)

J'ai donc essayé de recompiler y compris un des exemples fournis (examples/axis3.asy) qui fait appel à la librairie graph3 et maintenant il y a une nouvelle erreur d'initialisation de buffer.

J'ai signalé le problème sur le GitHub d'asymptote. Je reviens vers vous lorsque cela sera corrigé.

Affaire à suivre (...)

Répondre