Renderers

A Renderer is responsible for the presentation of one ore multiple topicmap elements. Just as your filebrowser, that supports several different views on the items on your harddisk (like displaying items as icons or in a list-sytle) TMNav supports several different renderers, each of them presenting topicmap data in a different form.

So, a Renderer decides how data is presented. But it does not influence what is presented. A Renderer never works directly with topicmap data, but always with an intermediate structure, called AbstractModel, which is supplied by a distinct Abstractor. To learn more about Abstraction and how it influences what you are going to see, check the panckoucke-documentation.

Currently TMNav comes with six diffenrent renderers. Two of them are multipurpose Renderers that are able to present nearly every AbstractModel, while the rest of them expect AbstractModels with a distinct structure. Theese renderers do collaborate only with certain Abstractors.

The currently existing renderers are;

  • The TreeRenderer
  • The TouchgraphRenderer
  • The HypergraphRenderer
  • The SectionRenderer
  • The IndexRenderer
  • The MatrixRenderer

The TreeRenderer

A TreeRenderer displays an abstract model as a hierarchical tree (just as any file browser). You can use the TreeRenderer to display nearly every model. In most cases, the rendered result will be meaningful. The TreeRenderer remains still useful when the displayed model becomes large.

The TouchgraphRenderer

This renderer displays a model as a hypergraph. It is especially useful for rendering small models with not too much elements. The visualisation becomes rather crowdy when the model contains to much information. You may use the TouchgraphRenderer to display models generated by any abstractors.

The TouchgraphRenderer is implemented with the help of the touchgraph library mainly developed by Alex Shapiro.

The HypergraphRenderer

This renderer ressembles the TouchgraphRenderer but directs the attention somewhat more to the elements in the center of the visualisation.

The HypergraphRenderer is implemented with the help of the hypergraph library mainly developed by Jens Kaschnik.

The following renderers relies heavily on the particular shape of the incoming model. Therefor they depend on distinct abstractors to produce meaningful results.

The SectionRenderer

The SectionRenderer ist specialized in displaying the characteristics of a Topic or an Association-Element of a Topicmap. The SectionRenderer depends heavily on the shape of the passed model and produces useful results only, if the model was generated by the SectionAbstractor.

The IndexRenderer

This Renderer displays a List of elements. Therefor, ListRenderer would fit much more as a name. The IndexRenderer is currently used to display the , aha, indexes that TM4J provide.

The MatrixRenderer

This Renderer displays a model that describes a table-like structure. It is currently used in the Tolog-Window