https://public.kitware.com/Wiki/api.php?action=feedcontributions&user=Patmarion&feedformat=atomKitwarePublic - User contributions [en]2024-03-28T08:59:42ZUser contributionsMediaWiki 1.38.6https://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Library&diff=51701VES/Point Cloud Library2013-03-06T12:30:27Z<p>Patmarion: </p>
<hr />
<div>=Introduction=<br />
<br />
This page describes how to compile and develop with Point Cloud Library on Android and iOS, in conjunction with VTK, VES, and Kiwi<br />
<br />
=Framework bundle=<br />
<br />
If you don't want to compile the source code yourself, you can download a PCL framework bundle for iOS at the [http://packages.kitware.com/packages/application/view?applicationId=14 KiwiViewer packages] pages.<br />
<br />
= Getting Started =<br />
<br />
Make sure you have first setup for development environment for Android and/or iOS. Install the official Android and iOS SDKs and try out some of the sample applications that come with the SDKs. Also, familiarize yourself with VES and Kiwi, and try installing KiwiViewer on your mobile device. See the VES Developer's Guide for more instructions. After these are working, follow this guide to integrate the Point Cloud Library into your mobile apps.<br />
<br />
=Checkout the source from Git=<br />
<br />
Use [http://www.git-scm.com/ Git] to checkout the cmake scripts used to cross compile PCL and its dependencies for Android and iOS<br />
<br />
$ git clone git://github.com/patmarion/pcl-superbuild.git<br />
<br />
<br />
=Build with CMake=<br />
<br />
[http://cmake.org/cmake/resources/software.html CMake] is used to configure a superbuild project that will cross compile PCL and its dependencies as subprojects. For more information about superbuilds and cross compiling see the VES Developer's Guide. The commands to configure and make the superbuild are:<br />
<br />
$ mkdir build<br />
$ cd build<br />
$ cmake ../pcl-superbuild<br />
<br />
When you configure with cmake, you can run ccmake or cmake-gui to configure options. You can toggle the options BUILD_ANDROID, BUILD_IOS_DEVICE, and BUILD_IOS_SIMULATOR.<br />
<br />
$ make -j4<br />
<br />
=iOS Example App=<br />
<br />
An example app for iOS, [http://vimeo.com/42773717 as shown here] can be found in the VES repository on the branch stage/pcl-ios-app.<br />
<br />
$ git clone -b pcl-ios-app git://vtk.org/stage/VES.git<br />
<br />
The app is configured with cmake to generate an Xcode project file.<br />
<br />
$ cd VES/Apps/iOS/HelloPCL<br />
$ ./cmake_command.sh<br />
$ open build/HelloPCL.xcodeproj</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Scene_File&diff=51698VES/KiwiViewer Scene File2013-03-05T12:58:05Z<p>Patmarion: /* Bundled Examples */</p>
<hr />
<div>==Introduction==<br />
<br />
KiwiViewer can load scene files that describe a scene consisting of one or more data files. KiwiViewer v2.0 uses a scene file in the JSON format. KiwiViewer v1.0 for Android used a CSV format. A scene file can be added to a folder with data files and zipped up for KiwiViewer to read.<br />
<br />
==JSON scene file for KiwiViewer v2.0==<br />
<br />
KiwiViewer v2.0 is available for iOS in the App Store. An experimental version for Android can be downloaded from the [http://packages.kitware.com/packages/application/view?applicationId=14 KiwiViewer packages] page.<br />
<br />
===Examples===<br />
<br />
The best way to get started with kiwi scene files in the JSON format is to look at examples. There are two ways to get examples. You can use the <b>paraview_to_kiwi</b> macro, described in the following section, to automatically create scene files. Or, you can look at the examples that are bundled with the KiwiViewer v2.0 app.<br />
<br />
===Bundled Examples===<br />
<br />
KiwiViewer is bundled with sample datasets that demonstrate how to do <b>animations, custom color maps, and textured meshes</b>. The sample datasets that have a .zip file extension will extract into folders that contain data files and a kiwi scene file with the <i>.kiwi</i> file extension. You can download the sample datasets [https://midas3.kitware.com/midas/folder/9479 from Midas]. The exception is the <i>SPL-PNL Brain Atlas.zip</i>, this dataset does not use a kiwi scene file, it is handled with a custom behavior by the KiwiViewer app.<br />
<br />
===ParaView Exporter===<br />
<br />
You can download the [http://packages.kitware.com/item/3021 paraview_to_kiwi.py] python script and add it to ParaView as a python macro. In ParaView, go to the <i>Macros</i> menu and choose <i>Add new macro</i>. Select the paraview_to_kiwi.py script and it will become a macro in ParaView. ParaView macros are accessible from the Macros menu or the Macros toolbar (enable the Macros toolbar using the View menu).<br />
<br />
When you run the <i>paraview_to_kiwi</i> macro, the current scene will be exported to a zip file on your desktop. If the export operation fails, you can open the Python Console from the <i>Tools</i> menu, error messages will be displayed in the console. If you are unable to resolve the error, please ask for help on the ParaView User's mailing list.<br />
<br />
You can use iTunes file sharing to copy the zip file into KiwiViewer. Or, place the zip file into your Dropbox folder, or upload it to Midas where KiwiViewer can access it. If you read the paraview_to_kiwi.py script.<br />
<br />
===Scene file from exported ParaView animation===<br />
<br />
You can use ParaView to export an animation using the <i>Save Geometry</i> option in the <i>File</i> menu. ParaView will export the animation into a directory, and that directory will contain a subdirectory for each frame of the animation. The subdirectories will contain the data files for each frame of the animation. For this example, we assume that each subdirectory contains just one <i>vtp</i> file. You can open a terminal and cd to the exported animation directory. Running <b>ls */*.vtp</b> should list all the data files. Run python and paste this code into the interactive prompt:<br />
<br />
<pre><br />
import glob<br />
import json<br />
<br />
filenames = glob.glob('*/*.vtp')<br />
object = dict(filenames=filenames)<br />
scene = dict(objects=[object])<br />
open('scene.kiwi', 'w').write(json.dumps(scene, indent=2))<br />
</pre><br />
<br />
Now you will have a .kiwi scene file inside the exported animation directory. At this point, you can zip the whole directory and open it with KiwiViewer.<br />
<br />
===Textured mesh===<br />
<br />
For an example, you can download the [https://midas3.kitware.com/midas/item/34767 NASA Blue Marble]. The zip file contains a geometry file (vtp format), an image (jpg format), and a scene file.<br />
<br />
<br />
<pre><br />
$ unzip "NASA Blue Marble.zip"<br />
Archive: NASA Blue Marble.zip<br />
creating: nasa-blue-marble/<br />
inflating: nasa-blue-marble/earth.jpg <br />
inflating: nasa-blue-marble/nasa-blue-marble.kiwi <br />
inflating: nasa-blue-marble/textured_sphere.vtp <br />
<br />
$ cat nasa-blue-marble/nasa-blue-marble.kiwi <br />
{<br />
"objects": [<br />
{<br />
"filename": "textured_sphere.vtp",<br />
"texture": "earth.jpg"<br />
}<br />
],<br />
"camera": {<br />
"position": [-2,0,0],<br />
"focal_point": [0,0,0],<br />
"view_up": [0,0,1]<br />
}<br />
}<br />
</pre><br />
<br />
Note that that data files can be stored in sub directories. Filenames in the scene file can be recorded with relative paths to the data files.<br />
<br />
You need to have a geometry file that has texture coordinates. The best way to do this is to open your data file in ParaView and confirm that it has a texture coordinates array. You can apply a texture to the data in ParaView using the Texture display property in the Display settings. This way, you can verify in ParaView that your data and texture coordinates are correct.<br />
<br />
==Old style Kiwi CSV scene file for KiwiViewer v1.0==<br />
<br />
KiwiViewer v1.0 for Android supports a scene file that uses a simple comma-separated-value format. This format is not used in newer versions of KiwiViewer, it has been replaced with the JSON format scene file described above.<br />
<br />
===File extension===<br />
<br />
The scene description file extension should be <b>.kiwi</b>.<br />
<br />
===Separators===<br />
<br />
Each field should be separated by a comma without leading or trailing spaces. Fields are not quoted.<br />
<br />
===Headers===<br />
<br />
The first row of the file contains text column headers, separated by comma. The order of the columns does not matter. The file may contain extra columns, they will be ignored. The only required header is <b>filename</b>. The available headers are: <b>filename, url, r, g, b, a</b>. The <b>r, g, b</b> columns specify the dataset color. The <b>a</b> column specifies alpha (transparency). Color and alpha are specified using decimal numbers between 0.0 and 1.0. If color is not specified, it will default to white. If alpha is not specified, it defaults to 1.<br />
<br />
===Example Files===<br />
<br />
This file specifies two datasets:<br />
<pre><br />
filename<br />
foo.vtk<br />
bar.vtk<br />
</pre><br />
<br />
This file specifies two datasets. The datasets will be downloaded from URLs and saved to local storage.<br />
<pre><br />
filename,url<br />
foo.vtk,http://example.com/foo.vtk<br />
bar.vtk,http://example.com/bar.vtk<br />
</pre><br />
<br />
This file specifies one dataset that will be green and translucent.<br />
<pre><br />
filename,r,g,b,a<br />
foo.vtk,0,1,0,0.5<br />
</pre><br />
<br />
===Specifying a URL===<br />
<br />
You can specify a <b>url</b> column to download datasets. The file must still have the <b>filename</b> column. The dataset will be downloaded from the URL and saved to local storage using the value specified in the <b>filename</b> column. If the scene file is loaded again in the future, and the file still exists on local storage, <b>it will not be downloaded again</b>.<br />
<br />
===Specifying a filename===<br />
<br />
The filename specified is relative to the <b>.kiwi</b> scene file. For example, loading the scene file <i>/sdcard/Documents/test.kiwi</i> that specifies a filename <i>models/foo.vtk</i> will open the file <i>/sdcard/Documents/models/foo.vtk</i>. If a dataset is downloaded from a URL and saved to local storage, subdirectories will be created if they are specified in the <b>filename</b> field.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Scene_File&diff=51697VES/KiwiViewer Scene File2013-03-05T12:52:26Z<p>Patmarion: </p>
<hr />
<div>==Introduction==<br />
<br />
KiwiViewer can load scene files that describe a scene consisting of one or more data files. KiwiViewer v2.0 uses a scene file in the JSON format. KiwiViewer v1.0 for Android used a CSV format. A scene file can be added to a folder with data files and zipped up for KiwiViewer to read.<br />
<br />
==JSON scene file for KiwiViewer v2.0==<br />
<br />
KiwiViewer v2.0 is available for iOS in the App Store. An experimental version for Android can be downloaded from the [http://packages.kitware.com/packages/application/view?applicationId=14 KiwiViewer packages] page.<br />
<br />
===Examples===<br />
<br />
The best way to get started with kiwi scene files in the JSON format is to look at examples. There are two ways to get examples. You can use the <b>paraview_to_kiwi</b> macro, described in the following section, to automatically create scene files. Or, you can look at the examples that are bundled with the KiwiViewer v2.0 app.<br />
<br />
===Bundled Examples===<br />
<br />
KiwiViewer is bundled with sample datasets that demonstrate how to do <b>animations, custom color maps, and textured meshes</b>. The sample datasets that have a .zip file extension will extract into folders that contain data files and a kiwi scene file with the <i>.kiwi</i> file extension. You can download the sample datasets [https://midas3.kitware.com/midas/folder/9479 from Midas].<br />
<br />
===ParaView Exporter===<br />
<br />
You can download the [http://packages.kitware.com/item/3021 paraview_to_kiwi.py] python script and add it to ParaView as a python macro. In ParaView, go to the <i>Macros</i> menu and choose <i>Add new macro</i>. Select the paraview_to_kiwi.py script and it will become a macro in ParaView. ParaView macros are accessible from the Macros menu or the Macros toolbar (enable the Macros toolbar using the View menu).<br />
<br />
When you run the <i>paraview_to_kiwi</i> macro, the current scene will be exported to a zip file on your desktop. If the export operation fails, you can open the Python Console from the <i>Tools</i> menu, error messages will be displayed in the console. If you are unable to resolve the error, please ask for help on the ParaView User's mailing list.<br />
<br />
You can use iTunes file sharing to copy the zip file into KiwiViewer. Or, place the zip file into your Dropbox folder, or upload it to Midas where KiwiViewer can access it. If you read the paraview_to_kiwi.py script.<br />
<br />
===Scene file from exported ParaView animation===<br />
<br />
You can use ParaView to export an animation using the <i>Save Geometry</i> option in the <i>File</i> menu. ParaView will export the animation into a directory, and that directory will contain a subdirectory for each frame of the animation. The subdirectories will contain the data files for each frame of the animation. For this example, we assume that each subdirectory contains just one <i>vtp</i> file. You can open a terminal and cd to the exported animation directory. Running <b>ls */*.vtp</b> should list all the data files. Run python and paste this code into the interactive prompt:<br />
<br />
<pre><br />
import glob<br />
import json<br />
<br />
filenames = glob.glob('*/*.vtp')<br />
object = dict(filenames=filenames)<br />
scene = dict(objects=[object])<br />
open('scene.kiwi', 'w').write(json.dumps(scene, indent=2))<br />
</pre><br />
<br />
Now you will have a .kiwi scene file inside the exported animation directory. At this point, you can zip the whole directory and open it with KiwiViewer.<br />
<br />
===Textured mesh===<br />
<br />
For an example, you can download the [https://midas3.kitware.com/midas/item/34767 NASA Blue Marble]. The zip file contains a geometry file (vtp format), an image (jpg format), and a scene file.<br />
<br />
<br />
<pre><br />
$ unzip "NASA Blue Marble.zip"<br />
Archive: NASA Blue Marble.zip<br />
creating: nasa-blue-marble/<br />
inflating: nasa-blue-marble/earth.jpg <br />
inflating: nasa-blue-marble/nasa-blue-marble.kiwi <br />
inflating: nasa-blue-marble/textured_sphere.vtp <br />
<br />
$ cat nasa-blue-marble/nasa-blue-marble.kiwi <br />
{<br />
"objects": [<br />
{<br />
"filename": "textured_sphere.vtp",<br />
"texture": "earth.jpg"<br />
}<br />
],<br />
"camera": {<br />
"position": [-2,0,0],<br />
"focal_point": [0,0,0],<br />
"view_up": [0,0,1]<br />
}<br />
}<br />
</pre><br />
<br />
Note that that data files can be stored in sub directories. Filenames in the scene file can be recorded with relative paths to the data files.<br />
<br />
You need to have a geometry file that has texture coordinates. The best way to do this is to open your data file in ParaView and confirm that it has a texture coordinates array. You can apply a texture to the data in ParaView using the Texture display property in the Display settings. This way, you can verify in ParaView that your data and texture coordinates are correct.<br />
<br />
==Old style Kiwi CSV scene file for KiwiViewer v1.0==<br />
<br />
KiwiViewer v1.0 for Android supports a scene file that uses a simple comma-separated-value format. This format is not used in newer versions of KiwiViewer, it has been replaced with the JSON format scene file described above.<br />
<br />
===File extension===<br />
<br />
The scene description file extension should be <b>.kiwi</b>.<br />
<br />
===Separators===<br />
<br />
Each field should be separated by a comma without leading or trailing spaces. Fields are not quoted.<br />
<br />
===Headers===<br />
<br />
The first row of the file contains text column headers, separated by comma. The order of the columns does not matter. The file may contain extra columns, they will be ignored. The only required header is <b>filename</b>. The available headers are: <b>filename, url, r, g, b, a</b>. The <b>r, g, b</b> columns specify the dataset color. The <b>a</b> column specifies alpha (transparency). Color and alpha are specified using decimal numbers between 0.0 and 1.0. If color is not specified, it will default to white. If alpha is not specified, it defaults to 1.<br />
<br />
===Example Files===<br />
<br />
This file specifies two datasets:<br />
<pre><br />
filename<br />
foo.vtk<br />
bar.vtk<br />
</pre><br />
<br />
This file specifies two datasets. The datasets will be downloaded from URLs and saved to local storage.<br />
<pre><br />
filename,url<br />
foo.vtk,http://example.com/foo.vtk<br />
bar.vtk,http://example.com/bar.vtk<br />
</pre><br />
<br />
This file specifies one dataset that will be green and translucent.<br />
<pre><br />
filename,r,g,b,a<br />
foo.vtk,0,1,0,0.5<br />
</pre><br />
<br />
===Specifying a URL===<br />
<br />
You can specify a <b>url</b> column to download datasets. The file must still have the <b>filename</b> column. The dataset will be downloaded from the URL and saved to local storage using the value specified in the <b>filename</b> column. If the scene file is loaded again in the future, and the file still exists on local storage, <b>it will not be downloaded again</b>.<br />
<br />
===Specifying a filename===<br />
<br />
The filename specified is relative to the <b>.kiwi</b> scene file. For example, loading the scene file <i>/sdcard/Documents/test.kiwi</i> that specifies a filename <i>models/foo.vtk</i> will open the file <i>/sdcard/Documents/models/foo.vtk</i>. If a dataset is downloaded from a URL and saved to local storage, subdirectories will be created if they are specified in the <b>filename</b> field.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Scene_File&diff=51696VES/KiwiViewer Scene File2013-03-05T12:42:38Z<p>Patmarion: /* Scene file from exported ParaView animation */</p>
<hr />
<div>==Introduction==<br />
<br />
KiwiViewer can load scene files that describe a scene consisting of one or more data files. KiwiViewer v2.0 uses a scene file in the JSON format. KiwiViewer v1.0 for Android used a CSV format. A scene file can be added to a folder with data files and zipped up for KiwiViewer to read.<br />
<br />
==JSON scene file for KiwiViewer v2.0==<br />
<br />
KiwiViewer v2.0 is available for iOS in the App Store. An experimental version for Android can be downloaded from the [http://packages.kitware.com/packages/application/view?applicationId=14 KiwiViewer packages] page.<br />
<br />
===Examples===<br />
<br />
The best way to get started with kiwi scene files in the JSON format is to look at examples. There are two ways to get examples. You can use the <b>paraview_to_kiwi</b> macro, described in the following section, to automatically create scene files. Or, you can look at the examples that are bundled with the KiwiViewer v2.0 app.<br />
<br />
===Bundled Examples===<br />
<br />
KiwiViewer is bundled with sample datasets that demonstrate how to do <b>animations, custom color maps, and textured meshes</b>. The sample datasets that have a .zip file extension will extract into folders that contain data files and a kiwi scene file with the <i>.kiwi</i> file extension. You can download the sample datasets [https://midas3.kitware.com/midas/folder/9479 from Midas].<br />
<br />
===ParaView Exporter===<br />
<br />
You can download the [http://packages.kitware.com/item/3021 paraview_to_kiwi.py] python script and add it to ParaView as a python macro. In ParaView, go to the <i>Macros</i> menu and choose <i>Add new macro</i>. Select the paraview_to_kiwi.py script and it will become a macro in ParaView. ParaView macros are accessible from the Macros menu or the Macros toolbar (enable the Macros toolbar using the View menu).<br />
<br />
When you run the <i>paraview_to_kiwi</i> macro, the current scene will be exported to a zip file on your desktop. If the export operation fails, you can open the Python Console from the <i>Tools</i> menu, error messages will be displayed in the console. If you are unable to resolve the error, please ask for help on the ParaView User's mailing list.<br />
<br />
You can use iTunes file sharing to copy the zip file into KiwiViewer. Or, place the zip file into your Dropbox folder, or upload it to Midas where KiwiViewer can access it. If you read the paraview_to_kiwi.py script.<br />
<br />
===Scene file from exported ParaView animation===<br />
<br />
You can use ParaView to export an animation using the <i>Save Geometry</i> option in the <i>File</i> menu. ParaView will export the animation into a directory, and that directory will contain a subdirectory for each frame of the animation. The subdirectories will contain the data files for each frame of the animation. For this example, we assume that each subdirectory contains just one <i>vtp</i> file. You can open a terminal and cd to the exported animation directory. Running <b>ls */*.vtp</b> should list all the data files. Run python and paste this code into the interactive prompt:<br />
<br />
<pre><br />
import glob<br />
import json<br />
<br />
filenames = glob.glob('*/*.vtp')<br />
object = dict(filenames=filenames)<br />
scene = dict(objects=[object])<br />
open('scene.kiwi', 'w').write(json.dumps(scene, indent=2))<br />
</pre><br />
<br />
Now you will have a .kiwi scene file inside the exported animation directory. At this point, you can zip the whole directory and open it with KiwiViewer.<br />
<br />
==Old style Kiwi CSV scene file for KiwiViewer v1.0==<br />
<br />
KiwiViewer v1.0 for Android supports a scene file that uses a simple comma-separated-value format. This format is not used in newer versions of KiwiViewer, it has been replaced with the JSON format scene file described above.<br />
<br />
===File extension===<br />
<br />
The scene description file extension should be <b>.kiwi</b>.<br />
<br />
===Separators===<br />
<br />
Each field should be separated by a comma without leading or trailing spaces. Fields are not quoted.<br />
<br />
===Headers===<br />
<br />
The first row of the file contains text column headers, separated by comma. The order of the columns does not matter. The file may contain extra columns, they will be ignored. The only required header is <b>filename</b>. The available headers are: <b>filename, url, r, g, b, a</b>. The <b>r, g, b</b> columns specify the dataset color. The <b>a</b> column specifies alpha (transparency). Color and alpha are specified using decimal numbers between 0.0 and 1.0. If color is not specified, it will default to white. If alpha is not specified, it defaults to 1.<br />
<br />
===Example Files===<br />
<br />
This file specifies two datasets:<br />
<pre><br />
filename<br />
foo.vtk<br />
bar.vtk<br />
</pre><br />
<br />
This file specifies two datasets. The datasets will be downloaded from URLs and saved to local storage.<br />
<pre><br />
filename,url<br />
foo.vtk,http://example.com/foo.vtk<br />
bar.vtk,http://example.com/bar.vtk<br />
</pre><br />
<br />
This file specifies one dataset that will be green and translucent.<br />
<pre><br />
filename,r,g,b,a<br />
foo.vtk,0,1,0,0.5<br />
</pre><br />
<br />
===Specifying a URL===<br />
<br />
You can specify a <b>url</b> column to download datasets. The file must still have the <b>filename</b> column. The dataset will be downloaded from the URL and saved to local storage using the value specified in the <b>filename</b> column. If the scene file is loaded again in the future, and the file still exists on local storage, <b>it will not be downloaded again</b>.<br />
<br />
===Specifying a filename===<br />
<br />
The filename specified is relative to the <b>.kiwi</b> scene file. For example, loading the scene file <i>/sdcard/Documents/test.kiwi</i> that specifies a filename <i>models/foo.vtk</i> will open the file <i>/sdcard/Documents/models/foo.vtk</i>. If a dataset is downloaded from a URL and saved to local storage, subdirectories will be created if they are specified in the <b>filename</b> field.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Scene_File&diff=51695VES/KiwiViewer Scene File2013-03-05T12:42:04Z<p>Patmarion: /* Bundled Examples */</p>
<hr />
<div>==Introduction==<br />
<br />
KiwiViewer can load scene files that describe a scene consisting of one or more data files. KiwiViewer v2.0 uses a scene file in the JSON format. KiwiViewer v1.0 for Android used a CSV format. A scene file can be added to a folder with data files and zipped up for KiwiViewer to read.<br />
<br />
==JSON scene file for KiwiViewer v2.0==<br />
<br />
KiwiViewer v2.0 is available for iOS in the App Store. An experimental version for Android can be downloaded from the [http://packages.kitware.com/packages/application/view?applicationId=14 KiwiViewer packages] page.<br />
<br />
===Examples===<br />
<br />
The best way to get started with kiwi scene files in the JSON format is to look at examples. There are two ways to get examples. You can use the <b>paraview_to_kiwi</b> macro, described in the following section, to automatically create scene files. Or, you can look at the examples that are bundled with the KiwiViewer v2.0 app.<br />
<br />
===Bundled Examples===<br />
<br />
KiwiViewer is bundled with sample datasets that demonstrate how to do <b>animations, custom color maps, and textured meshes</b>. The sample datasets that have a .zip file extension will extract into folders that contain data files and a kiwi scene file with the <i>.kiwi</i> file extension. You can download the sample datasets [https://midas3.kitware.com/midas/folder/9479 from Midas].<br />
<br />
===ParaView Exporter===<br />
<br />
You can download the [http://packages.kitware.com/item/3021 paraview_to_kiwi.py] python script and add it to ParaView as a python macro. In ParaView, go to the <i>Macros</i> menu and choose <i>Add new macro</i>. Select the paraview_to_kiwi.py script and it will become a macro in ParaView. ParaView macros are accessible from the Macros menu or the Macros toolbar (enable the Macros toolbar using the View menu).<br />
<br />
When you run the <i>paraview_to_kiwi</i> macro, the current scene will be exported to a zip file on your desktop. If the export operation fails, you can open the Python Console from the <i>Tools</i> menu, error messages will be displayed in the console. If you are unable to resolve the error, please ask for help on the ParaView User's mailing list.<br />
<br />
You can use iTunes file sharing to copy the zip file into KiwiViewer. Or, place the zip file into your Dropbox folder, or upload it to Midas where KiwiViewer can access it. If you read the paraview_to_kiwi.py script.<br />
<br />
===Scene file from exported ParaView animation===<br />
<br />
You can use ParaView to export an animation using the <i>Save Geometry</i> option in the <i>File</i> menu. ParaView will export the animation into a directory, and that directory will contain a subdirectory for each frame of the animation. The subdirectories will contain the data files for each frame of the animation. For this example, we assume that each subdirectory contains just one <i>vtp</i> file. You can open a terminal and cd to the exported animation directory. Running <b>ls */*.vtp</b> should list all the data files. Run python and paste this code into the interactive prompt:<br />
<br />
<pre><br />
<br />
import glob<br />
import json<br />
<br />
filenames = glob.glob('*/*.vtp')<br />
object = dict(filenames=filenames)<br />
scene = dict(objects=[object])<br />
open('scene.kiwi', 'w').write(json.dumps(scene, indent=2))<br />
<br />
</pre><br />
<br />
Now you will have a .kiwi scene file inside the exported animation directory. At this point, you can zip the whole directory and open it with KiwiViewer.<br />
<br />
==Old style Kiwi CSV scene file for KiwiViewer v1.0==<br />
<br />
KiwiViewer v1.0 for Android supports a scene file that uses a simple comma-separated-value format. This format is not used in newer versions of KiwiViewer, it has been replaced with the JSON format scene file described above.<br />
<br />
===File extension===<br />
<br />
The scene description file extension should be <b>.kiwi</b>.<br />
<br />
===Separators===<br />
<br />
Each field should be separated by a comma without leading or trailing spaces. Fields are not quoted.<br />
<br />
===Headers===<br />
<br />
The first row of the file contains text column headers, separated by comma. The order of the columns does not matter. The file may contain extra columns, they will be ignored. The only required header is <b>filename</b>. The available headers are: <b>filename, url, r, g, b, a</b>. The <b>r, g, b</b> columns specify the dataset color. The <b>a</b> column specifies alpha (transparency). Color and alpha are specified using decimal numbers between 0.0 and 1.0. If color is not specified, it will default to white. If alpha is not specified, it defaults to 1.<br />
<br />
===Example Files===<br />
<br />
This file specifies two datasets:<br />
<pre><br />
filename<br />
foo.vtk<br />
bar.vtk<br />
</pre><br />
<br />
This file specifies two datasets. The datasets will be downloaded from URLs and saved to local storage.<br />
<pre><br />
filename,url<br />
foo.vtk,http://example.com/foo.vtk<br />
bar.vtk,http://example.com/bar.vtk<br />
</pre><br />
<br />
This file specifies one dataset that will be green and translucent.<br />
<pre><br />
filename,r,g,b,a<br />
foo.vtk,0,1,0,0.5<br />
</pre><br />
<br />
===Specifying a URL===<br />
<br />
You can specify a <b>url</b> column to download datasets. The file must still have the <b>filename</b> column. The dataset will be downloaded from the URL and saved to local storage using the value specified in the <b>filename</b> column. If the scene file is loaded again in the future, and the file still exists on local storage, <b>it will not be downloaded again</b>.<br />
<br />
===Specifying a filename===<br />
<br />
The filename specified is relative to the <b>.kiwi</b> scene file. For example, loading the scene file <i>/sdcard/Documents/test.kiwi</i> that specifies a filename <i>models/foo.vtk</i> will open the file <i>/sdcard/Documents/models/foo.vtk</i>. If a dataset is downloaded from a URL and saved to local storage, subdirectories will be created if they are specified in the <b>filename</b> field.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Scene_File&diff=51694VES/KiwiViewer Scene File2013-03-05T12:30:07Z<p>Patmarion: </p>
<hr />
<div>==Introduction==<br />
<br />
KiwiViewer can load scene files that describe a scene consisting of one or more data files. KiwiViewer v2.0 uses a scene file in the JSON format. KiwiViewer v1.0 for Android used a CSV format. A scene file can be added to a folder with data files and zipped up for KiwiViewer to read.<br />
<br />
==JSON scene file for KiwiViewer v2.0==<br />
<br />
KiwiViewer v2.0 is available for iOS in the App Store. An experimental version for Android can be downloaded from the [http://packages.kitware.com/packages/application/view?applicationId=14 KiwiViewer packages] page.<br />
<br />
===Examples===<br />
<br />
The best way to get started with kiwi scene files in the JSON format is to look at examples. There are two ways to get examples. You can use the <b>paraview_to_kiwi</b> macro, described in the following section, to automatically create scene files. Or, you can look at the examples that are bundled with the KiwiViewer v2.0 app.<br />
<br />
===Bundled Examples===<br />
<br />
KiwiViewer is bundled with sample datasets that demonstrate how to do <b>animations, custom color maps, and textured meshes</b>. The sample datasets that have a .zip file extension will extract into folders that contain data files and a kiwi scene file with the <i>.kiwi</i> file extension. You can copy the extracted folders to your computer using iTunes file sharing in order to read and modify them.<br />
<br />
===ParaView Exporter===<br />
<br />
You can download the [http://packages.kitware.com/item/3021 paraview_to_kiwi.py] python script and add it to ParaView as a python macro. In ParaView, go to the <i>Macros</i> menu and choose <i>Add new macro</i>. Select the paraview_to_kiwi.py script and it will become a macro in ParaView. ParaView macros are accessible from the Macros menu or the Macros toolbar (enable the Macros toolbar using the View menu).<br />
<br />
When you run the <i>paraview_to_kiwi</i> macro, the current scene will be exported to a zip file on your desktop. If the export operation fails, you can open the Python Console from the <i>Tools</i> menu, error messages will be displayed in the console. If you are unable to resolve the error, please ask for help on the ParaView User's mailing list.<br />
<br />
You can use iTunes file sharing to copy the zip file into KiwiViewer. Or, place the zip file into your Dropbox folder, or upload it to Midas where KiwiViewer can access it. If you read the paraview_to_kiwi.py script.<br />
<br />
===Scene file from exported ParaView animation===<br />
<br />
You can use ParaView to export an animation using the <i>Save Geometry</i> option in the <i>File</i> menu. ParaView will export the animation into a directory, and that directory will contain a subdirectory for each frame of the animation. The subdirectories will contain the data files for each frame of the animation. For this example, we assume that each subdirectory contains just one <i>vtp</i> file. You can open a terminal and cd to the exported animation directory. Running <b>ls */*.vtp</b> should list all the data files. Run python and paste this code into the interactive prompt:<br />
<br />
<pre><br />
<br />
import glob<br />
import json<br />
<br />
filenames = glob.glob('*/*.vtp')<br />
object = dict(filenames=filenames)<br />
scene = dict(objects=[object])<br />
open('scene.kiwi', 'w').write(json.dumps(scene, indent=2))<br />
<br />
</pre><br />
<br />
Now you will have a .kiwi scene file inside the exported animation directory. At this point, you can zip the whole directory and open it with KiwiViewer.<br />
<br />
==Old style Kiwi CSV scene file for KiwiViewer v1.0==<br />
<br />
KiwiViewer v1.0 for Android supports a scene file that uses a simple comma-separated-value format. This format is not used in newer versions of KiwiViewer, it has been replaced with the JSON format scene file described above.<br />
<br />
===File extension===<br />
<br />
The scene description file extension should be <b>.kiwi</b>.<br />
<br />
===Separators===<br />
<br />
Each field should be separated by a comma without leading or trailing spaces. Fields are not quoted.<br />
<br />
===Headers===<br />
<br />
The first row of the file contains text column headers, separated by comma. The order of the columns does not matter. The file may contain extra columns, they will be ignored. The only required header is <b>filename</b>. The available headers are: <b>filename, url, r, g, b, a</b>. The <b>r, g, b</b> columns specify the dataset color. The <b>a</b> column specifies alpha (transparency). Color and alpha are specified using decimal numbers between 0.0 and 1.0. If color is not specified, it will default to white. If alpha is not specified, it defaults to 1.<br />
<br />
===Example Files===<br />
<br />
This file specifies two datasets:<br />
<pre><br />
filename<br />
foo.vtk<br />
bar.vtk<br />
</pre><br />
<br />
This file specifies two datasets. The datasets will be downloaded from URLs and saved to local storage.<br />
<pre><br />
filename,url<br />
foo.vtk,http://example.com/foo.vtk<br />
bar.vtk,http://example.com/bar.vtk<br />
</pre><br />
<br />
This file specifies one dataset that will be green and translucent.<br />
<pre><br />
filename,r,g,b,a<br />
foo.vtk,0,1,0,0.5<br />
</pre><br />
<br />
===Specifying a URL===<br />
<br />
You can specify a <b>url</b> column to download datasets. The file must still have the <b>filename</b> column. The dataset will be downloaded from the URL and saved to local storage using the value specified in the <b>filename</b> column. If the scene file is loaded again in the future, and the file still exists on local storage, <b>it will not be downloaded again</b>.<br />
<br />
===Specifying a filename===<br />
<br />
The filename specified is relative to the <b>.kiwi</b> scene file. For example, loading the scene file <i>/sdcard/Documents/test.kiwi</i> that specifies a filename <i>models/foo.vtk</i> will open the file <i>/sdcard/Documents/models/foo.vtk</i>. If a dataset is downloaded from a URL and saved to local storage, subdirectories will be created if they are specified in the <b>filename</b> field.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Streaming&diff=51692VES/Point Cloud Streaming2013-03-05T00:37:53Z<p>Patmarion: /* Demonstration video */</p>
<hr />
<div>[[Image: Pcl vert pos.png|80px|link=http://www.pointclouds.org/]] [[Image: KiwiLogo_512.png|100px|link=http://www.kiwiviewer.org/]] <br />
<br />
<br />
The Point Cloud Library and KiwiViewer can be used to stream point clouds to mobile devices with real-time visualization. For an overview, please see this [http://www.kitware.com/blog/home/post/273 blog post].<br />
<br />
==Demonstration video==<br />
<br />
[[Image:PCL_Streaming_Movie_Banner.png|link=http://vimeo.com/41377003|border]]<br />
<br />
==Installing and running the server==<br />
<br />
The point cloud streaming server is a program that is part of the Point Cloud Library (PCL). When you compile PCL with OpenNI enabled, the pcl_openni_mobile_server program will be built. For more information on how to run the server program, please read the [http://pointclouds.org/documentation/tutorials/mobile_streaming.php PCL mobile streaming tutorial].<br />
<br />
==Connecting to the server with KiwiViewer for iOS==<br />
<br />
The point cloud streaming client is a feature introduced in KiwiViewer v2.0 for iOS. You can download the app from the App Store. Open the app, go to the Documents tab, and select <b>Point Cloud Streaming</b>. You will be presented with the following screen: <br />
<br />
[[Image:KiwiViewerTutorial-4.png | 240px ]]<br />
<br />
Enter the IP address of your computer that is running the point cloud streaming server. Make sure you have started the server program on your computer, then tap the <b>Start</b> button to connect. By default, port 11111 is used, but you can enter a different port number of entering the host information as <b>address:port</b>. If the connection is successful, KiwiViewer will switch to the 3D view and begin visualizing the point clouds as they are streamed from the server.<br />
<br />
==Connecting to the server with KiwiViewer for Android==<br />
<br />
The version of KiwiViewer that is currently available in the Google Play Store does not have the ParaView mobile remote control feature. In the meantime, you can download a version of KiwiViewer that features the point cloud streaming client from the [http://packages.kitware.com/packages/application/view?applicationId=14,15,16 KiwiViewer packages].</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Streaming&diff=51691VES/Point Cloud Streaming2013-03-05T00:37:09Z<p>Patmarion: /* Demonstration video */</p>
<hr />
<div>[[Image: Pcl vert pos.png|80px|link=http://www.pointclouds.org/]] [[Image: KiwiLogo_512.png|100px|link=http://www.kiwiviewer.org/]] <br />
<br />
<br />
The Point Cloud Library and KiwiViewer can be used to stream point clouds to mobile devices with real-time visualization. For an overview, please see this [http://www.kitware.com/blog/home/post/273 blog post].<br />
<br />
==Demonstration video==<br />
<br />
[[Image:ParaView_Remote_Movie_Banner.png|link=http://vimeo.com/41377003|border]]<br />
<br />
==Installing and running the server==<br />
<br />
The point cloud streaming server is a program that is part of the Point Cloud Library (PCL). When you compile PCL with OpenNI enabled, the pcl_openni_mobile_server program will be built. For more information on how to run the server program, please read the [http://pointclouds.org/documentation/tutorials/mobile_streaming.php PCL mobile streaming tutorial].<br />
<br />
==Connecting to the server with KiwiViewer for iOS==<br />
<br />
The point cloud streaming client is a feature introduced in KiwiViewer v2.0 for iOS. You can download the app from the App Store. Open the app, go to the Documents tab, and select <b>Point Cloud Streaming</b>. You will be presented with the following screen: <br />
<br />
[[Image:KiwiViewerTutorial-4.png | 240px ]]<br />
<br />
Enter the IP address of your computer that is running the point cloud streaming server. Make sure you have started the server program on your computer, then tap the <b>Start</b> button to connect. By default, port 11111 is used, but you can enter a different port number of entering the host information as <b>address:port</b>. If the connection is successful, KiwiViewer will switch to the 3D view and begin visualizing the point clouds as they are streamed from the server.<br />
<br />
==Connecting to the server with KiwiViewer for Android==<br />
<br />
The version of KiwiViewer that is currently available in the Google Play Store does not have the ParaView mobile remote control feature. In the meantime, you can download a version of KiwiViewer that features the point cloud streaming client from the [http://packages.kitware.com/packages/application/view?applicationId=14,15,16 KiwiViewer packages].</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Streaming&diff=51690VES/Point Cloud Streaming2013-03-05T00:27:57Z<p>Patmarion: </p>
<hr />
<div>[[Image: Pcl vert pos.png|80px|link=http://www.pointclouds.org/]] [[Image: KiwiLogo_512.png|100px|link=http://www.kiwiviewer.org/]] <br />
<br />
<br />
The Point Cloud Library and KiwiViewer can be used to stream point clouds to mobile devices with real-time visualization. For an overview, please see this [http://www.kitware.com/blog/home/post/273 blog post].<br />
<br />
==Demonstration video==<br />
<br />
[[Image:ParaView_Remote_Movie_Banner.png|link=http://vimeo.com/61020951|border]]<br />
<br />
<br />
==Installing and running the server==<br />
<br />
The point cloud streaming server is a program that is part of the Point Cloud Library (PCL). When you compile PCL with OpenNI enabled, the pcl_openni_mobile_server program will be built. For more information on how to run the server program, please read the [http://pointclouds.org/documentation/tutorials/mobile_streaming.php PCL mobile streaming tutorial].<br />
<br />
==Connecting to the server with KiwiViewer for iOS==<br />
<br />
The point cloud streaming client is a feature introduced in KiwiViewer v2.0 for iOS. You can download the app from the App Store. Open the app, go to the Documents tab, and select <b>Point Cloud Streaming</b>. You will be presented with the following screen: <br />
<br />
[[Image:KiwiViewerTutorial-4.png | 240px ]]<br />
<br />
Enter the IP address of your computer that is running the point cloud streaming server. Make sure you have started the server program on your computer, then tap the <b>Start</b> button to connect. By default, port 11111 is used, but you can enter a different port number of entering the host information as <b>address:port</b>. If the connection is successful, KiwiViewer will switch to the 3D view and begin visualizing the point clouds as they are streamed from the server.<br />
<br />
==Connecting to the server with KiwiViewer for Android==<br />
<br />
The version of KiwiViewer that is currently available in the Google Play Store does not have the ParaView mobile remote control feature. In the meantime, you can download a version of KiwiViewer that features the point cloud streaming client from the [http://packages.kitware.com/packages/application/view?applicationId=14,15,16 KiwiViewer packages].</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:KiwiViewerTutorial-4.png&diff=51689File:KiwiViewerTutorial-4.png2013-03-05T00:09:54Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/ParaView_Mobile_Remote_Control&diff=51688VES/ParaView Mobile Remote Control2013-03-05T00:08:01Z<p>Patmarion: </p>
<hr />
<div>The ParaView Mobile Remote Control allows users to connect their mobile device to ParaView, and use the mobile device to view the ParaView scene and control the ParaView camera.<br />
<br />
[[Image: ParaView_Mobile_Remote_Screenshot.png | 600px]] [[Image: KiwiViewerTutorial-1.png | 240px]]<br />
<br />
== Tutorial and Demonstration Video ==<br />
<br />
This video shows a demonstration of the ParaView mobile remote control and then walks through the steps of using it in KiwiViewer.<br />
<br />
[[Image:ParaView_Remote_Movie_Banner.png|link=http://vimeo.com/61020951|border]]<br />
<br />
== Plugin for ParaView ==<br />
<br />
The mobile remote control plugin is bundled with [http://paraview.org/paraview/resources/software.php ParaView v3.98.1]. To use the plugin, open ParaView and then go to the <i>Tools</i> menu and choose <i>Manage Plugins...</i>. The <i>MobileRemoteControl</i> plugin will appear in the list of plugins. Select it and choose <i>Load Selected</i>. When the plugin is loaded, a dock panel will appear in the ParaView user interface. The visibility of the dock panel can be toggled using the <i>View</i> menu. The panel looks like this:<br />
<br />
[[Image: Mobile_remote_control_plugin.png]]<br />
<br />
Click the <b>Start</b> button. The <b>Status</b> information will update, it should say that it is waiting for a connection. Take note of the displayed <b>Host</b> or <b>Address</b>, you will need to enter this information on your mobile device so that it knows how to connect to ParaView. By default, port 40000 is used for the server, but you can change this by clicking <b>change the default port</b>.<br />
<br />
== Connecting to ParaView from KiwiViewer for iOS ==<br />
<br />
The ParaView mobile remote control is a feature introduced in KiwiViewer v2.0 for iOS. You can download the app from the App Store. Open the app, go to the Documents tab, and select <i>ParaView Mobile Remote</i>. You will be presented with the following screen:<br />
<br />
[[Image: KiwiViewerTutorial-2.png | 240px]]<br />
<br />
Enter the host name or IP address of the computer that is running ParaView. The Mobile Remote Control panel in ParaView will display the host / address information. If you need to enter a non-default port number, you can enter the information as <b>address:port</b>. Tap <b>Start</b> to connect your mobile device to ParaView.<br />
<br />
[[Image: KiwiViewerTutorial-1.png | 240px]]<br />
<br />
Sometimes, the default camera center of rotation sent by ParaView is not suitable for KiwiViewer, so you can tap the <i>Zoom to Fit</i> button to re-center the view. The <i>Zoom to Fit</i> button is the top left button in the toolbar. Also in the toolbar is a <b>Refresh Scene</b> button. Tapping this button will request the current scene from ParaView, and the display will refresh.<br />
<br />
<br />
== Connecting to ParaView from KiwiViewer for Android ==<br />
<br />
The version of KiwiViewer that is currently available in the Google Play Store does not have the ParaView mobile remote control feature. In the meantime, you can download a version of KiwiViewer that features the mobile remote control from the [http://packages.kitware.com/packages/application/view?applicationId=14,15,16 KiwiViewer packages].<br />
<br />
<br />
== Getting Help ==<br />
<br />
Please ask questions on the [http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES public mailing list] or the [http://www.paraview.org/mailman/listinfo/paraview ParaView user's mailing list].</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:ParaView_Mobile_Remote_Screenshot.png&diff=51687File:ParaView Mobile Remote Screenshot.png2013-03-04T23:51:09Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:KiwiViewerTutorial-2.png&diff=51686File:KiwiViewerTutorial-2.png2013-03-04T23:49:48Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/ParaView_Mobile_Remote_Control&diff=51685VES/ParaView Mobile Remote Control2013-03-04T23:49:24Z<p>Patmarion: </p>
<hr />
<div>The ParaView Mobile Remote Control allows users to view the ParaView scene and control the camera from a mobile device. The remote control uses a plugin for the ParaView desktop application, and an app for a mobile device.<br />
<br />
<br />
== Plugin for ParaView ==<br />
<br />
The mobile remote control plugin is bundled with [http://paraview.org/paraview/resources/software.php ParaView v3.981]. To use the plugin, open ParaView and then go to the <i>Tools</i> menu and choose <i>Manage Plugins...</i>. The <i>MobileRemoteControl</i> plugin will appear in the list of plugins. Select it and choose <i>Load Selected</i>. When the plugin is loaded, a dock panel will appear in the ParaView user interface. The visibility of the dock panel can be toggled using the <i>View</i> menu.<br />
<br />
== Connecting to ParaView from KiwiViewer for iOS ==<br />
<br />
The ParaView mobile remote control is a feature in KiwiViewer v2.0 for iOS. <br />
<br />
== Connecting to ParaView from KiwiViewer for Android ==<br />
<br />
The version of KiwiViewer that is currently available in the Google Play Store does not have the ParaView mobile remote control feature. In the meantime, you can download a version of KiwiViewer that features the mobile remote control from the [http://packages.kitware.com/packages/application/view?applicationId=14,15,16 KiwiViewer packages].<br />
<br />
<br />
== Getting Help ==<br />
<br />
Please ask questions on the [http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES public mailing list].<br />
<br />
== Screenshots and videos ==<br />
<br />
This video shows a demonstration of the ParaView mobile remote control and then walks through the steps of using it in KiwiViewer.<br />
<br />
[[Image:ParaView_Remote_Movie_Banner.png|link=http://vimeo.com/61020951|border]]<br />
<br />
[[Image: Mobile_remote_control_plugin.png]]<br />
<br />
Screenshot of the dock panel from the ParaView mobile remote control plugin.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:KiwiViewerTutorial-1.png&diff=51684File:KiwiViewerTutorial-1.png2013-03-04T23:46:18Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:PCL_Streaming_Movie_Banner.png&diff=51683File:PCL Streaming Movie Banner.png2013-03-04T23:38:01Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:ParaView_Remote_Movie_Banner.png&diff=51682File:ParaView Remote Movie Banner.png2013-03-04T23:37:37Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Streaming&diff=51681VES/Point Cloud Streaming2013-03-04T23:34:14Z<p>Patmarion: </p>
<hr />
<div>[[Image: Pcl_banner.png|center|600px|Point Cloud Library]]<br />
<br />
KiwiViewer v2.0 can be used to visualize point cloud data streams sent by a streaming server.<br />
<br />
<br />
==Setting up the server==<br />
The point cloud streaming server is a program that is part of the Point Cloud Library (PCL). When you compile PCL with OpenNI enabled, the pcl_openni_mobile_server program will be built. For more information about the server program, please visit the [http://pointclouds.org/documentation/tutorials/mobile_streaming.php PCL mobile streaming tutorial].</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:Pcl_banner.png&diff=51680File:Pcl banner.png2013-03-04T23:18:34Z<p>Patmarion: Point Cloud Library banner</p>
<hr />
<div>Point Cloud Library banner</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Streaming&diff=51679VES/Point Cloud Streaming2013-03-04T23:17:45Z<p>Patmarion: Created page with "KiwiViewer v2.0 can be used to visualize point cloud data streams sent by a streaming server. ==Setting up the server== The point cloud streaming server is a program that is par..."</p>
<hr />
<div>KiwiViewer v2.0 can be used to visualize point cloud data streams sent by a streaming server.<br />
<br />
==Setting up the server==<br />
The point cloud streaming server is a program that is part of the Point Cloud Library (PCL). When you compile PCL with OpenNI enabled, the pcl_openni_mobile_server program will be built. For more information about the server program, please visit the [http://pointclouds.org/documentation/tutorials/mobile_streaming.php PCL mobile streaming tutorial].</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Tutorials&diff=51672VES/KiwiViewer Tutorials2013-03-04T14:47:43Z<p>Patmarion: </p>
<hr />
<div>These tutorials are for KiwiViewer v2.0.<br />
<br />
<br />
==iTunes file sharing==<br />
<br />
==Load data from Midas==<br />
<br />
==Load data from Dropbox==<br />
<br />
==ParaView mobile remote control==<br />
<br />
==Connect to ParaViewWeb==<br />
<br />
==Load a textured mesh==<br />
<br />
==Viewing image data==<br />
<br />
==Customize a scene with a kiwi scene file==<br />
<br />
==Load a series of files as an animation==</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Tutorials&diff=51671VES/KiwiViewer Tutorials2013-03-04T13:33:39Z<p>Patmarion: Created page with "These tutorials are for KiwiViewer v2.0. {| class="wikitable" |- | iTunes file sharing || How to use iTunes to send data from your computer to mobile d..."</p>
<hr />
<div>These tutorials are for KiwiViewer v2.0.<br />
<br />
{| class="wikitable"<br />
|-<br />
| [[#iTunes file sharing |iTunes file sharing]] || How to use iTunes to send data from your computer to mobile device<br />
|-<br />
| Load data from Midas || How to upload data to Midas and open it in KiwiViewer<br />
|-<br />
| Load data from Dropbox || How to connect KiwiViewer to your Dropbox account<br />
|}<br />
<br />
<br />
==iTunes file sharing==<br />
<br />
You can use iTunes to copy files from your computer to KiwiViewer.<br />
<br />
==Load data from Midas==<br />
<br />
==Load data from Dropbox==<br />
<br />
==ParaView mobile remote control==<br />
<br />
==Connect to ParaViewWeb==<br />
<br />
==Load a textured mesh==</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES&diff=51668VES2013-03-04T07:31:06Z<p>Patmarion: /* What about Licensing? */</p>
<hr />
<div>{|width="100%"<br />
|-<br />
|style="vertical-align: top; border-right: 2em solid white; "|<br />
<br />
=== What is VES? ===<br />
VES is the VTK OpenGL ES Rendering Toolkit. It is a C++ rendering library for mobile devices using OpenGL ES 2.0. VES integrates with the [[VTK|Visualization Toolkit (VTK)]] to deliver scientific and medical visualization capabilities to mobile application developers.<br />
<br />
<br />
=== What is Kiwi? ===<br />
Kiwi provides mobile application developers with easy-to-use building blocks for embedding advanced visualizations into their Android or iOS apps.<br />
The Kiwi platform offers a collection of application oriented C++ classes that tie together VTK's wide variety of supported file formats, readers, and filters,<br />
with the OpenGL ES 2.0 rendering capabilities of VES. With Kiwi, a mobile application can integrate a fully featured visualization environment with very little code. The application can be written using C++, Java, or Objective-C. The Kiwi Platform bundles together all the required rendering components, IO routines, and scene objects into a straight forward set of interfaces. Plus, Kiwi offers a collection of 3D widgets designed for touch screens that allows users to manipulate data and interact with the 3D scene.<br />
<br />
=== Why VES? ===<br />
The Visualization Toolkit (VTK) is used by desktop application developers to power many leading scientific and medical research tools. VTK is composed of many different modules including I/O, data processing, statistical analysis, networking, and rendering. These modules are very useful for mobile application development, but the rendering module is not written for OpenGL ES 2.0. VES offers an OpenGL ES 2.0 based rendering library that integrates with the rest of VTK, allowing mobile developers to take full advantage of the Visualization Toolkit.<br />
<br />
<br />
=== What about Licensing? ===<br />
VES may be used to develop and distribute open source and closed source applications and libraries. VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0]. VES library dependencies are [http://www.vtk.org VTK] <br />
and [http://eigen.tuxfamily.org Eigen]. VTK is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license]. Eigen is licensed with the [http://www.mozilla.org/MPL/2.0/ MPL 2.0 license]. Some versions of the KiwiViewer application and source code require additional dependencies and licenses, please visit the [[VES/KiwiViewer Attributions|KiwiViewer Attributions]] page for a complete list.<br />
<br />
=== How do I use it? ===<br />
If you're interested in using VES and Kiwi for mobile development, the '''[[VES/Developers Guide|Developer's guide]]''' is the right place to start.<br />
<br />
<br />
[[Image: VES_can_with_info.png|thumb|center|800px|KiwiViewer running in the iPad simulator showing one frame of a simulation. The simulation shows a block falling and crushing a can. ]]<br />
<br />
|style="vertical-align: top; padding: 0.5em; width: 300px; "|<br />
<br />
{| style="width: 100%; background: #E4F8B6; "<br />
! style="text-align: left; background: #86ba0c; color: white; padding: 0.2em; font-size: 130%;" | '''Getting started'''<br />
|-<br />
|<br />
* '''[[VES/Download And Build Instructions|Download & build instructions]]'''<br />
* '''[[VES/Developers Guide|Developer's guide]]'''<br />
* '''[http://public.kitware.com/ves-docs API Documentation]'''<br />
|}<br /><br />
<br />
{| style="width: 100%; background: #cfcfe9; "<br />
! style="text-align: left; background: #171789; color: white; padding: 0.2em; font-size: 130%;" | '''Community'''<br />
|-<br />
|<br />
* '''[http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES mailing list]'''<br />
* '''[http://vtk.org/gitweb?p=VES.git Git source repository]'''<br />
* '''[http://public.kitware.com/Bug/my_view_page.php Bug tracker]'''<br />
* '''[http://ves.uservoice.com User voice ideas & feature request]'''<br />
* '''[http://www.cdash.org/CDash/index.php?project=VES Software quality dashboard]'''<br />
* '''[[VES/Screenshots|Screenshots]]'''<br />
|}<br /><br />
<br />
[[Image: KiwiLogo_512.png|200px|link=http://www.kiwiviewer.org/]]<br />
[[Image: Vtk_logo.jpg|200px|link=http://www.vtk.org/]]<br />
[[Image: Android_logo.jpg|200px|link=http://www.android.com/]]<br />
[[Image: Ios_logo.jpg|200px|link=http://www.apple.com/ios/]]<br />
[[Image: Kitware_logo.jpg|200px|link=http://www.kitware.com/]]<br />
[[Image: Pcl vert pos.png|200px|link=http://www.pointclouds.org/]]<br />
[[Image: WillowGarageLogo.jpg|200px|link=http://www.willowgarage.com/]]<br />
<br />
|}<br />
<br />
<br />
=== How do I get support? ===<br />
Send questions, bug reports or feature requests to ves@public.kitware.com. Subscribe to the mailing list [http://public.kitware.com/cgi-bin/mailman/listinfo/ves here].<br />
<br />
<br />
<br />
__NOTOC__</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Attributions&diff=51667VES/KiwiViewer Attributions2013-03-04T07:26:40Z<p>Patmarion: /* Additional dependencies */</p>
<hr />
<div>=== Required dependencies ===<br />
<br />
* VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0].<br />
* [http://www.vtk.org VTK] is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license].<br />
* [http://eigen.tuxfamily.org/ Eigen] is licensed with the [http://www.mozilla.org/MPL/2.0/ MPL 2.0 license].<br />
<br />
=== Additional dependencies ===<br />
<br />
Some versions of the KiwiViewer application, libraries, and source code make use of additional open-source projects. Please be aware that dependencies may change, and licenses may change, so please perform your own review as needed.<br />
<br />
* [http://curl.haxx.se/ cURL] is available under a [http://curl.haxx.se/docs/copyright.html a MIT/X derivative license]<br />
* [http://www.libarchive.org/ libarchive] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://cjson.sourceforge.net/ cJSON] is available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [http://pointclouds.org Point Cloud Library] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://www.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN FLANN] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://www.boost.org/ boost] is available under the [http://www.boost.org/users/license.html Boost Software License].<br />
* [https://github.com/mateagar/Color-Picker-for-iOS Color Picker for iOS] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/jdg/MBProgressHUD MBProgressHUD] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/michaeltyson/TPKeyboardAvoiding TPKeyboardAvoiding] "Free for commercial use and redistribution in any form"<br />
* [http://code.google.com/p/android-multitouch-controller/ Android Multitouch Controller] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [http://www.glyphish.com/ Glyphish icons] available under the Creative Commons Attribution license.<br />
<br />
Some subprojects have dependencies of their own, including:<br />
<br />
* [http://www.libpng.org/pub/png/libpng.html libpng]<br />
* [http://libjpeg.sourceforge.net/ libjpeg]<br />
* [http://www.libtiff.org/ libtiff]<br />
* [http://www.zlib.net/ zlib]<br />
* [http://www.bzip.org/ bzip2]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Attributions&diff=51666VES/KiwiViewer Attributions2013-03-04T07:20:27Z<p>Patmarion: </p>
<hr />
<div>=== Required dependencies ===<br />
<br />
* VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0].<br />
* [http://www.vtk.org VTK] is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license].<br />
* [http://eigen.tuxfamily.org/ Eigen] is licensed with the [http://www.mozilla.org/MPL/2.0/ MPL 2.0 license].<br />
<br />
=== Additional dependencies ===<br />
<br />
Some versions of the KiwiViewer application, libraries, and source code make use of additional open-source projects. They are:<br />
<br />
* [http://curl.haxx.se/ cURL] is available under a [http://curl.haxx.se/docs/copyright.html a MIT/X derivative license]<br />
* [http://www.libarchive.org/ libarchive] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://cjson.sourceforge.net/ cJSON] is available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/mateagar/Color-Picker-for-iOS Color Picker for iOS] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/jdg/MBProgressHUD MBProgressHUD] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/michaeltyson/TPKeyboardAvoiding TPKeyboardAvoiding] "Free for commercial use and redistribution in any form"<br />
* [http://code.google.com/p/android-multitouch-controller/ Android Multitouch Controller] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [http://www.glyphish.com/ Glyphish icons] available under the Creative Commons Attribution license.<br />
<br />
Some subprojects have dependencies of their own, including:<br />
<br />
* [http://www.libpng.org/pub/png/libpng.html libpng]<br />
* [http://libjpeg.sourceforge.net/ libjpeg]<br />
* [http://www.libtiff.org/ libtiff]<br />
* [http://www.zlib.net/ zlib]<br />
* [http://www.bzip.org/ bzip2]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Attributions&diff=51665VES/KiwiViewer Attributions2013-03-04T07:17:37Z<p>Patmarion: /* VES required dependencies */</p>
<hr />
<div>=== Required dependencies ===<br />
<br />
* VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0].<br />
* [http://www.vtk.org VTK] is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license].<br />
* [http://eigen.tuxfamily.org/ Eigen] is licensed with the [http://www.mozilla.org/MPL/2.0/ MPL 2.0 license].<br />
<br />
=== Additional dependencies ===<br />
<br />
Some versions of the KiwiViewer application, libraries, and source code make use of additional open-source projects. They are:<br />
<br />
* [http://curl.haxx.se/ cURL] is available under a [http://curl.haxx.se/docs/copyright.html a MIT/X derivative license]<br />
* [http://www.libarchive.org/ libarchive] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://cjson.sourceforge.net/ cJSON] is available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/mateagar/Color-Picker-for-iOS Color Picker for iOS] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/jdg/MBProgressHUD MBProgressHUD] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/michaeltyson/TPKeyboardAvoiding TPKeyboardAvoiding] "Free for commercial use and redistribution in any form"<br />
* [http://code.google.com/p/android-multitouch-controller/ Android Multitouch Controller] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [http://www.glyphish.com/ Glyphish icons] available under the Creative Commons Attribution license.<br />
* [http://libjpeg.sourceforge.net/ libjpeg]<br />
* [http://www.libpng.org/pub/png/libpng.html libpng]<br />
* [http://www.zlib.net/ zlib]<br />
* [http://www.bzip.org/ bzip2]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Attributions&diff=51664VES/KiwiViewer Attributions2013-03-04T07:13:31Z<p>Patmarion: /* VES required dependencies */</p>
<hr />
<div>=== VES required dependencies ===<br />
<br />
* VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0].<br />
* [http://www.vtk.org VTK] is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license].<br />
* [http://eigen.tuxfamily.org/ Eigen] is licensed with the [http://www.mozilla.org/MPL/2.0/ MPL 2.0 license].<br />
<br />
=== Additional dependencies ===<br />
<br />
Some versions of the KiwiViewer application, libraries, and source code make use of additional open-source projects. They are:<br />
<br />
* [http://curl.haxx.se/ cURL] is available under a [http://curl.haxx.se/docs/copyright.html a MIT/X derivative license]<br />
* [http://www.libarchive.org/ libarchive] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://cjson.sourceforge.net/ cJSON] is available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/mateagar/Color-Picker-for-iOS Color Picker for iOS] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/jdg/MBProgressHUD MBProgressHUD] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/michaeltyson/TPKeyboardAvoiding TPKeyboardAvoiding] "Free for commercial use and redistribution in any form"<br />
* [http://code.google.com/p/android-multitouch-controller/ Android Multitouch Controller] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [http://www.glyphish.com/ Glyphish icons] available under the Creative Commons Attribution license.<br />
* [http://libjpeg.sourceforge.net/ libjpeg]<br />
* [http://www.libpng.org/pub/png/libpng.html libpng]<br />
* [http://www.zlib.net/ zlib]<br />
* [http://www.bzip.org/ bzip2]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/KiwiViewer_Attributions&diff=51663VES/KiwiViewer Attributions2013-03-04T07:12:01Z<p>Patmarion: Created page with "=== VES required dependencies === * VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0]. * [http://www.vtk.org VTK] is license..."</p>
<hr />
<div>=== VES required dependencies ===<br />
<br />
* VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0].<br />
* [http://www.vtk.org VTK] is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license].<br />
* [eigen.tuxfamily.org/ Eigen] is licensed with the [http://www.mozilla.org/MPL/2.0/ MPL 2.0 license].<br />
<br />
=== Additional dependencies ===<br />
<br />
Some versions of the KiwiViewer application, libraries, and source code make use of additional open-source projects. They are:<br />
<br />
* [http://curl.haxx.se/ cURL] is available under a [http://curl.haxx.se/docs/copyright.html a MIT/X derivative license]<br />
* [http://www.libarchive.org/ libarchive] is available under the [http://opensource.org/licenses/BSD-3-Clause BSD license]<br />
* [http://cjson.sourceforge.net/ cJSON] is available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/mateagar/Color-Picker-for-iOS Color Picker for iOS] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/jdg/MBProgressHUD MBProgressHUD] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [https://github.com/michaeltyson/TPKeyboardAvoiding TPKeyboardAvoiding] "Free for commercial use and redistribution in any form"<br />
* [http://code.google.com/p/android-multitouch-controller/ Android Multitouch Controller] available under the [http://opensource.org/licenses/MIT MIT license].<br />
* [http://www.glyphish.com/ Glyphish icons] available under the Creative Commons Attribution license.<br />
* [http://libjpeg.sourceforge.net/ libjpeg]<br />
* [http://www.libpng.org/pub/png/libpng.html libpng]<br />
* [http://www.zlib.net/ zlib]<br />
* [http://www.bzip.org/ bzip2]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES&diff=51662VES2013-03-04T06:39:31Z<p>Patmarion: /* What about Licensing? */</p>
<hr />
<div>{|width="100%"<br />
|-<br />
|style="vertical-align: top; border-right: 2em solid white; "|<br />
<br />
=== What is VES? ===<br />
VES is the VTK OpenGL ES Rendering Toolkit. It is a C++ rendering library for mobile devices using OpenGL ES 2.0. VES integrates with the [[VTK|Visualization Toolkit (VTK)]] to deliver scientific and medical visualization capabilities to mobile application developers.<br />
<br />
<br />
=== What is Kiwi? ===<br />
Kiwi provides mobile application developers with easy-to-use building blocks for embedding advanced visualizations into their Android or iOS apps.<br />
The Kiwi platform offers a collection of application oriented C++ classes that tie together VTK's wide variety of supported file formats, readers, and filters,<br />
with the OpenGL ES 2.0 rendering capabilities of VES. With Kiwi, a mobile application can integrate a fully featured visualization environment with very little code. The application can be written using C++, Java, or Objective-C. The Kiwi Platform bundles together all the required rendering components, IO routines, and scene objects into a straight forward set of interfaces. Plus, Kiwi offers a collection of 3D widgets designed for touch screens that allows users to manipulate data and interact with the 3D scene.<br />
<br />
=== Why VES? ===<br />
The Visualization Toolkit (VTK) is used by desktop application developers to power many leading scientific and medical research tools. VTK is composed of many different modules including I/O, data processing, statistical analysis, networking, and rendering. These modules are very useful for mobile application development, but the rendering module is not written for OpenGL ES 2.0. VES offers an OpenGL ES 2.0 based rendering library that integrates with the rest of VTK, allowing mobile developers to take full advantage of the Visualization Toolkit.<br />
<br />
<br />
=== What about Licensing? ===<br />
VES may be used to develop and distribute open source and closed source applications and libraries. VES is licensed with the [http://public.kitware.com/ves-docs/license.html Apache License Version 2.0]. VES library dependencies are [http://www.vtk.org VTK] <br />
and [http://eigen.tuxfamily.org Eigen]. VTK is licensed with the [http://www.vtk.org/VTK/project/license.html BSD license]. Eigen is licensed under [http://www.mozilla.org/MPL/2.0/ MPL2]. Some versions of the KiwiViewer application and source code require additional dependencies and licenses, please visit the [[VES/KiwiViewer Attributions|KiwiViewer Attributions]] page for a complete list.<br />
<br />
=== How do I use it? ===<br />
If you're interested in using VES and Kiwi for mobile development, the '''[[VES/Developers Guide|Developer's guide]]''' is the right place to start.<br />
<br />
<br />
[[Image: VES_can_with_info.png|thumb|center|800px|KiwiViewer running in the iPad simulator showing one frame of a simulation. The simulation shows a block falling and crushing a can. ]]<br />
<br />
|style="vertical-align: top; padding: 0.5em; width: 300px; "|<br />
<br />
{| style="width: 100%; background: #E4F8B6; "<br />
! style="text-align: left; background: #86ba0c; color: white; padding: 0.2em; font-size: 130%;" | '''Getting started'''<br />
|-<br />
|<br />
* '''[[VES/Download And Build Instructions|Download & build instructions]]'''<br />
* '''[[VES/Developers Guide|Developer's guide]]'''<br />
* '''[http://public.kitware.com/ves-docs API Documentation]'''<br />
|}<br /><br />
<br />
{| style="width: 100%; background: #cfcfe9; "<br />
! style="text-align: left; background: #171789; color: white; padding: 0.2em; font-size: 130%;" | '''Community'''<br />
|-<br />
|<br />
* '''[http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES mailing list]'''<br />
* '''[http://vtk.org/gitweb?p=VES.git Git source repository]'''<br />
* '''[http://public.kitware.com/Bug/my_view_page.php Bug tracker]'''<br />
* '''[http://ves.uservoice.com User voice ideas & feature request]'''<br />
* '''[http://www.cdash.org/CDash/index.php?project=VES Software quality dashboard]'''<br />
* '''[[VES/Screenshots|Screenshots]]'''<br />
|}<br /><br />
<br />
[[Image: KiwiLogo_512.png|200px|link=http://www.kiwiviewer.org/]]<br />
[[Image: Vtk_logo.jpg|200px|link=http://www.vtk.org/]]<br />
[[Image: Android_logo.jpg|200px|link=http://www.android.com/]]<br />
[[Image: Ios_logo.jpg|200px|link=http://www.apple.com/ios/]]<br />
[[Image: Kitware_logo.jpg|200px|link=http://www.kitware.com/]]<br />
[[Image: Pcl vert pos.png|200px|link=http://www.pointclouds.org/]]<br />
[[Image: WillowGarageLogo.jpg|200px|link=http://www.willowgarage.com/]]<br />
<br />
|}<br />
<br />
<br />
=== How do I get support? ===<br />
Send questions, bug reports or feature requests to ves@public.kitware.com. Subscribe to the mailing list [http://public.kitware.com/cgi-bin/mailman/listinfo/ves here].<br />
<br />
<br />
<br />
__NOTOC__</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/ParaView_Mobile_Remote_Control&diff=49594VES/ParaView Mobile Remote Control2012-12-03T12:36:02Z<p>Patmarion: /* Screenshots and videos */</p>
<hr />
<div>The ParaView Mobile Remote Control allows users to view the ParaView scene and control the camera from a mobile device. The remote control uses a plugin for the ParaView desktop application, and an app for a mobile device.<br />
<br />
== Installing the plugin for ParaView ==<br />
<br />
The mobile remote control plugin will be installed with ParaView v3.98. To enable the plugin, go to the <i>Tools</i> menu and choose <i>Manage Plugins...</i> The <i>MobileRemoteControl</i> plugin should appear in the list of plugins. Select it and choose <i>Load Selected</i>. When the plugin is loaded, a dock panel will appear in the ParaView user interface. The visibility of the dock panel can be toggled using the <i>View</i> menu.<br />
<br />
== Installing the mobile device app ==<br />
<br />
The mobile device app is currently available as source code only. Future releases of KiwiViewer for Android and iOS will included the mobile remote control as a built-in functionality. To compile the mobile remote control from source, follow the instructions on the [[VES/Developers Guide|VES Developer's guide]] for compiling KiwiViewer. The remote control can be found on a topic branch called midas-kiwi. To checkout the topic branch from the stage remote:<br />
<br />
$ cd /path/to/ves<br />
$ git remote add stage git://vtk.org/stage/VES.git<br />
$ git fetch stage<br />
$ git checkout -t stage/midas-kiwi<br />
<br />
The mobile remote control client is implemented by the class <i>src/kiwi/vesKiwiPVRemoteRepresentation.{cxx,h}</i><br />
<br />
== Getting Help ==<br />
<br />
Please ask questions on the [http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES public mailing list].<br />
<br />
== Screenshots and videos ==<br />
<br />
[[Image: Mobile_remote_control_plugin.png]]<br />
<br />
Screenshot of the dock panel from the ParaView mobile remote control plugin.<br />
<br />
Videos - in progress.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:Mobile_remote_control_plugin.png&diff=49593File:Mobile remote control plugin.png2012-12-03T12:33:02Z<p>Patmarion: Screenshot of dock panel from the mobile remote control plugin.</p>
<hr />
<div>Screenshot of dock panel from the mobile remote control plugin.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/ParaView_Mobile_Remote_Control&diff=49592VES/ParaView Mobile Remote Control2012-12-03T11:59:07Z<p>Patmarion: /* Installing the plugin for ParaView */</p>
<hr />
<div>The ParaView Mobile Remote Control allows users to view the ParaView scene and control the camera from a mobile device. The remote control uses a plugin for the ParaView desktop application, and an app for a mobile device.<br />
<br />
== Installing the plugin for ParaView ==<br />
<br />
The mobile remote control plugin will be installed with ParaView v3.98. To enable the plugin, go to the <i>Tools</i> menu and choose <i>Manage Plugins...</i> The <i>MobileRemoteControl</i> plugin should appear in the list of plugins. Select it and choose <i>Load Selected</i>. When the plugin is loaded, a dock panel will appear in the ParaView user interface. The visibility of the dock panel can be toggled using the <i>View</i> menu.<br />
<br />
== Installing the mobile device app ==<br />
<br />
The mobile device app is currently available as source code only. Future releases of KiwiViewer for Android and iOS will included the mobile remote control as a built-in functionality. To compile the mobile remote control from source, follow the instructions on the [[VES/Developers Guide|VES Developer's guide]] for compiling KiwiViewer. The remote control can be found on a topic branch called midas-kiwi. To checkout the topic branch from the stage remote:<br />
<br />
$ cd /path/to/ves<br />
$ git remote add stage git://vtk.org/stage/VES.git<br />
$ git fetch stage<br />
$ git checkout -t stage/midas-kiwi<br />
<br />
The mobile remote control client is implemented by the class <i>src/kiwi/vesKiwiPVRemoteRepresentation.{cxx,h}</i><br />
<br />
== Getting Help ==<br />
<br />
Please ask questions on the [http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES public mailing list].<br />
<br />
== Screenshots and videos ==<br />
<br />
In progress.<br />
<br />
[[Image: KiwiLogo_512.png|200px|link=http://www.kiwiviewer.org/]]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/ParaView_Mobile_Remote_Control&diff=49591VES/ParaView Mobile Remote Control2012-12-03T11:57:47Z<p>Patmarion: Created page with "The ParaView Mobile Remote Control allows users to view the ParaView scene and control the camera from a mobile device. The remote control uses a plugin for the ParaView desktop..."</p>
<hr />
<div>The ParaView Mobile Remote Control allows users to view the ParaView scene and control the camera from a mobile device. The remote control uses a plugin for the ParaView desktop application, and an app for a mobile device.<br />
<br />
== Installing the plugin for ParaView ==<br />
<br />
The mobile remote control plugin will be installed with ParaView v3.98. To enable the plugin, go to the <i>Tools</i> menu and choose <i>Manage Plugins...</i> The <i>MobileRemoteControl</i> plugin should appear in the list of plugins. Select it and choose <i>Load Selected</i>. When the plugin is loaded, a dock panel will appear in the ParaView user interface. The visibility of the dock panel can be toggled using the <b>View</b> menu.<br />
<br />
== Installing the mobile device app ==<br />
<br />
The mobile device app is currently available as source code only. Future releases of KiwiViewer for Android and iOS will included the mobile remote control as a built-in functionality. To compile the mobile remote control from source, follow the instructions on the [[VES/Developers Guide|VES Developer's guide]] for compiling KiwiViewer. The remote control can be found on a topic branch called midas-kiwi. To checkout the topic branch from the stage remote:<br />
<br />
$ cd /path/to/ves<br />
$ git remote add stage git://vtk.org/stage/VES.git<br />
$ git fetch stage<br />
$ git checkout -t stage/midas-kiwi<br />
<br />
The mobile remote control client is implemented by the class <i>src/kiwi/vesKiwiPVRemoteRepresentation.{cxx,h}</i><br />
<br />
== Getting Help ==<br />
<br />
Please ask questions on the [http://public.kitware.com/cgi-bin/mailman/listinfo/ves VES public mailing list].<br />
<br />
== Screenshots and videos ==<br />
<br />
In progress.<br />
<br />
[[Image: KiwiLogo_512.png|200px|link=http://www.kiwiviewer.org/]]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Developers_Guide&diff=49405VES/Developers Guide2012-11-22T07:32:59Z<p>Patmarion: /* Android instructions */</p>
<hr />
<div>=Introduction=<br />
<br />
The VES Developer's Guide describes how to download and build the VES libraries, and how to use the libraries in Android and iOS applications.<br />
<br />
= Getting Started =<br />
<br />
For quick instructions, see the [[VES/Download And Build Instructions| Download & Build Instructions]] page. This developer's guide will go into more detail than is found on that page.<br />
<br />
==Checkout the source from Git==<br />
<br />
Use [http://www.git-scm.com/ Git] to checkout the VES source code with the command:<br />
<br />
$ git clone git://vtk.org/VES.git<br />
<br />
See the [[VES/Git|VES Git table of contents]] page for details on the Git repository and development workflow.<br />
<br />
==Setting up your development environment==<br />
<br />
===Android===<br />
<br />
You must have the Android SDK and Android NDK installed. To get started with Android development, visit the [http://developer.android.com/guide/index.html Android Developer's Guide]. It is recommended that you build and run some of the Android sample applications that are provided with the Android SDK to get familiar with running code on your device before attempting to build and run VES/Kiwi based applications. See [http://vtk.org/gitweb?p=VES.git;a=blob;f=Apps/Android/README.txt;hb=HEAD this README] in the VES repository for a guide to setting up the Android development environment.<br />
<br />
===iOS===<br />
<br />
You must have Xcode and the iOS SDK installed. To get started with iOS development, visit Apple's [http://developer.apple.com/devcenter/ios/index.action iOS Dev Center]. It is recommended that you build and run some of the iOS sample applications that are provided with the iOS SDK to get familiar with running code on your device before attempting to build and run VES/Kiwi based applications.<br />
<br />
<br />
=Build with CMake=<br />
<br />
[http://cmake.org/cmake/resources/software.html CMake] is used to configure and build VES.<br />
<br />
==What is a Superbuild?==<br />
<br />
VES is normally built using a [http://www.kitware.com/media/html/BuildingExternalProjectsWithCMake2.8.html superbuild]. A superbuild manages the download, configure, build, and install steps of multiple projects all at once. The VES superbuild will download [https://gitorious.org/kitware/vtkmodular vtkmodular], then configure and build both vtkmodular and VES using the appropriate cross compiler for the target architecture. The target architecture may be an android device, iOS device, or the iOS simulator on x86. When configuring vtkmodular and ves, cmake is invoked in [http://www.vtk.org/Wiki/CMake_Cross_Compiling cross compile mode] using a toolchain file for the target architecture. The toolchain files are located in the [http://vtk.org/gitweb?p=VES.git;a=tree;f=CMake/toolchains;hb=HEAD CMake/toolchains] directory.<br />
<br />
==Building==<br />
<br />
====Android instructions====<br />
<br />
The Android NDK r8b is currently the required version. It can be downloaded from:<br />
<br />
$ http://dl.google.com/android/ndk/android-ndk-r8b-linux-x86.tar.bz2<br />
$ http://dl.google.com/android/ndk/android-ndk-r8b-darwin-x86.tar.bz2<br />
<br />
The following commands will compile vtk and ves libraries for Android:<br />
<br />
$ export ANDROID_NDK=/path/to/installed/android-ndk<br />
$ cd Apps/Android/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application. Ant version 1.8 or higher is required.<br />
<br />
$ cd Apps/Android/Kiwi<br />
$<br />
$ # if android, adb, ant, or cmake are not in your PATH, edit tools.sh to enter the correct paths<br />
$<br />
$ ./configure_cmake.sh<br />
$ ./configure_ant.sh<br />
$ ./compile.sh<br />
<br />
Use adb to confirm that your device is listed:<br />
<br />
$ adb devices<br />
<br />
Run KiwiViewer on the device:<br />
<br />
$ ./run.sh<br />
<br />
====iOS instructions====<br />
<br />
The following commands will compile vtkmodular and ves libraries for the iOS simulator and iOS device.<br />
<br />
$ cd Apps/iOS/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application using Xcode.<br />
<br />
$ open Apps/iOS/Kiwi/Kiwi.xcodeproj<br />
<br />
<br />
====Xcode instructions====<br />
<br />
Visit the [[VES/XCode_Project_Setup|Xcode project setup]] page for instructions describing how to setup a Xcode project from scratch that uses VTK, VES, and kiwi.<br />
<br />
=Testing=<br />
<br />
==Testing on Linux==<br />
<br />
VES can be compiled on Linux using [http://www.mesa3d.org/ Mesa] drivers for OpenGL ES 2.0, and X11. The tests are located in [http://vtk.org/gitweb?p=VES.git;a=tree;f=src/kiwi/Testing;hb=HEAD src/kiwi/Testing]. The following commands will build VES on Linux:<br />
<br />
$ cd Apps/Linux/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
The tests are run by invoking ctest from the build directory:<br />
<br />
$ cd CMakeExternals/Build/ves-host<br />
$ ctest<br />
<br />
=Demos=<br />
<br />
==Brain Atlas Demo==<br />
<br />
See [[VES/Brain_Atlas_Demo|Brain Atlas Demo]] for details.<br />
<br />
==Point Cloud Library Demos==<br />
<br />
See [[VES/Point_Cloud_Library|Point Cloud Library]] for details.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Download_And_Build_Instructions&diff=49403VES/Download And Build Instructions2012-11-22T05:33:46Z<p>Patmarion: /* Android instructions */</p>
<hr />
<div>== Introduction ==<br />
<br />
This page details the minimum commands required to download and build VES and the example applications. For more detailed information see the [[VES/Developers Guide|Developer's Guide]].<br />
<br />
==Checkout the source from Git==<br />
<br />
Use [http://www.git-scm.com/ Git] to checkout the VES source code with the command:<br />
<br />
$ git clone git://vtk.org/VES.git<br />
<br />
See the [[VES/Git/Download|Download Instructions]] for details.<br />
<br />
==Build with CMake==<br />
<br />
[http://cmake.org/cmake/resources/software.html CMake] is used to configure Makefiles for the build. Before building, ensure that Android and/or iOS SDKs are installed. See the [[VES/Developers Guide|Developer's Guide]] for more information.<br />
<br />
====Android instructions====<br />
<br />
The following commands will compile vtk and ves libraries for the Android. Android NDK r8b is currently supported, see [[VES/Developers Guide|Developer's Guide]].<br />
<br />
$ export ANDROID_NDK=/path/to/installed/android-ndk<br />
$ cd Apps/Android/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application. Ant version 1.8 or higher is required.<br />
<br />
$ cd Apps/Android/Kiwi<br />
$<br />
$ # if android, adb, ant, or cmake are not in your PATH, edit tools.sh to enter the correct paths<br />
$<br />
$ ./configure_cmake.sh<br />
$ ./configure_ant.sh<br />
$ ./compile.sh<br />
<br />
Use adb to confirm that your device is listed:<br />
<br />
$ adb devices<br />
<br />
Run KiwiViewer on the device:<br />
<br />
$ ./run.sh<br />
<br />
====iOS instructions====<br />
<br />
The following commands will compile vtkmodular and ves libraries for the iOS simulator and iOS device.<br />
<br />
$ cd Apps/iOS/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application using Xcode.<br />
<br />
$ open Apps/iOS/Kiwi/Kiwi.xcodeproj</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin/Screenshots_and_Videos&diff=47958ParaView/PCL Plugin/Screenshots and Videos2012-06-14T18:15:38Z<p>Patmarion: </p>
<hr />
<div>The following video demonstrates the PCL Plugin for ParaView. We're having some trouble embedding videos into the wiki page right now, so here are links to the files.<br />
<br />
<br />
[[media:PCL_Plugin_Normal_Glyphs.flv | PCL normal estimation filter and normal glyphs]]<br />
<br />
[[media:PCL_Plugin_Animation_Demo.flv | Filter parameter animation Demo]]<br />
<br />
[[Image:PCL_Plugin_Video_Screenshot.png|link=http://vimeo.com/43975225|border]]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin/Screenshots_and_Videos&diff=47957ParaView/PCL Plugin/Screenshots and Videos2012-06-14T18:15:11Z<p>Patmarion: </p>
<hr />
<div>The following video demonstrates the PCL Plugin for ParaView. We're having some trouble embedding videos into the wiki page right now, so here are links to the files.<br />
<br />
<br />
[[media:PCL_Plugin_Normal_Glyphs.flv | PCL normal estimation filter and normal glyphs]]<br />
<br />
[[media:PCL_Plugin_Animation_Demo.flv | Filter parameter animation Demo]]<br />
<br />
<mediaplayer >File:PCL_Plugin_Normal_Glyphs.flv</mediaplayer><br />
<br />
[[Image:PCL_Plugin_Video_Screenshot.png|link=http://vimeo.com/43975225|border]]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin/Screenshots_and_Videos&diff=47956ParaView/PCL Plugin/Screenshots and Videos2012-06-14T18:15:02Z<p>Patmarion: </p>
<hr />
<div>The following video demonstrates the PCL Plugin for ParaView. We're having some trouble embedding videos into the wiki page right now, so here are links to the files.<br />
<br />
<br />
[[media:PCL_Plugin_Normal_Glyphs.flv | PCL normal estimation filter and normal glyphs]]<br />
[[media:PCL_Plugin_Animation_Demo.flv | Filter parameter animation Demo]]<br />
<br />
<mediaplayer >File:PCL_Plugin_Normal_Glyphs.flv</mediaplayer><br />
<br />
[[Image:PCL_Plugin_Video_Screenshot.png|link=http://vimeo.com/43975225|border]]</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:PCL_Plugin_Animation_Demo.flv&diff=47955File:PCL Plugin Animation Demo.flv2012-06-14T18:13:38Z<p>Patmarion: </p>
<hr />
<div></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin&diff=47883ParaView/PCL Plugin2012-06-13T19:07:54Z<p>Patmarion: </p>
<hr />
<div>{|width="100%"<br />
|-<br />
|style="vertical-align: top; border-right: 2em solid white; "|<br />
<br />
[[Image:pclpluginlogo.png|center|500px]]<br />
<br />
=== What is the PCL Plugin ? ===<br />
The PCL plugin for ParaView allows users to access filters from the [http://pointclouds.org/ Point Cloud Processing Library (PCL)] within ParaView. The plugin wraps PCL algorithms as VTK filters. The plugin also provides Python bindings for the filters using VTK's python wrapping, thus enabling fast prototyping and integration with NumPy and SciPy. With point cloud data loaded in ParaView, users can interactively apply PCL algorithms, color the point clouds by different attributes, and quickly compose complex processing pipelines to explore the point cloud data.<br />
<br />
[[Image:PCL_Plugin_Video_Screenshot.png|link=http://vimeo.com/43975225|center|border]]<br />
<br />
=== Currently supported PCL algorithms ===<br />
<br />
At the current stage of development, the plugin provides several of PCL's core algorithms for point cloud processing, including:<br />
<br />
* Euclidean cluster extraction<br />
* Robust plane/cylinder fitting (using RANSAC)<br />
* Surface normal estimation<br />
* VoxelGrid filter for downsampling<br />
* Radius-based outlier removal<br />
<br />
=== News ===<br />
<br />
* We will present the PCL plugin and give a demo at this year's CVPR in Providence, RI (Sunday, June 16, 4.55pm - 6.30pm). Browse the [http://www-sop.inria.fr/manifestations/pcp2012/|PCP workshop website] for more information.<br />
<br />
=== References ===<br />
<br />
If you are using the plugin for your project, please cite the following paper:<br />
<br />
* P. Marion, R. Kwitt, B. Davis and M. Gschwandtner, [[Media:Paper.pdf|PCL and ParaView - Connecting the Dots]], ''Proceedings of the IEEE International Workshop on Point Cloud Processing (PCP '12)'', 2012 (held in conjunction with CVPR '12)<br />
<br />
Here's the corresponding Bibtex entry:<br />
<br />
@inproceedings{Marion12a,<br />
author = {P.~Marion and R.~Kwitt, B.~Davis and M. Gschwandtner},<br />
title = {PCL and ParaView - Connecting the Dots},<br />
booktitle = {CVPR Workshop on Point Cloud Processing (PCP)},<br />
year = 2012}<br />
<br />
|style="vertical-align: top; padding: 0.5em; width: 300px; "|<br />
<br />
{| style="width: 100%; background: #E4F8B6; "<br />
! style="text-align: left; background: #239846; color: white; padding: 0.1em; font-size: 130%;" | '''Getting started'''<br />
|-<br />
|<br />
* '''[[ParaView/PCL_Plugin/Download_And_Build_Instructions|Download & Build Instructions]]'''<br />
* '''Developer Guide'''<br />
* '''[[ParaView/PCL_Plugin/Tutorials|Tutorials]]'''<br />
|}<br /><br />
<br />
{| style="width: 100%; background: #cfcfe9; "<br />
! style="text-align: left; background: #1e63a2; color: white; padding: 0.1em; font-size: 130%;" | '''Community'''<br />
|-<br />
|<br />
* '''[[ParaView/PCL Plugin/Screenshots and Videos|Screenshots & Videos]]'''<br />
* '''[[ParaView/PCL_Plugin/Testdata|Test data]]'''<br />
|}<br /><br />
[[Image: Kitware_logo.jpg|200px|link=http://www.kitware.com/]]<br />
[[Image: Pcl vert pos.png|200px|link=http://www.pointclouds.org/]]<br />
|}<br />
<br />
__NOTOC__</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:PCL_Plugin_Video_Screenshot.png&diff=47882File:PCL Plugin Video Screenshot.png2012-06-13T18:56:48Z<p>Patmarion: video screenshot</p>
<hr />
<div>video screenshot</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin/Screenshots_and_Videos&diff=47873ParaView/PCL Plugin/Screenshots and Videos2012-06-13T15:34:20Z<p>Patmarion: </p>
<hr />
<div>The following video demonstrates the PCL Normal Estimation filter.<br />
<br />
<mediaplayer >File:PCL_Plugin_Normal_Glyphs.flv</mediaplayer></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin/Screenshots_and_Videos&diff=47872ParaView/PCL Plugin/Screenshots and Videos2012-06-13T15:32:57Z<p>Patmarion: </p>
<hr />
<div><mediaplayer >File:PCL_Plugin_Normal_Glyphs.flv</mediaplayer></div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=File:PCL_Plugin_Normal_Glyphs.flv&diff=47871File:PCL Plugin Normal Glyphs.flv2012-06-13T15:28:52Z<p>Patmarion: A video demonstrating how to apply the PCL Normal Estimation filter using the PCL Plugin for ParaView.</p>
<hr />
<div>A video demonstrating how to apply the PCL Normal Estimation filter using the PCL Plugin for ParaView.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=ParaView/PCL_Plugin&diff=47862ParaView/PCL Plugin2012-06-13T14:05:13Z<p>Patmarion: </p>
<hr />
<div>{|width="100%"<br />
|-<br />
|style="vertical-align: top; border-right: 2em solid white; "|<br />
<br />
[[Image:PCLPlugin_cloudlogo.jpg|center|500px]]<br />
<br />
=== What is the PCL Plugin ? ===<br />
The PCL plugin for ParaView allows users to access filters from the [http://pointclouds.org/ Point Cloud Processing Library (PCL)] within ParaView. The plugin wraps PCL algorithms as VTK filters. The plugin also provides Python bindings for the filters using VTK's python wrapping, thus enabling fast prototyping and integration with NumPy and SciPy. With point cloud data loaded in ParaView, users can interactively apply PCL algorithms, color the point clouds by different attributes, and quickly compose complex processing pipelines to explore the point cloud data.<br />
<br />
=== Currently supported PCL algorithms ===<br />
<br />
At the current stage of development, the plugin provides several of PCL's core algorithms for point cloud processing, including:<br />
<br />
* Euclidean cluster extraction<br />
* Robust plane/cylinder fitting (using RANSAC)<br />
* Surface normal estimation<br />
* VoxelGrid filter for downsampling<br />
* Radius-based outlier removal<br />
<br />
=== News ===<br />
<br />
* We will present the PCL plugin and give a demo at this year's CVPR in Providence, RI (Sunday, June 16, 4.55pm - 6.30pm). Browse the [http://www-sop.inria.fr/manifestations/pcp2012/|PCP workshop website] for more information.<br />
<br />
=== References ===<br />
<br />
If you are using the plugin for your project, please cite the following paper:<br />
<br />
* P. Marion, R. Kwitt, B. Davis and M. Gschwandtner, [[Media:Paper.pdf|PCL and ParaView - Connecting the Dots]], ''Proceedings of the IEEE International Workshop on Point Cloud Processing (PCP '12)'', 2012 (held in conjunction with CVPR '12)<br />
<br />
Here's the corresponding Bibtex entry:<br />
<br />
@inproceedings{Marion12a,<br />
author = {P.~Marion and R.~Kwitt, B.~Davis and M. Gschwandtner},<br />
title = {PCL and ParaView - Connecting the Dots},<br />
booktitle = {CVPR Workshop on Point Cloud Processing (PCP)},<br />
year = 2012}<br />
<br />
|style="vertical-align: top; padding: 0.5em; width: 300px; "|<br />
<br />
{| style="width: 100%; background: #E4F8B6; "<br />
! style="text-align: left; background: #239846; color: white; padding: 0.1em; font-size: 130%;" | '''Getting started'''<br />
|-<br />
|<br />
* '''[[ParaView/PCL_Plugin/Download_And_Build_Instructions|Download & Build Instructions]]'''<br />
* '''Developer Guide'''<br />
* '''[[ParaView/PCL_Plugin/Tutorials|Tutorials]]'''<br />
|}<br /><br />
<br />
{| style="width: 100%; background: #cfcfe9; "<br />
! style="text-align: left; background: #1e63a2; color: white; padding: 0.1em; font-size: 130%;" | '''Community'''<br />
|-<br />
|<br />
* '''[[ParaView/PCL Plugin/Screenshots and Videos|Screenshots & Videos]]'''<br />
* '''[[ParaView/PCL_Plugin/Testdata|Test data]]'''<br />
|}<br /><br />
[[Image: Kitware_logo.jpg|200px|link=http://www.kitware.com/]]<br />
[[Image: Pcl vert pos.png|200px|link=http://www.pointclouds.org/]]<br />
|}<br />
<br />
__NOTOC__</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Developers_Guide&diff=47671VES/Developers Guide2012-06-11T18:15:59Z<p>Patmarion: </p>
<hr />
<div>=Introduction=<br />
<br />
The VES Developer's Guide describes how to download and build the VES libraries, and how to use the libraries in Android and iOS applications.<br />
<br />
= Getting Started =<br />
<br />
For quick instructions, see the [[VES/Download And Build Instructions| Download & Build Instructions]] page. This developer's guide will go into more detail than is found on that page.<br />
<br />
==Checkout the source from Git==<br />
<br />
Use [http://www.git-scm.com/ Git] to checkout the VES source code with the command:<br />
<br />
$ git clone git://vtk.org/VES.git<br />
<br />
See the [[VES/Git|VES Git table of contents]] page for details on the Git repository and development workflow.<br />
<br />
==Setting up your development environment==<br />
<br />
===Android===<br />
<br />
You must have the Android SDK and Android NDK installed. To get started with Android development, visit the [http://developer.android.com/guide/index.html Android Developer's Guide]. It is recommended that you build and run some of the Android sample applications that are provided with the Android SDK to get familiar with running code on your device before attempting to build and run VES/Kiwi based applications. See [http://vtk.org/gitweb?p=VES.git;a=blob;f=Apps/Android/README.txt;hb=HEAD this README] in the VES repository for a guide to setting up the Android development environment.<br />
<br />
===iOS===<br />
<br />
You must have Xcode and the iOS SDK installed. To get started with iOS development, visit Apple's [http://developer.apple.com/devcenter/ios/index.action iOS Dev Center]. It is recommended that you build and run some of the iOS sample applications that are provided with the iOS SDK to get familiar with running code on your device before attempting to build and run VES/Kiwi based applications.<br />
<br />
<br />
=Build with CMake=<br />
<br />
[http://cmake.org/cmake/resources/software.html CMake] is used to configure and build VES.<br />
<br />
==What is a Superbuild?==<br />
<br />
VES is normally built using a [http://www.kitware.com/products/html/BuildingExternalProjectsWithCMake2.8.html superbuild]. A superbuild manages the download, configure, build, and install steps of multiple projects all at once. The VES superbuild will download [https://gitorious.org/kitware/vtkmodular vtkmodular], then configure and build both vtkmodular and VES using the appropriate cross compiler for the target architecture. The target architecture may be an android device, iOS device, or the iOS simulator on x86. When configuring vtkmodular and ves, cmake is invoked in [http://www.vtk.org/Wiki/CMake_Cross_Compiling cross compile mode] using a toolchain file for the target architecture. The toolchain files are located in the [http://vtk.org/gitweb?p=VES.git;a=tree;f=CMake/toolchains;hb=HEAD CMake/toolchains] directory.<br />
<br />
==Building==<br />
<br />
====Android instructions====<br />
<br />
The Android NDK r6 is currently the required version. It can be downloaded from:<br />
<br />
$ http://dl.google.com/android/ndk/android-ndk-r6-linux-x86.tar.bz2<br />
$ http://dl.google.com/android/ndk/android-ndk-r6-darwin-x86.tar.bz2<br />
<br />
The following commands will compile vtkmodular and ves libraries for the Android:<br />
<br />
$ export ANDROID_NDK=/path/to/installed/android-ndk<br />
$ cd Apps/Android/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application. Ant version 1.8 or higher is required.<br />
<br />
$ cd Apps/Android/Kiwi<br />
$<br />
$ # if android, adb, ant, or cmake are not in your PATH, edit tools.sh to enter the correct paths<br />
$<br />
$ ./configure_cmake.sh<br />
$ ./configure_ant.sh<br />
$ ./compile.sh<br />
<br />
Use adb to confirm that your device is listed:<br />
<br />
$ adb devices<br />
<br />
Run KiwiViewer on the device:<br />
<br />
$ ./run.sh<br />
<br />
====iOS instructions====<br />
<br />
The following commands will compile vtkmodular and ves libraries for the iOS simulator and iOS device.<br />
<br />
$ cd Apps/iOS/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application using Xcode.<br />
<br />
$ open Apps/iOS/Kiwi/Kiwi.xcodeproj<br />
<br />
<br />
====Xcode instructions====<br />
<br />
Visit the [[VES/XCode_Project_Setup|Xcode project setup]] page for instructions describing how to setup a Xcode project from scratch that uses VTK, VES, and kiwi.<br />
<br />
=Testing=<br />
<br />
==Testing on Linux==<br />
<br />
VES can be compiled on Linux using [http://www.mesa3d.org/ Mesa] drivers for OpenGL ES 2.0, and X11. The tests are located in [http://vtk.org/gitweb?p=VES.git;a=tree;f=src/kiwi/Testing;hb=HEAD src/kiwi/Testing]. The following commands will build VES on Linux:<br />
<br />
$ cd Apps/Linux/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
The tests are run by invoking ctest from the build directory:<br />
<br />
$ cd CMakeExternals/Build/ves-host<br />
$ ctest<br />
<br />
=Demos=<br />
<br />
==Brain Atlas Demo==<br />
<br />
See [[VES/Brain_Atlas_Demo|Brain Atlas Demo]] for details.<br />
<br />
==Point Cloud Library Demos==<br />
<br />
See [[VES/Point_Cloud_Library|Point Cloud Library]] for details.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/XCode_Project_Setup&diff=47670VES/XCode Project Setup2012-06-11T18:12:47Z<p>Patmarion: Created page with "The following instructions describe how to setup an Xcode project from scratch using VTK, VES, and kiwi. '''1. Add the OpenGLES and QuartzCore frameworks'''. These can be added..."</p>
<hr />
<div>The following instructions describe how to setup an Xcode project from scratch using VTK, VES, and kiwi.<br />
<br />
<br />
'''1. Add the OpenGLES and QuartzCore frameworks'''. These can be added in the "Build Phases" section of the target. Expand the "Link Binary with Libraries" section and select + button to add these frameworks.<br />
<br />
<br />
'''2. Add the Kiwi/VES/VTK libraries''' to the project. These can also be added in the "Link Binaries with Libraries" section of Xcode. You can either use the + button and navigate to the libraries, or drag and drop them into the window. These libraries can be located in your VES directory:<br />
<br />
:VES/Apps/iOS/CMakeBuild/build/CMakeExternals/Build/ves-ios-device/lib/libkiwi.a<br />
:VES/Apps/iOS/CMakeBuild/build/CMakeExternals/Build/ves-ios-device/lib/libves.a<br />
:VES/Apps/iOS/CMakeBuild/build/CMakeExternals/Build/ves-ios-device/lib/libevesShaders.a<br />
<br />
<br />
:Additionally, there are a many VTK libraries to add. Add all of the libraries from the following directory.<br />
<br />
:VES/Apps/iOS/CMakeBuild/build/CMakeExternals/Build/vtk-ios-device/lib/<br />
<br />
<br />
'''3. Add user-defined settings''' to the "Build Settings" section of Xcode. These are really just variables you can use to store the paths to the build and source directories in your VES installation. This is not completely necessary but it allows you to use relative paths in step 4 and 5 rather than absolute paths (good if you ever move or share your project). To set these user-defined settings, click the "Add Build Setting" then "Add User-Defined Setting". In the left cell, you will type the name of the build setting. On the right, you will put the absolute paths to your VES build and source folders as follows:<br />
<br />
:Build Defined Setting:<br />
::Name: ves_build <br />
::Value: <absolute path to VES directory>/VES/Apps/iOS/CMakeBuild/build<br />
<br />
:Source Defined Setting:<br />
::Name: ves_source <br />
::Value: <absolute path to VES directory>/VES<br />
<br />
<br />
'''4. Add the header search paths''' which are needed for the libraries. Locate the "Header Search Paths" line in "Build Settings". Here, you can add the following header search paths. Some of these paths should be flagged as recursive paths by selecting the checkbox next to the path.<br />
<br />
:$(ves_build)/CMakeExternals/Source/vtk (recursive)<br />
:$(ves_source)/src/kiwi (recursive)<br />
:$(ves_source)/src/ves (recursive)<br />
:$(ves_build)/CMakeExternals/Install/eigen<br />
:$(ves_build)/CMakeExternals/Build/vtk-host/Common (recursive)<br />
:$(ves_build)/CMakeExternals/Build/ves-ios-device/src (recursive)<br />
:$(ves_build)/CMakeExternals/Build/vtk-host/Utilities/KWSys<br />
<br />
<br />
'''5. Add the library search paths''' in the section just below the "Header Search Path" section. You will need to add library search paths for both the simulator and an actual IOS device. They use different libraries in the VES directory since they use different architectures. Remove any library search paths referring to VES/VTK/Kiwi that Xcode automatically inserted when adding your libraries previously. These need removed since they do not account for the two difference architectures. <br />
<br />
Expand the Library Search Paths row and you should a "Debug" and "Release" row. Both the Debug and Release rows will be configured the same. Click the + button that appears in these respective rows when highlighting them. On the left, select "Any IOS simulator". Then add the following library search paths:<br />
<br />
:$(ves_build)/CMakeExternals/Build/vtk-ios-simulator/lib <br />
:$(ves_build)/CMakeExternals/Build/ves-ios-simulator/lib<br />
<br />
:Click the + button again and select "Any IOS". Add the following library search paths for the device:<br />
<br />
:$(ves_build)/CMakeExternals/Build/vtk-ios-device/lib <br />
:$(ves_build)/CMakeExternals/Build/ves-ios-device/lib<br />
<br />
Add the setting above for both debug and release.<br />
<br />
'''6. Test your setup'''. The easiest way to test your linking is to build your Xcode project. To test your header search paths, you can #include some arbitrary VTK or VES header files and check for errors. If you receive any errors, check that your paths (including recursive checkboxes) are setup correctly. Also ensure you have added all necessary libraries in steps 1 and 2. Certain warnings associated with linking can be suppressed in Xcode in Build Settings. For the row "Symbols Hidden by Default", select YES.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Point_Cloud_Library&diff=47136VES/Point Cloud Library2012-05-24T04:47:03Z<p>Patmarion: Created page with "=Introduction= This page describes how to compile and develop with Point Cloud Library on Android and iOS, in conjunction with VTK, VES, and Kiwi = Getting Started = Make sure..."</p>
<hr />
<div>=Introduction=<br />
<br />
This page describes how to compile and develop with Point Cloud Library on Android and iOS, in conjunction with VTK, VES, and Kiwi<br />
<br />
= Getting Started =<br />
<br />
Make sure you have first setup for development environment for Android and/or iOS. Install the official Android and iOS SDKs and try out some of the sample applications that come with the SDKs. Also, familiarize yourself with VES and Kiwi, and try installing KiwiViewer on your mobile device. See the VES Developer's Guide for more instructions. After these are working, follow this guide to integrate the Point Cloud Library into your mobile apps.<br />
<br />
=Checkout the source from Git=<br />
<br />
Use [http://www.git-scm.com/ Git] to checkout the cmake scripts used to cross compile PCL and its dependencies for Android and iOS<br />
<br />
$ git clone git://github.com/patmarion/pcl-superbuild.git<br />
<br />
<br />
=Build with CMake=<br />
<br />
[http://cmake.org/cmake/resources/software.html CMake] is used to configure a superbuild project that will cross compile PCL and its dependencies as subprojects. For more information about superbuilds and cross compiling see the VES Developer's Guide.<br />
<br />
<br />
===Android instructions===<br />
<br />
Coming soon.<br />
<br />
====iOS instructions====<br />
<br />
Coming soon.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=VES/Developers_Guide&diff=47135VES/Developers Guide2012-05-24T04:38:01Z<p>Patmarion: </p>
<hr />
<div>=Introduction=<br />
<br />
The VES Developer's Guide describes how to download and build the VES libraries, and how to use the libraries in Android and iOS applications.<br />
<br />
= Getting Started =<br />
<br />
For quick instructions, see the [[VES/Download And Build Instructions| Download & Build Instructions]] page. This developer's guide will go into more detail than is found on that page.<br />
<br />
==Checkout the source from Git==<br />
<br />
Use [http://www.git-scm.com/ Git] to checkout the VES source code with the command:<br />
<br />
$ git clone git://vtk.org/VES.git<br />
<br />
See the [[VES/Git|VES Git table of contents]] page for details on the Git repository and development workflow.<br />
<br />
==Setting up your development environment==<br />
<br />
===Android===<br />
<br />
You must have the Android SDK and Android NDK installed. To get started with Android development, visit the [http://developer.android.com/guide/index.html Android Developer's Guide]. It is recommended that you build and run some of the Android sample applications that are provided with the Android SDK to get familiar with running code on your device before attempting to build and run VES/Kiwi based applications. See [http://vtk.org/gitweb?p=VES.git;a=blob;f=Apps/Android/README.txt;hb=HEAD this README] in the VES repository for a guide to setting up the Android development environment.<br />
<br />
===iOS===<br />
<br />
You must have Xcode and the iOS SDK installed. To get started with iOS development, visit Apple's [http://developer.apple.com/devcenter/ios/index.action iOS Dev Center]. It is recommended that you build and run some of the iOS sample applications that are provided with the iOS SDK to get familiar with running code on your device before attempting to build and run VES/Kiwi based applications.<br />
<br />
<br />
=Build with CMake=<br />
<br />
[http://cmake.org/cmake/resources/software.html CMake] is used to configure and build VES.<br />
<br />
==What is a Superbuild?==<br />
<br />
VES is normally built using a [http://www.kitware.com/products/html/BuildingExternalProjectsWithCMake2.8.html superbuild]. A superbuild manages the download, configure, build, and install steps of multiple projects all at once. The VES superbuild will download [https://gitorious.org/kitware/vtkmodular vtkmodular], then configure and build both vtkmodular and VES using the appropriate cross compiler for the target architecture. The target architecture may be an android device, iOS device, or the iOS simulator on x86. When configuring vtkmodular and ves, cmake is invoked in [http://www.vtk.org/Wiki/CMake_Cross_Compiling cross compile mode] using a toolchain file for the target architecture. The toolchain files are located in the [http://vtk.org/gitweb?p=VES.git;a=tree;f=CMake/toolchains;hb=HEAD CMake/toolchains] directory.<br />
<br />
==Building==<br />
<br />
====Android instructions====<br />
<br />
The Android NDK r6 is currently the required version. It can be downloaded from:<br />
<br />
$ http://dl.google.com/android/ndk/android-ndk-r6-linux-x86.tar.bz2<br />
$ http://dl.google.com/android/ndk/android-ndk-r6-darwin-x86.tar.bz2<br />
<br />
The following commands will compile vtkmodular and ves libraries for the Android:<br />
<br />
$ export ANDROID_NDK=/path/to/installed/android-ndk<br />
$ cd Apps/Android/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application. Ant version 1.8 or higher is required.<br />
<br />
$ cd Apps/Android/Kiwi<br />
$<br />
$ # if android, adb, ant, or cmake are not in your PATH, edit tools.sh to enter the correct paths<br />
$<br />
$ ./configure_cmake.sh<br />
$ ./configure_ant.sh<br />
$ ./compile.sh<br />
<br />
Use adb to confirm that your device is listed:<br />
<br />
$ adb devices<br />
<br />
Run KiwiViewer on the device:<br />
<br />
$ ./run.sh<br />
<br />
====iOS instructions====<br />
<br />
The following commands will compile vtkmodular and ves libraries for the iOS simulator and iOS device.<br />
<br />
$ cd Apps/iOS/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
Next, build and run the KiwiViewer application using Xcode.<br />
<br />
$ open Apps/iOS/Kiwi/Kiwi.xcodeproj<br />
<br />
<br />
=Testing=<br />
<br />
==Testing on Linux==<br />
<br />
VES can be compiled on Linux using [http://www.mesa3d.org/ Mesa] drivers for OpenGL ES 2.0, and X11. The tests are located in [http://vtk.org/gitweb?p=VES.git;a=tree;f=src/kiwi/Testing;hb=HEAD src/kiwi/Testing]. The following commands will build VES on Linux:<br />
<br />
$ cd Apps/Linux/CMakeBuild<br />
$ cmake -P configure.cmake<br />
$ cd build<br />
$ make -j4<br />
<br />
The tests are run by invoking ctest from the build directory:<br />
<br />
$ cd CMakeExternals/Build/ves-host<br />
$ ctest<br />
<br />
=Demos=<br />
<br />
==Brain Atlas Demo==<br />
<br />
See [[VES/Brain_Atlas_Demo|Brain Atlas Demo]] for details.<br />
<br />
==Point Cloud Library Demos==<br />
<br />
See [[VES/Point_Cloud_Library|Point Cloud Library]] for details.</div>Patmarionhttps://public.kitware.com/Wiki/index.php?title=DebugLeaksView&diff=46394DebugLeaksView2012-03-27T16:06:38Z<p>Patmarion: </p>
<hr />
<div>This page demonstrates the vtkQtDebugLeaksView widget. The widget is designed to work out of the box with any VTK+Qt application- just construct the widget and call show().<br />
<br />
<br />
<br />
<br />
[[Image:Debug_leaks_widget_1.png]]<br />
Here I have opened a new paraview session. The debug leaks widget is displayed in the window on the right. The widget contains a table that displays the name and number of instances of every vtk object that is alive in memory.<br />
<br />
<br />
<br />
[[Image:Debug_leaks_widget_2.png]]<br />
Now I have opened some data using the exodus reader. In the debug leaks widget, I typed 'Exodus' into the regexp filter box. Only classes with names that match the regexp filter are displayed.<br />
<br />
<br />
<br />
[[Image:Debug_leaks_widget_3.png]]<br />
Now I have created a second exodus reader. Notice in the debug leaks widget that the class counts have doubled.<br />
<br />
<br />
<br />
[[Image:Debug_leaks_widget_4.png]]<br />
The debug leaks widget also contains a reference count table. The reference count table is initially hidden. There is a slider handle that will expand it. When a class name is selected in the class count table, the reference count table will display the reference count of each instance of the class.<br />
<br />
<br />
<br />
[[Image:Debug_leaks_widget_5.png]]<br />
When vtk python wrapping is enabled, the debug leaks widget has extra powers. By double clicking a pointer value in the reference count table, the vtk object for that pointer will be added to the python context under the variable name 'obj'. Now you can use python to inspect the object. If you double click a class name in the class count table, all instances of that class will be added to the python context as a list under the variable 'objs'.<br />
<br />
<br />
<br />
[[Image:Debug_leaks_widget_6.png]]<br />
Be careful when using python. Here I have deleted both exodus readers from the paraview pipeline browser, but the debug leaks view still shows that some of the exodus objects are alive. This is because python is holding a reference to one the objects. You need to type 'del obj' into the python console for python to give up its reference.<br />
<br />
<br />
Notes:<br />
<br />
* vtk objects constructed before the debug leaks widget is instantiated are not counted<br />
* the widget is available in VTK 5.10<br />
* code to embed the widget into paraview is available in the 13024-debug-leaks-view branch of git://paraview.org/stage/ParaView.git</div>Patmarion