Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eavp-dev] EAVP ready to go

Havard,


We do not yet have centralized documentation for all meshing related data objects, though you can see the code comments for the datatypes the VertexMesh and EdgeMesh and their IMesh superclass in the org.eclipse.eavp.modeling bundle and an example of working with them (the EAVP Mesh Editor) in the org.eclipse.eavp.javafx.mesh bundle. We have documentation related to using the Mesh Editor on the wiki​ and the MeshEditorTutorial in the docs folder of the ICE repo, but these are related to using EAVP's default Mesh Editor rather than setting up your own.

In the ICE repo you can find VisualizationCompleteModel in org.eclipse.ice.demo, which shows how the EAVP Mesh Editor can be instantiated, but it uses an ICE specific class (MeshComponent) that isn't available in EAVP.

You can see an example of a mesh being changed in real time here. I should mention that moving vertices with the mouse as seen in the video is a function of the FXMeshViewer (a part of our default Mesh Editor implementation) and not of the core EAVP data structures themselves.

Here is an example of setting up a truely minimal FXCanvas of your own. 

//Get the ControllerProviders from the factory. We would normally get this factory from the IVizService, but we instantiate it here for simplicity.
FXMeshControllerProviderFactory factory = new FXMeshControllerProviderFactory();
IControllerProvider<FXVertexController> vertexProvider = factory.createProvider(new VertexMesh());
IControllerProvider<FXEdgeController> edgeProvider = factory.createProvider(new LinearEdgeMesh());
//Create a vertex at the origin
VertexMesh vertexMesh1 = new VertexMesh();
FXVertexController vertex1 = vertexProvider.createController(vertexMesh1);
vertex1.updateLocation(0.0, 0.0, 0.0);

//Create a second vertex at (100,100)
VertexMesh vertexMesh2 = new VertexMesh();
FXVertexController vertex2 = vertexProvider.createController(vertexMesh2);
vertex2.updateLocation(100.0, 100.0, 0.0);
//Create an edge connecting the two vertices
LinearEdgeMesh edgeMesh = new LinearEdgeMesh(vertex1, vertex2);
FXEdgeController edge = edgeProvider.createController(edgeMesh);
//Get the Groups containing the pieces' JavaFX shapes
Group vertex1Group = (Group) vertex1.getRepresentation().getData();
Group vertex2Group = (Group) vertex2.getRepresentation().getData();
Group edgeGroup = (Group) edge.getRepresentation().getData();
//Add the groups to your FXCanvas as normal...

//Animate the edge by moving its endpoint
        vertex2.updateLocation(200.0, 200.0, 0);

To create a more complex shape, simply start adding more vertices and connecting them with edges, as seen above.


Robert Smith


From: eavp-dev-bounces@xxxxxxxxxxx <eavp-dev-bounces@xxxxxxxxxxx> on behalf of Jay Jay Billings <jayjaybillings@xxxxxxxxx>
Sent: Wednesday, May 18, 2016 9:05 AM
To: Håvard Heierli-Nesse; eavp developer discussions
Subject: Re: [eavp-dev] EAVP ready to go
 

Havard,

CC'ed the eavp dev list.

I'm in training today, but one of the devs will
1.) Point you to the documentation.
2.) Point you to the tutorial code.
3.) Point you to a video of the mesh editor manipulating vertices.

Very glad you are looking at this again! Also, contributions are welcome. ;)

Jay

On May 18, 2016 8:12 AM, "Håvard Heierli-Nesse" <Havard.Heierli-Nesse@xxxxxxxxxxxxxxxxxx> wrote:
Hello!

Things has "started moving" in regards of using EAVP as a basis for our platform. I'm now picking up where I left to actually evaluate if we can use EAVP by doing some avtual coding.

I'm now using the official p2 in our target platform, and this week I'll see if I'm able to set up a 3D view using EAVP.  The demo will contain an animated flat mesh. Will EAVP allow for updating the properties (position) of individual vertices of a mesh?

I do however see a couple of obsticles. The lack of documentation is one of them ;)
Some time ago I asked if it would be possible to get a minimal example, with f.ex. an FXCanvas just rendering a mesh. I guess I'll be able to figure this out myself, but it'd greatly reduce the time I'll have to fiddle around to get something up and running.

I spoke to Torkild Resheim 2-3 weeks ago, and he said that there had been a tutorial/workshop of some sort on EclipseCon NA? If you know of any tutorial or material available that I could have a look at, it'd be really appreciated :)



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: Wednesday, March 23, 2016 6:55 PM
To: Håvard Heierli-Nesse
Subject: EAVP ready to go

Havard,

I wanted to let you know that EAVP is now out of the ICE repo (at least the 'next' branch) and we are using it solely through the EAVP p2 site. We seem to have all of the bumps worked out of it and it is good to go.

The p2 site is available in the downloads section at https://www.eclipse.org/eavp.

Please let me know how we can help as you start using it!

Jay

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

Back to the top