⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc192.txt

📁 著名的RFC文档,其中有一些文档是已经翻译成中文的的.
💻 TXT
📖 第 1 页 / 共 4 页
字号:
      without special hardware to provide the kind of feedback possible      with the light pen, but structural hits can be generated by the      use of special hardware or software.  These devices require the      application programmer to set the appropriate level for an      expected hit.      The level of a structural hit is counted up from the bottom of the      node-branch structure.  A hit at level 1 is the lowest branch      presently in view.  A hit at level 0 is a hit on an individual      vector or group of characters.  Only special programs, such as a      picture editor, are likely to obtain hits at level 0.      The Attention type obtained when one gets a structural hit on a      branch returns the following information:  The information      returned in the array is that required by the application program,      the Display Pointer, the Light Button Code, and x, y, information.      The x, y, information returned is not the absolute x,y pen      position because this would not be of use on this type of hit.      The x, y information returned is the physical beam position just      before execution of the branch which was hit.  If one wants the      physical location of the node origin to which the hit branch is      connected, one executes another call to obtain the branch      positioner and adds these values to the corresponding values      obtained from the hit.  Given the Display Pointer, one can obtain      the Back Pointer or other parameter values associated with the      given branch call.      The attention type obtained when a hit is generated, but no object      is in view, is now discussed.  This type of attention is called a      null attention.  It is used frequently to position objects on the      screen.  The only information returned in the array is the      absolute screen coordinates of the position on the screen of the      graphic input device or cursor.  This information can be converted      into relative information for placement in a branch positioner or      for incrementing a branch position when an object is being moved.Watson                                                         [Page 15]RFC 192          Some Factors which a Network Graphics      12 July 1971      Other calls are required to obtain information about other      branches which are related to the one hit, and to perform other      functions.STRUCTURAL HITS FOR STORAGE TUBE DISPLAYS   The final topic is to consider how to obtain structural hit   information using a storage tube display or device which only gives   absolute x, y screen information.   The problem is to take an x, y coordinate pair and determine if the   user is or is not pointing at an object on the screen, and if he is,   which object.  When a hit is generated with the light pen, the   display processor halts and the controlling computer can gain access   to the return addresses in the push down stack and to the instruction   location which generated the line or character causing the hit.  Use   of the Joy Stick, Mouse, or tablet is completely asynchronous with   the display for refresh displays and the hit occurs after the drawing   has taken place for storage tube systems.   The brute force approach to the problem would be to simulate   execution of the Display Buffer and calculate some measure of   distance between every line and the x, y coordinate of the hit.  This   approach would be too time consuming and is not feasible.  A second   approach and one commonly used is to have the programmer define a   rectangle surrounding each object on the screen.  Then one determines   which rectangle the cursor was in and that determines the object hit.   This approach requires extra effort by the programmer, and only works   well if the node-branch structure is one level deep, there are no   diagonal lines as nodes, and no objects have overlapping rectangles.   These severe restrictions eliminates this approach from serious   consideration.   A third approach would be to break the screen into small squares or   rectangles of a size such that it is unlikely a line from more than   one picture object would pass through the square or rectangle.  Then   we would record for each square the Display Pointer of the lowest   level object branch passing through it.  This approach would require   considerable system space and would take much time to determine what   rectangles each line passed through.   The fourth approach and the one we recommend is to split the screen   into horizontal and vertical strips.  When the call to DISPLAY is   given, the system makes one pass through the node-branch structure   and makes a list of the Display Pointers for the lowest branch having   a node with a line or character passing through or in each horizontal   or vertical strip.Watson                                                         [Page 16]RFC 192          Some Factors which a Network Graphics      12 July 1971   This calculation can be made quickly because the system can easily   obtain the start and end points of a line.  One then can quickly   determine which strips the end points fall in, as well as the   intermediate strips crossed.  When a hit is generated, the x, y   information is converted to horizontal and vertical strip numbers.   The Display Pointers for each of these strips are intersected to see   if a common Display Pointer exists.  If yes, this is the Display   Pointer for the object hit.  If not, then a null hit is generated.   Choice of strip width decreases the probability of multiple hits   resulting.   The above process yields the Display Pointer of the lowest branch in   the tree in view, but one may want to obtain information about other   higher branches in view.  This is accomplished by creating, not only   the strip lists described, but by parsing the node-branch structure   at the same time into a table containing an abbreviated   representation of the tree and the screen x, y coordinates existing   at each branch.  The strip lists do not actually contain Display   Pointers, but pointers back into the parsed representations which has   the Display Pointer, x, y coordinates, and the structure level for   each of the branches.  The parsed representation is a linear list of   the branches encountered as the program walks through the node-branch   graph.  Given the hit at the lowest level one can determine all   branches passed through from the top node to the hit branch by an   upward search of the graph representation.   Every time a branch is deleted or a new branch is added, one needs to   modify the screen, modify the representations and the strip lists.   For refresh displays, the picture can be changed immediately and the   strip lists and representations modified at the time of an attention   call.  For a storage display, erasing and redrawing the picture on   each deletion can be slow, if many deletions are going on, and may be   unnecessary.   There are three approaches to performing these functions in storage   tube systems:      1) Erase the screen on each deletion and recompute the picture,         strip lists and graph representations on each deletion and         addition.      2) Keep a list of each Display Buffer change and perform erase if         necessary and redraw or make an addition when an attention call         is encountered.  This is a feasible approach because it is only         at this point that the screen and structural hit information         need to be up to date.Watson                                                         [Page 17]RFC 192          Some Factors which a Network Graphics      12 July 1971      3) The third is to allow control of screen changes and other         updating by special subroutine call.  The recommended approach         uses a combination of the above.  Adding information to the         screen should occur at the time of the new branch call.         Deletions and modifications of the representation and the strip         lists occur only at the time of an attention call.  Routines         should also be provided to give the programmer control over         this redraw mechanism.         Experience with the above mechanism has shown it to be quite         fast and not to noticeably degrade response time.  One minor         difficulty has been encountered when a horizontal or vertical         line of an object is on the borderline of a strip.  Sometimes         this results in a null hit being generated if the cursor is on         the wrong side of the borderline.  A check can be made for this         condition and audio feedback can be given to the user with the         bell in the terminal to indicate a correct or erroneous hit.INTERFACE TO THE TIMESHARING SYSTEM OF A REMOTE MINICOMPUTER DRIVENDISPLAY   Although the graphic system is locally controlled by a minicomputer,   the user does not have to worry about the mini.  Application programs   are written for the timesharing computer only.  The graphic system as   a whole behaves as a terminal of the timesharing computer.  This   feature is important because no matter how powerful the graphic   system is, it must be easy to program and use before useful   applications can be implemented.   Because no one wants to operate over a communication line, one needs   to compress the information sent to the remote system.  This is   accomplished by compiling a central node-branch structure in the   central computer and only sending minimal character strings to the   remote computer representing those subroutines calls that need to be   compiled into a Display Buffer in the remote computer for display   refresh.  In other words, a smaller remote version of the graphics   system resides in the remote minicomputer.  Simple schemes for   coordinating the Display Pointer in the remote and central machine   have to be devised.CONCLUSION   We feel that the above concepts are central to creating an   interactive graphics support system for use with a timesharing   system.  The key concepts are those associated with the node-branch   structure and the structured hit.  The topics of a picture editor,   data management system, and basic level support are also very   important, but beyond the scope of this lecture.Watson                                                         [Page 18]RFC 192          Some Factors which a Network Graphics      12 July 1971   Figures 1, 2. and 3, are available in both .PS and .PDF versions.          [This RFC was put into machine readable form for entry]          [into the online RFC archives by Lorrie Shiota, 10/01]Watson                                                         [Page 19]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -