I've moved this blog to my new website: http://www.ugosan.org
If you are following this blog, I appreciate your attention very much and kindly ask you to update your feed to: http://www.ugosan.org/feed
Se você quiser seguir o feed em portugues: http://www.ugosan.org/pt-br/feed
Thank you, Obrigado!
07 May 2010
18 April 2010
Sketch: Flexible Graphic Model in GMF (+Demo Video)
There's a long time since i've blogged about the FlexiTools'2010 workshop and the discussion about a flexible graphic representation made possible in Eclipse graphical editors.
Here we talk about creating an intermediate element which holds a flexible graphic representation, in opposition to it's canonical one (which in GMF is defined at .gmfgraph model). The users would be able to draw the elements as they wish, and as well be able to create new ones, something like this:
Here is a video explaining how it works, please watch and comment (go to Sketch Forum):
Here we talk about creating an intermediate element which holds a flexible graphic representation, in opposition to it's canonical one (which in GMF is defined at .gmfgraph model). The users would be able to draw the elements as they wish, and as well be able to create new ones, something like this:
Here is a video explaining how it works, please watch and comment (go to Sketch Forum):
11 March 2010
More Ideas for Sketch API
I've just submitted a position paper to FlexiTools'2010, in which me and Simone outline our ideas for the Sketch API, which i'm carrying on with Chris and Mariot.
Take a look at the paper:SKETCH: Modeling Using Freehand Drawing in Eclipse Graphical Editors
The main idea is the approach of the modeling task as a twofold process -- one of freely sketching models with little interruption from the system; and another more formal, "classic modeling'', recognizing the elements drawn by the user right away, having as output a model in its canonical representation.
By letting users draw the model using their own graphic representation, we are allowing the GEF/GMF editor to be more flexible regarding its visual notation. For instance, assuming a simple model with the elements named flower, sun and cloud -- they might be connected and generate an output or might serve as input for other models. A user might draw the flower element, for instance, in infinite ways, having any number of petals, with or without stem, and so on.
This allows the creation of a "graphicless model'', without predefined visual counterparts to the model elements, just elements and relations -- the user would choose how elements will look like. That means the .gmfgraph would just hold the canonical representation, but the real one will be the user's.
So, on Eclipse GEF/GMF frameworks side, some minor modifications will need to take place:
Don't you think?
Take a look at the paper:SKETCH: Modeling Using Freehand Drawing in Eclipse Graphical Editors
The main idea is the approach of the modeling task as a twofold process -- one of freely sketching models with little interruption from the system; and another more formal, "classic modeling'', recognizing the elements drawn by the user right away, having as output a model in its canonical representation.
By letting users draw the model using their own graphic representation, we are allowing the GEF/GMF editor to be more flexible regarding its visual notation. For instance, assuming a simple model with the elements named flower, sun and cloud -- they might be connected and generate an output or might serve as input for other models. A user might draw the flower element, for instance, in infinite ways, having any number of petals, with or without stem, and so on.This allows the creation of a "graphicless model'', without predefined visual counterparts to the model elements, just elements and relations -- the user would choose how elements will look like. That means the .gmfgraph would just hold the canonical representation, but the real one will be the user's.
So, on Eclipse GEF/GMF frameworks side, some minor modifications will need to take place:
- The underlying model (Ecore?) will need a generic element to serve as an 'unrecognized' element, to be created at the model while the user does not signifies it as anything
- make the editor flexible enough to hold any graphic representation for it's elements, representing it using an SVG with the sketch. Also, this approach can also be used to make annotations on existing models, since the user might be able to create an "annotation" element.
Don't you think?
02 March 2010
Ideas for the Sketch API
3 weeks ago Sketch API proposal became official. Meanwhile, our job is to foster community around the project.
This project is intended to be applied to any GEF editor, and since that there are so many GEF-based graphical editors out there, our goal now is to try to define a common set of functionalities between them.
We will start to discuss some of the ideas using the Sketch Forum/Newsgroup, please join the discussion and create topics if you are interested on this project or if you know a GEF editor that this project could benefit.
So far, what we have in mind is:
Imagine to have a mockup/wireframe editor built on top of Visual Editor. A prototype builder might be coded using the user's own drawings. And the prototype might be constructed without a 'done look'.
Any more ideas? :)
We are also editing the Sketch proposal's Wiki so the modifications would be merged onto the official one later. If you are an interested party, please add yourself there.
This project is intended to be applied to any GEF editor, and since that there are so many GEF-based graphical editors out there, our goal now is to try to define a common set of functionalities between them.
We will start to discuss some of the ideas using the Sketch Forum/Newsgroup, please join the discussion and create topics if you are interested on this project or if you know a GEF editor that this project could benefit.
So far, what we have in mind is:
- Gesture (not only shape) recognition - the API would be able to provide a set of configurable gestures, that would translate into commands for moving, resizing, and so on. This feature would massively benefit GEF3D.
- Sketched vs. 'Beautified' look - There would be two ways of presenting the diagrams: the Sketched would show the recognized element as the user sketched it (using an SVG Figure created from it); The 'beautified' look would be the EditPart's normal representation.
- Postponed recognition - Maybe to have an Action to trigger the recognition would be better for some domains, instead of always asking the user what he meant to represent like on this demo.
Imagine to have a mockup/wireframe editor built on top of Visual Editor. A prototype builder might be coded using the user's own drawings. And the prototype might be constructed without a 'done look'.
Any more ideas? :)
We are also editing the Sketch proposal's Wiki so the modifications would be merged onto the official one later. If you are an interested party, please add yourself there.
02 February 2010
Draw freely with Sketch for GEF
I think so, I've been working on sketch recognition for GEF/GMF editors while creating the MoLIC editor, take a look:
Sketch API (former OmniModeling) on MoLIC Editor from Ugo Sangiorgi on Vimeo.
There are other posts on this blog reporting the evolution until this point -- the API is able to recognize shapes the way you draw, learning withing the process if it cant recognize it upfront. It can recognize any shape, really, you will 'teach' it how.Omnimodeling: Multi-Agent Recognition from Ugo Sangiorgi on Vimeo.
So it's on! I decided to contribute to Eclipse by proposing a Sketch API for GEF/GMF using the former OmniModeling project base, take a look at the proposal we are working on. Mariot Chauvin and Chris Aniszczyk are helping me through, thank you so much guys!
Comments and contributions are welcome :)
I should acknowledge Simone D.J. Barbosa for the kind support during the OmniModeling project, as well as my colleagues at the Semiotic Engineering Group of PUCRio.
25 May 2009
HP Pavilion dv3 and Linux
First, here is all my hardware, if you have the same, then the solutions might fit for you.
My lspci:
00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host BridgeIssue #1 No sound (ATI Technologies Inc RS780 Azalia controller)
00:01.0 PCI bridge: Hewlett-Packard Company Device 9602
00:04.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 0)
00:06.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 2)
00:07.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE port 3)
00:11.0 SATA controller: ATI Technologies Inc SB700/SB800 SATA Controller [AHCI mode]
00:12.0 USB Controller: ATI Technologies Inc SB700/SB800 USB OHCI0 Controller
00:12.1 USB Controller: ATI Technologies Inc SB700 USB OHCI1 Controller
00:12.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller
00:13.0 USB Controller: ATI Technologies Inc SB700/SB800 USB OHCI0 Controller
00:13.1 USB Controller: ATI Technologies Inc SB700 USB OHCI1 Controller
00:13.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 3a)
00:14.1 IDE interface: ATI Technologies Inc SB700/SB800 IDE Controller
00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA)
00:14.3 ISA bridge: ATI Technologies Inc SB700/SB800 LPC host controller
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge
00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 11h HyperTransport Configuration (rev 40)
00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 11h Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 11h DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 11h Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 11h Link Control
01:05.0 VGA compatible controller: ATI Technologies Inc RS780M/RS780MN [Radeon HD 3200 Graphics]
01:05.1 Audio device: ATI Technologies Inc RS780 Azalia controller
08:00.0 Network controller: Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01)
09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)
I got no sound at all, but the solution was easy, just do:
gksudo gedit /etc/modprobe.d/alsa-base.confand append this at the end:
options snd slots=snd-hda-intel,snd-hda-intelsave, reset and enjoy.
options snd-hda-intel model=dell-m4-2
options snd-hda-intel enable_msi=1
alias snd-card-1 snd-hda-intel
alias snd-card-0 snd-hda-intel
Issue #2 Broadcomm's shitty WiFi (Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01))
It was really not an issue, I've saw many people complaining about the broadcomms wifi, but I've just enabled the restricted driver and it works fine for me.
Issue #3 ATI acceleration with fglrx
I'm a compiz user, i cant help it! Nevermind the fire effects and all eye candy, what i really find useful is the zooming function, the window drag-and-drop between multiple desktops and the ability to assign a command to any key combination.
For example, I use to hit F12 to turn my screen off, whenever i need to go away from my laptop (to sleep, for example =P) thus i installed the restricted drivers and compizconfig-backend-gconf + compizconfig-settings-manager and assigned F12 to
/usr/bin/xset dpms force offBut the screen didnt completely went off, the backlight was still on. So i installed the latest Catalyst 9.5 driver doing this steps http://wiki.cchtml.com/index.php/Ubuntu_Jaunty_Installation_Guide and now it works.
The fingerprint authenticator(with fprint), the media card reader and the HP webcam works flawlessly.
Thats all for now.
(I will update this post as I find more compatibility issues between HP dv3 and Ubuntu)
05 February 2009
Using a Remote Workspace Folder as Local in Eclipse, with SFTP (Linux)
Note: you must have the same architecture in both machines.
What you need is to install sshfs to mount a remote folder (the workspace) as a local folder and add your user name to the fuse list. For Debian/Ubuntu systems:
$ sudo apt-get install sshfs
$ sudo adduser yourusername fuseThen create a folder on your (A) home folder, lets call it remoteworkspace
$ mkdir ~/remoteworkspace
$ sshfs HOSTuser@remote.host.or.ip:/host/dir/to/workspace ~/remoteworkspaceAt this point you may now navigate throught you file manager or a terminal inside the remote folder.
Now open up Eclipse and point your workspace to your
remoteworkspace folder (File -> Switch Workspace -> Other...) and voilá, you will be seeing your remote workspace as if its local, all changes made on your files will be passed automatically via sftp by the filesystem to the B machine. It will be a little slow at the beginning, but due to the marvelous incremental compiling, only a few files will be transfered during your coding, just check it out.Once you're done, just run the configuration on B machine (look, no refreshing needed!! XD) and be happy.
More information information about mounting a remote folder with sshfs
Subscribe to:
Posts (Atom)





