|3D-fication of 2D-GMF based editor [message #809275]
||Tue, 28 February 2012 17:14
| peter jurkovsky
Registered: February 2012
I need help with 3D-fication of 2D GMF based graphical editor.
I can generate 2D editor using GMF dashboard and i want to 3D-ficate this editor using GEF3D.
Is it possible? Is there any tutorial, or can you write me some steps how to do it?
GMF dashboard generates this projects:
If it is possible.. Do I need to add some classes into these projects or just edit these generated classes?
Or is the better way to use 2D GEF based editor rather than GMF based??
Thx for help and for answers.
|Re: 3D-fication of 2D-GMF based editor [message #809313 is a reply to message #809275]
||Tue, 28 February 2012 18:24
|| Jens von Pilgrim
Registered: July 2009
On 28.02.12 18:14, peter jurkovsky wrote:
> I need help with 3D-fication of 2D GMF based graphical editor.
> I can generate 2D editor using GMF dashboard and i want to 3D-ficate
> this editor using GEF3D.
There exists an article about how to 3D-fy an GMF based editor,
unfortunately this article is in German. Even more unfortunate, this
article is not available online... I will contact the publishers, maybe
we can find a way to make it public.
Meanwhile take a look at the 3D-Ecore-Editor, as this example is a
3D-fied GMF based editor. The project is called
org.eclipse.gef3d.examples.ecore, and it is contained in the GEF3D Git
code repository in the examples folder. There is also a 3D-fied version
of the UML2 tools editor (which actually are 3 editors for activity, use
case, and class diagrams), which is also GMF based---however you will
need Eclipse Galileo to test that.
If you examine the 3D ecore editor, you will see that there are only 6
classes to be created, and some settings in the plugin.xml. I think you
could simply follow the ecore example. Here's a brief description:
- create a new editor, extending the generated GMF editor. If you want
to use this editor in a multi-editor, you have to implement the
interface INestableEditorWithEditingDomain. See EcoreDiagramEditor3D as
an example. The implementation is a little bit longer, as Java does not
support multi-inheritance. But most things are simple copy and paste.
Don't forget to configue a ProviderAcceptor in order to disable the 3D
stuff in a 2D editor (cf. configureProviderAcceptor()).
- you have to replace the top-level edit part, e.g., the package or
model element (in case of Ecore, it is the DiagramEditPart3D). Again,
have to extend the matching GMF generated 2D version.
- also, extend the created edit part factory in order to create the new
3D enabled edit part (cf. EcoreEditPartFactory3D)
- since GMF uses providers, you will have to implement a new provider,
using the new 3D enabled edit part factory (cf. EcoreEditPartProvider3D)
- register the editor(s) and the provider in the plugin.xml
If you want to create a multi editor (i.e., an editor capable of
displaying several 2D diagrams on planes in a single 3D space), take a
look at the MultiEcoreGraphicalEditor3D found in the same package. This
is a demonstration of how to create a multi editor supporting the
3D-fied GMF editor.
If you want to use a single shared TransactionalEditingDomain, things
get a bit more complicated. In
a new document provider is created for ecore, in UML (cf.
UMLClassDiagramEditor3D.setDocumentProvider(IEditorInput)) it looks a
|Re: 3D-fication of 2D-GMF based editor [message #811559 is a reply to message #811392]
||Fri, 02 March 2012 14:10
|| Jens von Pilgrim
Registered: July 2009
On 02.03.12 10:39, peter jurkovsky wrote:
> My task (for diploma thesis) was to find proper open source technology
> for 3D graphical editor, and implement this editor for UML diagrams,
> - Use case diagram
> - Activity diagram
> - Class diagram
The GEF3D UML2-Tools example include these three diagram editors,
already ported and working in 3D. All you need to do is install Eclipse
3.5 (Galileo), the UML2 tools, and GEF3D with all examples.
> - Sequence diagram
> - Deployement diagram
It should be pretty straight forward. With the other diagrams already
3D-fied, it should take you no longer than one or two days.
Powered by FUDForum
. Page generated in 0.01691 seconds