Assemblage d'objets 3D

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.

Assemblage d'objets 3D

Messagepar XavteX » Dimanche 15 Avril 2012, 10:51

Bonjour,

Je voudrais savoir si plusieurs objets peuvent être assemblés pour être traités ensuite comme un seul nouvel objet sur lequel on pourra appliquer les transformations comme shift ou rotate ?
La figure obtenue avec le code suivant peut-elle être réduite à un seul objet ?
(J'aimerais dessiner l'éponge à l'étape suivante...)


Code: Tout sélectionner
import solids;
currentprojection=orthographic(6,4,2,zoom=0.65);
currentlight=White;
size(6cm,0);


surface s=scale3(0.99)*unitcube;

//Niveau 0
draw(shift(0,0,0)*s,blue);
draw(shift(1,0,0)*s,blue);
draw(shift(2,0,0)*s,blue);

draw(shift(0,1,0)*s,blue);

draw(shift(2,1,0)*s,blue);

draw(shift(0,2,0)*s,blue);
draw(shift(1,2,0)*s,blue);
draw(shift(2,2,0)*s,blue);

//Niveau 1
draw(shift(0,0,1)*s,blue);

draw(shift(2,0,1)*s,blue);





draw(shift(0,2,1)*s,blue);

draw(shift(2,2,1)*s,blue);



//Niveau 2
draw(shift(0,0,2)*s,blue);
draw(shift(1,0,2)*s,blue);
draw(shift(2,0,2)*s,blue);

draw(shift(0,1,2)*s,blue);

draw(shift(2,1,2)*s,blue);

draw(shift(0,2,2)*s,blue);
draw(shift(1,2,2)*s,blue);
draw(shift(2,2,2)*s,blue);


Merci
Dernière édition par guiguiche le Lundi 16 Avril 2012, 08:00, édité 1 fois.
Raison: balise [code] modifiée
XavteX
Kilo-utilisateur
 
Messages: 122
Inscription: Jeudi 13 Janvier 2011, 09:44
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: Assemblage d'objets 3D

Messagepar GMaths » Dimanche 15 Avril 2012, 11:16

GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar GMaths » Dimanche 15 Avril 2012, 11:19


Je réalise que c'est déjà toi qui lançais le sujet à l'époque.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar XavteX » Dimanche 15 Avril 2012, 11:25

Je cherche plus simple (étape 1 ou 2) et surtout cette question de savoir si par exemple on peut assembler plusieurs objets (cube + autre) et translater l'ensemble par ex...
XH
XavteX
Kilo-utilisateur
 
Messages: 122
Inscription: Jeudi 13 Janvier 2011, 09:44
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar GMaths » Dimanche 15 Avril 2012, 12:16

XavteX a écrit: surtout cette question de savoir si par exemple on peut assembler plusieurs objets (cube + autre) et translater l'ensemble par ex...


Code: Tout sélectionner
import solids;

currentprojection=orthographic(6,4,2,zoom=0.95);
currentlight=White;
size(400);

surface s=scale3(0.99)*unitcube;

transform3 t[]={identity(4),shift(1,0,0),shift(2,0,0),shift(0,1,0),shift(2,1,0),shift(0,2,0),shift(1,2,0),shift(2,2,0),
                shift(0,0,1),shift(2,0,1),shift(0,2,1),shift(2,2,1),
                shift(0,0,2),shift(1,0,2),shift(2,0,2),shift(0,1,2),shift(2,1,2),shift(0,2,2),shift(1,2,2),shift(2,2,2)};

picture pic;
size3(pic,200);
for(int k=0; k<t.length; ++k) draw(pic,t[k]*s,paleblue);

add(pic.fit3(),(0,0,0));
add(pic.fit3(),(4,-4,4));
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar GMaths » Dimanche 15 Avril 2012, 12:27

... et puis je vais t'éviter d'ajouter toute une série de add(.....) :

Code: Tout sélectionner
import solids;
currentprojection=orthographic(6,4,2,zoom=0.95); currentlight=White;
size(400);
real a=2;
surface s=scale3(0.99*a)*unitcube;
transform3 tx=shift(a,0,0), ty=shift(0,a,0), tz=shift(0,0,a), tx2=shift(2a,0,0), ty2=shift(0,2a,0), tz2=shift(0,0,2a),
           t[]={identity(4),tx,tx2,ty,tx2*ty,ty2,tx*ty2,tx2*ty2,                 // niveau 0
                tz,tx2*tz,ty2*tz,tx2*ty2*tz,                                          // niveau 1
                tz2,tx*tz2,tx2*tz2,ty*tz2,tx2*ty*tz2,ty2*tz2,tx*ty2*tz2,tx2*ty2*tz2}; // niveau 2
picture pic; size3(pic,100);
for(int k=0; k<t.length; ++k) draw(pic,t[k]*s,paleblue);
for(int k=0; k<t.length; ++k) add((t[k]*scale3(1/3)*pic).fit3());


Image


Mais si c'est un script plus simple à comprendre que celui qui avait été proposé... c'est une solution lourde car que de facettes inutiles !
Dernière édition par GMaths le Lundi 16 Avril 2012, 08:10, édité 7 fois.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar XavteX » Dimanche 15 Avril 2012, 13:05

MERCI !!! :D :D :D
XavteX
Kilo-utilisateur
 
Messages: 122
Inscription: Jeudi 13 Janvier 2011, 09:44
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar Arnaud » Dimanche 15 Avril 2012, 16:36

@XavteX : est-ce que tu as désactivé le bbcode dans ton profil ou un truc du genre ? Car les balises code ne passent pas du tout dans tes messages, et pour la lisibilité c'est très gênant.
Arnaud

Un peu d'info - Pyromaths
LaTeX - Exemples de formules LaTeX

Pas d'aide en MP (non plus)
Arnaud
Modérateur
 
Messages: 7115
Inscription: Lundi 28 Août 2006, 12:18
Localisation: Allemagne
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar XavteX » Dimanche 15 Avril 2012, 17:11

Non ils sont activés...
XavteX
Kilo-utilisateur
 
Messages: 122
Inscription: Jeudi 13 Janvier 2011, 09:44
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar guiguiche » Lundi 16 Avril 2012, 08:02

Arnaud a écrit:@XavteX : est-ce que tu as désactivé le bbcode dans ton profil ou un truc du genre ? Car les balises code ne passent pas du tout dans tes messages, et pour la lisibilité c'est très gênant.

Non, XavteX est joueur :D et écrit les balises à la main (au lieu de cliquer) mais n'utilise pas la bonne syntaxe (antislash au lieu de slash pour fermer la balise, c'est déjà la deuxième troisième fois que je vois cette erreur chez lui).
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
guiguiche
Modérateur
 
Messages: 8073
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar GMaths » Lundi 16 Avril 2012, 08:04

J'ai modifié le dernier code... car j'avais repris la série des "shift" avec "1" et "2" de xavtex... mais cela ne me plaisait pas : dès lors, où on répète ainsi des nombres particuliers, c'est qu'il faut définir une variable que l'on va pouvoir modifier.

---------------------

PS : à quand une fonte de chasse fixe pour la fenêtre de saisie d'un message ? Cela éviterait d'éditer plein de fois les messages pour que les scripts entre code et /code soient ensuite alignés comme on veut.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar GMaths » Lundi 16 Avril 2012, 10:20

GMaths a écrit:PS : à quand une fonte de chasse fixe pour la fenêtre de saisie d'un message ? Cela éviterait d'éditer plein de fois les messages pour que les scripts entre code et /code soient ensuite alignés comme on veut.

Je dis cela mais je ne l'ai fait que ce matin sur http://asy.gmaths.net/forum/.
Il suffit de reprendre la fonte des bbcodes "code" et de l'affecter aux deux textarea du css.

Image

Il faut penser à vider le cache des navigateurs.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar rebouxo » Lundi 16 Avril 2012, 10:28

GMaths a écrit:
PS : à quand une fonte de chasse fixe pour la fenêtre de saisie d'un message ? Cela éviterait d'éditer plein de fois les messages pour que les scripts entre code et /code soient ensuite alignés comme on veut.


Est-ce vraiment le problème de la fonte. Le problème c'est que la tabulation sert à autre chose dans les navigateurs internet. Sans compté que les éditeurs de textes ne sont pas capable de se mettre d'accord sur la valeur d'une tabulation.

En plus les navigateurs te permettent de changer cela (en tous les cas firefox le permet).

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6961
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar GMaths » Lundi 16 Avril 2012, 10:36

rebouxo a écrit:Est-ce vraiment le problème de la fonte. Le problème c'est que la tabulation...

Il y a les deux problèmes !
Mais celui de la fonte est facile à régler.

Moi je n'utilise que des espaces : une tabulation est automatiquement transformée en 4 espace avec Notepad++.

... mais quand sur un forum, on voit le décalage suivant :
Image
et, quand en éditant, on obtient cela :
Image
... on n'a pas envie de compter les espaces qu'il faut mettre pour aligner les trois commentaires.
GMaths
Exa-utilisateur
 
Messages: 2031
Inscription: Lundi 01 Octobre 2007, 09:20
Statut actuel: Actif et salarié | Enseignant

Re: Assemblage d'objets 3D

Messagepar XavteX » Lundi 16 Avril 2012, 20:18

GMaths m'a expliqué en long en large et en travers l'installation d'Asymptote, l'utilisation de Notepad++, ... etc - j'en passe beaucoup - mais il ne m'a jamais dit que pour les BBCodes il suffisait de cliquer dessus !!!
Qu’importe si le chemin est long, du moment qu’au bout il y a un puits

Merci pour votre aide précieuse ! :wink:
XavteX
Kilo-utilisateur
 
Messages: 122
Inscription: Jeudi 13 Janvier 2011, 09:44
Statut actuel: Actif et salarié | Enseignant


Retourner vers Asymptote

Qui est en ligne

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