paraviewweb
Advanced tools
Comparing version 3.2.6 to 3.2.7
@@ -12,3 +12,9 @@ var prettierConf = require('./prettier.config.js'); | ||
'no-unused-vars': ["error", { args: 'none' }], | ||
'prefer-destructuring': ["error", { VariableDeclarator: { array: false, object: true }, AssignmentExpression: { array: false, object: false } }, { enforceForRenamedProperties: false }], | ||
'prefer-destructuring': [ | ||
'error', | ||
{ | ||
VariableDeclarator: { array: false, object: true }, | ||
AssignmentExpression: { array: false, object: false } }, | ||
{ enforceForRenamedProperties: false } | ||
], | ||
'import/no-extraneous-dependencies': 0, // Needed for tests | ||
@@ -37,2 +43,12 @@ // 'no-mixed-operators': 'error', // Wish we can put it back with prettier | ||
'react/no-array-index-key': 0, | ||
// When updating to kw-web-suite 8.0.0, we have more lint issues | ||
// and no time to fix | ||
'react/destructuring-assignment': 0, | ||
'react/no-access-state-in-setstate': 0, | ||
'react/jsx-one-expression-per-line': 0, // creates a conflict with prettier | ||
'jsx-a11y/label-has-associated-control': 0, | ||
'no-else-return': 0, | ||
'import/no-cycle': 0, | ||
'react/jsx-wrap-multilines': 0, | ||
}, | ||
@@ -39,0 +55,0 @@ plugins: [ |
@@ -11,3 +11,3 @@ const autoprefixer = require('autoprefixer'); | ||
options: { | ||
presets: ['env', 'react'], | ||
presets: ['@babel/preset-env', '@babel/preset-react'], | ||
}, | ||
@@ -14,0 +14,0 @@ }, |
@@ -8,4 +8,9 @@ module.exports = [ | ||
use: [ | ||
{ loader: 'babel-loader', options: { presets: ['env'] } }, | ||
{ | ||
loader: 'babel-loader', | ||
options: { | ||
presets: ['@babel/preset-env'], | ||
}, | ||
}, | ||
{ | ||
loader: 'string-replace-loader', | ||
@@ -12,0 +17,0 @@ options: { |
@@ -14,3 +14,3 @@ module.exports = [ | ||
options: { | ||
presets: ['env'], | ||
presets: ['@babel/preset-env'], | ||
// presets: [['env', { targets: { browsers: 'last 2 versions' } }]], | ||
@@ -17,0 +17,0 @@ }, |
@@ -9,3 +9,3 @@ module.exports = [ | ||
options: { | ||
presets: ['env'], | ||
presets: ['@babel/preset-env'], | ||
// presets: [['env', { targets: { browsers: 'last 2 versions' } }]], | ||
@@ -12,0 +12,0 @@ }, |
@@ -72,3 +72,10 @@ const autoprefixerPlugin = require('autoprefixer')( | ||
include: /node_modules(\/|\\)paraviewweb(\/|\\)/, | ||
loader: 'babel-loader?presets[]=env,presets[]=react', | ||
use: [ | ||
{ | ||
loader: 'babel-loader', | ||
options: { | ||
presets: ['@babel/preset-env', '@babel/preset-react'], | ||
}, | ||
}, | ||
], | ||
}, | ||
@@ -78,3 +85,10 @@ { | ||
include: /node_modules(\/|\\)vtk.js(\/|\\)/, | ||
loader: 'babel-loader?presets[]=env,presets[]=react', | ||
use: [ | ||
{ | ||
loader: 'babel-loader', | ||
options: { | ||
presets: ['@babel/preset-env', '@babel/preset-react'], | ||
}, | ||
}, | ||
], | ||
}, | ||
@@ -84,3 +98,10 @@ { | ||
include: /node_modules(\/|\\)wslink(\/|\\)/, | ||
loader: 'babel-loader?presets[]=env', | ||
use: [ | ||
{ | ||
loader: 'babel-loader', | ||
options: { | ||
presets: ['@babel/preset-env'], | ||
}, | ||
}, | ||
], | ||
}, | ||
@@ -94,4 +115,11 @@ { | ||
exclude: /node_modules/, | ||
loader: 'babel-loader?presets[]=env,presets[]=react', | ||
use: [ | ||
{ | ||
loader: 'babel-loader', | ||
options: { | ||
presets: ['@babel/preset-env', '@babel/preset-react'], | ||
}, | ||
}, | ||
], | ||
}, | ||
]; |
@@ -200,6 +200,11 @@ ## ParaViewWeb on EC2 | ||
``` | ||
sudo docker run --runtime=nvidia -p 127.0.0.1:8081:80 -v <host-data-directory>:/data -ti kitware/paraviewweb:pvw-visualizer-5.5.0 "ws://<ec2-hostname-or-ip[:port]>" | ||
sudo docker run --runtime=nvidia \ | ||
-p 127.0.0.1:8081:80 \ | ||
-v <host-data-directory>:/data \ | ||
-e "SERVER_NAME=<ec2-hostname-or-ip[:port]>" \ | ||
-e "PROTOCOL=ws" \ | ||
-ti kitware/paraviewweb:pvw-visualizer-5.5.0 | ||
``` | ||
You will obviously replace `<host-data-directory>` with some real directory where your datasets are located, and replace `<ec2-hostname-or-ip[:port]>` with the actual hostname or IP address (and possibly port) of the instance. | ||
Do not forget to replace `<host-data-directory>` with some real directory where your datasets are located, and replace `<ec2-hostname-or-ip[:port]>` with the actual hostname or IP address (and possibly port) of the instance. | ||
@@ -209,12 +214,23 @@ Some other run examples follow. To run the osmesa image, you don't need the `nvidia` runtime: | ||
``` | ||
sudo docker run -p 127.0.0.1:8081:80 -v <host-data-directory>:/data -ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 "ws://<ec2-hostname-or-ip[:port]>" | ||
sudo docker run \ | ||
-p 127.0.0.1:8081:80 \ | ||
-v <host-data-directory>:/data \ | ||
-e "SERVER_NAME=<ec2-hostname-or-ip[:port]>" \ | ||
-e "PROTOCOL=ws" \ | ||
-ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 | ||
``` | ||
Additionally, extra arguments can be passed to the `pvpython` process that will be launched. Note that while the session url shown in the examples above (`ws://<ec2-hostname-or-ip[:port]>`) is normally optional, it *must* be provided if you want to pass extra arguments to `pvpython`. So, for example, you could pick the `swr` rendering backend while preventing loading of ParaView registry values like this: | ||
Additionally, extra arguments can be passed to the `pvpython` process that will be launched by providing the "EXTRA_PVPYTHON_ARGS" environment variable in the docker command. For example, you could pick the `swr` rendering backend while at the same time preventing loading of ParaView registry values like this: | ||
``` | ||
sudo docker run -p 127.0.0.1:8081:80 -v <host-data-directory>:/data -ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 "ws://<ec2-hostname-or-ip[:port]>" "-dr" "--mesa-swr" | ||
sudo docker run \ | ||
-p 127.0.0.1:8081:80 \ | ||
-v <host-data-directory>:/data \ | ||
-e "SERVER_NAME=<ec2-hostname-or-ip[:port]>" \ | ||
-e "PROTOCOL=ws" \ | ||
-e "EXTRA_PVPYTHON_ARGS=-dr,--mesa-swr" \ | ||
-ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 | ||
``` | ||
The quotes around the extra arguments to `pvpython` are only necessary if those arguments contain spaces or other characters that will treatly specially by the shell interpreting the `docker run` command. | ||
Note in the above that the extra pvpython args are comma-separated, with no additional spaces inserted. | ||
@@ -221,0 +237,0 @@ ### Try it out |
@@ -79,3 +79,3 @@ title: ParaViewWeb vs ParaView | ||
For the rendering performances we've loaded the same dataset of 4.8 Million point cloud and interact with it. The times reported are while interacting leaving the still render out of the picture. In either case the last render does not affect how the tools performance is percived. | ||
For the rendering performances we've loaded the same dataset of 4.8 Million point cloud and interact with it. The times reported are while interacting leaving the still render out of the picture. In either case the last render does not affect how the tools performance is percived. | ||
@@ -114,6 +114,6 @@ ### Running on __localhost__ | ||
__Note__: | ||
__Note__: | ||
ParaViewWeb target 30 FPS hence the constant 30 FPS value. | ||
When increasing the server FPS value, I was able to reach ~45 FPS with an image of 1280x720 and a JPEG Quality of 50% (Ratio 1 => same image resolution). | ||
ParaViewWeb targets 30 FPS hence the constant 30 FPS value. | ||
When increasing the server FPS value, I was able to reach approximately 45 FPS with an image of 1280x720 and a JPEG Quality of 50% (Ratio 1 => same image resolution). | ||
When lowering even more the quality of the transfered image I was getting the 60 FPS which was the targeted framerate set on the server side. | ||
@@ -162,3 +162,9 @@ | ||
``` | ||
docker run -v /test-data:/data -p 0.0.0.0:8081:80 -ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 "ws://localhost:8081" --mesa-llvm | ||
docker run \ | ||
-v /test-data:/data \ | ||
-e "SERVER_NAME=localhost:8081" \ | ||
-e "PROTOCOL=ws" \ | ||
-e "EXTRA_PVPYTHON_ARGS=--mesa-llvm" \ | ||
-p 0.0.0.0:8081:80 \ | ||
-ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 | ||
open http://localhost:8081 | ||
@@ -199,3 +205,9 @@ ``` | ||
``` | ||
docker run -v /test-data:/data -p 0.0.0.0:8081:80 -ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 "ws://localhost:8081" --mesa-swr | ||
docker run \ | ||
-v /test-data:/data \ | ||
-p 0.0.0.0:8081:80 \ | ||
-e "SERVER_NAME=localhost:8081" \ | ||
-e "PROTOCOL=ws" \ | ||
-e "EXTRA_PVPYTHON_ARGS=--mesa-swr" \ | ||
-ti kitware/paraviewweb:pvw-visualizer-osmesa-5.5.0 | ||
open http://localhost:8081 | ||
@@ -202,0 +214,0 @@ ``` |
{ | ||
"name": "paraviewweb", | ||
"version": "3.2.6", | ||
"version": "3.2.7", | ||
"description": "Web framework for building interactive visualization relying on VTK or ParaView to produce visualization data", | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/kitware/paraviewweb.git" | ||
"url": "https://github.com/kitware/paraviewweb.git" | ||
}, | ||
@@ -25,4 +25,4 @@ "license": "BSD-3-Clause", | ||
"devDependencies": { | ||
"plotly.js": "1.38.1", | ||
"vtk.js": "7.8.2", | ||
"plotly.js": "1.43.2", | ||
"vtk.js": "8.5.2", | ||
"wslink": "0.1.7", | ||
@@ -32,3 +32,3 @@ "monologue.js": "0.3.5", | ||
"react": "16.4.0", | ||
"react-dom": "16.4.0", | ||
"react-dom": "16.4.2", | ||
"d3": "3.5.17", | ||
@@ -39,4 +39,4 @@ "axios": "0.18.0", | ||
"font-awesome": "4.7.0", | ||
"kw-web-suite": "6.2.0", | ||
"kw-doc": "1.2.0", | ||
"kw-web-suite": "8.0.0", | ||
"kw-doc": "1.2.2", | ||
"babel-plugin-istanbul": "4.1.6", | ||
@@ -49,4 +49,3 @@ "karma": "2.0.2", | ||
"karma-webpack": "3.0.0", | ||
"resemblejs": "2.10.3", | ||
"tap-spec": "4.1.2", | ||
"tap-spec": "5.0.0", | ||
"tap-markdown": "1.2.1", | ||
@@ -53,0 +52,0 @@ "tape": "4.9.0", |
@@ -92,7 +92,5 @@ import React from 'react'; | ||
<CollapsibleWidget title="Scene"> | ||
{floatImageModel | ||
.getLayers() | ||
.map((item, idx) => ( | ||
<LayerItem key={idx} item={item} model={floatImageModel} /> | ||
))} | ||
{floatImageModel.getLayers().map((item, idx) => ( | ||
<LayerItem key={idx} item={item} model={floatImageModel} /> | ||
))} | ||
<div className={style.item}> | ||
@@ -99,0 +97,0 @@ <div className={style.label}>Light</div> |
@@ -5,3 +5,3 @@ import React from 'react'; | ||
import style from 'PVWStyle/ReactProperties/CollapsiblePropertyGroup.mcss'; | ||
import factory from '../../Properties/PropertyFactory'; | ||
import factory from '../PropertyFactory'; | ||
@@ -8,0 +8,0 @@ export default function render(props) { |
@@ -5,3 +5,3 @@ import React from 'react'; | ||
import style from 'PVWStyle/ReactProperties/PropertyGroup.mcss'; | ||
import factory from '../../Properties/PropertyFactory'; | ||
import factory from '../PropertyFactory'; | ||
@@ -8,0 +8,0 @@ export default function render(props) { |
@@ -614,6 +614,14 @@ import React from 'react'; | ||
<div className={style.buttons}> | ||
<button className={style.button} onClick={this.toggleDialog}> | ||
<button | ||
className={style.button} | ||
type="button" | ||
onClick={this.toggleDialog} | ||
> | ||
Cancel | ||
</button> | ||
<button className={style.button} onClick={this.updateMetadata}> | ||
<button | ||
className={style.button} | ||
type="button" | ||
onClick={this.updateMetadata} | ||
> | ||
Save | ||
@@ -620,0 +628,0 @@ </button> |
@@ -35,2 +35,3 @@ import React from 'react'; | ||
<button | ||
type="button" | ||
className={style.button} | ||
@@ -37,0 +38,0 @@ key={item.name} |
@@ -176,2 +176,3 @@ import React from 'react'; | ||
<button | ||
type="button" | ||
className={style.icon} | ||
@@ -222,2 +223,3 @@ onClick={() => this.props.onDelete(item.key)} | ||
<button | ||
type="button" | ||
className={style.addButton} | ||
@@ -224,0 +226,0 @@ onClick={() => this.props.onAdd(rows.length)} |
@@ -16,2 +16,3 @@ import ActionListWidget from './ActionListWidget'; | ||
import DropDownWidget from './DropDownWidget'; | ||
import EditableListWidget from './EditableListWidget'; | ||
import EqualizerWidget from './EqualizerWidget'; | ||
@@ -59,2 +60,3 @@ import FileBrowserWidget from './FileBrowserWidget'; | ||
DropDownWidget, | ||
EditableListWidget, | ||
EqualizerWidget, | ||
@@ -61,0 +63,0 @@ FileBrowserWidget, |
@@ -66,2 +66,3 @@ import React from 'react'; | ||
<button | ||
type="button" | ||
style={{ lineHeight, fontSize, background }} | ||
@@ -68,0 +69,0 @@ key={idx} |
@@ -401,3 +401,3 @@ import React from 'react'; | ||
<div className={style.label}> | ||
{this.state.currentControlPointIndex + 1} /{' '} | ||
{this.state.currentControlPointIndex + 1}/{' '} | ||
{this.props.lookupTable.getNumberOfControlPoints()} | ||
@@ -404,0 +404,0 @@ </div> |
@@ -11,2 +11,3 @@ import React from 'react'; | ||
<button | ||
type="button" | ||
className={style.closeControlBtn} | ||
@@ -13,0 +14,0 @@ name={props.name} |
@@ -5,3 +5,3 @@ import React from 'react'; | ||
import style from 'PVWStyle/ReactWidgets/ScatterPlotCameraControl.mcss'; | ||
import InlineToggleButtonWidget from '../../Widgets/InlineToggleButtonWidget'; | ||
import InlineToggleButtonWidget from '../InlineToggleButtonWidget'; | ||
@@ -8,0 +8,0 @@ const SELECTED_COLOR = '#cdcdcd'; |
@@ -106,3 +106,3 @@ import React from 'react'; | ||
onChange: PropTypes.func, | ||
// getLegend: PropTypes.func, | ||
getLegend: PropTypes.func, | ||
className: PropTypes.string, | ||
@@ -115,2 +115,3 @@ }; | ||
onChange: undefined, | ||
getLegend: undefined, | ||
}; |
@@ -108,2 +108,3 @@ import Monologue from 'monologue.js'; | ||
} | ||
getScatter() { | ||
@@ -127,2 +128,3 @@ return this.scatter; | ||
} | ||
setScatter(scatter) { | ||
@@ -142,2 +144,3 @@ // we need a new plot if the axes change, as opposed to just the data. | ||
} | ||
setPlot(plot) { | ||
@@ -183,2 +186,3 @@ this.chartState.forceNewPlot = true; | ||
} | ||
getDataType() { | ||
@@ -185,0 +189,0 @@ return chartFactory[this.chartState.chartType].data; |
@@ -7,7 +7,8 @@ # Introduction | ||
There are currently three images available, though you would normally only need to run the `pvw-visualizer-5.5.0` one for the simplest deployment: | ||
There are currently several kinds of images available, though you would normally only need to run the `pvw-v5.6.0-visualizer` one for the simplest deployment: | ||
- `pv-5.5.0`: Base image containing ParaView 5.5 binary with EGL rendering support. This image is based off the [nvidia/opengl](https://hub.docker.com/r/nvidia/opengl/) images. [Dockerfile](https://github.com/Kitware/paraviewweb/tree/master/tools/docker/paraview/Dockerfile) | ||
- `pvw-base-5.5.0`: Built on top of the `pv-5.5.0` image, this adds the Apache webserver, along with some extra scripts and configuration files used by the next image in the stack. [Dockerfile](https://github.com/Kitware/paraviewweb/tree/master/tools/docker/paraviewweb/Dockerfile) | ||
- `pvw-visualizer-5.5.0`: Built on top of the `pvw-base-5.5.0` image, this adds an Apache endpoint for the ParaViewWeb Visualizer application, and brings a custom launcher config. [Dockerfile](https://github.com/Kitware/paraviewweb/tree/master/tools/docker/visualizer/Dockerfile) | ||
- `pv-v5.6.0-egl`: Base image containing ParaView 5.6 binary with EGL rendering support. This image is based off the [nvidia/opengl](https://hub.docker.com/r/nvidia/opengl/) images. [Dockerfile](https://gitlab.kitware.com/paraview/paraview-superbuild/tree/master/Scripts/docker/Ubuntu/Dockerfile) | ||
- 'pv-v5.6.0-osmesa': Same as above, but with OSMesa rendering for running on machines with no underlying nvidia graphics card. The same Dockerfile as above is used to build thei image. | ||
- `pvw-v5.6.0-egl` and `pvw-v5.6.0-osmesa`: Built on top of the ParaView images above, this adds the Apache webserver, along with some extra scripts and configuration files used by the next image in the stack. [Dockerfile](https://github.com/Kitware/paraviewweb/tree/master/tools/docker/paraviewweb/Dockerfile) | ||
- `pvw-v5.6.0-egl-demo` and `pvw-v5.6.0-egl-visualizer`: Built on top of the `pvw-v5.6.0-egl` image, these add an Apache endpoint for custom applications, and bring a custom launcher config. [Dockerfile](https://github.com/Kitware/paraviewweb/tree/master/tools/docker/visualizer/Dockerfile) | ||
@@ -14,0 +15,0 @@ # EC2 Deployment |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
18203728
26
770
66334