Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ice-dev] Using Viz in our RCP application

Havard,

Thanks for getting back to us! These are good bugs you found!

Do you mind if we take a few days to look at these? We're trying to merge the updated viz bundles into our staging branch ('next') this week and then we'll start looking at these issues immediately after that. We have to get all of these fixed for the EAVP initial contribution.

Jay

On Jan 26, 2016 6:16 AM, "Håvard Heierli-Nesse" <Havard.Heierli-Nesse@xxxxxxxxxxxxxxxxxx> wrote:
Hello there!

Sorry for a late answer to you emails - but sadly I've been busy with a lot of other stuff after Christmas.


I picked up the UnifiedVizRefactor_NoReactor branch trail, and a lot of things are fixed in this branch. Also nice to see that there are still a lot of new commits to it.

I do however still have a few questions (surprise! :)


I've startet off with a clean Eclipse IDE (Mars.1), and I'm currently on Java8u45 (Linux).

Secondly I've created my own bundle with all the JME3 dependencies, and the Visit java client is imported - so dere are no issues with direct dependencies to these.

I still get something like 1972 errors. The majority of these are cased by access restrictions to JavaFX stuff. I've solved this for now by just adding JRE Access rules (javafx/**) to the bundles:
    org.eclipse.ice.viz.service.javafx (Reduces the number of errors to 1069)
    org.eclipse.ice.viz.service.javafx.mesh  (Reduces the number of errors to 756)
    org.eclipse.ice.viz.service.javafx.geometry (Reduces the number of errors to 311)

In the org.eclipse.ice.viz.service.jme3.mesh bundle there are several more of these regarding the com.sun.javafx.geom.Edge class. Could it be that you are about to move to your own implementation of this class? I see in the MeshSelectionManager there are several imports (showing up in red):

import org.eclipse.ice.viz.service.mesh.datastructures.Edge;
import org.eclipse.ice.viz.service.mesh.datastructures.Polygon;
import org.eclipse.ice.viz.service.mesh.datastructures.Vertex;
import org.eclipse.ice.viz.service.mesh.datastructures.VizMeshComponent;

I don't know what these are doing, since they doesn't exist - did you forget to commit these? I can see references to all of these in several bundles, so they probably account for a lot of the remaining errors I get.

There's also worth mentioning that there seems to be a few missing dependencies in LaunchVisitHandler -
 org.eclipse.core.commands... and org.eclipse.jface...

I get some problems with FXCanvas as well - but trying to fix the depencency by adding the jfxswt.jar bundled with Java8, I end up with some strange cyclic dependency issue between org.eclipse.ice.viz.service.javafx.mesh and org.eclipse.ice.viz.service.javafx.test


To answer Jay Jay's questions:
We'll be more than happy to start testing this stuff out. It seems to me to be a very good idea with this abstraction layer on top of different rendering engines, and the other guys on our team have also several times mentioned that we *really* should look into Viz as a basis for  (3D) visualization in SIMA.

I can see that there are lots of improvement on the UnifiedVizRefactor_NoReactor branch, but there's still a lot of small (and annoying :) ) issues. Have you tried to import only the *.viz.* bundles (and maybe the Visit+some JME3 dependency bundle)? With a clean install of eclipse (without any ICE-related preferences set) it's easy to uncover the issues I'm having.

Jay Jay mentioned that I could report bugs on GitHub. I feel that the issues I'm having is pretty basic stuff, and I don't want to clutter down your issue tracker with elementary, basic stuff ;) But when/if we create an actually official project for moving stuff over to viz, I'll start registering bugs there instead of sending emails like this :)


Keep up the good work - this will be awesome! :)


Med vennlig hilsen / Best regards,
Håvard Heierli-Nesse
Programutvikler – Konstruksjonsteknikk
Software developer – Structural engineering
 
MARINTEK (Norsk Marinteknisk Forskningsinstitutt AS)
Address:  POB 4125 Valentinlyst, NO-7450 Trondheim, Norway
Mobile:   +47 930 04 277 
Web:       www.marintek.sintef.no

From: Jay Jay Billings [jayjaybillings@xxxxxxxxx]
Sent: Tuesday, January 12, 2016 3:44 PM
To: Håvard Heierli-Nesse
Cc: McCaskey, Alex; ice developer discussions
Subject: RE: Using Viz in our RCP application

Havard,

I'm CC'ing the ICE dev mailing on this incase any of our viz folks want to speak up.

I guess I misspoke. I thought most of our changes to break dependencies had been merged into master. They should certainly be available in origin/UnifiedVizRefactor_NoReactor. My goal with the redesign and refactor was specifically to address your concerns in 1, 2 and 3.

So, will you be our test subject and try out the origin/UnifiedVizRefactor_NoReactor branch? :) Robert Smith is working very hard to address the concerns that you and I share as well as other issues. If you find problems you can open issues on Github and he can start tackling them immediately. It would be extremely valuable to us if you did this since a separate set of eyes often catches more bugs.

Jay

On Jan 12, 2016 9:08 AM, "Håvard Heierli-Nesse" <Havard.Heierli-Nesse@xxxxxxxxxxxxxxxxxx> wrote:
Hello again!


I've had another look at the ICE master branch, and it seems to me that there's a lot of dependency issues.

I haven't looked at the other feature branches available, but I can see that there are branches that (at least from the name) seems to be relevant :)

origin/jay/cleanup
origin/kgrs/viz/refactor
origin/UnifiedVizRefactor_NoReactor

What I've done so far is to clone the master branch, and only import the *.viz.* bundles into Eclipse. I also imported the org.eclipse.ice.viz.target.mars bundle, and set the target platform from it.

By doing this I'd expect to get no dependency issues, except for issues with some of the service bundles (more specifically the org.eclipse.ice.viz.service.visit and the org.eclipse.ice.viz.service.jme3 bundles, since I haven't set up any of the engines on my system).

My initial thoughts are as follows:

1) What's the main goal of this cleanup/refactoring? I'd think that the viz bundles should be pretty standalone with regards to the rest of the ICE bundles. There are direct dependencies to org.eclipse.ice.client.widgets, org.eclipse.ice.analysistool and several others. Of course if I start to add these, it just blows up with a cascade of other dependencies to other ICE bundles. I'd think that it's OK for ICE to depend on Viz for visualization, but not the other way around.

2) Viz should probably (when/if splitting part with ICE) have it's own separate target platform

3) It should be possible to just close the visit and jme3 plugins, and still don't get any errors. Right now there are dependencies from the more generic top level bundles to the visit/jme3 bundles (and even com.jme3.* in the org.eclipse.ice.viz.service.geometry bundle). In my opinion the only bundle allowed to have dependencies to com.jme3.* is the org.eclipse.ice.viz.service.jme3.* bundles.

4) I see you use jMonkeyEngine for a lot of the math. Have you considered removing these dependencies by implementing the requred math stuff yourself? (maybe in a org.eclipse.ice.viz.math bundle) or use some other third party library?

Are there any other branches where any of the mentioned issues are addressed? Or am I sort of "barking up the wrong tree" here? :)


Med vennlig hilsen / Best regards,
Håvard Heierli-Nesse
Programutvikler – Konstruksjonsteknikk
Software developer – Structural engineering
 
MARINTEK (Norsk Marinteknisk Forskningsinstitutt AS)
Address:  POB 4125 Valentinlyst, NO-7450 Trondheim, Norway
Mobile:   +47 930 04 277 
Web:       www.marintek.sintef.no

From: Jay Jay Billings [jayjaybillings@xxxxxxxxx]
Sent: Friday, December 18, 2015 8:44 PM
To: McCaskey, Alex
Cc: Håvard Heierli-Nesse
Subject: Re: Using Viz in our RCP application

Havard,

Very nice to meet you!

You might try the latest version of ICE's master branch in the Git repo. We have refactored many parts of the org.eclipse.ice.viz bundles and you shouldn't need any additional bundles now.

We are starting on the initial contribution for the Eclipse Advanced Visualization Project (EAVP). It must be approved for check-in first by the Eclipse Foundation, so I would say it will probably be available sometime in early January.

Please let me know how we can help. As Alex said, we're committed to helping you be successful with this project!

Jay

On Fri, Dec 18, 2015 at 2:39 PM, McCaskey, Alex <mccaskeyaj@xxxxxxxx> wrote:
Hello Havard, 

So sorry for the late response! 

I’m glad you’ve contacted me regarding the Visualization infrastructure we have in ICE. We are pulling that code out of ICE (all the org.eclipse.ice.viz.* bundles) and providing it as the initial contribution to the new Eclipse Advanced Visualization Project (EAVP). Your message is good timing - the project was just approved by the Eclipse Board this past week. 

I do think that SIMA could benefit from this viz infrastructure - and the ICE team, the EAVP committers, and I would be more than happy to help you and your team get started. 

As for your questions regarding the initial contribution, I’ll defer to Jay Billings (CC’ed). Jay is leading this effort to get the EAVP started and can speak better to the specifics about EAVP’s initial contribution.

Looking forward to working together on this moving forward. 

Best, 

Alex



On Dec 9, 2015, at 3:20 AM, Håvard Heierli-Nesse <Havard.Heierli-Nesse@xxxxxxxxxxxxxxxxxx> wrote:

Hello Alex!


I don't know if you remember, but during the Eclipse Demo Camp in Trondheim, I talked briefly with you about the Viz project. Sadly you had to catch a plane, so I wasn't able to have an in-depth discussion with you about it.

As far as I understand the plan was to extract the Viz part from ICE, put it in it's own GIT repo and clean it up a little bit.

As I mentioned we're considering swithing to some other 3D engine in our RCP application (SIMA), and using Viz (maybe with jMonkeyEngine) is one of several options. I'm really eager to look into this, and I'm just wondering what the status is of this splitting/cleanup.

A couple of months ago I cloned the ICE project from here https://github.com/eclipse/ice, and looked into it a little bit (I even did some cleanup/removal of dependencies myself, just to see if I could get it integrated into SIMA somehow. Didn't take this test all the way, so I never actually got it working, but at least I've familiarized a little bit with the code.

I have several questions:
 1) Is there a different repository available which I could have a look at? If not, is there a branch for this "splitting project" which is an better option for testing than master.
 2) Do you have some loose timeframe for when I can expect Viz to be ready for "alpha" testing (I really don't want to have a dependency to the whole ICE project to use just the visualizatin part of it :)

I suspect that we'll have a few requirements that may not be implemented to this date, but we'll be more than happy to contribute to this project if we choose to use it (which I personally think would be a good idea).


Best regards, 


Med vennlig hilsen / Best regards,
Håvard Heierli-Nesse
Programutvikler – Konstruksjonsteknikk
Software developer – Structural engineering
 
MARINTEK (Norsk Marinteknisk Forskningsinstitutt AS)
Address:  POB 4125 Valentinlyst, NO-7450 Trondheim, Norway
Mobile:   +47 930 04 277  
Web:       www.marintek.sintef.no




--
Jay Jay Billings
Oak Ridge National Laboratory
Twitter Handle: @jayjaybillings

Back to the top