Coordinate Units

 

Notes (Note)

 

XXX Public Links - Coordinate Units


Public Description - Coordinate Units

Coordinate Units

|Please note: this is a preliminary proposal for XPDL 2.1 which has not yet been adopted by the coalition. Please use this page for discussion of that proposed extension. This proposal may change substantially before adoption, or may possibly never be officially adopted in this form.

Tags:\\ <LayoutInfo> - included in Package Header\\ <xsd:element ref="xpdl:LayoutInfo" minOccurs="0"/>\\ <Origin>\\ <xsd:attribute name="Origin" type="xsd:string" use="optional"\\ <xsd:enumeration value="TopLeft"/>\\ <xsd:enumeration value="BottomLeft"/>\\ <xsd:enumeration value="TopRight"/>\\ <xsd:enumeration value="BottonRIght"/>\\ \\ <Units>\\ <xsd:attribute name="Units" "type="xsd:string" use="optional"\\ \\ <xsd:enumeration value="None"/>\\ <xsd:enumeration value="Pixels"/> 0.3mm\\ <xsd:enumeration value="Millimetres"/> 1 mm\\ <xsd:enumeration value="Inches"/> 25.4 mm\\ \\ Context:\\ Provide sufficient information to allow tools to interpret correctly the intended layout of a process definition. This will include details of the units used and origin.\\ \\ Description:\\ Layout information is defined as part of the Package Header.\\ \\ Different options are available for defining the origin of the process diagram:\\

  • Top Left\\
  • Bottom Left\\
  • Top Right\\
  • Bottom Right\\

\\ Options available for Units are:\\

  • None - for backwards compatibility\\
  • Pixels - expressed as a double\\
  • Millimetres - expressed as a double\\
  • Inches - expressed as a double\\

Discussion at Sept 17 Meeting

  • Origin: instead of having multiple origin points, the strong suggestion from TIBCO was that we simply pick top left as the origin, and everyone translates to/from this.
  • Scale: similarly, we pick "pixels" as the default units, and a scaling factor is used to translate to/from pixels for those who do not support that.

Discussion at Sept 24 Meeting

  • Origin: TIBCO suggestion that XPDL documents that all co-ordinates (in NodeGraphicsInfos) have origin of 'top-left, relative to parent container'.
  • Scale: Was agreed that XPDL should document that co-ordinate units are in pixels. However it would be nice to give other applications a hint as to the scale of a 'pixel' when the XPDL file was saved (i.e. The XPDL writer specifies co-ordinates and sizes in pixels but can also specify 'pixels to the millimetre' - the reading application can then, if it wishes, take this into account and scale to its pixel size appropriately).

Therefore suggest that the aforementioned LayoutInfo element (to be added to PackageHeader) be defined as follows instead...

Tags:\\ <xsd:element name="LayoutInfo" minOccurs="0">\\ <xsd:complexType>\\ <xsd:attribute name="PixelsPerMillimeter" type="xsd:float" use="optional">\\ <xsd:annotation>\\ <xsd:documentation>Co-ordinates / Sizes are in pixels - this attribute specifies the number of pixels per millimeter used by applicaiton.</xsd:documentation>\\ </xsd:annotation>\\ </xsd:attribute>\\ </xsd:complexType>\\ </xsd:element>\\

Discussion at Oct 11 Meeting

  • We agreed that the default unit should be Pixels. The transformation of whatever measurement unit is used internally is left up to the implementing tool. Since output rendering might involve transformations to another unit (akin to dpi settings in printer drivers) we felt that specifying the scaling should not be part of the specification.