Previous: symju Up: ../plot79_s.html Next: symmk2
SUBROUTINE SYMMK C$ (Marker) C$ Draw the currently-selected marker centered at the current C$ point. This version provides software-generated markers C$ selected according to the CORE proposal. The digitizations C$ are from the Hershey character fonts. The Hershey symbol C$ numbers are given in parentheses following the symbol name C$ in the table below. C$ C$ Markers are drawn centered at the current point, upright on C$ the view surface, with a nominal height equal to 0.03 units C$ in NDC space. An extension to the CORE proposal allows the C$ user to scale the marker height by a factor provided as an C$ argument to routine SETMSZ. C$ C$ The size and orientation of markers is unaffected by world C$ coordinate transformations. They may be altered by image C$ transformations if software generated, but usually not if C$ hardware generated. The appearance of markers which lie on C$ or outside the viewport boundaries is device-dependent. C$ For the software markers drawn by this version, such C$ markers will not be displayed. C$ C$ Markers 1-5 are standard in all CORE implementations. The C$ remaining ones are implementation-dependent. Markers C$ currently supported are taken from the Hershey font C$ digitizations. The Hershey numbers are given in C$ parentheses below for each marker. Marker heights have C$ been adjusted to make them all roughly the same size. C$ C$ 1.....dot or period (828). C$ 2.....plus (845). C$ 3.....asterisk (847). C$ 4.....circle (840). C$ 5.....x or cross (846). C$ 6.....square (841). C$ 7.....triangle (842). C$ 8.....crosshair (1284). C$ 9.....5-pointed star (844). C$ 10....6-pointed star (868). C$ 11....swiss cross (866). C$ 12....bell (869). C$ 13....paragraph (1276). C$ 14....dagger (1277). C$ 15....double dagger (1278). C$ 16....spade (741). C$ 17....heart (742). C$ 18....diamond (743). C$ 19....club (744). C$ 20....shamrock (745). C$ C$ The digitizations are stored in the table XY(*), with C$ pointers to the beginning of each marker in XY(*) stored in C$ MARKLC(*). Coordinates (x,y) relative to the marker center C$ at (0,0) are packed into 14 data bits of a single integer C$ as 128*(x+64) + (y+64). Pen raises prior to moving to a C$ given coordinate are marked by a negative sign on the C$ packed pair, except for the first one. The number of C$ coordinates for a given marker, K, is computed as C$ MARKLC(K+1)-MARKLC(K). The first entry in a sequence C$ contains (minimum y,maximum y) and the second entry, C$ (minimum x,maximum x). Point coordinates begin in the C$ third entry. C$ (20-JUL-89)