[Résolu] Plusieurs solides simples et pointillés

Tout ce qui concerne l'utilisation ou l'installation d'Asymptote.

Modérateur: gdm_asy

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar projetmbc » Vendredi 29 Janvier 2010, 12:41

OG a écrit:@Gaëtan : tu sais ce qu'il te reste à faire ?

Je vais essayer de voir avec l'auteur de geospace. Je lui enverrais un mail en fin de journée.

PS : quelqu'un a-t-il fait un comparatif entre Asymptote et TeXgraph ?
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Vendredi 29 Janvier 2010, 14:23

Bonjour

Je pense que c'est possible de faire un équivalent en Asymptote, les deux utilisent la méthode du "binary space partition". Mais il faut mettre les mains dans le cambouis (bsp.asy), pour avoir

1) gestion correcte des pointillés
2) affichage éventuel des intersections.
3) gérer les solides simples telles que cylindres, sphère qui ne sont pas traiter par bsp : c'est possible car l'intersection est connue et bien déterminée (ce qui n'est pas le cas des carreux de Bézier)

Bref il y a du boulot surtout pour le point 3).

Question comparaison, sans parler des deux langages très différents et pour ce que je connais de la 3D, Asymptote est très orienté surfaces par carreux de Bézier.

Nous avons la chance d'avoir d'excellentes solutions graphiques.
Je ne peux guère en dire plus.

O.G.
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar GMaths » Vendredi 29 Janvier 2010, 21:36

projetmbc a écrit:Il se trouve que TeXgraph permet de faire tout ce que l'on peut t'attendre en 3D au Lycée, sans souci : voir ce post .

J'y lis :
projetmbc a écrit:Pas de souci/ La plupart des élèves ont du mal à visualiser ce qu'il se passe avec un cube... On ne va vraiment pas loin, un cube, un plan, une section

Je me permets de rappeler une petite production perso sur le sujet : http://gmaths.free.fr/asymptote/slide/sections_cube.pdf
Le code serait à revoir car il date d'avant le bouleversement de la version 1.44 d'Asymptote.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar GMaths » Samedi 30 Janvier 2010, 11:04

OG a écrit:Nous avons la chance d'avoir d'excellentes solutions graphiques.

Totalement d'accord.

OG a écrit:Je ne peux guère en dire plus.

On peut peut-être dire qu'elles ont toutes des avantages et des inconvénients, et que, si on a le temps nécessaire, il est conseillé de tester et de ne pas se limiter à une seule.
Personnellement, j'utilise à ce jour :

  • pstricks (estimation : 10% des productions - en fait des modifications de ce que j'avais produit à mes débuts en 2004 (jusqu'en 2007) - En 2003, je pensais encore que LaTeX était la matière que vous connaissez. :lol: )
  • asymptote (50%)
  • tikz (30%)
  • texgraph (10%)

J'interviens toujours à propos d'asymptote et non à propos des trois autres (car je pense que d'autres en font déjà très bien la promotion)... mais je pense du bien des 4 solutions... et je ne suis pas du tout comme certains qui s'offusquent que l'on puisse proposer une solution avec X quand la question posée l'est sur Y.

Edition : grrr MB : tu avais mis trop d'espace ! :lol:
Dernière édition par GMaths le Samedi 30 Janvier 2010, 11:30, édité 1 fois.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar MB » Samedi 30 Janvier 2010, 11:30

Personnellement :

  • asymptote (98%)
  • tikz (2%)

J'espère juste qu'Asymptote sera un jour aussi bien intégré à LaTeX que l'est Tikz. Car par exemple, pour faire un tableau de proportionnalité dans un document tex et ensuite ajouter une flèche indiquant le coefficient de proportionnalité, il est quand même pratique d'utiliser tikz.
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Samedi 30 Janvier 2010, 11:36

On voit bien le côté matheux : la somme fait bien 100% !
Quel talent !

O.G.
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar un bon petit » Samedi 30 Janvier 2010, 12:04

GMaths a écrit:et je ne suis pas du tout comme certains qui s'offusquent que l'on puisse proposer une solution avec X quand la question posée l'est sur Y.

Hein ? On m'appelle ?
un bon petit
Giga-utilisateur
 
Messages: 738
Inscription: Vendredi 12 Juin 2009, 21:35
Localisation: Chambéry
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar MB » Samedi 30 Janvier 2010, 12:44

OG a écrit:On voit bien le côté matheux : la somme fait bien 100% !
Quel talent !


Je vois que tu as vérifié mes savants calculs ! :mrgreen: (rien n'est laissé au hasard sur MathemaTeX)
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6890
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar projetmbc » Samedi 30 Janvier 2010, 13:27

MB a écrit:
OG a écrit:On voit bien le côté matheux : la somme fait bien 100% !
Quel talent !


Je vois que tu as vérifié mes savants calculs ! :mrgreen: (rien n'est laissé au hasard sur MathemaTeX)

La vraie question est de savoir si OG a utilisé Asymptote ou TeXgraph pour réaliser ses calculs... :mrgreen:
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Samedi 30 Janvier 2010, 16:11

projetmbc a écrit:
MB a écrit:
OG a écrit:On voit bien le côté matheux : la somme fait bien 100% !
Quel talent !


Je vois que tu as vérifié mes savants calculs ! :mrgreen: (rien n'est laissé au hasard sur MathemaTeX)

La vraie question est de savoir si OG a utilisé Asymptote ou TeXgraph pour réaliser ses calculs... :mrgreen:


Avec TikZ mais j'ai géré à la main les erreurs d'arrondis. Pendant le temps de calcul j'ai pu écrire un article et une doc pour asymptote.

O.G. 200% sérieux (comme d'habitude)
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar Ph. Ivaldi » Dimanche 31 Janvier 2010, 12:50

Salut les Matheux,

C'est la franche déconnade ici ;-)

Je vais essayer de jeter un œil sur le code mais le temps m'est compté…
Ph. Ivaldi
Méga-utilisateur
 
Messages: 267
Inscription: Vendredi 12 Janvier 2007, 23:27
Statut actuel: Actif et salarié

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar projetmbc » Dimanche 31 Janvier 2010, 14:44

Ph. Ivaldi a écrit:Je vais essayer de jeter un œil sur le code mais le temps m'est compté…

Merci d'être passé. :thumbsup:

De toute façon, il n'y a pas urgence. L'idée serait juste de comprendre les quelques lignes que tu as tapées pour une éventuelle amélioration de l'extension.
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar Ph. Ivaldi » Lundi 01 Février 2010, 00:14

J'ai identifié le problème et cela ne vient (évidement :mrgreen: ) pas de ma routine.
La différence de tracé provient du fait que les faces des solides ont (évidement) des arrêtes en commun.
Or les point de départ et d'arrivée lors d'un tracé en pointillés dépendent (évidemment) du chemin.
Du coup, l'arrête commune à deux faces va être tracée deux fois avec des pointillés décalés.

Voici une illustration de ce que j'avance:

Code: Tout sélectionner
size(10cm);
path p1=E--W, p2=NW--p1--cycle;
draw(p2,1bp+linetype("6 18"));
draw(p1,1bp+linetype("6 18"));
dot(0.1S,invisible);


donne

essai.png
essai.png (2.05 Kio) Vu 1100 fois


Il y a (évidement) un moyen de contourner le problème dans geoespace.asy ; je ferais une proposition prochainement.
Ph. Ivaldi
Méga-utilisateur
 
Messages: 267
Inscription: Vendredi 12 Janvier 2007, 23:27
Statut actuel: Actif et salarié

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Lundi 01 Février 2010, 00:55

Ph. Ivaldi a écrit:J'ai identifié le problème et cela ne vient (évidement :mrgreen: ) pas de ma routine.

Il y a (évidement) un moyen de contourner le problème dans geoespace.asy ; je ferais une proposition prochainement.


éclater toutes les arêtes par exemple. Code pas vraiment optimisé...

Code: Tout sélectionner
path3[] tabarete(shape[] shp)
{
  path3 [] lpatha;
 for(int i=0; i < shp.length; ++i)
    for(int j=0; j < shp[i].length; ++j) {
      path3 g=shp[i][j];
      for (int k=0;k<size(g)-1 ;++k ) {
        lpatha.push(point(g,k)--point(g,k+1));
      }
    }
 return lpatha;
}

void addshapes(face[] F, shape[] shp, pen drawpen=currentpen, pen fillpen=white)
{
  path3[] tgg=tabarete(shp);
  for(int i=0; i < shp.length; ++i)
    for(int j=0; j < shp[i].length; ++j) {
      path3 g=shp[i][j];
      picture pic=F.push(g);
            if(fillpen != nullpen) filldraw(pic,project(g),fillpen, drawpen);
      else draw(pic,project(tgg),drawpen);//draw(pic,project(g),drawpen);
      // filldraw(pic,g,currentlight.intensity(F[F.length-1].point)*fillpen, drawpen);
    }
}


Il reste encore l'intersection des solides à facette.

O.G.
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Lundi 01 Février 2010, 10:14

J'ai un peu trop forcé

Code: Tout sélectionner
path3[] tabarete(path3 g)
{
  path3 [] lpatha;
  for (int k=0;k<size(g)-1 ;++k ) {
    lpatha.push(point(g,k)--point(g,k+1));
  }
  return lpatha;
}


void addshapes(face[] F, shape[] shp, pen drawpen=currentpen, pen fillpen=white)
{
  for(int i=0; i < shp.length; ++i)
    for(int j=0; j < shp[i].length; ++j) {
      path3 g=shp[i][j];
      picture pic=F.push(g);
      path3[] tgg=tabarete(g);
      if(fillpen != nullpen) filldraw(pic,project(g),fillpen, drawpen);
      else draw(pic,project(tgg),drawpen);//draw(pic,project(g),drawpen);
      // filldraw(pic,g,currentlight.intensity(F[F.length-1].point)*fillpen, drawpen);
    }
 }//


O.G.
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar Ph. Ivaldi » Lundi 01 Février 2010, 10:18

Salut Olivier,

Le problème c'est qu'il ne faut pas sectionner les parties courbes, sinon ça va faire moche.
J'y travaille…
Ph. Ivaldi
Méga-utilisateur
 
Messages: 267
Inscription: Vendredi 12 Janvier 2007, 23:27
Statut actuel: Actif et salarié

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar Ph. Ivaldi » Lundi 01 Février 2010, 10:40

On peut aussi optimiser le code car il est inutile d'ajouter des faces alors que l'on a juste besoin des arrêtes cachées.
Ph. Ivaldi
Méga-utilisateur
 
Messages: 267
Inscription: Vendredi 12 Janvier 2007, 23:27
Statut actuel: Actif et salarié

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar projetmbc » Lundi 01 Février 2010, 10:45

Bonjour,
est-ce que quelqu'un pourrait m'expliquer la routine pas à pas si possible ?

PS : je ne parle pas du train-train quotidien...
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Lundi 01 Février 2010, 10:46

Ph. Ivaldi a écrit:Salut Olivier,

Le problème c'est qu'il ne faut pas sectionner les parties courbes, sinon ça va faire moche.
J'y travaille…


Salut Philippe

Je n'avais pas vu que des courbes pouvaient apparaître, je voyais uniquement le côté "à facettes".
Pour les courbes il suffit de récupérer le morceau qui va bien avec les points de contrôle... subpath pourra aider.

réponse au message suivant: pour l'optimisation oui je suis bien d'accord mais il faut réfléchir, ça prend du temps et hier soir (tard) après avoir tapé mon cours, je me suis mis à quelque chose qui m'amusait. Tu peux aussi ne tracer les segments qu'une seule fois, mais là il faut changer un peu plus le addshapes...

O.G.
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu][Asymptote] Plusieurs solides simples et pointillés

Messagepar OG » Lundi 01 Février 2010, 10:53

projetmbc a écrit:Bonjour,
est-ce que quelqu'un pourrait m'expliquer la routine pas à pas si possible ?

PS : je ne parle pas du train-train quotidien...


Quelle routine ?

L'exemple de Philippe met en lumière le problème :
quand tu traces les côtés de deux facettes comme les deux chemins n'ont pas les mêmes points de départ et arrivée, sur une arête commune les pointillés ne coïncident pas et le train-train déraille. Dans addshapes, option les pointillés, tu ajoutes par draw(pic,project(g),drawpen), le tracé en pointillés de la facette shp[i][j] remplissage vide.

Ce que j'ai fait comme un bourrin vers minuit, c'est d'éclater le chemin arête d'une facette en un tableau de segments. Eux seront tracés un à un, d'où ça marche à peu près.

Clair ?

O.G.
OG
Modérateur
 
Messages: 2285
Inscription: Lundi 12 Mars 2007, 11:20
Localisation: Rouen
Statut actuel: Actif et salarié | Maître de conférence

PrécédenteSuivante

Retourner vers Asymptote

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité