Package org.jmol.api
Class JmolViewer
- java.lang.Object
-
- org.jmol.api.JmolViewer
-
- Direct Known Subclasses:
Viewer
public abstract class JmolViewer extends java.lang.ObjectJmolViewer is the main API for the Viewer class. (Mosty) we try to not change this (much), whereas the varius "public" methods of Viewer, ModelSet, and other classes are public only for internal cross-package access, not for external use.
-
-
Field Summary
Fields Modifier and Type Field Description javajs.api.GenericPlatformapiPlatformjava.lang.StringmenuStructure
-
Constructor Summary
Constructors Constructor Description JmolViewer()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description abstract voidaddSelectionListener(JmolSelectionListener listener)static JmolViewerallocateViewer(java.lang.Object container, JmolAdapter jmolAdapter)a simpler optionstatic JmolViewerallocateViewer(java.lang.Object display, JmolAdapter modelAdapter, java.lang.String fullName, java.net.URL documentBase, java.net.URL codeBase, java.lang.String commandOptions, JmolStatusListener statusListener)legacy onlyprotected static JmolViewerallocateViewer(java.lang.Object display, JmolAdapter modelAdapter, java.lang.String fullName, java.net.URL documentBase, java.net.URL codeBase, java.lang.String commandOptions, JmolStatusListener statusListener, javajs.api.GenericPlatform implementedPlatform)This is the older main access point for creating an application or applet vwr.abstract voidcalcAtomsMinMax(BS bs, BoxInfo boxInfo)abstract booleancheckHalt(java.lang.String strCommand, boolean isInterrupt)abstract voidclearMeasurements()abstract voidclearSelection()abstract java.lang.StringclipImageOrPasteText(java.lang.String text)abstract voiddeleteMeasurement(int i)voiddispose()abstract java.lang.StringevalFile(java.lang.String strFilename)abstract java.lang.StringevalString(java.lang.String strScript)abstract java.lang.StringevalStringQuiet(java.lang.String script)abstract java.lang.ObjectevaluateExpression(java.lang.Object expression)abstract java.lang.StringextractMolData(java.lang.String what)abstract intfindNearestAtomIndex(int x, int y)abstract java.lang.StringgenerateOutputForExport(java.util.Map<java.lang.String,java.lang.Object> params)for POV-Rayabstract intgetBackgroundArgb()abstract booleangetBoolean(int tok)abstract booleangetBooleanProperty(java.lang.String propertyName)abstract javajs.util.P3getBoundBoxCenter()abstract javajs.util.V3getBoundBoxCornerVector()abstract java.lang.StringgetClipboardText()abstract java.lang.StringgetData(java.lang.String atomExpression, java.lang.String type)abstract BSgetElementsPresentBitSet(int modelIndex)abstract java.lang.StringgetErrorMessage()abstract java.lang.StringgetErrorMessageUn()abstract floatgetFloat(int tok)abstract byte[]getImageAsBytes(java.lang.String type, int width, int height, int quality, java.lang.String[] errMsg)abstract intgetInt(int tok)static java.lang.StringgetJmolVersion()abstract shortgetMadBond()abstract intgetMeasurementCount()abstract int[]getMeasurementCountPlusIndices(int i)abstract java.lang.StringgetMeasurementStringValue(int i)abstract JmolAdaptergetModelAdapter()abstract intgetModelIndexFromId(java.lang.String id)abstract java.lang.StringgetModelName(int modelIndex)abstract intgetModelNumber(int modelIndex)abstract java.lang.StringgetModelNumberDotted(int modelIndex)abstract java.util.PropertiesgetModelProperties(int modelIndex)abstract java.util.Map<java.lang.String,java.lang.Object>getModelSetAuxiliaryInfo()abstract java.lang.StringgetModelSetFileName()abstract java.lang.StringgetModelSetPathName()abstract java.util.PropertiesgetModelSetProperties()abstract intgetMotionEventNumber()abstract java.lang.StringgetOpenSmiles(BS atoms)abstract java.lang.ObjectgetParameter(java.lang.String name)abstract java.lang.ObjectgetProperty(java.lang.String returnType, java.lang.String infoType, java.lang.Object paramInfo)abstract intgetScreenHeight()abstract java.lang.ObjectgetScreenImageBuffer(java.lang.Object g, boolean isImageWrite)abstract intgetScreenWidth()abstract java.lang.StringgetSetHistory(int howFarBack)abstract BSgetSmartsMatch(java.lang.String smarts, BS bsSelected)abstract java.lang.StringgetSmiles(BS atoms)abstract java.lang.StringgetStateInfo()abstract BSgetVisibleFramesBitSet()abstract voidhaltScriptExecution()abstract voidhomePosition()abstract booleanisScriptExecuting()abstract java.lang.StringloadInline(java.lang.String strModel)abstract java.lang.StringloadInline(java.lang.String[] arrayModels)abstract java.lang.StringloadInline(java.lang.String[] arrayModels, boolean isAppend)abstract java.lang.StringloadInline(java.lang.String strModel, char newLine)abstract java.lang.StringloadInline(java.util.List<java.lang.Object> arrayData, boolean isAppend)NOTE: THIS METHOD DOES NOT PRESERVE THE STATEabstract java.lang.StringloadInlineAppend(java.lang.String strModel, boolean isAppend)abstract voidnotifyStatusReady(boolean isReady)abstract voidnotifyViewerRepaintDone()abstract java.lang.StringopenDOM(java.lang.Object DOMNode)abstract java.lang.StringopenFile(java.lang.String fileName)voidopenFileAsync(java.lang.String fileName)abstract voidopenFileAsyncSpecial(java.lang.String fileName, int flags)abstract java.lang.StringopenFiles(java.lang.String[] fileNames)java.lang.StringopenReader(java.lang.String fullPathName, java.lang.Object reader)Opens the file and creates the model set, given the reader.abstract java.lang.StringopenReader(java.lang.String fullPathName, java.lang.String fileName, java.lang.Object reader)Opens the file and creates the model set, given the reader.abstract java.lang.StringopenStringInline(java.lang.String strModel)abstract java.lang.StringoutputToFile(java.util.Map<java.lang.String,java.lang.Object> params)abstract voidpopHoldRepaint(java.lang.String why)abstract voidpushHoldRepaint()abstract voidrebond()abstract voidrefresh(int isOrientationChange, java.lang.String strWhy)abstract voidreleaseScreenImage()abstract voidremoveSelectionListener(JmolSelectionListener listener)abstract voidrenderScreenImage(java.lang.Object g, int width, int height)voidrenderScreenImage(java.lang.Object g, java.lang.Object currentSize, java.lang.Object rectClip)Deprecated.abstract int[]resizeInnerPanel(int width, int height)abstract voidrotateFront()abstract java.lang.StringrunScript(java.lang.String script)run a script immediately and return output buffer string Jmol 13.1.15abstract java.lang.Stringscript(java.lang.String script)abstract java.lang.ObjectscriptCheck(java.lang.String script)abstract java.lang.StringscriptWait(java.lang.String script)abstract java.lang.ObjectscriptWaitStatus(java.lang.String script, java.lang.String statusList)abstract voidselectAll()abstract voidsetAnimationFps(int framesPerSecond)abstract voidsetAutoBond(boolean autoBond)abstract voidsetAxesOrientationRasmol(boolean axesMessedUp)abstract voidsetBondTolerance(float bondTolerance)abstract voidsetBooleanProperty(java.lang.String propertyName, boolean value)abstract voidsetCenterSelected()abstract voidsetColorBackground(java.lang.String colorName)voidsetConsole(JmolAppConsoleInterface console)sets a custom console -- should be called IMMEDIATELY following allocateViewer create your console with, perhaps: new org.openscience.jmol.app.jmolPanel.AppConsole(vwr, displayFrame, externalJPanel, buttonsEnabled); (see examples/basic/org/jmol/Integration.javaabstract voidsetDebugScript(boolean debugScript)abstract voidsetFloatProperty(java.lang.String propertyName, float value)abstract voidsetFrankOn(boolean frankOn)abstract voidsetInMotion(boolean isInMotion)abstract voidsetIntProperty(java.lang.String propertyName, int value)abstract voidsetJmolCallbackListener(JmolCallbackListener jmolCallbackListener)abstract voidsetJmolDefaults()abstract voidsetJmolStatusListener(JmolStatusListener jmolStatusListener)abstract voidsetMarBond(short marBond)abstract voidsetMenu(java.lang.String menuFile, boolean isFile)abstract voidsetMinBondDistance(float minBondDistance)abstract voidsetPercentVdwAtom(int percentVdwAtom)abstract voidsetPerspectiveDepth(boolean perspectiveDepth)abstract voidsetRasmolDefaults()abstract voidsetScreenDimension(int width, int height)abstract voidsetSelectionSet(BS newSelection)abstract voidsetShowHydrogens(boolean showHydrogens)abstract voidsetShowMeasurements(boolean showMeasurements)abstract voidsetStringProperty(java.lang.String propertyName, java.lang.String value)abstract voidsetVectorScale(float vectorScaleValue)abstract voidsetVibrationPeriod(float vibrationPeriod)abstract voidsetVibrationScale(float vibrationScaleValue)abstract voidshowUrl(java.lang.String urlString)abstract voidsyncScript(java.lang.String script, java.lang.String applet, int port)abstract voidwriteTextFile(java.lang.String string, java.lang.String data)
-
-
-
Method Detail
-
getFloat
public abstract float getFloat(int tok)
-
getInt
public abstract int getInt(int tok)
-
getBoolean
public abstract boolean getBoolean(int tok)
-
allocateViewer
protected static JmolViewer allocateViewer(java.lang.Object display, JmolAdapter modelAdapter, java.lang.String fullName, java.net.URL documentBase, java.net.URL codeBase, java.lang.String commandOptions, JmolStatusListener statusListener, javajs.api.GenericPlatform implementedPlatform)
This is the older main access point for creating an application or applet vwr. You can also use That is necessary when compiled into JavaScript using Java2Script In Jmol 11.6 it was manditory that one of the next commands is either vwr.evalString("ZAP"); or at least: vwr.setAppletContext("",null,null,"") One or the other of these was necessary to establish the first modelset, which might be required by one or more later evaluated commands or file loadings. Starting with Jmol 11.7, setAppletContext is rolled into allocateViewer so that the full initialization is done all at once. Starting with Jmol 12.3.13, we allow for preconstructed ApiPlatform- Parameters:
display-modelAdapter-fullName-documentBase-codeBase-commandOptions-statusListener-implementedPlatform-- Returns:
- a JmolViewer object
-
allocateViewer
public static JmolViewer allocateViewer(java.lang.Object container, JmolAdapter jmolAdapter)
a simpler option- Parameters:
container-jmolAdapter-- Returns:
- JmolViewer object
-
allocateViewer
public static JmolViewer allocateViewer(java.lang.Object display, JmolAdapter modelAdapter, java.lang.String fullName, java.net.URL documentBase, java.net.URL codeBase, java.lang.String commandOptions, JmolStatusListener statusListener)
legacy only- Parameters:
display-modelAdapter-fullName-documentBase-codeBase-commandOptions-statusListener-- Returns:
- JmolViewer object
-
setConsole
public void setConsole(JmolAppConsoleInterface console)
sets a custom console -- should be called IMMEDIATELY following allocateViewer create your console with, perhaps: new org.openscience.jmol.app.jmolPanel.AppConsole(vwr, displayFrame, externalJPanel, buttonsEnabled); (see examples/basic/org/jmol/Integration.java- Parameters:
console- the console to use
-
setInMotion
public abstract void setInMotion(boolean isInMotion)
-
getSmartsMatch
public abstract BS getSmartsMatch(java.lang.String smarts, BS bsSelected) throws java.lang.Exception
- Throws:
java.lang.Exception
-
getJmolVersion
public static java.lang.String getJmolVersion()
-
generateOutputForExport
public abstract java.lang.String generateOutputForExport(java.util.Map<java.lang.String,java.lang.Object> params)
for POV-Ray- Parameters:
params-- Returns:
- INI file
-
setJmolCallbackListener
public abstract void setJmolCallbackListener(JmolCallbackListener jmolCallbackListener)
-
setJmolStatusListener
public abstract void setJmolStatusListener(JmolStatusListener jmolStatusListener)
-
checkHalt
public abstract boolean checkHalt(java.lang.String strCommand, boolean isInterrupt)
-
haltScriptExecution
public abstract void haltScriptExecution()
-
pushHoldRepaint
public abstract void pushHoldRepaint()
-
popHoldRepaint
public abstract void popHoldRepaint(java.lang.String why)
-
getData
public abstract java.lang.String getData(java.lang.String atomExpression, java.lang.String type)
-
getSmiles
public abstract java.lang.String getSmiles(BS atoms) throws java.lang.Exception
- Throws:
java.lang.Exception
-
getOpenSmiles
public abstract java.lang.String getOpenSmiles(BS atoms) throws java.lang.Exception
- Throws:
java.lang.Exception
-
setScreenDimension
public abstract void setScreenDimension(int width, int height)
-
getScreenWidth
public abstract int getScreenWidth()
-
getScreenHeight
public abstract int getScreenHeight()
-
getScreenImageBuffer
public abstract java.lang.Object getScreenImageBuffer(java.lang.Object g, boolean isImageWrite)
-
releaseScreenImage
public abstract void releaseScreenImage()
-
writeTextFile
public abstract void writeTextFile(java.lang.String string, java.lang.String data)
-
outputToFile
public abstract java.lang.String outputToFile(java.util.Map<java.lang.String,java.lang.Object> params)
- Parameters:
params- include type, fileName, text, bytes, quality, width, height- Returns:
- null (canceled) or a message starting with OK or an error message
-
getImageAsBytes
public abstract byte[] getImageAsBytes(java.lang.String type, int width, int height, int quality, java.lang.String[] errMsg)- Parameters:
type-width-height-quality-errMsg- TODO- Returns:
- base64-encoded or binary version of the image
-
getMotionEventNumber
public abstract int getMotionEventNumber()
-
openReader
public java.lang.String openReader(java.lang.String fullPathName, java.lang.Object reader)Opens the file and creates the model set, given the reader. not used in Jmol- Parameters:
fullPathName- full path name or nullreader- a Reader, byte[], or BufferedInputStream- Returns:
- null or error message
-
openReader
public abstract java.lang.String openReader(java.lang.String fullPathName, java.lang.String fileName, java.lang.Object reader)Opens the file and creates the model set, given the reader. name is a text name of the file ... to be displayed in the window no need to pass a BufferedReader ... ... the FileManager will wrap a buffer around it not used in Jmol- Parameters:
fullPathName- or nullfileName- (no path) or nullreader- Reader, byte[], or BufferedInputStream- Returns:
- null or error message
-
showUrl
public abstract void showUrl(java.lang.String urlString)
-
getBoundBoxCenter
public abstract javajs.util.P3 getBoundBoxCenter()
-
getBoundBoxCornerVector
public abstract javajs.util.V3 getBoundBoxCornerVector()
-
getMeasurementCount
public abstract int getMeasurementCount()
-
getMeasurementStringValue
public abstract java.lang.String getMeasurementStringValue(int i)
-
getMeasurementCountPlusIndices
public abstract int[] getMeasurementCountPlusIndices(int i)
-
getElementsPresentBitSet
public abstract BS getElementsPresentBitSet(int modelIndex)
-
findNearestAtomIndex
public abstract int findNearestAtomIndex(int x, int y)
-
script
public abstract java.lang.String script(java.lang.String script)
-
scriptCheck
public abstract java.lang.Object scriptCheck(java.lang.String script)
-
scriptWait
public abstract java.lang.String scriptWait(java.lang.String script)
-
scriptWaitStatus
public abstract java.lang.Object scriptWaitStatus(java.lang.String script, java.lang.String statusList)
-
loadInline
public abstract java.lang.String loadInline(java.lang.String strModel)
-
loadInlineAppend
public abstract java.lang.String loadInlineAppend(java.lang.String strModel, boolean isAppend)
-
loadInline
public abstract java.lang.String loadInline(java.lang.String strModel, char newLine)
-
loadInline
public abstract java.lang.String loadInline(java.lang.String[] arrayModels)
-
loadInline
public abstract java.lang.String loadInline(java.lang.String[] arrayModels, boolean isAppend)- Parameters:
arrayModels- and array of models, each of which is a StringisAppend-- Returns:
- null or error message
-
loadInline
public abstract java.lang.String loadInline(java.util.List<java.lang.Object> arrayData, boolean isAppend)NOTE: THIS METHOD DOES NOT PRESERVE THE STATE- Parameters:
arrayData- a Vector of models, where each model is either a String or a String[] or a VectorisAppend- TRUE to append models (no ZAP)- Returns:
- null or error message
-
evalStringQuiet
public abstract java.lang.String evalStringQuiet(java.lang.String script)
-
isScriptExecuting
public abstract boolean isScriptExecuting()
-
getModelSetFileName
public abstract java.lang.String getModelSetFileName()
-
getModelSetPathName
public abstract java.lang.String getModelSetPathName()
-
getModelSetProperties
public abstract java.util.Properties getModelSetProperties()
-
getModelSetAuxiliaryInfo
public abstract java.util.Map<java.lang.String,java.lang.Object> getModelSetAuxiliaryInfo()
-
getModelProperties
public abstract java.util.Properties getModelProperties(int modelIndex)
-
getModelNumber
public abstract int getModelNumber(int modelIndex)
-
getModelName
public abstract java.lang.String getModelName(int modelIndex)
-
getModelNumberDotted
public abstract java.lang.String getModelNumberDotted(int modelIndex)
-
getVisibleFramesBitSet
public abstract BS getVisibleFramesBitSet()
-
addSelectionListener
public abstract void addSelectionListener(JmolSelectionListener listener)
-
removeSelectionListener
public abstract void removeSelectionListener(JmolSelectionListener listener)
-
homePosition
public abstract void homePosition()
-
getBackgroundArgb
public abstract int getBackgroundArgb()
-
getMadBond
public abstract short getMadBond()
-
rebond
public abstract void rebond()
-
refresh
public abstract void refresh(int isOrientationChange, java.lang.String strWhy)
-
notifyViewerRepaintDone
public abstract void notifyViewerRepaintDone()
-
getBooleanProperty
public abstract boolean getBooleanProperty(java.lang.String propertyName)
-
getParameter
public abstract java.lang.Object getParameter(java.lang.String name)
-
getSetHistory
public abstract java.lang.String getSetHistory(int howFarBack)
-
getStateInfo
public abstract java.lang.String getStateInfo()
-
syncScript
public abstract void syncScript(java.lang.String script, java.lang.String applet, int port)
-
setColorBackground
public abstract void setColorBackground(java.lang.String colorName)
-
setJmolDefaults
public abstract void setJmolDefaults()
-
setRasmolDefaults
public abstract void setRasmolDefaults()
-
setBooleanProperty
public abstract void setBooleanProperty(java.lang.String propertyName, boolean value)
-
setIntProperty
public abstract void setIntProperty(java.lang.String propertyName, int value)
-
setFloatProperty
public abstract void setFloatProperty(java.lang.String propertyName, float value)
-
setStringProperty
public abstract void setStringProperty(java.lang.String propertyName, java.lang.String value)
-
setShowHydrogens
public abstract void setShowHydrogens(boolean showHydrogens)
-
setShowMeasurements
public abstract void setShowMeasurements(boolean showMeasurements)
-
setPerspectiveDepth
public abstract void setPerspectiveDepth(boolean perspectiveDepth)
-
setAutoBond
public abstract void setAutoBond(boolean autoBond)
-
setMarBond
public abstract void setMarBond(short marBond)
-
setBondTolerance
public abstract void setBondTolerance(float bondTolerance)
-
setMinBondDistance
public abstract void setMinBondDistance(float minBondDistance)
-
setAxesOrientationRasmol
public abstract void setAxesOrientationRasmol(boolean axesMessedUp)
-
setPercentVdwAtom
public abstract void setPercentVdwAtom(int percentVdwAtom)
-
setAnimationFps
public abstract void setAnimationFps(int framesPerSecond)
-
setFrankOn
public abstract void setFrankOn(boolean frankOn)
-
setDebugScript
public abstract void setDebugScript(boolean debugScript)
-
deleteMeasurement
public abstract void deleteMeasurement(int i)
-
clearMeasurements
public abstract void clearMeasurements()
-
setVectorScale
public abstract void setVectorScale(float vectorScaleValue)
-
setVibrationScale
public abstract void setVibrationScale(float vibrationScaleValue)
-
setVibrationPeriod
public abstract void setVibrationPeriod(float vibrationPeriod)
-
selectAll
public abstract void selectAll()
-
clearSelection
public abstract void clearSelection()
-
setSelectionSet
public abstract void setSelectionSet(BS newSelection)
-
setCenterSelected
public abstract void setCenterSelected()
-
rotateFront
public abstract void rotateFront()
-
getModelAdapter
public abstract JmolAdapter getModelAdapter()
-
openFileAsyncSpecial
public abstract void openFileAsyncSpecial(java.lang.String fileName, int flags)
-
openFileAsync
public void openFileAsync(java.lang.String fileName)
-
getErrorMessage
public abstract java.lang.String getErrorMessage()
-
getErrorMessageUn
public abstract java.lang.String getErrorMessageUn()
-
renderScreenImage
@Deprecated public void renderScreenImage(java.lang.Object g, java.lang.Object currentSize, java.lang.Object rectClip)Deprecated.old -- not used in 12.2- Parameters:
g-currentSize-rectClip- // unused
-
renderScreenImage
public abstract void renderScreenImage(java.lang.Object g, int width, int height)
-
evalFile
public abstract java.lang.String evalFile(java.lang.String strFilename)
-
evalString
public abstract java.lang.String evalString(java.lang.String strScript)
-
openStringInline
public abstract java.lang.String openStringInline(java.lang.String strModel)
-
openDOM
public abstract java.lang.String openDOM(java.lang.Object DOMNode)
-
openFile
public abstract java.lang.String openFile(java.lang.String fileName)
-
openFiles
public abstract java.lang.String openFiles(java.lang.String[] fileNames)
-
getProperty
public abstract java.lang.Object getProperty(java.lang.String returnType, java.lang.String infoType, java.lang.Object paramInfo)- Parameters:
returnType- "JSON", "string", "readable", and anything else returns the Java object.infoType-paramInfo-- Returns:
- property data -- see org.jmol.viewer.PropertyManager.java
-
evaluateExpression
public abstract java.lang.Object evaluateExpression(java.lang.Object expression)
-
resizeInnerPanel
public abstract int[] resizeInnerPanel(int width, int height)
-
runScript
public abstract java.lang.String runScript(java.lang.String script)
run a script immediately and return output buffer string Jmol 13.1.15- Parameters:
script-- Returns:
- string from ScriptEvaluator#outputBuffer
-
extractMolData
public abstract java.lang.String extractMolData(java.lang.String what)
-
getClipboardText
public abstract java.lang.String getClipboardText()
-
clipImageOrPasteText
public abstract java.lang.String clipImageOrPasteText(java.lang.String text)
-
notifyStatusReady
public abstract void notifyStatusReady(boolean isReady)
-
getModelIndexFromId
public abstract int getModelIndexFromId(java.lang.String id)
- Parameters:
id- some_id, filename#id, or ~fileNo.modelNo added ".basemodel" indicates to get the first model in a series from a JDX-MOL file.- Returns:
- model index if found; -2 if file found but model not found -2 if no file indicated and no model found -1 if no such file
-
setMenu
public abstract void setMenu(java.lang.String menuFile, boolean isFile)
-
dispose
public void dispose()
-
-