Structural Informatics Group (SIG) logo
Home | Projects | Demos | Downloads | Publications | Local Info | About Us | New site
Go to the first, previous, next, last section, table of contents.


source files: xhsy.[ch] xgrl.[ch]


    :THING <thing>
    :SYMBOL <fix:symbol-index>
  [ :X    <fix:x> ]
  [ :Y    <fix:y> ]
  [ :Z    <fix:z> ]
  [ :SCALE   <flo:scale > ]
  [ :SCALE-X <flo:scalex> ]
  [ :SCALE-Y <flo:scaley> ]
  [ :SCALE-Z <flo:scalez> ]
  [ :TRANSFORM <xtfm> ]


This call accepts :SYMBOL, a Hershey symbol index and converts it into a set of vectors in a line-segment thing.

The <thing> must be a thing in the :DRAW <xcmr> sense, containing a <point-grl> and <facet-grl>.

<point-grl> contains the :point-x/y/z float-arrays to hold the points of the string.

<facet-grl> contains :facet-0, and :facet-1 arrays defining line segments.

<symbol-index> is an integer in the range [0..1593] specifying the Hershey symbol to insert.

The Hershey symbol set includes obscurities ranging from ligatures to highway signs, most of them inaccessable through XG.3D-INSERT-HERSHEY-STRING. For routine text insertion, however, XG.3D-INSERT-HERSHEY-STRING is much more convenient.

As with XG.3D-INSERT-HERSHEY-STRING, the :X/:Y/:Z parameters may be used to position the symbol, and :SCALE may be used to scale it.

If :TRANSFORM is supplied, it must be an instance of CLASS-MATRIX44, and will be used to transform the symbol exactly as if by XG.3D-TRANSFORM-THING.

If :UPDATE-CURSOR is supplied, it controls whether an internal cursor position should be updated. Letting it default to t results in successive calls appending text in visually sensible fashion. Setting it to NIL results in successive calls writing text at the same address -- which may be what you want if you clearing the relation between each call and inserting updated text.

Go to the first, previous, next, last section, table of contents.