Dans les logiciels de dessin vectoriel
(Adobe Illustrator, Inkscape,
Sodipody,
Coreldraw, Sketch) on sauvegarde
généralement son travail en utilisant des formats standardisés
. Les plus connus sont ceux que les illustrateurs utilisent majoritairement
: AI et EPS.
Ces formats ne sonts pas encore lus et
interprétés par Blender dont l'usage principal est bien la
modélisation 3D. Il offre pourtant des outils de gestion des
courbes de beziers et un module python pour les modifier mais, hélas
ce dernier n'est pas encore assez développé pour les
créer et ajouter des points ou sommet (cette commande existe
mais pour les courbes
NURBS seulement). Ces options seront peut-être
disponibles dans quelques mois.
On pourrait imaginer que le problème
est sans solution, et il l'est : on ne peut pas construire ces courbes
dans Blender mais Il est possible de le faire à "ll'extérieur"
et ainsi de contourner le problème. Pour cela on utilise un commande
récente de l'API (elle n'est pas encore dans la version officielle
et ne sera disponible que dans la version 2.34):
Cette commande est le sésame qui va permettre de lire et d'ouvrir un certain nombre de type de fichier dont, est surtout, les fichiers .BLEND eux-même. Mais aussi les fichiers .DXF,.VRML et ... VIDEOSCAPE. Il se trouve que (et cela est indiqué
dans la documentation officielle de Blender, au moins celle de 1999,
époque où le logiciel était encore un shareware),
le format VIDEOSCAPE est un format original utilisé par NEOGEO,
la société de production de film d'animation qui développait
les premières versions du logiciel. Il peut contenir des information
sur les courbes POLYLINE, NURBS, et BEZIER. Mieux
encore quand on le charge, ces courbes sont créées automatiquement.
Même, et c'est ce qui fait tout son interêt, dans les dernières
versions. Donc pour importer des fichiers AI,
EPS, GIMPpath
ou SVG, il faut d'abord les traduire au format VIDEOSCAPE.
Exemple de fichier VIDEOSCAPE:
Comme on le voit, c'est un format très dépouillé et si on se doute bien que les séries de 4x4 chiffres sont des matrices carrées et que les autres séries de 3X3 peuvent correspondre à des sommets accompagnés de poignées de contrôle, les autres lignes sont assez hermétiques. En voici la clef:
Pour utiliser ces informations dans les scripts, j'ai donc défini 3 classes
Remarque 1/ La matrice doit être modifiée
pour donner un affichage correct sinon la forme est sérieusement
penchée comme si on avait appliqué une matrice de gauchissement
(shear matrix ). Donc :
au lieu de :
2/ L'ordre de présentation des coordonnées doit être orienté sur le plan XZ sinon la forme est complètement écrasée. 3/ L'utilisation de la fonction Blender.Load()
suppose
une version de Blender au moins égale à la 2.34 ou
supérieure (les versions 2.33 compilées à partir
du CVS du 20 juillet 2004 sont acceptables). Il est cependant encore
possible de récupérer le fichier intermédiaire dans
lequel sont stockées les données des courbes avant importation.
Ce fichier se trouve dans le meme répertoire que le fichier original,
et porte le même nom sans extension et auquel a été
rajouté "OOO.obj". Il n'y a aucune chance que le fichier original
soit écrasé.
4/ Lorsque le fichier objet est chargé, le nom du fichier blender courant est changé. Si on ne fait pas attention, on peut être amené à sauvegarder son travail avec avec un nom d'extension un peu compliqué. Les codeurs de l'API python ont résolu le problème et cette difficulté devrait disparaitre dans Blender 2.34, version officielle. 5/ Les menus : devant la quantités de plus en plus importante de scripts, les entrées Paths du menu Import
Les questions concernant cette page
peuvent être posées sur :
|