Class Browser
- java.lang.Object
-
- nl.colorize.multimedialib.renderer.teavm.Browser
-
public class Browser extends java.lang.ObjectContains the API for calling JavaScript functions using TeaVM. This consists of general browser APIs, as well as drawing operations for the HTML5 canvas that is displaying the application.Note for testing: All methods in this class are defined as
static nativedue to requirements from TeaVM. Applications should therefore mock these methods when using the browser API in Java unit tests.This class acts as the bridge between the TeaVM renderer implementation in Java code, and the "native" browser code implemented in JavaScript. Applications will therefore not access any of these methods directly, as interaction with JavaScript is done through the more Java-like API provided by the renderer.
-
-
Constructor Summary
Constructors Constructor Description Browser()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidaddModel(java.lang.String modelId, java.lang.String meshId)static voidchangeAmbientLight(java.lang.String color)static voidchangeLight(java.lang.String color)static voidclearLocalStorage()static voidclearModels()static voidcloseWebSocket()static voidconnectWebSocket(java.lang.String uri, WebSocketCallback callback)static voidcreateBox(java.lang.String meshId, float sizeX, float sizeY, float sizeZ, java.lang.String color, java.lang.String texturePath)static voidcreateSphere(java.lang.String meshId, float diameter, java.lang.String color, java.lang.String texturePath)static voiddrawCircle(float x, float y, float radius, java.lang.String color, float alpha)static voiddrawImage(java.lang.String id, float x, float y, float width, float height, float alpha, java.lang.String mask)static voiddrawImageRegion(java.lang.String id, float regionX, float regionY, float regionWidth, float regionHeight, float x, float y, float width, float height, float rotation, float scaleX, float scaleY, float alpha, java.lang.String mask)static voiddrawPolygon(float[] points, java.lang.String color, float alpha)static voiddrawRect(float x, float y, float width, float height, java.lang.String color, float alpha)static voiddrawText(java.lang.String text, java.lang.String font, int size, java.lang.String color, boolean bold, float x, float y, java.lang.String align, float alpha)static java.lang.String[]flushPointerEventBuffer()static floatgetCanvasHeight()static floatgetCanvasWidth()static floatgetDevicePixelRatio()static java.lang.StringgetGraphicsType()static float[]getImageData(java.lang.String id, int x, int y)static floatgetImageHeight(java.lang.String id)static floatgetImageWidth(java.lang.String id)static floatgetKeyState(int keyCode)static java.lang.StringgetLocalStorage(java.lang.String key)static floatgetPageHeight()static java.lang.StringgetPageURL()static floatgetPageWidth()static intgetScreenHeight()static intgetScreenWidth()static java.lang.StringgetUserAgent()static booleanisWebSocketSupported()static voidloadAudio(java.lang.String id, java.lang.String path)static voidloadFont(java.lang.String id, java.lang.String path, java.lang.String fontFamily)static voidloadImage(java.lang.String id, java.lang.String path)static voidloadModel(java.lang.String meshId, java.lang.String path, ModelLoadCallback callback)static java.lang.StringloadTextResourceFile(java.lang.String id)static voidloadTexture(java.lang.String path)static voidlog(java.lang.String message)static voidmoveCamera(float x, float y, float z, float targetX, float targetY, float targetZ)static voidplayAnimation(java.lang.String modelId, java.lang.String meshId, java.lang.String name, boolean loop)static voidplayAudio(java.lang.String id, float volume, boolean loop)static java.lang.Stringprompt(java.lang.String label, java.lang.String initialValue)static voidremoveModel(java.lang.String modelId)static voidsendGetRequest(java.lang.String url, java.lang.String[] headers, AjaxCallback callback)static voidsendPostRequest(java.lang.String url, java.lang.String[] headers, java.lang.String params, AjaxCallback callback)static voidsendWebSocket(java.lang.String message)static voidsetLocalStorage(java.lang.String key, java.lang.String value)static voidstartAnimationLoop(AnimationFrameCallback callback)static voidstopAudio(java.lang.String id, boolean reset)static voidsyncModel(java.lang.String modelId, float x, float y, float z, float rotX, float rotY, float rotZ, float scaleX, float scaleY, float scaleZ)static java.lang.StringtakeScreenshot()
-
-
-
Method Detail
-
log
public static void log(java.lang.String message)
-
getPageURL
public static java.lang.String getPageURL()
-
getUserAgent
public static java.lang.String getUserAgent()
-
getPageWidth
public static float getPageWidth()
-
getPageHeight
public static float getPageHeight()
-
getScreenWidth
public static int getScreenWidth()
-
getScreenHeight
public static int getScreenHeight()
-
getDevicePixelRatio
public static float getDevicePixelRatio()
-
setLocalStorage
public static void setLocalStorage(java.lang.String key, java.lang.String value)
-
getLocalStorage
public static java.lang.String getLocalStorage(java.lang.String key)
-
clearLocalStorage
public static void clearLocalStorage()
-
startAnimationLoop
public static void startAnimationLoop(AnimationFrameCallback callback)
-
getCanvasWidth
public static float getCanvasWidth()
-
getCanvasHeight
public static float getCanvasHeight()
-
getGraphicsType
public static java.lang.String getGraphicsType()
-
getImageWidth
public static float getImageWidth(java.lang.String id)
-
getImageHeight
public static float getImageHeight(java.lang.String id)
-
getImageData
public static float[] getImageData(java.lang.String id, int x, int y)
-
playAudio
public static void playAudio(java.lang.String id, float volume, boolean loop)
-
stopAudio
public static void stopAudio(java.lang.String id, boolean reset)
-
takeScreenshot
public static java.lang.String takeScreenshot()
-
flushPointerEventBuffer
public static java.lang.String[] flushPointerEventBuffer()
-
getKeyState
public static float getKeyState(int keyCode)
-
prompt
public static java.lang.String prompt(java.lang.String label, java.lang.String initialValue)
-
loadImage
public static void loadImage(java.lang.String id, java.lang.String path)
-
loadAudio
public static void loadAudio(java.lang.String id, java.lang.String path)
-
loadFont
public static void loadFont(java.lang.String id, java.lang.String path, java.lang.String fontFamily)
-
loadTextResourceFile
public static java.lang.String loadTextResourceFile(java.lang.String id)
-
loadModel
public static void loadModel(java.lang.String meshId, java.lang.String path, ModelLoadCallback callback)
-
loadTexture
public static void loadTexture(java.lang.String path)
-
sendGetRequest
public static void sendGetRequest(java.lang.String url, java.lang.String[] headers, AjaxCallback callback)
-
sendPostRequest
public static void sendPostRequest(java.lang.String url, java.lang.String[] headers, java.lang.String params, AjaxCallback callback)
-
isWebSocketSupported
public static boolean isWebSocketSupported()
-
connectWebSocket
public static void connectWebSocket(java.lang.String uri, WebSocketCallback callback)
-
sendWebSocket
public static void sendWebSocket(java.lang.String message)
-
closeWebSocket
public static void closeWebSocket()
-
drawRect
public static void drawRect(float x, float y, float width, float height, java.lang.String color, float alpha)
-
drawCircle
public static void drawCircle(float x, float y, float radius, java.lang.String color, float alpha)
-
drawPolygon
public static void drawPolygon(float[] points, java.lang.String color, float alpha)
-
drawImage
public static void drawImage(java.lang.String id, float x, float y, float width, float height, float alpha, java.lang.String mask)
-
drawImageRegion
public static void drawImageRegion(java.lang.String id, float regionX, float regionY, float regionWidth, float regionHeight, float x, float y, float width, float height, float rotation, float scaleX, float scaleY, float alpha, java.lang.String mask)
-
drawText
public static void drawText(java.lang.String text, java.lang.String font, int size, java.lang.String color, boolean bold, float x, float y, java.lang.String align, float alpha)
-
changeAmbientLight
public static void changeAmbientLight(java.lang.String color)
-
changeLight
public static void changeLight(java.lang.String color)
-
moveCamera
public static void moveCamera(float x, float y, float z, float targetX, float targetY, float targetZ)
-
createBox
public static void createBox(java.lang.String meshId, float sizeX, float sizeY, float sizeZ, java.lang.String color, java.lang.String texturePath)
-
createSphere
public static void createSphere(java.lang.String meshId, float diameter, java.lang.String color, java.lang.String texturePath)
-
addModel
public static void addModel(java.lang.String modelId, java.lang.String meshId)
-
removeModel
public static void removeModel(java.lang.String modelId)
-
clearModels
public static void clearModels()
-
syncModel
public static void syncModel(java.lang.String modelId, float x, float y, float z, float rotX, float rotY, float rotZ, float scaleX, float scaleY, float scaleZ)
-
playAnimation
public static void playAnimation(java.lang.String modelId, java.lang.String meshId, java.lang.String name, boolean loop)
-
-