next up previous contents index
Next: Edges Up: Internal data Previous: Internal data   Contents   Index

Vertices

Main data structure is the vertices list. It represents all defined points up to now. For instance, when a paper format description operator (such as \square or \diamond) is parsed by Doodle, it creates four new vertices in the vertices list according to the names found in the operator parameters.

The vertices database can be seen as a dictionary binding geometrical coordinates to name given by user in operator parameter. Other geometrical elements such as face or edge reference a physical point by its symbol name. This way, each other component using a point share the same physical data and thus the same coordinates. This symbol referencing paradigm is useful in our case to guarantee unicity of each vertex. Vertex object structure is the following:

Its shifting values (dx and dy) are values expressed in millimeter in a local direct coordinate system centered in the point. Those extra coordinates are used to separate visually two points at the same position. The operator related to those values is mainly \shift (cf. §[*] for more information).

An equivalence notion has been defined between two different vertices. Two different vertices could be considerate as sharing the same position if the norm the vector they form is lesser than $\epsilon$ (a very small value equal to $1E^{-6}$).

Vertices can't be removed from the database according to the assumption that points defined on a physical paper can't be removed once they have been defined. Each new vertex definition is added to the database and then, the vertex can be used/referenced. The vertices database can be accessed from any part of a Doodle source file and its lifetime is also global.

Nevertheless, user can remove all graphical elements previously defined using the operator \reset.


next up previous contents index
Next: Edges Up: Internal data Previous: Internal data   Contents   Index
Doodle reference manual HTML version generated using LaTeX2HTML by Jérôme Gout, 2001-10-29
Doodle is hosted by Sourceforge, go to SourceForge Logo for more information
©2000-2001 Doodle