EP0150296A2 - Electronic handwriting method and facilty - Google Patents

Electronic handwriting method and facilty Download PDF

Info

Publication number
EP0150296A2
EP0150296A2 EP84113861A EP84113861A EP0150296A2 EP 0150296 A2 EP0150296 A2 EP 0150296A2 EP 84113861 A EP84113861 A EP 84113861A EP 84113861 A EP84113861 A EP 84113861A EP 0150296 A2 EP0150296 A2 EP 0150296A2
Authority
EP
European Patent Office
Prior art keywords
erase
grid
points
point
stylus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
EP84113861A
Other languages
German (de)
French (fr)
Other versions
EP0150296B1 (en
EP0150296A3 (en
Inventor
Gregory Alan Flurry
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of EP0150296A2 publication Critical patent/EP0150296A2/en
Publication of EP0150296A3 publication Critical patent/EP0150296A3/en
Application granted granted Critical
Publication of EP0150296B1 publication Critical patent/EP0150296B1/en
Expired legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements

Definitions

  • the subject invention generally relates to the provision of handwritten communication in an electronic office environment by simulating a pen or pencil and paper, and more particularly to an improvement in such an electronic handwriting facility that gives the user the same correction capability as a pencil with an eraser.
  • handwritten notes e.g. memos, reminders, telephone messages, and the like
  • handwritten notes are common because of the relative speed and convenience of handwriting.
  • handwritten notes are still common.
  • many users of electronic office systems think nothing of writing a memo with pen or pencil and paper rather than using a text editor to write the same memo.
  • these handwritten notes must be handled differently than electronic documents thereby leading to inefficiencies.
  • An electronic handwriting facility has been developed that allows handwritten notes to be created and reviewed in an electronic environment and be considered as another type of electronic document.
  • handwritten notes can be handled, i.e. mailed, archived, etc., the same as other electronic documents, improving efficiency and productivity.
  • the handwriting facility requires a certain minimum office system work station to support it.
  • This work station is shown in Figure 1 and includes a central processing unit (CPU) 10 ⁇ with an appropriate operating system (OS) to support real-time response of the facility and a connection to the office system network, an all points addressable (APA) display 12 for displaying the arbitrary appearance of handwriting, and an "electronic tablet” 14 or digitizer.or similar device which translates movements of a sylus or pen 16 into a stream of positional information that the CPU 10 can intrepret.
  • CPU central processing unit
  • OS operating system
  • APA all points addressable
  • digitizer or digitizer.or similar device which translates movements of a sylus or pen 16 into a stream of positional information that the CPU 10 can intrepret.
  • the office system user will in general be familiar with text editors and could consider the handwriting facility (HF) to be a handwriting or graphics editor.
  • the HF can be invoked like a text editor; in other words, the user enters a command and selects a "document" to work on.
  • the document created by the HF can have one or more "pages".
  • One page documents might be used for short notes to others, telephone messages or the like, while a multi-page document might be used for a series of related notes, just like a paper notebook.
  • the user can move to different document pages or scroll through one page just the same as with a text document.
  • the OS is responsible for getting user commands and giving them to the HF.
  • the HF may be operated as one of several processes, each with its own “window" for user interaction on the display.
  • the HF window may use only part of the total display area, so the OS would pass control to the HF whenever the user's sytlus moves into the window, and the HF recognizes when the user's stylus moves out of the HF window and then relinquishes control to the OS -
  • the foregoing and other objects of the invention are accomplished by first setting the HF to erase mode and then identifying points from a point list to be erased. Real-time erasure is assured by using a "grid" over the write area to limit the number of points searched to a small percentage of the total.
  • the grid breaks the write area into a number of grid boxes, the number and size of which depend on processing requirements. Only the grid boxes touched by the erase cursor are searched for erasure. When a point is inside the erase cursor, it is deleted from the point list. This point list is updated after the erasure as is the visual display of the tablet.
  • An additional feature of the invention is that the user may select an erase stylus size to match the user needs. Selection of the stylus size is preferably accomplished from a menu display.
  • HF electronic handwriting facility
  • the HF is based on two assumptions: First, it is assumed that the electronic tablet can sample a user's hand movements fast enough and with enough resolution to provide points to the CPU 10 that can be connected with straight lines and result in an adequate representation of handwriting on paper, and second it is assumed that the CPU display controller is capable of drawing straight lines between two points fast enough and with enough resolution to result in an adequate representation of handwriting on the display 12. Both assumptions can be met by commercially available hardware.
  • the electronic tablet 14 periodically sends the CPU 10 the absolute location of the stylus 16 in relation to the tablet surface.
  • the CPU 10 maps each point to the display coordinate system and makes it available to the HF.
  • the HF moves a "cursor" on the display to the point so the user knows the relationship of the stylus 16 to the display 12 and to the electronic page on which he or she is writing. These may be different because of the use of a window system for multitasking, scrolling of the page, or both.
  • the HF maps the point to the page coordinate system for further use in the HF.
  • the handwriting facility stores the points from the tablet as well as displays them. Since the HF works on only one page at a time, a simple structure serves well.
  • the "point list" contains two fields, a point count and a sequential list of the points recorded for the page. Handwriting is really a collection of "strokes".
  • a stroke is the series of points from the first point where the stylus goes down to the first point where the stylus comes up. Since the user may move the stylus between strokes, e.g. between words, stroke starting points are identified in the point list. Since strokes may be of any style allowed, style information is also stored. For the start of a stroke and X and Y coordinates, the stroke start indication, and the stroke style are stored in the point list. For all points internal to the stroke, only the X and Y coordinates are necessary.
  • the HF must update the display to reflect the erasures and give feedback to the user, and modify the point list to match the modified display.
  • the point list can be so large that a linear search for the particular points that form the writing being erased could require more time than the maximum for real-time performance.
  • Real-time erasure can be assured under most circumstances by using a "grid" over the write area to limit the number of points searched to a small percentage of the total.
  • the grid breaks the write area into some number of "grid boxes" as illustrated in Figure 3.
  • the number and size of the grid boxes varies depending on processing requirements. For example, it might be necessary to require that the grid boxes be large enough so that the largest eraser can cover no more than some fixed number of grid boxes at one time, which might impose some upper limit on the number of points that must be examined for each erase action.
  • Each stroke in the point list passes through one or more grid boxes.
  • the grid box borders break each stroke into "segments".
  • each segment is totally contained in a grid box; the exception as illustrated by segment (60,61) occurs when a grid box contains the line between two points but neither of the points defines the line.
  • Each grid box may contain one or more segments from one or more strokes.
  • the H F maintains the segment information in a "grid table”. For each grid box, the grid table records the number of segments in the grid box and the starting and ending indices in the point list for each segment contained in that grid box.
  • a partial grid table for Figure 3 is shown below:
  • the HF puts each point in the point list and determines to which segment the point belongs and updates the grid table accordingly.
  • the erase cursor shows what writing is erased when the stylus is down. Only the segments and points in the grid boxes touched by the erase cursor need be searched for erasure.
  • a point is inside the erase cursor, it must be deleted from the point list.
  • By setting an "inactive" flag in each point it is not necessary to remove the point from the point list during the erase; it is only necessary to set the flag. Points with the inactive flag set are ignored during any subsequent erasing or drawing. It is possible to erase only the starting point of a stroke, leaving the rest intact. When this happens, the next point of the stroke becomes the start of the stroke; therefore, it is convenient to put the stroke start flag and style in each point of the point list, so the format of the points in the point list is as follows:
  • the erase icons as well as the stylus style icons must be displayed on initialize and redisplay.
  • the display of already existing handwriting must ignore any inactive points.
  • the HF must maintain the "current mode" and use it to decide whether to do writing or erasing when the user's stylus is in the write area.
  • Menu support must change the current mode according to the icon hit. If the current mode changes from erase to write, then any inactive points must be purged from the point list and the grid table updated to reduce processing requirements and storage requirements for further writing or erasing.
  • the menu support is as follows:
  • Write support involves putting a point in the point list and updating the grid table. Occassionally a line between two points will pass through one or more grid boxes not containing either of the two points defining that line. An erasure may require knowledge of these situations, so the HF finds these grid boxes and creates a segment in each such grid box to identify them as, for example, segment (60,61) in Figure 3.
  • the write support is as follows:
  • Erase support is very similar to write support. Instead of adding points to the point list and the grid table, however, it uses the grid table to determine the points (and/or lines) contained in the erase cursor that must be examined to determine how to modify the point list and display.
  • the HF can modify the point list and display in various ways to satisfy speed and appearance requirements.
  • a very simple and fast method of erasure simply detects points inside the erase cursor and inactivates them and erases from the display any lines which those points help form. This method works well assuming points are close together so that the appearance of the erased result is acceptable.
  • a more complicated method which results in a better appearance and handles situations where points are farther apart erases from the display only those parts of lines, and any points, inside the erase cursor.
  • the HF must not only inactivate points, but add. points to the point list to make the image defined by the list match the display.
  • no lines would be erased and no points inactivated.
  • line AB must be erased and lines XA and BY kept; points A and B must be added to the point list so that lines XA and BY are included in the image defined by the point list.
  • the erase support is as follows:
  • the erase cursor covers parts of two grid boxes.
  • the stroke formed by points 43, 49 is partially covered by the erase cursor, and so must be partially erased.
  • the segments generated for the stroke are shown in the figure.
  • the various segments in the grid boxes must first be made contiguous. Again, the results are shown in the figure. If the contiguous segment (45, 49) were processed, note that because point 44 is not included, the results of erasure would not be correct; therefore, the contiguous segment must be made "proper" before processing by adding point 44. There are similar conditions for the ending of a proper segment.
  • a segment is proper if it starts with a point that is the start of a stroke or is guaranteed to be outside of the erase area and stops with a point that is the end of a stroke or is guaranteed to be outside of the erase area. Processing of proper segments can be complete and correct.
  • the method for processing the extra segments placed at the end of the point list is as follows. This processing can be special cased because no extra segment ever contains more than two points (one vector). The following terminology is used:

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)
  • Position Input By Displaying (AREA)

Abstract

I@ An electronic handwriting facility comprises a central processing unit (10), an all points addressable display (12), and an electronic tablet (14) and stylus (16). The handwriting facility simulates writing with a pen or pencil and paper. An electronic document is generated by periodically sending to the central processing unit (10) the absolute location of the stylus (16) in relation to the tablet (14). Each point is mapped to the display coordinate system, and the points are stored in a point list. The handwriting facility is provided with a real-time rub-out erase feature wherein the handwriting facility is first set to the erase mode and then the points in the point list to be erased are identified. Real-time erasure is assured by using a grid overlaying the write area to limit the number of points searched to a small percentage of the total. The grid breaks the write area into a number of grid boxes. Only the grid boxes touched by the erase cursor are searched for erasure. When a point is inside the erase cursor, it is deleted from the point list. The user is provided with a menu from which to select an erase stylus size further adding to the flexibility of the erase feature.

Description

    Technical Field
  • The subject invention generally relates to the provision of handwritten communication in an electronic office environment by simulating a pen or pencil and paper, and more particularly to an improvement in such an electronic handwriting facility that gives the user the same correction capability as a pencil with an eraser.
  • Background
  • In non-electronic office environments, handwritten notes (e.g. memos, reminders, telephone messages, and the like) are common because of the relative speed and convenience of handwriting. Even in an electronic environment, handwritten notes are still common. In fact, many users of electronic office systems think nothing of writing a memo with pen or pencil and paper rather than using a text editor to write the same memo. Unfortunately, in an electronic environment, these handwritten notes must be handled differently than electronic documents thereby leading to inefficiencies. An electronic handwriting facility has been developed that allows handwritten notes to be created and reviewed in an electronic environment and be considered as another type of electronic document. Thus, handwritten notes can be handled, i.e. mailed, archived, etc., the same as other electronic documents, improving efficiency and productivity.
  • The handwriting facility requires a certain minimum office system work station to support it. This work station is shown in Figure 1 and includes a central processing unit (CPU) 10̸ with an appropriate operating system (OS) to support real-time response of the facility and a connection to the office system network, an all points addressable (APA) display 12 for displaying the arbitrary appearance of handwriting, and an "electronic tablet" 14 or digitizer.or similar device which translates movements of a sylus or pen 16 into a stream of positional information that the CPU 10 can intrepret.
  • The office system user will in general be familiar with text editors and could consider the handwriting facility (HF) to be a handwriting or graphics editor. To capitalize on this familiarity, the HF can be invoked like a text editor; in other words, the user enters a command and selects a "document" to work on. The document created by the HF can have one or more "pages". One page documents might be used for short notes to others, telephone messages or the like, while a multi-page document might be used for a series of related notes, just like a paper notebook. The user can move to different document pages or scroll through one page just the same as with a text document. The OS is responsible for getting user commands and giving them to the HF. In general, the HF may be operated as one of several processes, each with its own "window" for user interaction on the display. The HF window may use only part of the total display area, so the OS would pass control to the HF whenever the user's sytlus moves into the window, and the HF recognizes when the user's stylus moves out of the HF window and then relinquishes control to the OS-
  • When writing a note with pencil and paper, a user often wants to erase mistakes for a neater, more legible, or more understandable result. In the non-electronic office, an eraser on the end of the pencil facilitates the erasure. It is desirable to provide the HF with a similar capability.
  • It is known to provide interactive graphic displays with an erase feature, but real-time operation is generally limited to those systems having either a limited or low resolution display. The HF most advantageously uses a high resolution display, and there is therefore a need for real-time erasure of such a display.
  • Electronic erase functions are known in the prior art. For example, L. Kool in an article entitled "The Scribphone: a graphic telecommunication system" published in the Philips Telecommunication Review, Vol. 38, No. 1, January 1980, pages 7 to 10, states that the Scribphone system is provided with "wipe-out" facilities. J. L. Bordewijk in an article entitled "Teleboard, Scribphone and their Relation to 'Coded Text Transmission'" published in the Conference Proceedings of Electronic Text Communication held in Munich, Germany, June 12 to 15, 1978, mentions distant-erasing and distant- correction facilities of the Teleboard system. However, neither of these articles describes an erase facility capable of real-time erasure for a high resolution display.
  • Somewhat similar to the Scriphone and Teleboard systems is the remote chalkboard system which is the subject of U.S. Patent No. 4,317,956 to Torok et al. In this system, when information is being removed from the input surface, a graphical eraser appears at the remote screen at the site of the removed information. A different approach is taken by Sukonick et al in U.S. Patent No. 4,197,590. The system described in this patent is a computer graphics system as contrasted with a handwriting facility. Sukonick et al employ an XOR feature that allows a selective erase that restores lines crossing or concurrent with erased lines. This XOR feature also permits part of the drawing to be moved or "dragged" into place without erasing other parts of the drawing.
  • SUMMARY OF THE INVENTION
  • It is therefore an object of the present invention to provide the user of an electronic handwriting facility with the same correction capability as an eraser provides for hand writing with a pencil and paper.
  • It is another object of the invention to provide a real-time rub-out eraser for an electronic handwriting facility.
  • The foregoing and other objects of the invention are accomplished by first setting the HF to erase mode and then identifying points from a point list to be erased. Real-time erasure is assured by using a "grid" over the write area to limit the number of points searched to a small percentage of the total. The grid breaks the write area into a number of grid boxes, the number and size of which depend on processing requirements. Only the grid boxes touched by the erase cursor are searched for erasure. When a point is inside the erase cursor, it is deleted from the point list. This point list is updated after the erasure as is the visual display of the tablet. An additional feature of the invention is that the user may select an erase stylus size to match the user needs. Selection of the stylus size is preferably accomplished from a menu display.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The objects and other aspects and advantages of the invention will be better understood from the following detailed description of the invention with reference to the accompanying drawings, in which:
    • Figure 1 is a block diagram showing the basic hardware components of the handwriting facility;
    • Figure 2 is a diagram of the menu display showing the handwriting facility window and selection menus for both stylus style and eraser size;
    • Figure 3 is a fragmentary view of the digitizer tablet illustrating stroke segments within grid boxes;
    • Figure 4 is a diagram illustrating a line with an erase cursor over it;
    • Figure 5 is a diagram illustrating an erase cursor. covering parts of two grid boxes;
    • Figures 6a to 6f show several possible spatial relationships between the erase cursor and a vector of a segment; and
    • Figure 7 illustrates the process of making a point inactive and deleting it from the point list.
    DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION
  • The terms "real-time" and "rub-out" imply that the electronic handwriting facility (HF) eraser works just like the eraser on the end of a pencil; that is, the user "rubs" the area he or she wants to erase and the writing in that area disappears. A user may want to precisely erase a small area or erase a large area quickly. With a pencil, the eraser size is constant. In contrast, the electronic HF eraser size can be chosen to suit the user's current needs. To provide multiple eraser sizes, the HF menu shown in Figure 2 contains choices for the various sizes. A user can write by choosing one of the stylus styles, for example line width and/or color, in which case the HF presents a "write" cursor indicating the HF is in the "write mode". Similarly, a user can erase by choosing one of the eraser sizes, in which case the HF then presents an appropriately sized "erase" cursor.
  • More particularly, the HF is based on two assumptions: First, it is assumed that the electronic tablet can sample a user's hand movements fast enough and with enough resolution to provide points to the CPU 10 that can be connected with straight lines and result in an adequate representation of handwriting on paper, and second it is assumed that the CPU display controller is capable of drawing straight lines between two points fast enough and with enough resolution to result in an adequate representation of handwriting on the display 12. Both assumptions can be met by commercially available hardware. The electronic tablet 14 periodically sends the CPU 10 the absolute location of the stylus 16 in relation to the tablet surface. The CPU 10 maps each point to the display coordinate system and makes it available to the HF. The HF moves a "cursor" on the display to the point so the user knows the relationship of the stylus 16 to the display 12 and to the electronic page on which he or she is writing. These may be different because of the use of a window system for multitasking, scrolling of the page, or both. The HF maps the point to the page coordinate system for further use in the HF.
  • When the user writes, the handwriting facility stores the points from the tablet as well as displays them. Since the HF works on only one page at a time, a simple structure serves well. The "point list" contains two fields, a point count and a sequential list of the points recorded for the page. Handwriting is really a collection of "strokes". A stroke is the series of points from the first point where the stylus goes down to the first point where the stylus comes up. Since the user may move the stylus between strokes, e.g. between words, stroke starting points are identified in the point list. Since strokes may be of any style allowed, style information is also stored. For the start of a stroke and X and Y coordinates, the stroke start indication, and the stroke style are stored in the point list. For all points internal to the stroke, only the X and Y coordinates are necessary.
  • To erase the written information, two actions must occur. The HF must update the display to reflect the erasures and give feedback to the user, and modify the point list to match the modified display. In general, the point list can be so large that a linear search for the particular points that form the writing being erased could require more time than the maximum for real-time performance. Real-time erasure can be assured under most circumstances by using a "grid" over the write area to limit the number of points searched to a small percentage of the total. The grid breaks the write area into some number of "grid boxes" as illustrated in Figure 3. The number and size of the grid boxes varies depending on processing requirements. For example, it might be necessary to require that the grid boxes be large enough so that the largest eraser can cover no more than some fixed number of grid boxes at one time, which might impose some upper limit on the number of points that must be examined for each erase action.
  • Each stroke in the point list passes through one or more grid boxes. The grid box borders break each stroke into "segments". Generally, each segment is totally contained in a grid box; the exception as illustrated by segment (60,61) occurs when a grid box contains the line between two points but neither of the points defines the line. Each grid box may contain one or more segments from one or more strokes. The HF maintains the segment information in a "grid table". For each grid box, the grid table records the number of segments in the grid box and the starting and ending indices in the point list for each segment contained in that grid box. A partial grid table for Figure 3 is shown below:
    Figure imgb0001
  • As the user writes, the HF puts each point in the point list and determines to which segment the point belongs and updates the grid table accordingly. When the user starts an erase operation, the erase cursor shows what writing is erased when the stylus is down. Only the segments and points in the grid boxes touched by the erase cursor need be searched for erasure. When a point is inside the erase cursor, it must be deleted from the point list. By setting an "inactive" flag in each point, it is not necessary to remove the point from the point list during the erase; it is only necessary to set the flag. Points with the inactive flag set are ignored during any subsequent erasing or drawing. It is possible to erase only the starting point of a stroke, leaving the rest intact. When this happens, the next point of the stroke becomes the start of the stroke; therefore, it is convenient to put the stroke start flag and style in each point of the point list, so the format of the points in the point list is as follows:
    Figure imgb0002
  • In the description which follows, high level programs for the operating system interface, menu support, write support, and erase support are presented. These high level programs are written following a procedure similar to what is known as Program Design Language (PDL). For a detailed description of that procedure, see Van Leer, "Top Down . Development Using a Program Design Language (PDL)", IBM Systems Journal, vol. 15, no. 2, pp. 155 to 170 (1976). The handwriting facility interface to the operating system is as follows:
    Figure imgb0003
    Figure imgb0004
  • The erase icons as well as the stylus style icons must be displayed on initialize and redisplay. The display of already existing handwriting must ignore any inactive points. For the stylus command, the HF must maintain the "current mode" and use it to decide whether to do writing or erasing when the user's stylus is in the write area.
  • Menu support must change the current mode according to the icon hit. If the current mode changes from erase to write, then any inactive points must be purged from the point list and the grid table updated to reduce processing requirements and storage requirements for further writing or erasing. The menu support is as follows:
    Figure imgb0005
    Figure imgb0006
  • Write support involves putting a point in the point list and updating the grid table. Occassionally a line between two points will pass through one or more grid boxes not containing either of the two points defining that line. An erasure may require knowledge of these situations, so the HF finds these grid boxes and creates a segment in each such grid box to identify them as, for example, segment (60,61) in Figure 3. The write support is as follows:
    Figure imgb0007
    Figure imgb0008
  • Erase support is very similar to write support. Instead of adding points to the point list and the grid table, however, it uses the grid table to determine the points (and/or lines) contained in the erase cursor that must be examined to determine how to modify the point list and display. During the examination of the erasure candidates, the HF can modify the point list and display in various ways to satisfy speed and appearance requirements. A very simple and fast method of erasure simply detects points inside the erase cursor and inactivates them and erases from the display any lines which those points help form. This method works well assuming points are close together so that the appearance of the erased result is acceptable. A more complicated method which results in a better appearance and handles situations where points are farther apart erases from the display only those parts of lines, and any points, inside the erase cursor. For this method, the HF must not only inactivate points, but add. points to the point list to make the image defined by the list match the display. In Figure 4, using the first method, no lines would be erased and no points inactivated. Using the second method, line AB must be erased and lines XA and BY kept; points A and B must be added to the point list so that lines XA and BY are included in the image defined by the point list. The erase support is as follows:
    Figure imgb0009
    Figure imgb0010
  • Implementation of a more sophisticated algorithm for real-time rub-out erase that ensures "what you see is what you get" requires some additional terminology and additional processing. In Figure 5, the erase cursor covers parts of two grid boxes. The stroke formed by points 43, 49 is partially covered by the erase cursor, and so must be partially erased. The segments generated for the stroke are shown in the figure. To ensure proper processing of the segments of the stroke, the various segments in the grid boxes must first be made contiguous. Again, the results are shown in the figure. If the contiguous segment (45, 49) were processed, note that because point 44 is not included, the results of erasure would not be correct; therefore, the contiguous segment must be made "proper" before processing by adding point 44. There are similar conditions for the ending of a proper segment. Generally, a segment is proper if it starts with a point that is the start of a stroke or is guaranteed to be outside of the erase area and stops with a point that is the end of a stroke or is guaranteed to be outside of the erase area. Processing of proper segments can be complete and correct.
  • Once the proper segments for a particular erase cursor location are found, several possible cases arise for the spatial relationship between the erase cursor and each vector in the segment as illustrated in Figures 6a to 6f. In some cases, it is required that segments be added to the point list as exemplified by Figure 6f. These "extra segments" are added to the end of the point list and processed separately.
  • In order to speed up the processing of each erase cursor position, one may recognize that in many cases, the erase cursor will not move enough to cover a different set of grid boxes. If this is true, then the proper segment list for the current erase cursor position is the same as that for the previous erase cursor position, and no recalculation of the contiguous segments and then proper segments is required.
  • Given the foregoing, the enhanced erase support is as follows:
    Figure imgb0011
    Figure imgb0012
  • As may be seen in Figure 7, when processing the vector 1-2 of the segment (1, 3), point 2 is made inactive and essentially deleted from the point list. To take advantage of this deletion and to prevent the vector 1-A from being added to the extra segment list, the point A is substituted for point 2. This creates a problem when vector 2-3 is processed. To avoid this problem, point 2 is saved for processing with vector 2-3 and the flag SAVED is set. Before the vector 2-3 is processed, SAVED must be checked to ensure that the correct point (2 in this case instead of A) is processed. A similar problem arises from case illustrated in Figure 6e. When the second of the two points is made inactive, the flag SET2IN is set to note the situation.
  • The method for processing the extra segments placed at the end of the point list is as follows. This processing can be special cased because no extra segment ever contains more than two points (one vector). The following terminology is used:
    Figure imgb0013
  • For a proper segment, the processing is as follows. The following terminology is used:
    Figure imgb0014
    Figure imgb0015
  • The following method must be used to process each . individual vector. The terminology used is as follows (refer to Figures 6a to 6f):
    • * 1 - the first point of the vector in process
    • * 2 - the second point of the vector in process
    • * A - the first intersection of the erase cursor with the line corresponding to the vector
    • * B - the second intersection of the erase cursor with the line corresponding to the vector
    • * SOS - start of stroke
  • The details of vector processing are as follows:
    Figure imgb0016
    Figure imgb0017
  • When the user leaves the erase mode, the extra segments at the end of the point list are processed to include them in the grid table. The method for doing this is so similar for the initial entry of points that it is not repeated.
  • From the foregoing description of the invention, it will be appreciated that the inclusion of a real-time erase capability in the electronic handwriting facility makes the facility more flexible and more usable. The use of an overlying grid allows erasure to take place in real time and supports many methods of erasure.

Claims (8)

1. Electronic handwriting method using a central processor unit, an all points addressable display, and an electronic tablet and stylus, said handwriting method simulating writing with a pen or pencil and paper and generating an electronic document by periodically sending the central processing unit the absolute location of the stylus in relation to the tablet, mapping each location point to the display coordinate system, and storing the points in a point list, the improvement comprising a real-time rub-out erase technique for the handwriting method comprising the steps of
establishing a grid over the write area on the table to delineate the write area into a plurality of grid boxes,
storing in a grid table the starting and ending points of line segments within each of said grid boxes, said grid table being updated whenever a point is added to said point list,
setting the system to erase mode and displaying an erase cursor on said display showing the relative location of said stylus to the electronic tablet,
searching only the segments and points in the grid boxes touched by the erase cursor during erasure,
updating said point list and said grid table after erasure, and
updating said display to provide a real-time display of the erasure.
2. A method as recited in claim 1 further comprising the step of selecting the size of the erase cursor.
3. A method as recited in claim 2 wherein the step of selecting the erase cursor size comprises the steps of
displaying a menu of erase stylus size icons on said display, and
detecting the touching of an erase stylus size icon by the erase cursor.
4. A method as recited in claim 1 wherein the step updating said point list comprises deleting any point in the display within the erase cursor.
5. A method as recited in claim 4 wherein the step of deleting is performed by setting in inactive flag in the point list.
6. A method as recited in claim 4 wherein, when only a portion of a line segment is within said erase cursor, the step of updating said point list further includes the step of adding to the point list points on the line segment at the intersection with the erase cursor.
7. A method as recited in claim 4 further comprising the step of selecting the size of the erase stylus and wherein the step of displaying an erase cursor produces a cursor display having a size corresponding to the selected erase stylus size.
8. An electronic handwriting facility comprising a central processor unit, an all points addressable display, and an electronic table and stylus, said handwriting facility being arranged to simulate writing with a pen or pencil and paper and to generate an electronic document by periodically sending to the central processing unit the absolute location of the stylus in relation to the tablet, mapping each location point to the display coordinate system, and storing the pints in a point list, the improvement comprising a real-time rub-out erase feature for the handwriting facility comprising means for
establishing a grid over the write area on the tablet to delineate the write area into a plurality of grid boxes,
means for storing in a grid table the starting and ending points of line segments within each of said grid boxes, said grid table being updated whenever a point is added to said point list,
means for setting the system to erase mode and displaying an erase cursor on said display showing the relative location of said stylus to the electronic tablet,
means for searching only the segments and points in the grid boxes touched by the erase cursor during erasure,
means for updating said point list and said grid table after erasure, and
means for updating said display to provide a real-time display of the erasure.
EP84113861A 1983-12-16 1984-11-16 Electronic handwriting method and facilty Expired EP0150296B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/562,389 US4633436A (en) 1983-12-16 1983-12-16 Real-time rub-out erase for an electronic handwriting facility
US562389 1983-12-16

Publications (3)

Publication Number Publication Date
EP0150296A2 true EP0150296A2 (en) 1985-08-07
EP0150296A3 EP0150296A3 (en) 1985-08-28
EP0150296B1 EP0150296B1 (en) 1987-08-12

Family

ID=24246096

Family Applications (1)

Application Number Title Priority Date Filing Date
EP84113861A Expired EP0150296B1 (en) 1983-12-16 1984-11-16 Electronic handwriting method and facilty

Country Status (4)

Country Link
US (1) US4633436A (en)
EP (1) EP0150296B1 (en)
JP (1) JPS60129829A (en)
DE (1) DE3465387D1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0266508A2 (en) * 1986-11-03 1988-05-11 International Business Machines Corporation Fast correlation of markers with graphic entities
EP0536579A2 (en) * 1991-10-10 1993-04-14 International Business Machines Corporation An apparatus and method for reducing system overhead while inking strokes in a finger- or stylus-based input device of a data processing system

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6039170U (en) * 1983-08-24 1985-03-18 シャープ株式会社 electronic memo device
FR2566945B1 (en) * 1984-06-28 1987-04-24 Schwartz Didier EDUCATIONAL TOY TO STIMULATE WRITING AND GRAPHICS BY OBTAINING AN IMMEDIATE SOUND AND VISUAL RESULT DURING A TRACE ON FREE PAPER
US4827404A (en) * 1986-04-14 1989-05-02 Schlumberger Technology Corporation Method and system for computer programming
US4914568A (en) * 1986-10-24 1990-04-03 National Instruments, Inc. Graphical system for modelling a process and associated method
JPH0814822B2 (en) * 1986-04-30 1996-02-14 カシオ計算機株式会社 Command input device
US5161213A (en) * 1988-05-27 1992-11-03 Wang Laboratories, Inc. Method for black and white image reduction based upon averaging black/white pixel counts of neighboring blocks
AU624838B2 (en) * 1988-05-27 1992-06-25 Global 360, Inc. Document annotation and manipulation in a data processing system
WO1989011696A1 (en) * 1988-05-27 1989-11-30 Wang Laboratories, Inc. Apparatus for manipulating documents in a data processing system
AU624837B2 (en) * 1988-05-27 1992-06-25 Global 360, Inc. Document folder icon for display in a data processing system
US5060135A (en) * 1988-09-16 1991-10-22 Wang Laboratories, Inc. Apparatus for manipulating documents in a data processing system utilizing reduced images of sheets of information which are movable
US5355447A (en) * 1988-05-27 1994-10-11 Wang Laboratories, Inc. Method for color image reduction based upon determination of color components of pixels in neighboring blocks
WO1989011695A1 (en) * 1988-05-27 1989-11-30 Wang Laboratories, Inc. Document manipulation in a data processing system
US5231578A (en) * 1988-11-01 1993-07-27 Wang Laboratories, Inc. Apparatus for document annotation and manipulation using images from a window source
WO1990005333A1 (en) * 1988-11-01 1990-05-17 Wang Laboratories, Inc. Electronic document display with annotation routines and multiple windows
WO1990015380A1 (en) * 1989-06-02 1990-12-13 Wang Laboratories, Inc. Apparatus for document annotation and manipulation using images from a window source
AU622823B2 (en) * 1989-08-25 1992-04-16 Sony Corporation Portable graphic computer apparatus
US6225983B1 (en) * 1990-10-11 2001-05-01 Fuji Xerox Co., Ltd Operation key registration system for a coordinate input device
FR2676568B1 (en) * 1991-05-17 1997-04-18 Aviau De Piolant Jean Louis D GRAPHIC DRAWING SYSTEM.
US5325110A (en) * 1991-12-30 1994-06-28 Xerox Corporation Multi-control point tool for computer drawing programs
WO1993015918A1 (en) * 1992-02-07 1993-08-19 Mattel, Inc. Thermographic drawing device
US5404439A (en) * 1992-04-15 1995-04-04 Xerox Corporation Time-space object containment for graphical user interface
EP0566293B1 (en) * 1992-04-15 2003-07-16 Xerox Corporation Graphical drawing and editing systems and methods therefor
US5583542A (en) * 1992-05-26 1996-12-10 Apple Computer, Incorporated Method for deleting objects on a computer display
US5523775A (en) * 1992-05-26 1996-06-04 Apple Computer, Inc. Method for selecting objects on a computer display
US5619253A (en) * 1993-06-25 1997-04-08 Miranda, Jr.; Henry A. Video display of indicia
US5737740A (en) * 1994-06-27 1998-04-07 Numonics Apparatus and method for processing electronic documents
US5570113A (en) * 1994-06-29 1996-10-29 International Business Machines Corporation Computer based pen system and method for automatically cancelling unwanted gestures and preventing anomalous signals as inputs to such system
US5730602A (en) * 1995-04-28 1998-03-24 Penmanship, Inc. Computerized method and apparatus for teaching handwriting
JPH08335134A (en) * 1995-06-07 1996-12-17 Canon Inc Information processor
US5838819A (en) * 1995-11-14 1998-11-17 Lucent Technologies Inc. System and method for processing and managing electronic copies of handwritten notes
US6730862B1 (en) 1995-12-27 2004-05-04 Lsi Logic Corporation Erase feature in pen-based computing
US5956409A (en) * 1996-04-29 1999-09-21 Quintet, Inc. Secure application of seals
US5790114A (en) * 1996-10-04 1998-08-04 Microtouch Systems, Inc. Electronic whiteboard with multi-functional user interface
US6215901B1 (en) * 1997-03-07 2001-04-10 Mark H. Schwartz Pen based computer handwriting instruction
US6232962B1 (en) 1998-05-14 2001-05-15 Virtual Ink Corporation Detector assembly for use in a transcription system
US6124847A (en) * 1998-05-14 2000-09-26 Virtual Ink, Corp. Collapsible detector assembly
US6111565A (en) * 1998-05-14 2000-08-29 Virtual Ink Corp. Stylus for use with transcription system
US6100877A (en) * 1998-05-14 2000-08-08 Virtual Ink, Corp. Method for calibrating a transcription system
US6147681A (en) * 1998-05-14 2000-11-14 Virtual Ink, Corp. Detector for use in a transcription system
US6211863B1 (en) 1998-05-14 2001-04-03 Virtual Ink. Corp. Method and software for enabling use of transcription system as a mouse
US6177927B1 (en) 1998-05-14 2001-01-23 Virtual Ink Corp. Transcription system kit
US6191778B1 (en) 1998-05-14 2001-02-20 Virtual Ink Corp. Transcription system kit for forming composite images
US6496206B1 (en) 1998-06-29 2002-12-17 Scansoft, Inc. Displaying thumbnail images of document pages in an electronic folder
US6396481B1 (en) * 1999-04-19 2002-05-28 Ecrio Inc. Apparatus and method for portable handwriting capture
US20020054026A1 (en) * 2000-04-17 2002-05-09 Bradley Stevenson Synchronized transmission of recorded writing data with audio
WO2001086612A1 (en) * 2000-05-12 2001-11-15 Jrl Enterprises, Inc. An interactive, computer-aided handwriting method and apparatus with enhanced digitization tablet
US6485306B1 (en) * 2001-07-10 2002-11-26 Aiptek International Inc. Locus-recordable portable handwriting device
US7002558B2 (en) * 2000-12-21 2006-02-21 Microsoft Corporation Mode hinting and switching
EP1950305A1 (en) 2001-05-09 2008-07-30 Monsanto Technology, LLC Tyr a genes and uses thereof
US7602379B2 (en) * 2001-06-19 2009-10-13 Hewlett-Packard Development Company, L.P. Digital annotator
US20020197589A1 (en) * 2001-06-26 2002-12-26 Leapfrog Enterprises, Inc. Interactive educational apparatus with number array
US7126590B2 (en) * 2001-10-04 2006-10-24 Intel Corporation Using RF identification tags in writing instruments as a means for line style differentiation
US6755656B2 (en) * 2001-10-04 2004-06-29 Intel Corporation Method and apparatus for adaptive handwriting teaching system
US7116316B2 (en) * 2002-03-07 2006-10-03 Intel Corporation Audible and visual effects as a result of adaptive tablet scanning
EP2294915A3 (en) 2002-03-21 2011-04-13 Monsanto Technology LLC Nucleic acid constructs and methods for producing altered seed oil compositions
US7566813B2 (en) 2002-03-21 2009-07-28 Monsanto Technology, L.L.C. Nucleic acid constructs and methods for producing altered seed oil compositions
US20040121298A1 (en) * 2002-11-06 2004-06-24 Ctb/Mcgraw-Hill System and method of capturing and processing hand-written responses in the administration of assessments
US20040091847A1 (en) * 2002-11-06 2004-05-13 Ctb/Mcgraw-Hill Paper-based adaptive testing
US7689927B2 (en) * 2002-11-15 2010-03-30 Microsoft Corporation Viewable document section
WO2005031594A1 (en) * 2003-08-21 2005-04-07 Microsoft Corporation Ink collection and rendering
US7262785B2 (en) * 2003-08-21 2007-08-28 Microsoft Corporation Ink editing architecture
US7249950B2 (en) 2003-10-10 2007-07-31 Leapfrog Enterprises, Inc. Display apparatus for teaching writing
US7427984B2 (en) * 2003-10-26 2008-09-23 Microsoft Corporation Point erasing
US7807874B2 (en) 2003-12-10 2010-10-05 Monsanto Technology Llc Stress tolerant plants and methods thereof
US7799273B2 (en) 2004-05-06 2010-09-21 Smp Logic Systems Llc Manufacturing execution system for validation, quality and risk assessment and monitoring of pharmaceutical manufacturing processes
US20060212430A1 (en) * 2005-03-18 2006-09-21 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Outputting a saved hand-formed expression
US8749480B2 (en) 2005-03-18 2014-06-10 The Invention Science Fund I, Llc Article having a writing portion and preformed identifiers
US7486282B2 (en) * 2006-01-27 2009-02-03 Microsoft Corporation Size variant pressure eraser
CA2645148C (en) 2006-03-10 2018-05-22 Monsanto Technology Llc Soybean seed and oil compositions and methods of making same
US7652662B2 (en) * 2006-04-26 2010-01-26 Mediatek Inc. Portable electronic device and a method of controlling the same
JP4125762B2 (en) * 2006-07-06 2008-07-30 株式会社スクウェア・エニックス Online video game control server
KR101420419B1 (en) * 2007-04-20 2014-07-30 엘지전자 주식회사 Electronic Device And Method Of Editing Data Using the Same And Mobile Communication Terminal
US20090144667A1 (en) * 2007-11-30 2009-06-04 Nokia Corporation Apparatus, method, computer program and user interface for enabling user input
UY32866A (en) 2009-08-27 2011-03-31 Pastoral Greenhouse Gas Res Ltd COMPLETE GENOMIC SEQUENCE OF METHANOBREVIBACTER RUMINANTIUM METHANOGEN
JP5668365B2 (en) * 2009-11-20 2015-02-12 株式会社リコー Drawing processing system, server device, user terminal, drawing processing method, program, and recording medium
JP5482225B2 (en) * 2010-01-25 2014-05-07 セイコーエプソン株式会社 Electronics
US20110291964A1 (en) 2010-06-01 2011-12-01 Kno, Inc. Apparatus and Method for Gesture Control of a Dual Panel Electronic Device
US20110307840A1 (en) * 2010-06-10 2011-12-15 Microsoft Corporation Erase, circle, prioritize and application tray gestures
US8363024B2 (en) * 2010-08-18 2013-01-29 Winmate Communication Inc. Handwriting board with liquid crystal display for displaying handwritten content on a projector
CN102411443B (en) * 2010-09-21 2015-11-25 深圳Tcl新技术有限公司 Televisor hand-written input system and hand-written inputting method thereof
KR101820410B1 (en) * 2011-05-16 2018-03-02 삼성전자주식회사 Apparatus and method for supporting eraser function of digitizer pen in digitizer system
KR20140111497A (en) * 2013-03-11 2014-09-19 삼성전자주식회사 Method for deleting item on touch screen, machine-readable storage medium and portable terminal
CN111399674A (en) * 2020-03-31 2020-07-10 京东方科技集团股份有限公司 Electronic device and electronic system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4317956A (en) * 1980-11-10 1982-03-02 Bell Telephone Laboratories, Incorporated Remote chalkboard automatic cursor

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1529608A (en) * 1966-12-22 1968-06-21 Electronique & Radio Ind Improvements to electronic systems for displaying plots on line-by-line scanning indicators
US4112415A (en) * 1975-11-28 1978-09-05 Hilbrink Johan O System for optically entering, displaying and decoding handwritten symbols
US4197590A (en) * 1976-01-19 1980-04-08 Nugraphics, Inc. Method for dynamically viewing image elements stored in a random access memory array

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4317956A (en) * 1980-11-10 1982-03-02 Bell Telephone Laboratories, Incorporated Remote chalkboard automatic cursor

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
COMPUTER GRAPHICS 80, August 1980, pages 205-214, Fareham, Hants, GB; B. LORIG et al.: "Teleboard system" *
ELECTRONICS INTERNATIONAL, vol. 56, no. 2, January 1983, pages 95,105, New York, US; "Flexible capacitive-tablet system lets user generate graphics by hand, in two colors" *
PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON NEW SYSTEMS AND SERVICES IN TELECOMMUNICATIONS, 24th-26th November 1980, pages 281-288, North-Holland Publishing Company, Liege, BE; J.C. RAHUEL et al.: "Téléécriture et audiographie" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0266508A2 (en) * 1986-11-03 1988-05-11 International Business Machines Corporation Fast correlation of markers with graphic entities
EP0266508A3 (en) * 1986-11-03 1990-12-19 International Business Machines Corporation Fast correlation of markers with graphic entities
EP0536579A2 (en) * 1991-10-10 1993-04-14 International Business Machines Corporation An apparatus and method for reducing system overhead while inking strokes in a finger- or stylus-based input device of a data processing system
EP0536579A3 (en) * 1991-10-10 1993-07-07 International Business Machines Corporation An apparatus and method for reducing system overhead while inking strokes in a finger- or stylus-based input device of a data processing system

Also Published As

Publication number Publication date
JPH029385B2 (en) 1990-03-01
EP0150296B1 (en) 1987-08-12
JPS60129829A (en) 1985-07-11
DE3465387D1 (en) 1987-09-17
US4633436A (en) 1986-12-30
EP0150296A3 (en) 1985-08-28

Similar Documents

Publication Publication Date Title
EP0150296B1 (en) Electronic handwriting method and facilty
EP0649107B1 (en) Method and system for creating computationally-significant associations among uninterpreted data in graphically-based computing systems
EP0374241B1 (en) Document annotation and manipulation in a data processing system
US5559942A (en) Method and apparatus for providing a note for an application program
US5867150A (en) Graphic indexing system
EP0394379B1 (en) Document folder icon for display in a data processing system
US5572651A (en) Table-based user interface for retrieving and manipulating indices between data structures
US6167439A (en) Data retrieval, manipulation and transmission with facsimile images
EP0597379B1 (en) Pen input processing apparatus
US5577188A (en) Method to provide for virtual screen overlay
US20110246875A1 (en) Digital whiteboard implementation
US20050088418A1 (en) Pen-based computer interface system
US20070038955A1 (en) Pen-based computer system having first and second windows together with second window locator within first window
EP1351123A2 (en) Method for gestural interpretation
US20160062634A1 (en) Electronic device and method for processing handwriting
WO2004031933A1 (en) Method of combining data entry of handwritten symbols with displayed character data
CN104461338A (en) Portable electronic device and method for controlling same
KR20040043454A (en) Pen input method and apparatus in pen computing system
JP3388451B2 (en) Handwriting input device
JPH09258950A (en) Scroll synchronization system and recording medium
WO1990005333A1 (en) Electronic document display with annotation routines and multiple windows
JPS62239396A (en) Icon display control system
JPH02109124A (en) Display method for relationship between hyper-texts
JPH0756797A (en) Pen input information processor
JPH1049289A (en) Character data processor

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

17P Request for examination filed

Effective date: 19841214

AK Designated contracting states

Designated state(s): DE FR GB

AK Designated contracting states

Designated state(s): DE FR GB

17Q First examination report despatched

Effective date: 19870122

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

REF Corresponds to:

Ref document number: 3465387

Country of ref document: DE

Date of ref document: 19870917

ET Fr: translation filed
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 19941013

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 19941103

Year of fee payment: 11

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 19941201

Year of fee payment: 11

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Effective date: 19951116

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 19951116

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Effective date: 19960731

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Effective date: 19960801

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST