Difference between revisions of "File formats/3D Objects"

From Jmol
Jump to navigation Jump to search
(some details on X3D format)
(new IDTF export)
Line 87: Line 87:
 
Universal 3D format. ECMA-363 Standard.
 
Universal 3D format. ECMA-363 Standard.
  
'''Not yet supported by Jmol'''.
+
'''Not yet supported by Jmol''' (but see [[#IDTF|IDTF]] below).
  
 
The most interesting feature of this format is that it can be embedded in pdf files, providing a 3D experience inside this well established standard for publication.
 
The most interesting feature of this format is that it can be embedded in pdf files, providing a 3D experience inside this well established standard for publication.
Line 96: Line 96:
 
* [http://meshlab.sourceforge.net/ MeshLab] project at SourceForge.
 
* [http://meshlab.sourceforge.net/ MeshLab] project at SourceForge.
 
: MeshLab is the first open source tool to provide direct conversion of 3D meshes into the U3D format. Now you can create pdf with 3D objects with just MeshLab and LaTeX.
 
: MeshLab is the first open source tool to provide direct conversion of 3D meshes into the U3D format. Now you can create pdf with 3D objects with just MeshLab and LaTeX.
* [http://85.214.71.72/pdf3d/ This page] holds a demo that generates a 3D model in PDF from the molecule's PubChem CID. It also allows to download the result in PDF, U3D and IDTF formats.
+
* [http://85.214.71.72/pdf3d/ This page] and so later be inserted into pdf files.
 +
 
 +
 
 +
== IDTF ==
 +
Jmol (11.8) can export to the '''''Intermediate Data Text Format''''', a human-readable format that can be transformed into the binary [[#U3D|U3D]] format and hence be later inserted into pdf files.
 +
 
 +
Conversion from IDTF to U3D can be done in Windows using a simple command-line utility, IDTFConverter:
 +
IDTFConverter.exe -input myMolecule.idtf -output myMolecule.u3d
 +
 
 +
Some potential future improvements:
 +
* Bypass IDTF completely and go straight to U3D export from Jmol. The compression algorithm must be understood first.
 +
* Embed the Jmol state script in the U3D file, so one can load the pdf file itself (<code>script "filename.pdf"</code>) or the U3D file itself (<code>script "filename.u3d"</code>) back into Jmol.
 +
* Embed a CML source file in the script too, and we would be a step further down semantic publishing.
 +
 
 +
=== References ===
 +
* [http://sourceforge.net/projects/u3d/ Universal 3D Sample Software].
 +
:Go to 'View All Files' and download the latest {{file|U3D_A_??.zip}} file. Within it, see {{file|Docs/IntermediateFormat/IDTF Format Description.pdf}}) and {{file|Bin/Win32/Release/IDTFConverter.exe}}.
  
  

Revision as of 16:20, 27 August 2009

File Formats

File Formats for 3D Objects Exported from Jmol

Recent versions of Jmol application and signed applet can export models to several formats that specify three-dimensional objects and can be read by specialized software, either raytracing or 3D-world.


POV-Ray

Jmol can export, with limited features, the current view of a model into POV-Ray format. This can be done from script or from the pop-up menu, but is better controled using the top menu in the Jmol application, which opens a dialog with options. See File formats/Images for more details.


VRML

Jmol can export most features of the model into Virtual Reality Modeling Language, VRML version 2, also known as VRML97. This can be done from script or from the pop-up menu.

The File icon.gifvrml or File icon.gifwrl file can then be opened using several programs and browser plugins, and manipulated in 3D using the mouse.

Supported features

  • Atoms (as spheres), bonds (as cylinders):
    • including atom size, bond thickness, color, translucency
    • double bonds (as parallel cylinders)
  • Drawn objects (lines, arrows, triangles...).
  • Isosurfaces (as IndexedFaceSets), even map-colored.
  • Labels, 3D-positioned echo texts and measurement texts:
    • text, color, font family and font style
  • Trace (but slightly irregular if its diameter is very small)
  • Ribbons and cartoons (using hermiteLevel 1 automatically if necessary).
  • Dots, halos, stars, polyhedra, vectors, dipoles, ellipsoids

Unsupported features

  • The orientation and zoom are not always kept.
  • Labels, 3D-positioned echo texts and measurement texts:
    • font size and offset are fixed (but they follow zoom in the VRML viewer)
    • only 1st line is displayed, no multi-line texts
    • alignment is always left
    • no background labels
  • Background image
  • Ellipsoid quadrant cutouts

From Jmol to Blender

Blender is a free, open source, 3D content creation suite, available for all major operating systems under the GNU General Public License.

VRML files created by Jmol can be imported into Blender (v. 2.42 or later) using the VRML97-Import-Script. One dependency you might need is SimpleParse.

Optimizing VRML files

VRML files of medium to large molecules tend to be huge. Some ways to reduce their size:

  • Run them through an optimizer program (see refs. below)
  • Compress them using the gzip algorithm, and maybe rename to .wrz which is the standard extension and should (hopefully) be recognized by viewers and browsers.

References


X3D

This is the Extensible 3D Graphics format, an XML successor of VRML.

Jmol (v.11.8) supports exporting to X3D. Features are nearly identical to those of VRML. (See VRML for details)

Note:
There are two X3D variants: one (.x3d) uses XML encoding, the other (.x3dv) uses Classic VRML encoding. Jmol produces the former.

References


Maya

Jmol can export, with limited features, the current view of a model into Maya ascii format. This can be done from script or from the pop-up menu. Wikipedia info on Maya

References


OBJ

Jmol (starting v. 11.7.28) can read files in the obj file format. This format is generated by Wavefront, Java3D and PyMOL. The described objects are handled as isosurfaces in Jmol, so they can be saved in more compact JVXL format, if desired, and also can be mapped with other data.

  • Description of obj file format at EG-Models.de, an archive of electronic geometry models.
  • Description of obj file format at FileFormat.info: www.fileformat.info/format/wavefrontobj/egff.htm
  • Description of obj file format at The Graphics File Formats Page by Martin Reddy.
  • Export of obj file format from PyMOL (molecular surfaces).


U3D

Universal 3D format. ECMA-363 Standard.

Not yet supported by Jmol (but see IDTF below).

The most interesting feature of this format is that it can be embedded in pdf files, providing a 3D experience inside this well established standard for publication.

References

A set of libraries to write, read, extend, render and interact with U3D-formatted data, as defined by standard ECMA-363. Intended as starting point for tools and applications to support U3D (exporters, importers, authoring packages and interactive viewers).
MeshLab is the first open source tool to provide direct conversion of 3D meshes into the U3D format. Now you can create pdf with 3D objects with just MeshLab and LaTeX.
  • This page and so later be inserted into pdf files.


IDTF

Jmol (11.8) can export to the Intermediate Data Text Format, a human-readable format that can be transformed into the binary U3D format and hence be later inserted into pdf files.

Conversion from IDTF to U3D can be done in Windows using a simple command-line utility, IDTFConverter:

IDTFConverter.exe -input myMolecule.idtf -output myMolecule.u3d

Some potential future improvements:

  • Bypass IDTF completely and go straight to U3D export from Jmol. The compression algorithm must be understood first.
  • Embed the Jmol state script in the U3D file, so one can load the pdf file itself (script "filename.pdf") or the U3D file itself (script "filename.u3d") back into Jmol.
  • Embed a CML source file in the script too, and we would be a step further down semantic publishing.

References

Go to 'View All Files' and download the latest File icon.gifU3D_A_??.zip file. Within it, see File icon.gifDocs/IntermediateFormat/IDTF Format Description.pdf) and File icon.gifBin/Win32/Release/IDTFConverter.exe.


Collada

Collada formats (KMZ/DAE) are Open Source arrangements that have been incorporated into many 3D packages and support textures/surfaces etc. They are a possible XML replacement to VRML.

Not yet supported by Jmol. There is a feature request for this.

We would need:

  • A description of how to specify a cylinder (position/translation, orientation/rotation, radius, length) but not using vertexes or meshes.
  • A description of how to specify a sphere (position/translation, orientation/rotation, radius) but not using vertexes or meshes.

References