Tensegrity Home
Tensegrity Software

Java Graph Framework Eclipse Plugin Free Graph Demo Java SWING/SWT Project Solutions Tensegrity Q&A Support About Tensegrity Software english
deutsch

 

Quicklinks:

Press Room

Image Gallery

Free Graph Demo

Evaluation request

License information

 

 
  Palo Java World  

Support en ligne du Framework Graphique

Cette page contient les solutions de problèmes liés au Framework ainsi qu'une section de type FAQ répondant aux questions les plus fréquemment posées.


Questions fréquemment posées à Doc Graph:

Lisez dans cette section les questions les plus couramment posées et leurs réponses:


Q) Que se passe-t-il après la période de souscription de 12 mois?

R) Il n'est pas nécessaire d'étendre votre souscription au delà de cette période. Vous avez en revanche la possibilité de souscrire à nouveau pour bénéficier des mises à jours du Framework et du support.


Q) Quand ai-je besoin du support de type Premium?

R) Un support de type Premium assure des délais de réponse plus rapides ainsi que des réponses de meilleurs qualités en terme de précision par exemple. Il est généralement approprié pour les projets et clients importants.


Q) Puis-je intégrer mes propres composants dans l'interface d'utilisateur graphique du Framework?

R) Selon son type (classique ou docking) vous pouvez ajouter à l'interface d'utilisateur graphique un nombre limité ou illimité de composants dits "Custom Containers". Simples boutons ou menuitems peuvent être facilement ajoutés aux barres d'outils et aux menus de l'application grâce aux "Launch Tasks".


Q) Comment définir les éléments pouvant être utilisés dans les graphiques?

R) Les éléments sont définis grâce à des fichiers XML contenant les géométries, les styles et les règles les définissant. Ces fichiers sont facilement lisibles et compréhensibles et offrent la possibilité de définir des éléments différents pour chaque application. La flexibilité de cette approche est parfaitement illustrée dans le GraphDesigner où les éléments peuvent être importés lors de l'exécution du programme.


Q) Puis-je associer des informations personnaliséesaux éléments du graph?

R) Oui, et ce grâce en sélectionnant le menuitem "Custom Attribute..." du menu "Insert" ou du menu contextuel des éléments. La boîte de dialogue apparaissant alors vous permet d'ajouter une liste d'attributs en précisant le nom et le type de chacun. Les types supportés dans le GraphDesigner sont: String, Integer, Double, Boolean, Web link, Enumeration, PaintFormat, StrokeFormat, FontFormat ainsi que des ensembles d'attributs composés afin de créer des structures hiérarchiques.

Une autre possibilité est d'ajouter à l'élément ce qu'on appelle une NodeInfo ou une EdgeInfo. Ceci est faisable par programmation par simple implémentation d'une interface, laquelle assure que l'information soit transférée lors d'opérations du type copier-coller.


Q) Comment faire pour arranger un simple graphe?

R) L'exemple suivant montre comment utiliser un LayoutController afin d'arranger un graphe. Dans ce cas nous utilisons la classe GraphLayoutController située dans le package Layout.

// Étape 1: Initialisation
// Créer une instance de GraphLayoutController:
GraphLayoutController layoutController = new GraphLayoutController();

// Informer la VisualGraphView du LayoutController à utiliser:
myVisualgraph.setLayoutController(layoutController);

// Étape 2: Arrangement
// retrouver la référence au LayoutController
LayoutController layoutCntr = myVisualgraph.getLayoutController();

// définir le contexte:
layoutCntr.setNodeLayoutContext(GraphLayoutController.Energy);

// Exécuter
if (!layoutCntr.apply())
{
System.err.println("Error: " + layoutCntr.getErrorMessage());
}

 


Q) Quels algorithmes d'arragement sont disponibles?

R) Le Framework Graphique de Tensegrity propose des arrangements de type hiérarchique, en arbre, en organigramme, circulaire ainsi que energy (en anglais) pour les noeuds et les liens des graphes. Il propose également un algorithme spécial pour l'arrangement des liens pouvant être utilisé pour raffiner leur arrangement après avoir appliqué un autre type d'arrangement.

Il maintient le cheminement courant des liens mais améliore leur arrangement par exemple en créant des ponts aux points de croisement ou en dispersant ceux qui se superposent.

Il peut de plus être utilisé pour diriger les liens lors d'interactions de l'utilisateur.


Q) Comment faire pour configurer les arragements?

R) Le Layout Controller fournit les méthodes nécessaires à la configuration des algorithmes d'arrangements. Les méthodes suivantes sont définies pour cela:

setLayoutAttribute(String layoutContext, String key, Object value)
setLayoutAttributeSet(String layoutContext, AttributeSet attributeSet)
Object getLayoutAttribute(String layoutContext, String key)
AttributeSet getLayoutAttributeSet(String layoutContext)

Q) Quel est le but du "Layout Controller"?


R) La classe LayoutController est la principale classe à utiliser pour la gestion des algorithmes d'arrangement disponibles et leur application sur des graphes du Framework. Chaque classe implémentant un algorithme d'arrangement doit être enregistrée auprès du Layout Controller avant de pouvoir être utilisée par le Framework Graphique de Tensegrity.
Le Layout Controller rend donc possible l'approche dans laquelle les algorithmes d'arrangement sont traités de manière uniforme.
Il propose un ensemble important de méthodes pour l'importation, l'exportation, l'animation et la configuration de ces algorithmes. Il fournit également un grand nombre de méthodes dites callback méthodes permettant l'injection de code spécifique à différents points stratégiques.


Q) Comment faire pour avoir des graphes constamment arrangés?

R) Pour ce faire le Layout Controller définit les méthodes suivantes:

enableDynamicNodeLayout(boolean layoutPermanent)
enableDynamicEdgeLayout(boolean layoutPermanent)

La méthode enableDynamicNodeLayout() peut être utilisée pour déterminer si le Layout Controller doit arranger l'ensemble du graphe automatiquement après chaque pertinente modification.
La méthode enableDynamicEdgeLayout() peut être utilisée pour déterminer si le Layout Controller doit arranger les liens automatiquement après chaque pertinente modification. La méthode enableDynamicEdgeLayout() doit être utilisée lorsque l'utilisateur à la possibilité de modifier le graphe. Le Layout Controller arrange alors automatiquement les liens dès que nécessaire.

 

Doc Graph assists you with your framework problems

Docteur Graph est l'un des experts les plus renommés pour sa capacité à analyser et guérir les problèmes de visualisation.


Graph Fact Sheet PDF

Getting Started Manual PDF

Framework Manual PDF

Getting Started Manual

Framework Manual

Java Docs

 

 
CONTENT-END


imprint - sitemap - graph - swt - demo - solutions - support - about

© by Tensegrity Software - Java Graph Framework