Cette section contient la documentation de tous les modules d'importation et d'exportation de Ayam.
À l'exception de l'exportation RIB, tous les modules d'import/export de Ayam sont des plugins qui doivent être chargés dans l'application avant toute utilisation éventuelle. Le chargement d'un plugin d'import/export peut se faire de trois manières différentes :
"File/Load Plugin"
,"plugins/loaddxfio.tcl"
au paramètre de préférence "Scripts"
),Le chargement implicite signifie que l'on peut simplement utiliser les entrées du menu principal "File/Open"
et "File/Save as"
(ou les raccourcis clavier correspondants) et spécifier un nom de fichier avec l'extension appropriée (par exemple : ".dxf"
).[∗]
Ayam chargera alors le plugin correspondant ("dxfio"
) et ouvrira également la boîte de dialogue des options d'importation (ou d'exportation) avec l'option "NomFichier"
déjà définie pour le nom de fichier choisi auparavant.
Bien entendu, le chargement implicite des plugins nécessite que les préférences "Plugins"
soient correctement définies.
Le tableau suivant liste les fonctionnalités Ayam supportées par les différents plugins d'importation.
Feature | RIB | OBJ | 3DMF(Apple) | DXF | 3DM(Rhino) | X3D |
Quadrics | Yes | No | Yes | No | Yes | Yes |
Trimmed NURBS | Yes | Yes | Yes | No | Yes | Yes |
Parametrics | No | No | No | No | No | Yes |
Curves | No | Yes | Yes | Yes | Yes | Yes |
Transformations | Yes | No | Yes | No | No | Yes |
Hierarchy | Yes | No | Yes | No | No | Yes |
Instances | Yes | No | No | No | No | No |
CSG | Yes | No | No | No | No | No |
Feature | RIB | OBJ | 3DMF(Apple) | DXF | 3DM(Rhino) | X3D |
Quadrics | Yes | Noa | Somed | Nob | Somed | Somed |
Trimmed NURBS | Yes | Yes | Yes | Nob | Yesc | Yes |
Parametrics | Noa | Noa | Noa | Nob | Somee | Somee |
Curves | No | Yes | Yes | Yes | Yes | Yes |
Transformations | Yes | No | Yes | No | No | Yes |
Hierarchy | Yes | No | Yes | No | No | Yes |
Instances | Yes | No | No | No | No | Yes |
CSG | Yes | No | No | No | No | No |
a : sera converti en NURBSNotez que le succès de l'exportation d'une scène 3D vers une autre application dépend non seulement de Ayam mais aussi de l'application d'importation. Par exemple, de nombreuses applications prétendent lire des fichiers au format OBJ de Wavefront mais n'importent que des données polygonales ou, pire encore, que des triangles à partir de ces fichiers. Par défaut, Ayam essaie de préserver autant d'informations que possible dans le format d'exportation respectif, ce qui conduit par exemple à l'utilisation de NURBS dans les fichiers OBJ de Wavefront. Par conséquent, pour réussir le transfert d'une scène Ayam vers une autre application, dans certains cas, il peut être nécessaire de convertir manuellement les objets NURBS de la scène Ayam en géométrie polygonale. Un script est fourni pour faciliter cette opération (
b : sera converti en PolyMeshes
c : Courbes de trim 3D exportées sous forme de PolyLines
d : certaines quadriques sont converties en NURBS (voir la documentation du plugin)
e : certains paramètriques sont converties en NURBS (voir la documentation du plugin)
"topoly.tcl"
, Voir aussi la section
Tout transformer en polygones).
Ayam n'est pas parfait non plus, car dans la plupart des options d'importation, les données relatives au matériau et aux animations sont complètement ignorées.
Le tableau suivant donne un aperçu des versions des formats de fichiers pris en charge par les différents plugins d'importation et d'exportation. L'importation de fichiers d'une version différente doit être considérée comme non supportée.
Format | RIB | OBJ | 3DMF(Apple) | DXF | 3DM(Rhino) | X3D |
Version | 3.0 | 3.0 | 1.0 | 14 | 3.0 | 3.1 |
En utilisant le plugin "rrib"
(pour Read RIB) les RIB version 3.0 peuvent être importés dans Ayam.
Ce plugin est basé sur la bibliothèque Affine Thomas E. Burge.
Commencez à importer un RIB en utilisant l'entrée de menu "File/Import/RenderMan RIB"
(si cette entrée de menu n'est pas disponible, le plugin rrib doit être chargé en utilisant l'entrée de menu "File/Load Plugin"
avant).
Le plugin RRIB prend en charge l'importation des primitives géométriques suivantes :
Le caractère manuel de la scène (mise en scène via RiOrientation) est suivi et converti au défaut de droit de Ayam. [∗]
Le plugin RRIB ne prend pas en charge la lecture des courbes, des surfaces implicites (modèles blobby) et des appels à l'interface RenderMan qui ne sont pas très utiles pour une importation RIB comme par exemple RiMakeTexture.
Les primitives géométriques non prises en charge et les autres appels à l'interface RenderMan sont ignorés sans notification.
Notez également que pour les patchs NURBS et les mailles de patchs bicubes, les points de type "P" seront promus à "Pw". Les points de type "Pz" ne sont pas pris en charge par le plugin. Le découpage des patchs NURBS par le serrage de leurs plages de noeuds n'est pas non plus pris en charge (cependant, des balises UMM/VMM seront créées, qui contiennent les nouvelles valeurs minimales et maximales de noeuds).[∗] Voir aussi la section Balises UMM/VMM (U/V Min Max).
En outre, les objets de type polygone (général) et maille polygonale seront toujours promus au rang de mailles polygonales générales.
Les instances d'objets sont résolues en objets normaux lors de l'importation. Les instances peuvent être facilement recréées en utilisant l'installation automatique (voir la section Instanciations automatiques).
S'il y a plusieurs objets dans une instance d'objet RenderMan, un objet de niveau de clôture sera créé. [∗]
Les objets procéduraux ne seront pas évalués, mais des objets RiProc seront créés, qui portent tous les arguments et créent la même séquence de demandes RIB à l'exportation que celle qui a été lue à l'importation.
Notez que dans le cas d'erreurs syntaxiques graves du fichier RIB, des messages d'erreur plus informatifs sont imprimés sur le canal stderr de Ayam (qui n'est pas redirigé vers la console Ayam).
L'importation de RIB peut être contrôlée via différentes options :
"ScaleFactor"
, détermine un facteur d'échelle global à appliquer à tous les objets importés."ReadFrame"
, spécifie le numéro de la trame dans le RIB à lire.
Une valeur de -1 signifie que toutes les trames doivent être lues.
Si un numéro de trame est spécifié et que cette trame n'apparaît pas dans le RIB sous la forme "FrameBegin <votre_numéro>"
rien ne sera importé."ReadCamera"
: si celui-ci est activé, un objet Camera sera créé lorsque le plugin RIB rencontrera un "WorldBegin"
.
Vous pouvez faire glisser cet objet caméra sur un objet Vue en perspective dans Ayam après l'importation pour voir à travers la caméra du RIB importé."ReadOptions"
, contrôle si les RiOptions doivent être importées du RIB sur la scène.
Notez que ces RiOptions écraseront les paramètres globaux actuels de la scène Ayam."ReadLights"
, si cette option est activée, les éclairages du RIB seront importés."ReadMaterial"
, contrôle si des objets matériaux doivent être créés pour les objets importés.
Tous les objets matériaux sont créés dans un niveau spécial appelé "Materials"
dans le niveau supérieur de la scène.
Le plugin essaie de maintenir le nombre d'objets "material" générés aussi bas que possible en les comparant avec les matériaux déjà existants dans ce niveau.
Cela fonctionne également avec les objets "material" qui existent avant que le plugin RRIB ne soit invoqué (tant qu'ils résident dans ce niveau spécial)."ReadPartial"
, cette option est utile si vous souhaitez importer des RIB partiels (par exemple des archives) qui ne contiennent pas de "WorldBegin"
.
Soyez prudent avec cette option (c'est-à-dire ne l'utilisez que si la lecture d'un RIB échoue), car elle active la lecture de tous les types d'objets, quelle que soit la structure du RIB."ReadSTrim"
s'il est désactivé, aucun trim simple (trim qui ne court que le long de la bordure d'un patch NURBS et qui ne coupe pas réellement la surface) ne sera importé s'il s'agit des seules courbes de trim."RescaleKnots"
permet de redimensionner les vecteurs de noeuds des patchs NURBS et des courbes de trim afin que les distances entre les différents noeuds ne soient pas inférieures à la valeur donnée.
L'utilisation d'une valeur de 1,0e-04 permet d'obtenir des NURBS qui peuvent être tracées en toute sécurité à l'aide de GLU.
La valeur par défaut de 0.0 signifie qu'il n'y a pas de mise à l'échelle."Progress"
: affiche la progression de l'importation en fonction des numéros de ligne du fichier à importer (les archives ne font pas avancer la progression).L'exportation de RenderMan Interface Bytestream (RIB) est le module d'exportation le plus important de Ayam et justifie en fait son existence. Toutes les caractéristiques de la structure des objets et des scènes de Ayam sont prises en charge (hiérarchie, CSG, instances, matériaux, lumières, etc.). De plus, Ayam prend en charge le rendu direct à partir de fenêtres de visualisation, le rendu en plusieurs passes pour les cartes d'ombre et les prévisualisations permanentes (où un moteur de rendu RenderMan est directement couplé à une fenêtre de visualisation Ayam).
La documentation sur l'exportation des RIB est répartie sur la documentation de Ayam, cette section donne quelques informations générales et sinon ne fait que pointer vers les véritables sections de la documentation.
L'exportation de RIB est toujours disponible, elle ne nécessite pas de plugin pour être chargée.
L'entrée correspondante du menu principal est "File/Export/RenderMan RIB"
et le raccourci clavier correspondant est <Ctrl+E>
.
Pour contrôler l'exportation et la restitution des RIB, il existe de nombreuses options qui sont documentées dans la section
Préférences d'exportation RIB.
Il existe également des moyens spéciaux d'exporter les RIB disponibles dans le menu principal : "Special/RIB-Export"
; ceci est documenté dans la section
Menu spécial.
Ayam peut non seulement exporter des scènes en RIB, mais aussi appeler différents moteurs de rendu RenderMan pour restituer directement les fichiers RIB exportés à l'écran ou dans un fichier image. La documentation sur la façon d'exporter/restituer directement à partir d'une fenêtre de visualisation se trouve dans la section View Menu.
Il est également possible d'invoquer l'exportation de RIB en utilisant l'interface de script, voir la section RIB export pour plus d'informations.
L'exportation de RIB respecte toujours les balises "NoExport"
et l'attribut "HideChildren"
.
Dans les anciennes versions de Ayam, les scènes Mops pouvaient être importées en utilisant l'entrée du menu principal : "File/Import Mops"
.
Depuis Ayam 1.13 l'importation Mops est un plugin nommé "mopsi"
.
Après le chargement du plugin, les scènes Mops peuvent être importées en utilisant l'entrée du menu principal "File/Import/Mops"
.
Ayam est capable d'importer la plupart des éléments d'une scène Mops, à l'exception des RiAttributs attachés à des objets géométriques quelconques, car les attributs et les ombres sont gérés par des objets matériaux dans Ayam.
Cependant, si un objet Mops possède une ombre de surface ou de déplacement, un objet matériau avec les ombres de l'objet Mops et ses RiAttributs sera automatiquement créé et lié à l'objet géométrique lors de l'importation.
Seuls les objets Mops avec des ombres de surface ou de déplacement sont pris en compte, car sinon un objet matériau devrait être créé pour chaque objet Mops importé.
Les objets matériaux sont nommés "mat0"
, "mat1"
et ainsi de suite.
Assurez-vous que la scène en cours dans Ayam ne contient pas d'objets matériaux portant ces noms, sinon l'importation de Mops ne pourra pas créer d'objets matériaux pour la scène à importer.
Les options d'importation "ResetDM"
et "ResetST"
contrôlent, si le mode d'affichage GLU et les paramètres de tolérance (voir les sections
Propriété NCurveAttr, et
Propriété NPatchAttr pour plus d'informations sur le mode d'affichage et la tolérance) des primitives NURBS doivent être réinitialisées en utilisant les valeurs de préférence globales (la valeur par défaut en Ayam) au lieu d'utiliser les valeurs du fichier de scène Mops.
Le plugin "dxfio"
permet d'importer des fichiers AutoCAD DXF (drawing interchange format) dans Ayam à l'aide de la bibliothèque Dime (de Systems in Motion, Kongsberg SIM AS, Norvège).
Ce plugin ne prend en charge que les fichiers jusqu'à la version 14 du format de fichier.
Commencez à importer un fichier DXF en utilisant l'entrée de menu principal "File/Import/AutoCAD DXF"
(si cette entrée de menu n'est pas disponible, le plugin dxfio doit d'abord être chargé en utilisant l'entrée de menu "File/Load Plugin"
).
Notez que l'ensemble du fichier DXF est lu en mémoire avant la création de toute géométrie
Le plugin d'importation DXF prend en charge la lecture des entités DXF suivantes : 3DFACE, ARC, CIRCLE, ELLIPSE, LINE, SOLID, TRACE, BLOCK, INSERT, POLYLINE, LWPOLYLINE, and SPLINE. Les entités qui ne figurent pas sur cette liste seront ignorées sans notification.
Les entités 3DFACE sont importées en tant qu'objets PolyMesh si seuls les trois premiers points sont uniques (l'entité décrit un triangle) ou si la face est plane sinon en tant qu'objets BPatch.
Les entités ARC, CIRCLE, et ELLIPSE seront lus comme des objets NCircle avec les paramètres correspondants "TMin"
, "TMax"
(pour les arcs et les ellipses) et les valeurs de transformation d'échelle (pour les ellipses) fixées.
Les entités POLYLINE sont entièrement prises en charge :
Les entités LINE, LWPOLYLINE et SPLINE seront importées en tant qu'objets NCurve.
Les entités SOLID et TRACE sont importées en tant qu'objets BPatch.
Les entités BLOCK et INSERT seront converties en objets maîtres (référencés) et instances (références).
Les bombements et les extrusions ne sont pas pris en charge.
Le tableau suivant énumère de manière exhaustive les entités DXF prises en charge et leurs homologues Ayam qui seront créées à l'importation.
DXF Entity | Ayam Object |
3DFACE | PolyMesh / BPatch |
ARC | NCircle |
CIRCLE | NCircle |
ELLIPSE | NCircle |
LINE | NCurve |
SOLID | BPatch |
TRACE | BPatch |
POLYLINE | NCurve / PolyMesh / NPatch |
LWPOLYLINE | NCurve |
SPLINE | NCurve |
INSERT | Instance |
L'importation de DXF peut être contrôlée par différentes options :
"FileName"
: est le chemin et le nom du fichier DXF à importer."ReadCurves"
: si cette option est désactivée, aucune courbe de forme libre ne sera importée."ScaleFactor"
: permet d'appliquer un facteur d'échelle à tous les objets importés."ReadLayers"
: en utilisant cette option d'importation, une seule couche ou une gamme de couches peut être sélectionnée pour l'importation. Par défaut, toutes les entités de toutes les couches seront importées."RescaleKnots"
: permet de redimensionner les vecteurs de noeuds des courbes NURBS importées afin que les distances entre les différents noeuds ne soient pas inférieures à la valeur donnée.
Une valeur "RescaleKnots"
de 1.0e-04 conduit à des NURBS qui peuvent être tracées en toute sécurité en utilisant le GLU. La valeur par défaut 0.0 signifie qu'il n'y a pas de mise à l'échelle."Progress"
: affiche la progression de l'importation ; de 0 à 50 %, Dime lit le fichier DXF ; de 50 à 100 %, le plugin dxfio convertit les entités DXF en objets Ayam.Le plugin "dxfio"
permet d'exporter des scènes Ayam vers des fichiers AutoCAD DXF (drawing interchange format) à l'aide de la bibliothèque Dime (de Systems in Motion, Kongsberg SIM AS, Norvège).
Commencez à exporter vers un fichier DXF en utilisant l'entrée du menu principal "File/Export/AutoCAD DXF"
(si cette entrée de menu n'est pas disponible, le plugin dxfio doit être chargé en utilisant d'abord l'entrée de menu "File/Load Plugin"
).
Notez que l'ensemble de la scène Ayam est converti en un modèle DXF correspondant en mémoire avant d'être écrit dans le fichier DXF.
Ayam ne crée que des entités de type POLYLINE et SPLINE et il lui manque beaucoup d'informations qui pourraient être enregistrées dans d'autres formats (par exemple, les normales et les coordonnées de texture). C'est pourquoi le format d'exportation DXF doit être évité si possible.
La fonctionnalité d'exportation du plugin dxfio couvre actuellement l'exportation de toutes les boîtes, quadrics, NURBS, PolyMeshes, instances, clones, objets de script (de type "Create"
ou "Modify"
), et objets pouvant être convertis en courbes ou surfaces NURBS ou en PolyMeshes.
Cependant, toutes les boîtes et quadrillages seront toujours convertis en surfaces NURBS et les surfaces NURBS seront tesselées en PolyMeshes pour l'exportation.
La hiérarchie des scènes et les opérations du CSG sont totalement ignorées, tous les objets seront écrits comme s'ils étaient combinés par l'opérateur union.
Toutes les transformations seront appliquées aux points de contrôle des objets exportés.
Les objets PolyMesh seront exportés vers des entités POLYLINE (sous-type PolyFaceMesh). Si un objet PolyMesh contient des faces avec des trous ou avec plus de quatre points, il sera tesselé pour l'exportation. Les normales existantes ne seront finalement pas exportées.
Les courbes NURBS seront exportées en tant qu'entités SPLINE.
Les objets d'instance sont résolus pour l'exportation.
Les sources de lumière, ainsi que les appareils photo, les vues et les matériaux ne sont pas exportés.
La prise en charge des plages de noeuds des courbes ou surfaces NURBS par des balises UMM/VMM n'est pas possible. Les coordonnées de texture ne seront pas exportées.
L'exportation DXF peut être contrôlée par le biais de différentes options :
"FileName"
: est le chemin et le nom du fichier DXF à exporter."ScaleFactor"
: permet d'appliquer un facteur d'échelle à tous les objets exportés."WriteSelected"
: n'exporte que les objets sélectionnés."ObeyNoExport"
: ignore tous les objets avec les balises "NoExport"
."IgnoreHidden"
: ignore tous les objets cachés. "WriteCurves"
: si cette option est désactivée, aucune courbe de forme libre ne sera exportée. "TopLevelLayers"
: contrôle si les objets de niveau supérieur de la scène Ayam à exporter doivent être interprétés comme des calques.
Si cette option est activée, tous les objets de ces niveaux seront placés sur la couche respective.
Les objets qui ne sont pas dans l'un de ces niveaux seront écrits sur la couche par défaut.
De plus, les noms des objets du niveau supérieur deviendront des noms de couches."Progress"
: affiche la progression de l'exportation ; de 0 à 50 %, le plugin dxfio convertit les objets Ayam en entités DXF ; de 50 à 100 %, Dime écrit le fichier DXF.Depuis Ayam 1.8.3, une fonction d'importation de Wavefront OBJ (version 3.0) est disponible et depuis Ayam 1.13, il s'agit d'un plugin ("objio"
) qui doit être chargé avant l'importation.
L'entrée de menu principale correspondante est " File/Import/Wavefront OBJ "
(si cette entrée de menu n'est pas disponible, le plugin objio doit être chargé en utilisant l'entrée de menu " File/Load Plugin "
d'abord).
L'importation de Wavefront OBJ prend en charge la lecture des lignes et des faces polygonales avec des normales de sommet et des coordonnées de texture (ces dernières sont lues comme des balises variables primitives) ; les déclarations : v, vt, vn, l, f
.
En outre, les courbes et surfaces de forme libre (NURBS) avec des courbes de trim et des coordonnées de texture (à nouveau lues comme des variables primitives) sont prises en charge ; les déclarations : vp, cstype, deg, curv, curv2, surf, parm, trim, hole, end
.
Les courbes de forme libre et les surfaces de type bmatrix, cardinal et taylor ne sont actuellement pas prises en charge. De même, l'importation de courbes et de points spéciaux (par exemple, une courbe sur une surface) n'est actuellement pas prise en charge. De plus, la prise en charge de courbes et de surfaces de forme libre par le serrage de leurs plages de noeuds n'est pas prise en charge (cependant, des étiquettes UMM/VMM appropriées seront créées, qui contiennent les nouvelles valeurs minimales et maximales de noeuds).[∗] Voir aussi la section Balises UMM/VMM (U/V Min Max).
Aucune information sur les matériaux et les regroupements ne sera importée. Les déclarations non prises en compte seront ignorées sans notification.
L'importation de Wavefront OBJ s'attend à ce que le fichier soit syntaxiquement correct. Le plugin n'est pas très bon pour détecter et signaler les erreurs. Si l'importation échoue, vous pouvez d'abord utiliser un outil tiers pour vérifier si le fichier Wavefront OBJ est valide.
De plus, notez que le plugin objio ne prend en charge que la syntaxe de la version 3.0 de Wavefront, les fichiers qui utilisent une syntaxe plus ancienne ne seront pas importés correctement.
Les options suivantes contrôlent le processus d'importation de Wavefront OBJ :
"FileName"
: est le nom du fichier Wavefront OBJ (version 3.0) "MergeFaces"
: contrôle si des faces polygonales consécutives doivent être fusionnées en un seul objet PolyMesh pour l'importation. Notez que les objets PolyMesh fusionnés doivent probablement être optimisés s'il y a des sommets utilisés par plusieurs faces (menu principal "Tools/PolyMesh/Optimize"
)."MergePVTags"
: contrôle si les balises PV des objets PolyMesh doivent être fusionnées ainsi que si elles sont soumises à une fusion automatique (voir ci-dessus). "ReadCurves"
: si cette option est désactivée, aucune courbe de forme libre ne sera importée. Cette option n'influence pas l'importation des courbes trim."ReadSTrim"
: si elle est désactivée, aucun trim simple (trim qui ne s'exécute que le long de la bordure d'un patch NURBS et qui ne coupe pas réellement la surface) ne sera importé s'il s'agit des seules courbes de trim."RescaleKnots"
: permet de redimensionner les vecteurs de noeuds des courbes NURBS, des patchs et des courbes de trim afin que les distances entre les différents noeuds ne soient pas inférieures à la valeur donnée.
Une valeur "RescaleKnots"
de 1.0e-04 conduit à des NURBS qui peuvent être tracées en toute sécurité en utilisant le GLU.
La valeur par défaut 0.0 signifie qu'il n'y a pas de mise à l'échelle."ScaleFactor"
: permet d'appliquer un facteur d'échelle à tous les objets importés."RationalStyle"
: détermine comment les coordonnées rationnelles sont stockées dans le fichier à importer (Voir aussi la section
Coordonnées rationnelles) ;
"Progress"
: affiche la progression de l'importation ; de 0 à 100%, le plugin objio lit les lignes du fichier Wavefront OBJ et crée des objets Ayam.
Le nombre peut être un peu erroné de temps en temps, car le compteur de progression ne compte que les lignes et suppose une longueur de ligne moyenne fixe de 28 caractères.Depuis Ayam 1.7, il est possible d'exporter des scènes ou des objets au format Wavefront OBJ (version 3.0).
Depuis Ayam 1.13, l'exportation au format Wavefront OBJ est un plugin ("objio"
) qui doit être chargé avant l'exportation.
L'entrée de menu principale correspondante est " File/Export/Wavefront OBJ "
(si cette entrée de menu n'est pas disponible, le plugin objio doit d'abord être chargé en utilisant l'entrée de menu " File/Load Plugin "
).
L'exportation de Wavefront prend actuellement en charge les objets suivants :
La hiérarchie de la scène Ayam sera réduite à un seul niveau, les transformations seront correctement déléguées aux enfants-objets.
Les opérations de la CSG sont totalement ignorées, tous les objets seront écrits comme s'ils étaient combinés par l'opérateur union.
L'exportation de Wavefront OBJ, actuellement, ignore toute information sur les matériaux. Seules les informations géométriques sont écrites dans le fichier OBJ. Cependant, les coordonnées de texture des étiquettes de variables primitives seront exportées.[∗]
Les balises UMM/VMM sont utilisées pour découper les vecteurs de noeuds des objets NURBS exportés.[∗] Voir aussi la section Balises UMM/VMM (U/V Min Max).
Les sources de lumière, ainsi que les appareils photo et les vues ne seront pas exportés.
Les noms d'objets seront exportés sous forme d'énoncés o
.
Les paramètres suivants contrôlent l'exportation de Wavefront OBJ :
"FileName"
: est le nom de fichier du fichier Wavefront OBJ ;"WriteSelected"
: exporte uniquement le ou les objets actuellement sélectionnés ; "TessPoMesh"
: pave automatiquement tous les objets PolyMesh en triangles pour l'exportation ; "WriteCurves"
: bascule l'écriture des courbes NURBS et la courbe NURBS fournissant des objets au fichier Wavefront OBJ exporté (Cette option n'influence pas l'exportation des courbes trim ;)"ScaleFactor"
: permet d'appliquer un facteur d'échelle à tous les objets exportés ;"RationalStyle"
: détermine comment écrire des coordonnées rationnelles (Voir aussi la section
Coordonnées rationnelles) ;
"Progress"
: affiche la progression de l'exportation ; de 0 à 100 %, le plugin objio écrit les objets Ayam dans le fichier Wavefront OBJ.En utilisant le plugin "mfio"
, les scènes peuvent être importées du format 3DMF (QuickDraw 3D Metafile) d'Apple à l'aide d'un analyseur 3DMF gratuit créé par Duet Development Corp. et distribué par Apple.
Commencez à importer un fichier 3DMF en utilisant l'entrée de menu " File/Import/Apple 3DMF "
(si cette entrée de menu n'est pas disponible, le plugin mfio doit d'abord être chargé en utilisant l'entrée de menu " File/Load Plugin "
).
Le plugin mfio ne prend en charge que la version 1.0 de 3DMF !
Le plugin mfio prend en charge l'importation des primitives géométriques suivantes :
Le tableau suivant dresse la liste complète des primitives 3DMF prises en charge et de leurs équivalents Ayam qui seront créés à l'importation.
3DMF Primitive | Ayam Object |
Polyline | NCurve |
Triangle | PolyMesh |
TriGrid | PolyMesh |
Polygon | PolyMesh |
Box | Box |
Ellipsoid | Sphere |
Cylinder | Cylinder |
Cone | Cone |
Disk | Disk |
Torus | Torus |
NURBCurve | NCurve |
NURBCurve2D | NCurve |
NURBPatch | NPatch |
Container | Level |
De plus, le plugin d'importation lit la structure de la scène à partir des objets Container. Les objets de référence seront résolus en objets normaux lors de l'importation. Les instances peuvent être facilement recréées en utilisant l'installation automatique (voir la section Instanciations automatiques).
La prise en charge de l'importation des éclairages, des attributs des caméras ainsi que des attributs des matériaux autres que la couleur et l'opacité des matériaux n'est pas disponible actuellement.
Les paramètres suivants, en outre, contrôlent l'importation de 3DMF :
"FileName"
: est le nom du fichier 3DMF à importer ;"ScaleFactor"
: L'option "ScaleFactor"
permet d'appliquer un facteur d'échelle à tous les objets importés."ReadCurves"
: Si l'option d'importation "ReadCurves"
: est désactivée, aucune courbe ne sera importée. Cette option n'influence pas l'importation des courbes de trim."ReadSTrim"
: si l'option est désactivée, aucun trim simple (trim qui ne s'exécute que le long de la bordure d'un patch NURBS et qui ne coupe pas réellement la surface) ne sera importé s'il s'agit des seules courbes de trim."RescaleKnots"
: permet de redimensionner les vecteurs de noeuds des courbes NURBS, des patchs et des courbes de trim afin que les distances entre les différents noeuds ne soient pas inférieures à la valeur donnée.
Une valeur "RescaleKnots"
de 1,0e-04 conduit à des NURBS qui peuvent être tracées en toute sécurité en utilisant le GLU.
La valeur par défaut 0.0 signifie qu'il n'y a pas de mise à l'échelle.En utilisant le plugin "mfio"
, les scènes peuvent être exportées au format 3DMF (QuickDraw 3D Metafile) d'Apple à l'aide d'un analyseur 3DMF gratuit créé par Duet Development Corp. et distribué par Apple.
Lancez l'exportation vers un fichier 3DMF en utilisant l'entrée de menu " File/Export/Apple 3DMF "
(si cette entrée de menu n'est pas disponible, le plugin mfio doit d'abord être chargé en utilisant l'entrée de menu " File/Load Plugin "
).
Le plugin mfio ne prend en charge que la version 1.0 de 3DMF !
L'exportation mfio prend en charge les objets géométriques suivants :
Toutes les transformations sont prises en charge et s'écrivent respectivement comme transformations de translation, de rotation et d'échelle.
Tous les objets de l'Instance seront résolus pour l'exportation. Les objets de niveau (quel que soit leur type) seront écrits comme des objets "Container".
Si un objet a un matériau, la couleur et l'opacité du matériau seront écrites en DiffuseColor et TransparencyColor, si la composante rouge respective de la couleur a une valeur différente de -1.
La prise en charge de l'exportation des lumières, des attributs des caméras ainsi que des attributs des matériaux autres que la couleur et l'opacité des matériaux n'est pas disponible actuellement.
La spécification du format de fichier 3DMF pour la version 1.0 est malheureusement très laconique en ce qui concerne les courbes de trim. Il n'y a pas de moyen clairement défini de les spécifier en liaison avec leur surface NURBS respective. En outre, la méthode présentée ici est la seule qui fonctionne avec l'analyseur 3DMF fourni gratuitement. Les patchs NURBS découpés seront écrits par Ayam de cette manière :
Container (
NURBPatch ( ...
)
[transformations & attributes of NURBS patch]
TrimCurves ( )
NURBCurve2D ( ...
)
Container (
NURBCurve2D ( ...
)
NURBCurve2D ( ...
)
)
)
Container
pour un patch NURBS.NURBPatch
ou les transformations et attributs potentiellement présents du patch, un élément TrimCurves
suivra (qui ne contient pas les courbes de trim mais est vide).
Les courbes de trim suivent maintenant les courbes NURBS 2D (objets NURBCurve2D
pour les trim simples) ou objets Container
(pour les boucles de trim) avec plusieurs courbes NURBS 2D jusqu'à la fin du container qui les entoure.L'importation de Ayam 3DMF s'attend à ce que les courbes trim soient délivrées de cette manière et peut alors effectivement les relire avec précision.
Les paramètres suivants, en outre, contrôlent l'exportation du 3DMF :
"FileName"
: est le nom du fichier 3DMF à exporter ;"WriteBinary"
: Cette option contrôle si la version texte ou la version binaire du format de fichier 3DMF doit être utilisée pour l'exportation."ScaleFactor"
: Cette option permet d'appliquer un facteur d'échelle à tous les objets exportés."WriteSelected"
: n'exporte que les objets sélectionnés."WriteCurves"
: Si cette option est désactivée, aucune courbe ne sera écrite dans le fichier 3DMF exporté.
Cette option n'influence pas l'exportation des courbes de trim.Depuis la version 1.8.2, Ayam contient un plugin nommé "onio"
qui peut importer des scènes du format de fichier Rhino 3DM en utilisant la boîte à outils OpenNURBS (d'où le nom du plugin onio – OpenNURBS IO) de Robert McNeel & Associates.
Lancez l'importation à partir d'un fichier Rhino 3DM en utilisant l'entrée de menu " File/Import/Rhino 3DM "
(si cette entrée de menu n'est pas disponible, le plugin onio doit d'abord être chargé en utilisant l'entrée de menu " File/Load Plugin "
).
Le plugin onio ne prend en charge que l'importation des fichiers 3DM de la version 3.0 et antérieures.
La fonctionnalité d'importation du plugin onio couvre actuellement l'importation de tous les objets NURBS et BRep et des objets qui peuvent être convertis en NURBS avec des routines de la boîte à outils OpenNURBS (ces objets sont : PolylineCurve, PolyCurve, LineCurve, ArcCurve, CurveOnSurface, RevSurface, SumSurface et PlaneSurface). Les références seront résolues. Les noms seront importés, mais convertis en une représentation ASCII. Comme la version 1.8.3 de Ayam importera également des objets Mesh dans les objets PolyMesh, les coordonnées de texture seront lues et des balises PV appropriées seront créées pour eux.
Le tableau suivant dresse la liste complète des primitives Rhino 3DM prises en charge et de leurs équivalents Ayam qui seront créés à l'importation.
Rhino 3DM Primitive | Ayam Object |
PolyLineCurve | NCurve |
PolyCurve | NCurve |
LineCurve | NCurve |
ArcCurve | NCurve |
CurveOnSurface | NCurve |
Mesh | PolyMesh |
NurbsCurve | NCurve |
NurbsSurface | NPatch |
RevSurface | NPatch |
SumSurface | NPatch |
PlaneSurface | NPatch |
Le processus d'importation 3DM est contrôlé par les options suivantes :
"ScaleFactor"
: Cette option permet d'appliquer un facteur d'échelle à tous les objets importés."Accuracy"
: Cette option contrôle la tolérance des opérations internes d'OpenNURBS, dans ce cas la valeur est surtout utilisée pour les opérations de conversion vers la forme NURBS."ReadCurves"
: Si cette option est désactivée, aucune courbe ne sera importée.
Cette option n'influence pas l'importation des courbes trim."ReadLayers"
: Cette option d'importation permet de sélectionner une seule couche ou une série de couches pour l'importation.
Par défaut, tous les objets de toutes les couches seront importés."ReadSTrim"
: Cette option permet de ne pas tenir compte des boucles de trim uniques des surfaces NURBS.
L'importation de cette seule boucle de trim limitante rendrait la scène de Ayam plus complexe que nécessaire dans de nombreux cas.
Si "ReadSTrim"
est désactivé, aucun trim simple (trim qui ne s'étend que le long de la bordure d'un patch NURBS et qui ne coupe pas réellement la surface) ne sera importé s'il s'agit des seules courbes de trim."IgnoreFirstTrim"
disponible avant Ayam 1.13 avec une sémantique légèrement différente."RescaleKnots"
: permet de redimensionner les vecteurs de noeuds des courbes NURBS, des patchs et des courbes de trim afin que les distances entre les différents noeuds ne soient pas inférieures à la valeur donnée.
Une valeur "RescaleKnots"
de 1.0e-04 conduit à des NURBS qui peuvent être tracées en toute sécurité en utilisant le GLU.
La valeur par défaut 0.0 signifie qu'il n'y a pas de mise à l'échelle.
Comme Ayam 1.13 présente aussi éventuellement des courbes trim, elles seront correctement mises à l'échelle pour les nouvelles gammes de noeuds des patchs NURBS."Progress"
: affiche la progression de l'importation ; de 0 à 50 pour cent, OpenNURBS lit le fichier 3DM en mémoire ; de 50 à 100 pour cent, le plugin onio convertit les objets 3DM en objets Ayam.Depuis la version 1.8.2, Ayam contient un plugin nommé "onio"
qui exporte des scènes au format de fichier Rhino 3DM en utilisant la boîte à outils OpenNURBS (d'où le nom du plugin onio – OpenNURBS IO) de Robert McNeel & Associates.
Commencez à exporter vers un fichier Rhino 3DM en utilisant l'entrée de menu " File/Export/Rhino 3DM "
(si cette entrée de menu n'est pas disponible, le plugin onio doit d'abord être chargé en utilisant l'entrée de menu " File/Load Plugin "
).
Le plugin onio exporte les fichiers 3DM de la version 3.0.
La fonctionnalité d'exportation du plugin onio couvre actuellement l'exportation de toutes les boîtes, quadrics, NURBS, polymeshes, instances, clones, objets de script (de type "Create"
ou "Modify"
) et objets qui peuvent être convertis en courbes ou surfaces NURBS.
Bien que l'exportation de surfaces bouchons planaires de divers objets d'outillage soit entièrement prise en charge, l'exportation de patchs NURBS généraux taillés n'est pas bien prise en charge. Cela est dû à l'absence d'une fonctionnalité (qui permet de passer de courbes de trim 2D à des courbes 3D pour des surfaces NURBS quelconques) dans la boîte à outils OpenNURBS. Une représentation 3D polygonale grossière des courbes trim 2D sera créée automatiquement, de sorte que les patchs NURBS généraux découpés puissent être exportés, mais avec une qualité moindre et une taille de fichier plus importante si nécessaire.[∗]
Les balises UMM/VMM sont utilisées pour découper les vecteurs de noeuds des objets NURBS exportés.[∗] Voir aussi la section Balises UMM/VMM (U/V Min Max).
Comme le format de fichier 3DM de Rhino ne prend pas en charge la hiérarchie et les attributs de transformation par objet, la hiérarchie de la scène de Ayam sera écrasée et tous les attributs de transformation seront appliqués aux points de contrôle des objets pour l'exportation. Les opérations CSG sont totalement ignorées, tous les objets seront écrits comme s'ils étaient combinés par l'opérateur union. En outre, tous les objets d'instance seront résolus en objets normaux.
Tous les objets seront écrits sur la première couche, la couche par défaut (sauf si l'option "TopLevelLayers"
est utilisée).
Les noms des objets seront également exportés.
Les noms des objets de niveau seront précédés des noms de leurs objets enfants.
La hiérarchie des objets :
+-Arm(Level)
| MySphere(Sphere)
\ MyCylinder(Cylinder)
par exemple, mène à deux objets dans le fichier Rhino nommés "Arm/MySphere"
et "Arm/MyCylinder"
.
Le processus d'exportation 3DM est contrôlé par les options suivantes :
"ScaleFactor"
: L'option "ScaleFactor"
permet d'appliquer un facteur d'échelle à tous les objets exportés."Accuracy"
: L'option "Accuracy"
contrôle la tolérance des opérations internes d'OpenNURBS (actuellement, il s'agit d'augmenter les courbes de trim 2D en courbes 3D et de vérifier la planéité des surfaces NURBS)."WriteSelected"
: n'exporte que les objets sélectionnés."ObeyNoExport"
: ignore tous les objets ayant des balises "NoExport"
."IgnoreHidden"
: ignore tous les objets cachés."WriteCurves"
: Si cette option est désactivée, aucune courbe ne sera écrite dans le fichier Rhino 3DM exporté.
Cette option n'influence pas l'exportation des courbes de trim."QuadAsBRep"
: Si cette option est activée, les sphères, cylindres, cônes et tores ne seront pas exportés comme une collection de surfaces NURBS (telles que converties par Ayam) mais comme des objets BRep (tels que convertis par la boîte à outils OpenNURBS).
Cependant, toutes les caractéristiques des objets quadriques ne seront pas traduites dans ce cas :
"QuadAsBRep"
n'a aucun effet sur l'exportation des disques, des hyperboloïdes et des paraboloïdes.
Ceux-ci seront toujours exportés en tant que surfaces NURBS. "TopLevelLayers"
: contrôle si les objets de niveau supérieur de la scène Ayam à exporter doivent être interprétés comme des couches.
Si cette option est activée, tous les objets de ces niveaux seront placés sur la couche respective.
Les objets qui ne sont pas dans l'un de ces niveaux seront écrits sur la couche par défaut.
De plus, les noms des objets du niveau supérieur deviendront des noms de couches."Progress"
: affiche la progression de l'exportation ; de 0 à 50 pour cent, le plugin onio convertit les objets Ayam en objets 3DM ; de 50 à 100 pour cent, OpenNURBS écrit le fichier 3DM.Depuis la version 1.13, Ayam fournit un plugin nommé "x3dio"
qui peut importer des scènes à partir du format de fichier X3D basé sur XML et publié par le Consortium Web3D.
L'analyseur XML utilisé dans ce plugin est basé sur Expat et SCEW.
Les versions binaires et compressées de X3D, ainsi que les fichiers VRML sont non pris en charge. Seuls les fichiers XML purs sont lus par le plugin x3dio.
Commencez l'importation à partir d'un fichier Web3D X3D en utilisant l'entrée de menu " File/Import/Web3D X3D "
(si cette entrée de menu n'est pas disponible, le plugin x3dio doit d'abord être chargé en utilisant l'entrée de menu " File/Load Plugin "
).
La fonctionnalité d'importation du plugin x3dio couvre actuellement l'importation des éléments X3D suivants (regroupés par composants) :
Les cylindres avec un seul bouchon sont importés sous forme de deux objets (un cylindre et un disque).
Dans tous les autres cas et également pour les Cônes, l'attribut "Closed"
de l'objet Ayam est défini en fonction des informations de bouchon de l'élément X3D.
Les ElevationGrids sont importés sous forme de maillages bilinéaires.
Les arcs et les cercles sont importés en tant qu'objets NCircle. Les arcs fermés et les Polylignes sont importés en tant que courbes NURBS. Les disques avec un rayon intérieur > 0,0 sont importés en tant qu'Hyperboloïdes plats (sinon en tant que Disques).
Tous les éléments des NURBS sont pleinement pris en charge.
Les objets CADLayer seront importés en tant qu'objets "Level" de niveau supérieur. Les objets CADAssembly et CADPart seront importés en tant qu'objets "Level".
Les éclairages seront directement mis en correspondance avec les sources lumineuses standard RenderMan : distant, point et spot, respectivement.
Par conséquent, les attributs " radius "
et " attenuation "
des points et des spots ne sont pas pris en charge.
Cependant, les points et les spots ont toujours un décalage quadratique avec la distance.
Les éléments de point de vue seront importés en tant qu'objets de vue (avec la fenêtre de vue correspondante) ou objets caméra selon l'option d'importation "ReadViewpoints"
.
Les transformations de cisaillement ne sont pas prises en charge.
La sémantique de la mise en ligne n'est actuellement pas entièrement conforme aux normes. Par défaut, les DEF dans les fichiers en ligne vivent dans leur propre espace de noms.
Il n'est pas possible d'utiliser un DEF à partir d'un fichier en ligne dans le fichier en ligne.
Cependant, si vous souhaitez importer "MergeInlineDefs"
est activé, tous les espaces de noms DEF (des fichiers en ligne et mis en ligne) seront fusionnés dans un grand espace de noms .
Il serait maintenant possible d'utiliser un DEF à partir d'un fichier en ligne dans le fichier mis en ligne.
Mais attention, cela ne fonctionne correctement que si les noms de DEF dans tous les fichiers sont uniques.
Il n'est pas possible de transférer des définitions uniques d'un fichier en ligne vers le fichier mis en ligne ou du fichier mis en ligne vers le fichier en ligne.
A noter également : les URL en ligne qui ne pointent pas vers le système de fichiers ne sont pas pris en charge.
Le tableau suivant dresse la liste complète des primitives Web3D X3D prises en charge et de leurs équivalents Ayam qui seront créés à l'importation.
X3D Primitive | Ayam Object | X3D Primitive | Ayam Object |
Geometry3D: | CAD: | ||
Box | Box | QuadSet | PolyMesh |
Sphere | Sphere | IndexedQuadSet | PolyMesh |
Cylinder | Cylinder | CADLayer | Level |
Cone | Cone | CADAssembly | Level |
ElevationGrid | PaMesh | CADPart | Level |
Extrusion | PolyMesh | CADFace | Level |
IndexedFaceSet | PolyMesh | Light: | |
IndexedTriangleSet | PolyMesh | DirectionalLight | Light |
IndexedTriangleStripSet | PolyMesh | SpotLight | Light |
IndexedTriangleFanSet | PolyMesh | PointLight | Light |
TriangleSet | PolyMesh | ||
TriangleStripSet | PolyMesh | ||
TriangleFanSet | PolyMesh | ||
IndexedLineSet | NCurve | ||
LineSet | NCurve | ||
Geometry2D: | |||
Arc2D | NCircle | ||
ArcClosed2D | NCurve | ||
Circle2D | NCircle | ||
Polyline2D | NCurve | ||
Disk2D | Disk / Hyperboloid | ||
NURBS: | |||
NurbsCurve | NCurve | ||
NurbsCurve2D | NCurve | ||
NurbsPatchSurface | NPatch | ||
NurbsTrimmedSurface | NPatch | ||
NurbsSweptSurface | Sweep | ||
NurbsSwungSurface | Swing |
Les attributs "solid"
, "ccw"
, et "convex"
sont systématiquement ignorés.
Les attributs "DEF"
et "USE"
sont pris en charge pour tous les éléments, cependant, les relations d'instance maîtresse correspondantes sont entièrement résolues à l'importation.
Les instances d'objets peuvent être facilement recréées en utilisant l'installation automatique (veuillez vous référer à la section
Instanciations automatiques).
Actuellement, les normales ne seront pas générées automatiquement pour les éléments X3D et l'attribut "creaseAngle"
sera donc totalement ignoré.
Notez cependant que si les normales sont spécifiées explicitement, par exemple pour un élément "IndexedFaceSet"
, elles seront importées correctement.
De plus, si des normales, des couleurs ou des coordonnées de texture sont fournies à un élément qui importe sous forme de PolyMesh (IndexedFaceSet et autres), des balises PV (variable primitive) appropriées seront créées.[∗]
De plus, si un index est fourni pour les normales, les couleurs ou les coordonnées de texture, les données concernées (par exemple les coordonnées du sommet) seront développées correctement (car RenderMan ne prend pas en charge plusieurs indices différents sur les données relatives au sommet). Notez qu'actuellement, la simple présence d'un index entraînera cette expansion. L'éventuel indice de coordonnées normales, de couleur ou de texture n'est pas vérifié, pour savoir s'il est identique à l'indice de coordonnées du sommet (et donc aucune expansion ne serait nécessaire au départ).
Les attributs "DEF"
seront convertis en noms d'objets dans certains cas.
Les options suivantes permettent de contrôler davantage le processus d'importation X3D :
"FileName"
: est le nom du fichier X3D à importer "ReadCurves"
: si cette option est désactivée, aucune courbe de forme libre ne sera importée. Cette option n'influence pas l'importation des courbes trim. "ReadViewpoints"
: contrôle si les points de vue doivent être lus comme vue, caméra ou pas du tout."ReadSTrim"
: si cette option est désactivée, aucun trim simple (trim qui ne s'exécute que le long de la bordure d'un patch NURBS et qui ne coupe pas réellement la surface) ne sera importé s'il s'agit des seules courbes de trim."RescaleKnots"
: permet de redimensionner les vecteurs de noeuds des courbes NURBS, des patchs et des courbes de trim afin que les distances entre les différents noeuds ne soient pas inférieures à la valeur donnée. Une valeur "RescaleKnots"
de 1,0e-04 conduit à des NURBS qui peuvent être tracées en toute sécurité en utilisant le GLU. La valeur par défaut 0.0 signifie qu'il n'y a pas de mise à l'échelle."ScaleFactor"
: permet d'appliquer un facteur d'échelle à tous les objets importés."RationalStyle"
: détermine comment les coordonnées rationnelles sont stockées dans le fichier à importer (Voir aussi la section
Coordonnées rationnelles) ;
"Progress"
: affiche la progression de l'importation ; de 0 à 50 %, le plugin x3dio lit le fichier XML, de 50 à 100 %, le plugin x3dio crée des objets Ayam.Depuis la version 1.13, Ayam fournit un plugin nommé "x3dio"
qui exporte des scènes au format de fichier X3D basé sur XML et publié par le Consortium Web3D.
L'analyseur XML utilisé dans ce plugin est basé sur Expat et SCEW.
Lancez l'exportation vers un fichier X3D en utilisant l'entrée de menu " Fichier/export/Web3D (X3D) "
(si cette entrée de menu n'est pas disponible, le plugin x3dio doit d'abord être chargé en utilisant l'entrée de menu "File/Load Plugin"
).
La fonctionnalité d'exportation du plugin x3dio couvre actuellement l'exportation de toutes les boîtes, quadrics, NURBS, PolyMeshes, instances, clones, objets de script (de type "Create"
ou "Modify"
) et objets qui peuvent être convertis en courbes ou surfaces NURBS ou en PolyMeshes (par exemple les objets SDMesh).
Certains objets de l'outil NURBS peuvent être exportés sous forme de noeuds NURBS paramétriques, par exemple les objets Sweep peuvent être exportés sous forme de noeuds NurbsSweptSurface.
La hiérarchie des scènes (objets Level) sera convertie en une hiérarchie de noeuds de transformation correspondante.
Les opérations de la CSG sont totalement ignorées, tous les objets seront écrits comme s'ils étaient combinés par l'opérateur union.
La prise en charge des plages de noeuds des NURBS par des balises UMM/VMM n'est pas possible.
Les surfaces NURBS prennent en charge les balises XML pour définir les attributs "uTessellation"
et/ou "vTessellation"
.
Les objets PolyMesh seront exportés vers les noeuds IndexedFaceSet.
Les faces PolyMesh avec des trous sont automatiquement tesselées.
Les faces PolyMesh avec plus de trois points sont tesselées si l'option d'exportation "TessPoMesh"
est utilisée.
Toutes les faces tesselées seront exportées vers un deuxième élément IndexedFaceSet.
Les sources lumineuses sont exportées si elles sont ponctuelles, distantes ou spot.
Les caméras et les vues sont exportées sous forme de noeuds de point de vue.
Notez cependant que X3D suppose toujours une transformation de la vue en perspective.
Cela signifie que les vues de type "Front"
, "Side"
, ou "Top"
ne seront pas exportées correctement.
Les objets "materials" sont pris en charge de manière très minimaliste, c'est-à-dire que seule la couleur du matériau sera exportée en tant qu'attribut "diffuseColor"
.
Cependant, les balises XML peuvent être utilisées pour ajouter des attributs supplémentaires ou même des nuances aux matériaux exportés, Voir aussi la section
XML Tag.
Les noms d'objets seront convertis en attributs DEF.
Les instances peuvent être résolues ou exportées sous forme de paires USE/DEF.
L'exportation X3D permet d'exporter des images filaires au lieu de surfaces pour les objets NPatch et PoMesh.
Pour passer un objet à l'exportation filaire, il suffit d'ajouter une balise "AsWire"
à l'objet.
Les paramètres suivants, en outre, contrôlent l'exportation X3D (Web3D) :
"FileName"
: est le nom de fichier du fichier X3D ;"ScaleFactor"
: permet d'appliquer un facteur d'échelle à tous les objets exportés (ceci sera réalisé par un noeud Transform
supplémentaire dans la hiérarchie de la scène) ; "WriteSelected"
: si cette fonction est activée, seuls les objets actuellement sélectionnés seront exportés ; "ObeyNoExport"
: bascule l'exportation des objets avec les balises "NoExport"
; "IgnoreHidden"
: active l'exportation des objets cachés ; "WriteCurves"
: bascule l'écriture des courbes NURBS et des courbes NURBS fournissant des objets au fichier exporté (Cette option n'influence pas l'exportation des courbes trim) ; "WriteViews"
: contrôle si les vues doivent être exportées en tant que points de vue ; "WriteParametrics"
: permet d'écrire les objets outils suivants en tant que surface NURBS simple ou les primitives de niveau supérieur suivantes :
"WriteMaterials"
: contrôle si les noeuds d'apparence et de matériau doivent être exportés pour chaque forme ;"ResolveInstances"
: contrôle si les objets d'instance doivent être résolus en objets normaux ou exportés en tant que paires DEF/USE. Notez qu'aucune tentative n'est faite pour détecter si les objets maîtres (les DEF) seront exportés pour toutes les instances exportées (USE) ; cela peut se produire en particulier avec les options d'exportation X3D "WriteSelected"
ou "IgnoreHidden"
, des fichiers X3D incomplets/erronés peuvent en résulter à moins que l'option "ResolveInstances"
ne soit activée ; "TopLevelLayers"
: permet d'exporter tous les objets de haut niveau de la scène Ayam sous forme de CADLayer
-nodes, au lieu de Transform
-nodes ;"RationalStyle"
: détermine comment écrire les coordonnées rationnelles (Voir aussi la section
Coordonnées rationnelles) ;
"WriteX3dom"
: bascule le mode d'exportation X3DOM. Si cette option est activée, l'exportation X3D :
"x3dom-template.xhtml"
),"<Scene>"
du modèle (les éléments enfants déjà présents de cette balise seront conservés),"<X3D>"
, "FileName"
."Progress"
: affiche la progression de l'exportation ; de 0 à 50 %, le plugin x3dio crée un document XML en mémoire et de 50 à 100 %, ce document XML sera écrit dans le fichier X3D.