CMS Using Jmol
- Websites Using J(S)mol
- J(S)mol in the Classroom
- Journals Using J(S)mol
- J(S)mol Literature
- Articles Using J(S)mol
- Books Using J(S)mol
- Wikis Using J(S)mol
- Blogs Using J(S)mol
- CMS Using J(S)mol (Moodle and others)
Course Management Systems, Learning Management Systems, Virtual Learning Environments, e-Learning Platforms - Applications Embedding Jmol
- Distributions Including Jmol
- Blue Obelisk
This page is devoted to Content Management Systems, Learning Management Systems, Virtual Learning Environments, e-Learning Platforms..., that have been set-up to use Jmol as part of their contents.
Contents
Moodle
Moodle sites using Jmol
Moodle is an open-source course management system. A third-party Jmol filter (info) automatically converts links to molecular model files (.mol, .csmol, .pdb, .xyz, .cml) in Moodle documents into embedded Jmol models. Jmol models can also be added as resources, or placed in searchable databases that students can edit.
If you know a Moodle which uses Jmol, and which is not in the list below, please add it.
- Yeovil College
- Monte Sant' Angelo Mercy College
- Frostburg State University
- Technical University of Liberec (in Czech)
Molecular structures in Moodle
- How does the Jmol filter work?
- Like the other text filters in Moodle, the Jmol filter expands a simple, shorthand code typed by an author into more complex code the browser can display. Specifically, this filter removes a link to a molecular file (with recognized file extension) and inserts a JmolApplet that loads the model. It can optionally insert controls too (e.g. for changing the rendering style).
- How do I embed molecules into Moodle pages?
- First, make sure that the administrators of your Moodle site have installed the Jmol filter. Then, simply upload a
.pdb
file to your course, and make a link to it using Moodle's HTML editor. - Note that the server must be the same for the uploaded file and the Moodle system files, since Jmol will not display remote pdb files.
<a href="path/aspartic.pdb">Aspartic acid</a>
- The default size of the display is 350 pixels. You can set the size of the display to n pixels by appending
?s=n
to the URL. For example:
<a href="path/aspartic.pdb?s=200">Aspartic acid</a>
- You can turn the default controls off by appending
?c=0
to the URL. If you combine this with the sizing option, separate the parameters with an ampersand (&).
<a href="path/aspartic.pdb?s=200&c=0">Aspartic acid</a>
- For even greater control, pass a Jmol script to the view by typing
JMOLSCRIPT{}
after the link. The script goes between the braces. - For example, to set the background to white, zoom in to 150%, and spin the molecule around its x and y axes, you could type:
<a href="path/aspartic.pdb?s=200&c=0">Aspartic acid</a>JMOLSCRIPT{color background white; zoom 150; set spin x 10; set spin y 10; spin;}
Internationalization
The Jmol filter for Moodle is being internationalized (Jan 2008) [1]
WebAssign
WebAssign® is a Course Management System offered as a service and done by North Carolina State University and Advanced Instructional Systems, Inc.
- Notice announcing Jmol functionality.
LON-CAPA
LON-CAPA is a "Free Open-Source Distributed Learning Content Management and Assessment System" under continuing development at Michigan State University. There are many exercises in the growing database of shared resources that use Jmol. Most require an account on the system to access the exercises, but a few are published "publicly" and do not require log-in for access. For example:
- a problem for lower grade science and math students
- assignment of R or S configuration
- structure comparison
- naming a structure
- comparing a 3D structure with a Fischer projection structure
Drupal
Drupal is an open source content management platform.
- Drupal 6
- Jmol whas been tried and tested on the Drupal 6 platform and works as expected. A Drupal 6 module is available for download to get you started and customize your own Jmol pages in Drupal. Below is a guide on how to install the module and get Jmol working on your Drupal site
- Download the module and uncompress it in your module folder so you have a module folder called jmol
- Activate the module from your Drupal site by going to Site building > modules > Other > Jmol
- Download Jmol and place the content in the Jmol module folder so you have e.g. <modules folder>/jmol/jmol-12.2.11/
- Edit the jmol.module file in the jmol module folder and adjust paths where necessary, see the comments in the file
- You should then be able to see the Jmol applet at
http://example.com/jmol
or when you do not have Clean URLs enabledhttp://example.com/?q=jmol
where you have to replace example.com with your base url - In case the link to the module goes down, here is the code for the module:
<?php /* Originally created by Joost Van Durme, University of Leuven, Belgium /* /* joost.vandurme@switch.vib-kuleuven.be */ /* * Add Jmol.js to the html header section, adjust paths where needed * Here, I have placed the jmol package folder as a subfolder of the jmol module folder */ function jmol_init() { drupal_add_js(drupal_get_path('module', 'jmol') .'/jmol-12.2.11/Jmol.js'); } /* * Menu callback entry for the Jmol page, this creates a landing URL to view the Jmol applet e.g. http://example.com/jmol */ function jmol_menu() { $items['jmol'] = array( 'title' => 'Jmol structure view', 'page callback' => 'jmol_page', 'access callback' => TRUE, 'type' => MENU_CALLBACK, ); return $items; } /** * Page callback for Jmol page, this tells Drupal what to display on the landing page */ function jmol_page() { $base_url = "http://example.com/"; # change this to your base url $pathToJmol = $base_url.drupal_get_path("module", "jmol")."/jmol-12.2.11"; # when Clean URLs is enabled, we have to provide absolute urls for Java applets. see http://drupal.org/node/312642#comment-1053077 $pathToPdb = $base_url.drupal_get_path("module", "jmol")."/1crn.pdb"; # this will load 1crn.pdb if it is placed in the jmol module folder $initCommand = 'spacefill off;wireframe off;backbone off;trace on;'; $output = '<script type="text/javascript">'; $output .= 'jmolInitialize("'.$pathToJmol.'");'; $output .= 'jmolApplet(400, "load '.$pathToPdb.';'.$initCommand.'");'; $output .= 'jmolBr();'; $output .= 'jmolHtml("Style ");'; $output .= 'jmolRadioGroup([["'.$initCommand.'", "cartoon","checked"],["select all;spacefill off;trace off;backbone off;wireframe on;", "wireframe"],["select all;spacefill off;trace off;wireframe off;backbone on", "C-alpha trace"]]);'; $output .= '</script>'; return $output; } ?>
- Drupal 7
- Not tested yet, but should work. Will follow.
Others
...?
Contributors
AngelHerraez, Jvdurme, Martin.slavik, Fsenese, NicolasVervelle, Pimpim, Vinnystocker