US 3721810 A
An electronic display system for producing a visual line image as a sequence of elliptical curve sections displayed under the control of efficiently generated orthogonal time varying signals. The orthogonal signals are generated as combinations of preferably quarter cycle sine and cosine function electrical signals specified by a minimum of easily calculated parameters which become control inputs to a signal generator. Digital control circuitry governs overall display operation. Means are provided to compensate for variations in the display intensity produced by variations in cathode-ray-tube writing speed.
Claims available in
Description (OCR text may contain errors)
United States Patent 1191 Villalobos et al.
 DISPLAY SYSTEM UTILIZING ONE OR MORE CONIC SECTIONS Inventors: Luis F. Villalobos, Brookline; Allen A. Harano, Watertown; Richard H. Breinlinger, Concord, all of Mass.
Conographic bridge, Mass.
Filed: Jan. 13, 1971 Appl. No.: 106,108
 Assignee: Corporation, Cam- [451March 20, 1973 Primary ExaminerJoseph F. Ruggiero Attorney-Weingarten, Maxham & Schurgin [57 ABSTRACT An electronic display system for producing a visual line image as a sequence of elliptical curve sections displayed under the control of efficiently generated orthogonal time varying signals. The orthogonal signals are generated as combinations of preferably quarter cycle sine and cosine function electrical 26, 27 signals specified by a minimum of easily calculated parameters which become control inputs to a signal  References C'ted generator. Digital control circuitry governs overall dis- UNITED STATES PATENTS play operation. Means are prov ded to compensate for variations in the display intensity produced by varia 3,488,483 1/1970 Freedman ..340/324 A X tions in cathode-ray-tube Writing Speed. 3,205,349 9/1965 Bryan et al. 3,283,3 l7 11/1966 Courter ..340/324 A 24 Claims, 6 Drawing Figures 72 70 X1 1 AX 4O CURVE X m DATA MULTI PLY GENERATOR 34 36L 52 44 76 SCFG A38 VELOCITY COMPENSATOR 90 "131 A DATA DATA DIGITAL 42 64 94 SOURCE COMPUTER CONTROL MULTIPLY IN UNIT Z W) 4 54 MULTlPLY BY 56; 62 46 66 X o AX 96\ 82 Y A |-|DAC DIGITIZER Y m 68 PHASE DETECTION I CIRCUIT gm H l MARK M 82 INHIBIT I DISPLAY SHEET 3 OF 3 PATENTEUHARZOIHYB 4/ u 31 Ex W mm A N T\\ CV X @NL Pl I l I l I '1 4 l l I I l l l I I l l l l I I l I I I i I I I I I I l I I I l I I l I I I I l l moExoEnz M505 mm: on; k N2 @24 M53 mozzxomna, M505 ALLEN A. HARANO RICHARD H. BREINLINGER mmwww DISPLAY SYSTEM UTILIZING A SEQUENCE OF ELLIPTICAL CURVE SECTIONS FIELD OF THE INVENTION This invention relates to display systems and more particularly to a computer controlled system for the display of graphic, alpha-numeric, symbolic and other data utilizing a sequence of elliptical curve sections.
BACKGROUND OF THE INVENTION Modern information systems greatly simplify the task of dealing with vast amounts of data. One tool of these information systems is the computer controlled display system where data representing graphic information (including curves and figures) and alpha-numeric characters and symbols can be visually presented for example on a cathode-ray-tube or electro-mechanical plotter.
The computer controlled display system functions to produce a generally continuous image. The display image can include for example alpha-numeric data for conveying work information, pictorial or diagrammatic representation of design and engineering data inputs, or graphical representations of data inputs. Once the images are on the display surface, it is important that the display system user be able to manipulate, e.g., move, rotate, scale, expand, etc., the figures originally created to provide quickly available comparisons.
The actual images displayed will result from data entered by the user from a variety of sources including digitizers, keyboards, and various controls. The input data may or may not be further processed by a computer to produce a given result which is to be displayed. From the actual information to be displayed, a display generator must operate so as to create a curve which conforms to the information for display, be it an alphanumeric character or a graphical or pictorial image. The characteristics of the display generator determine how accurate, flexible, and efficient display images can be generated and later manipulated.
According to one known means for graphically displaying information, a curve or other figure to be displayed is formed from data by a series of closely spaced points or short line segments which are of a size and spacing to present to a viewer an effectively continuous representation of a curve or figure. Such a system is shown, for example, in U.S. Pat. No. 3,205,344. A major disadvantage of such systems is that a large number of point or line elements must be employed to accurately represent the data, and a correspondingly large amount of computer storage and display time must be used to generate all necessary elements. Display manipulation is likewise difficult and time consuming. Where display data must be conveyed over a telephone line or communication channel of limited capacity, as is common with most display systems operating on a time shared basis, the resulting process of curve display is rather slow.
A more recent type of display system employs curve segments which are selectively combined to display a curve which approximately fits the original data within a prescribed tolerance. In general, a sequence of sections of a specific kind of electrically realizable curve, such as an exponential or conic section, is generated with each section approximating a portion of the original data. Systems of this latter type are shown, for
example, in U.S. Pats. Nos. 3,205,349 and 3,449,721. While systems employing curve segments offer some improvement over point to point or broken line display systems, they still require large amounts of computer time for calculating the parameters that specify each curve section and large capacity memory banks to store original curve data for subsequent manipulations. With systems as shown in U.S. Pat. No. 3,409,721, manipulations, such as rotation, require that a different curve be fitted to manipulated points and consequently a time consuming recalculation from original data. Some curves are difficult or impossible to draw with either system.
Prior art systems for displaying alpha-numeric data and specialized characters such as transistor symbols include dot matrices, light or electron beam masks and selected line and curve strokes. Dot matrices, exemplified by U.S. Pat. No. 3,255,443, operate to illuminate specified dots which in combination approximate, usually not very closely, certain characters and symbols. Masks provide only a limited repertory of characters and symbols and to display other characters and symbols requires physical replacement of the mask. Characters and symbols formed from selected line or curve strokes, such as described in U.S. Pats Nos. 3,394,367; 3,335,416; and 3,283,317, fail to provide sufficient flexibility in adapting to the many different characters or symbols needed in a modern display or to different styles of individual characters. Furthermore, slight position alterations for characters, as in subscripts and superscripts, have been awkward or impossible due to inflexibility of placement of individual strokes, masks or dot patterns.
SUMMARY OF THE INVENTION In accordance with the present invention, a display system is provided in which a plurality of elliptic sections are employed with each section specified by a minimum of easily calculated parameters and selectively combined to cause accurate display representations of graphic or alpha-numeric data and subsequent ease of manipulation. Any segment of any ellipse or circle or any vector is simply and quickly displayable at any orientation. Any segment or vector can be drawn for display by starting at either end.
In an exemplary preferred embodiment of a display system apparatus is shown for generating time varying X and Y electrical signals representing the orthogonal coordinates of an elliptical curve section. The X and Y electrical signals are preferably the combinations of quarter cycle sine and cosine electrical functions, the manner of combination being specified in accordance with four parameters presented to the display system for each elliptical section. A fifth parameter specifies the duration of the sine and cosine functions. The X and Y signals when applied to a display device in the nature of CRT display or X-Y plotter produce the desired image, be it graphic or alpha-numeric.
The five parameters necessary for specifying the curve are communicated to the display system from a computer where they are calculated from original data to provide constraints for the elliptical sections casing them to trace the desired image. Manipulation, including rotation, perspective control, etc., of the image is easily achieved by transformations of the five parameters directly without the need for recalculation from original data.
The computer may be remote and accessible in timeshared fashion over telephone lines or not as desired. A digital control unit associated with the display stores parameters for commonly used curves, symbols, characters and figures.
In the case of alpha-numeric characters and symbols, each image is readily constructed by a succession of curve segments under instructions normally stored in electronic memory and activated by a character code, scale, and starting point. Position alternations are easily achieved by simply specifying a new starting point for the entire character or symbol, all subsequent segments stemming for the initial point. New characters or symbols or different forms can be easily placed into memory by the computer.
There is great flexibility of elliptical sections generated from combinations of quarter cycle sine and cosine functions in fitting a wide range of commonly found graphic and alpha-numeric curves, which allows large sections to be rapidly generated, further reducing the amount of required computation and memory capacity.
In a further aspect of the preferred embodiment of this invention, means are provided for compensating for the variation in display intensity produced by variations in writing speed. This writing speed or velocity compensation can be used to control the mark intensity as with an oscilloscope or to control the writing speed ofa moving pen at or near a selected velocity.
BRIEF DESCRIPTION OF THE DRAWINGS The structure and operation of a display system according to this invention may be more fully understood by referring to the following detailed description of a preferred embodiment presented for purposes of illustration, and the accompanying drawings of which:
FIG. 1 is a graph in X and Y coordinates of a curve showing points and parameters of the curve used in computing the A and B coefficients;
FIG. 2 and FIG. 2a are block diagrams of a display system according to the invention;
FIG. 3 is a block diagram and partial schematic of velocity compensation circuitry useful in the invention;
FIG. 4 is a block diagram of modified and simplified circuitry for accomplishing a part of the function of velocity compensation as in FIG. 3; and
FIG. 5 is a block diagram of circuitry including details of the digital control unit of FIG. 2 indicating its operation.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT To understand the principles which according to the invention allow for efficient and accurate display image generation and manipulation and which require a minimum of information to specify each curve, the theory of curve generation as practiced in the present invention will be first described.
Referring to FIG. 1 a curve 12 is shown for purposes of illustration between orthogonal X-Y axes. A curve section 14 is bounded by end points 16 and 18, point 18 being an inflection point of curve 12. The slope at the end points is respectively indicated by lines 20 and 22.
A straight line 24 connects the two end points 16 and 18. A point, 26, represents the point on the section 14 of curve 12 where the section 14 is at a maximum perpendicular distance from the straight line 24. Two additional points, 28 and 30, are marked on the section 14 between the end points 16 and 18. A line 32 indicates the slope of the section 14 at the point 30.
It has been found that by using a section of an ellipse generated by combined quarter cycle sine and cosine functions, with the elliptical section uniquely specified by a combination of points and slopes indicated on FIG. 1, it is possible to closely approximate the curve section 14 between the points 16 and 18 with a minimum of computation and storage capability. The approximation is particularly accurate where the curved section 14 does not include an inflection point, though one may be present at either or both ends, exemplified as point 18.
In order to recreate the curved section 14, orthogonal X and Y time varying signals are generated from the data of FIG. 1 and applied to X and Y orthogonal controls of, for example, a cathode-raytube oscilloscope or an X-Y plotter with the result that an elliptical section is traced closely resembling the section 14.
Generating the X and Y time varying signals from the curve data of FIG. 1 normally involves many mathematical computations which, even through normally performed by a computer, require considerable computation time, storage, and/or transmission time when a multiplicity of sections 14 are connected together to trace a total curve 12.
It has been discovered that particular sets of four information elements from FIG. 1 in cooperation with unique means for generating the X and Y time varying signals enormously simplify the amount of mathematical computation necessary to go from the FIG. 1 data to the X and Y time varying signals. In particular, the X and Y time varying signals are formed as the following functions:
The sine and cosine functions are generated by an electronic function generator. The X, and Y, signals are initial point values which are determined by the values of the end point from the previous section or any other desired starting point. The A and 8 parameters along with the range of t, defining the portion of the sine and cosine periods and consequently the portion of the ellipse used for drawing the curve section, are the remaining parameters to be specified from the data of FIG. 1.
The data for the curve section 14 in FIG. 1 may be assembled from various sources including a pointer or digitizer such as an X-Y movable arm which electrically encodes points and slopes on the original curve section 14 as the arm is placed at the points on curve 14. Slope information may be entered from arm motions or directly through a keyboard or other data entry device. The data for curve 14 may also be entered directly from other sources containing graph data, or, in the case where the curve is known in terms of an algebraic expression, a computer may be used to establish the necessary data. For alphanumeric characlens and particular symbols and figures, the parameters may be stored in memory facilities of a digital control unit associated with the function generator.
To exemplify how the A and B coefficients can be calculated from curve constraints, three cases are presented soley for purposes of illustration.
As Case I, assume that a quarter elliptical cycle is to be used to create the curve section 14 from the coordinates of the end points 16 and 18 and the slopes 20 and 22 of the curve 14 at those points. Using S, as the slope of line 20 at the starting point 16 and S as the slope of line 22 at the end point 18; AX as the X displacement between the end points 16 and 18 and A1 as the Y displacement between the end points 16 and 18, then the following equations define the A and B coefficients of a quarter cycle ellipse beginning at t =0:
As can be seen from the Equations (3) the amount of computation necessary to determine the four A and B coefficients is very slight.
equations relate the A and B coefficients to the curve parameters:
z)" (4) As can be seen from the above Equations (4) in the case of three points and a slope specified for a curve to be redrawn the amount of computation required in specifying the A and B coefficients is slight.
For case 111 the end points 16 and 18 in FIG. 1 are used along with the point 26 having the property of being located on the curve 14 at the point farthest from the line 24, where the slope of line 24 equals the slope of curve 14. The following equations apply:
Ax: X AX may AX X21AX+ YMAY AX Ay=S 4x By S B,
Where S and S are the respective slopes of the curve to be traced at the points 16 and 18 respectively, and are given by Defining S, and S further:
And finally P, Q, and R are defined in terms of the basic data points as follows:
P= Y AX-fX AY Q= X AX+ Y AY R=(AX*"+AY'*)" (5) Where:
X is the X difference between points 16 and 26;
AX is the X difference between points 16 and 18;
Y is the Ydifference between points 16 and 26; and
AY is the Y difference between points 16 and 18.
The series of Equations, (5 applicable for points l6, l8 and maximum separation point 26 on curve 14, through slightly longer than the previous two cases, still involve only a few relatively simple computations, and, in particular, do not require time consuming power series computations often found in curve fitting.
For a manipulation, such as a predetermined angle of rotation, it is possible to derive a set of transformation equations in a generalized rotation angle. From these equations new As and Bs can be simply calculated directly form the original As and Bs for a given rotation angle.
Other techniques can be envisioned to calculate quarter cycle A and B coefficients by those trained in the art from other curve constraints with similar case of calculation and manipulation. v
The above three cases have treated elliptical curve drawing techniques wherein a quarter ellipse is used as the basic element of curve for approximating a known curve or data. It is also possible to use half, threequarter, and full ellipses particularly for specific situations or to let 2 be any value. For these longer periods and A and B coefficients can be determined by algebraic techniques similar'to those used in deriving the coefficients in the above three cases or by specifying only a quarter cycle of each ellipse.
In all cases, the A and B coefficients are the same for the same ellipse segment so that the constraints from any computational method or case all apply to one set of A and B coefficients and are manipulated by the same transformation of the A s and Bs.
The quarter ellipse case wherein t varies from to 1r/2 in the sine and cosine function equations has been found particularly useful in drawing curves which closely approximate many of the commonly found functions. Examples of the functions which can be readily matched with elliptical quarter period curves are sinusoids, exponentials, conic sections in general including hyperbolas and parabolas, and power series. Hyperbolic functions can also be matched. Quarter cycle sinusoids, and complete parabolas and hyperbolas can be very closely approximated by a single quarter period elliptical segment. Also of substantial importance is the generation of a curve to fit a set of data points by, for example, only emplying Case II and using as the slope for the initial point the boundary conditions for the first data point. Using two such segments to approximate these curves produces a match which fits the original curve within the resolution capability of state of the art cathode-ray-tube displays. Alpha-numeric characters are also easily produced and can be displayed in any position in various type styles and as superscripts or subscripts.
In many cases the match provided by the elliptical curve sections is substantially better than more sophisticated curve following systems, such as spline curves, which involve enormously more complicated and time consuming computations for deriving and manipulating the curves.
A straight line or vector can be produced by setting either the A or B coefficients at zero and adjusting the non-zero coefficients to define slope.
REferring to FIG. 2 there is shown, in block diagram form, an exemplary preferred embodiment of means for accomplishing the above advantages of the present invention, presented for purposes of illustration. A sincos function generator 34 outputs on lines 36 and 38 respectively a cosine and sine function electrical signal. The values of these signals correspond to the functions cos X(t) and sin X(t) where x can be varied to alter the speed at which the curve is traced. The cosine function electrical signal is conducted byline 36 to multiplier inputs of multipliers 40 and 42 while the sine function electrical signal is conducted byline 38 to multiplier inputs of multipliers 44 and 46. An Ax constant electrical signal is conducted to a multiplicand input of multiplier 40 from a digital control unit 48, over line 50. Similarly Bx, Ay, and By constant electrical signals are conducted form the digital control unit 48 over lines 52, 54 and 56 respectively to multiplicand inputs of multipliers 44, 42, and 46 respectively. The outputs of the multipliers 40, 42, 44 and 46 are signals whose value is a product of the value of the constant electrical signals and sine and cosine function electrical signals fed to them.
In the case where the constant electrical signals Ax, Bx, Ay and By are analog signals supplied by the digital control unit 48, the multipliers 40, 42, 44 and 46 are analog multipliers. Where the constant electrical signals Ax, Bx, Ay and By are digital signals the multipliers 40, 42, 44, and 46, can be multiplying digital to analog converters.
In the case where the constant electrical signals are in a digital form the product outputs of the multipliers 40 and 44 are fed to noninverting inputs of a variable gain summing amplifier 58. The output of amplifier 58 is fed to a summing input of a summing amplifier 60 along with an X,,-A, offset signal from the digital control unit 48. A digital to analog converter 62 is interposed between the summing amplifier 60 and digital control unit 48 to convert the X,,A offset electrical signal form a digital to an analog signal. The output of the summing amplifier 60 is an X(t) electrical signal whose value is Ax (cos (t)-l Bx sin (l)+ X An analog scaling signal 63 is conducted from the digital control unit 48 and fed to a gain control input of summing amplifier 58 to control the amplification of the sum of the inputs to the amplifier 58.
In the case where the constant electrical signals and offset are in analog form, the Ax signal can be applied directly to an inverting input of summing amplifier 58, and the offset signal to amplifier 60 is an analog X, signal as indicated in FIG. 2a.
With digital signals, the outputs of multipliers 42 and 46 are fed to noninverting inputs of a variable gain summing amplifier 64. The output of amplifier 64 is fed to one noninverting input of a summing amplifier 66 which has on an other noninverting input a Y,,A,, constant electrical signal from the digital control unit 48. A digital to analog converter 68 is provided for the Y,,A,, signal between the digital control unit 48 and the amplifier 66 to produce an analog equivalent of the Y,A,, signal. The output of the summing amplifier 66 is a Y (t) electrical signal whose value is Ay (cos (I) l)+ By sin (t)+Y,,. Scaling signal 63 is fed to a gain control input of summing amplifier 64 to adjust gain as indicated above.
With analog DCU outputs, an Ay analog signal is fed to an inverting input of amplifier 64, and an analog Y signal is fed to a noninverting input of amplifier 66, similar to the system indicated in FIG. 2a.
OUtputs of the amplifiers 60 and 66 are fed to the digital control unit 48 over respective X and Y termination point electrical signal lines 70 and 72, to X and Y input terminals of a display 74, and to the inputs of a velocity compensator 76.
The display 74 may be, for example, either a cathode-ray-tube oscilloscope or an X-Y plotter. In either case, a visible mark is produced at X and Y coordinates on the display surface representative of the value of the X and Y input signals to the display 74.
The velocity compensator 76 has an output to Z-axis control of the display 74 to control the intensity of the visible mark for constant brightness and for alternative use, an output to the sine-cosine function generator 34 to control its frequency. Since the rate of motion of the visible mark produced by the display 74 affects the apparent intensity of the mark, the velocity compensator 76 is provided to compensate for varying mark velocities and to produce a more even intensity in the mark. In one embodiment, the velocity compensator 76, after detecting the mark velocity from the signals at the outputs of amplifiers 60 and 66, controls the intensity of the mark produced by the display 74 by sending an intensity control signal to the Z-axis input of the display 74. In another embodiment, the velocity compensator 76 keeps the mark velocity constant by controlling the frequency of the sine-cosine function generator 34. Further details of the structure and function of the velocity compensator 76 are indicated below.
'The cosine and sine function electrical signal output on lines 36 and 38 of the sine-cosine function generator 34 are fed to a phase detection circuit 78 which feeds the digital control unit 48 over lines 80 information on phase, polarity and level of the sine and cosine electrical signals. A display control signal 82 is outputted from the digital control unit 48 to a mark inhibit circuit 84 cooperating with the display 74 to allow the display to produce a visible mark only when the digital control unit 48 commands that a visible mark be made by a signal on line 82. The marked curve corresponds to selected portions of the sin-cos function electrical signal cycle.
The data input to the digital control unit 48 is provided from a computer 90 which in turn may receive raw information from any of a number of sources including a curve data generator 92, a data source 94 and a digitizer 96.
In the operation of the system described by FIG. 2 and 2a, the computer 90 receives curve section data from any of the sources including the curve data generator 92, data source 94, and curve follower 96. From this data the computer 90 makes a number of decisions including: (1) How to divide the original curve into sections to be approximated by one elliptical segment or section with a unique set of A and B coefficients. Normally the computer 90 will exclude inflection points from each section, making inflection points a convenient dividing point between sections. (2) What portion of an elliptical period to use. Normally a quarter period is used unless specific circumstances of the curve being copied particularly suit it to being matched by an elliptical segment of greater cyclical period. (3) Which of the many possible cases of curve constraints to use in specifying the A and B coefficients. Often the data inputted to the computer 90 will be in one of the forms used in the three cases, but otherwise the computer may select whichever one has been programmed for use in the circumstances. Case 1, using the end point slopes, allows for smoothness of the displayed curve from section to section by matching slopes while those specifying greater numbers of points generally insure closer control over the positioning of the curves.
Based upon decisions, the computer 90 establishes the A and B coefficients and outputs them to the digital control unit 48 for each section to be displayed. The digital control unit 48 also receives instructions from the computer 90 on the portion of an elliptical period to be used for each segment. The phase detection circuit 78 continuously monitors the sine and cosine function electrical signals output from the generator 34 and provides signals to the digital control unit 48 to mark the times t= 0, 1r/2, 1r, and (3 7r)/(2) in the cycles or periods of the sine and cosine function electrical signals. Based upon the required section duration, the digital control unit 48 outputs an enable signal to the mark inhibit 84 so that the display 74 can produce a visible mark during, and only during the desired portion ofthe sine and cosine function cycle.
The outputs of the amplifiers 60 and 66 correspond to the Equations (1) and (2). They have values representing the X and Y coordinates over the selected portion of the cycle of the elliptical section or segment which closely matches the original data for that section as inputted to the computer 90.
At the end of each portion of cycle, the digital control unit 48 determines the values of the end points for each segment from the initial points X and Y, and from the values of AX and AY as determined from the A and B coefficients supplied through the digital control unit 48. The endpoints can alter-natively be determined by sampling the X and Y function signals on lines 72 and 70. The termination point for each segment provides the coordinates for the initial points X, and Y of the next segment, or the end point may be offset by computer specified coordinate changes to produce the next segment in nonattached relationship relative to its preceeding segment. This insures that each curve section begins exactly where the previous section ended, or a preselected distance therefrom if a discontinuous curve is intended. The particular manner in which the Equations (3) are written insures that at r=0 the X and Y signals are X and Y respectively simplifying the match between sections.
It is convenient to use a normal cathode-ray-tube for the display 74; it is possible to use a CRT display having memory which continues to display a trace once drawn, but the normally high cycle speed of a CRT allows for a continuous appearing display by committing the parameters of each segment to memory within the DCU 48. In the case of an X-Y chart recorder or plotter it is of course only necessary to generate the series of sections once to produce an inked trace on the chart which can be viewed thereafter at any desired time. The frequency of the function generator 34 can be adjusted to provide for appropriate drawing speed matching in either case.
Now referring to FIGS. 3 and 4 there is shown an ex emplary preferred embodiment and modification for a velocity compensation system for use in the FIG. 2 display system. Referring in particular to FIG. 3, the X and Y signals from amplifiers 58 and 64 of FIG. 2 are fed to respective differentiators 112 and 114. The output of the differentiators 112 and 114 is respectively the time derivative of the X and Y function electrical signals. The differentiators 112 and 114 may be operational amplifiers connected in a conventional manner to take the time derivative of the input to them or simply high-pass filters which approximate the time derivative of the input to them as in capacitive coupling circuits. Each output of the differentiators 113 and 114 is fed to both the multiplier and multiplicand inputs of respective multipliers 116 and 118. The outputs of the multipliers 116 and 118 are thus respectively the square of the derivative of the X and Y function signals. A summer 120 receives these squared derivatives as inputs and outputs their sum. The output of summer 120 is thus proportional to the square of the velocity, V, of the trace in display 74.
A square rooter 121 after the summer 120 produces an output proportional to V which can be fed into the Z axis control 122 of the display, 74. Alternatively the output of summing amplifier 120 can be fed into one input of a regulator 124. The other input to the regulator 124 is a reference 126. The regulator 124 is typically a high gain amplifier differencing its two inputs.
The output of the regulator is fed to a control input of the sine-cosine function generator 34. In this exemplary instance, the sine-cosine function generator 34 is composed of a selective gating network 130 alternately feeding inverting and noninverting inputs of an amplifier 128. One input to the gating network 130 is the output of regulator 124, while a control input 131, is derived in the digital control unit 48 from the levels of the sine and cosine function signals detected by phase detector circuit 78. With each zero crossing of the sine and cosine function signals the gating network 130 switches in response to DCU control signal 131 to supply the output of the regulator 124 to the amplifier 128 on the opposite input, or to the input specified by the polarity of the sine function electrical signal. The output of the amplifier 128 is fed to an integrator 132 which produces at its output an integration of the positive or negative signals from amplifier 128. The control signal 131 into gate 130, as derived from the phase signals 80, causes the output of the integrator 152 to increase from zero during the periods t 11/2 and 'Tr t (31r/2), and to decrease toward zero during the periods 1r/2 5 [5 1r and (3 1r/2) t s 2 11. Thus the slope of the output of the integrator 132 reverses every 1r/2 The output of the integrator 132 is a positive value, variable slope triangle wave varying between zero and a positive level.
The variable slope triangle wave is fed to two different diode approximating networks 136 and 137 to produce the sine and cosine functions respectively.
The sine function approximator 136 through the use of a plurality of break points generates a zero to 180 sine function from the first zero-to-peak-to-zero section of the triangle wave, and thereafter, by the inversion of a selectively inverting circuit 138 controlled by a gate 139 responding to the zero crossover of the output of approximator 136, produces a negative half 180 to 360 portion.
The cosine diode approximator 137 receives the triangle wave through an inverter 140 for inversion of the triangle wave so that the zero level becomes the positive level and the positive slope of the original triangle wave becomes negative and produces a zero to 90 portion of the cosine function.
A zero crossing at 90 causes switching of a selective inverting amplifier 142 at the output of approximator 137 by a gate 143 and the positive to zero portion of the original triangle wave generates a 90 to 180 degree portion of the cosine function. The next zero to positive level portion of the original triangle wave produces the l80 to 270 part of the cosine function.
Zero crossing at 270 switches back the inverting amplifier 142, and the subsequent positive to zero portion of the triangle wave creates the 270 to 360 portion of the cosine wave.
Continuous repetition of the above with switched selective inversion results in continuous sine and cosine waves.
The break points in the approximators 136 and 137 are provided so that not only do the resulting signals fit well to sine and cosine functions but their sums, as required in Equations (1) and (2), fit well to summed sine and cosine signals. To achieve this result, the break points in the approximators 136 and 137 are concentrated over the upper half of the range of output signal levels where the slope is changing most rapidly, between 45 and for the sine function and between 0 and 45 for the cosine function. Some break points are distributed in the lower half of the range of input signal levels to compensate for vertical errors in the sine and cosine function signals at points of near maximum steepness. With the sine and cosine function electrical signals summed as indicated in Equations (l) and (2) the resulting signals have break points, as contributed by the sine and cosine signals, distributed substantially evenly along the time axis.
Referring to FIG. 4 an alternative form for a velocity compensator is indicated. Differentiators 112 and 114 receive respectively the X and Y signals. The differentiators 112 and 114 respectively feed full-wave rectifiers 148 and 150 which output a signal having a level equal to the magnitude of the differentiated X and Y signals. The outputs of the full-wave rectifiers 148 and 150 are summed by summer amplifier 152 to yield an output signal which can be used in place of the output from the amplifier or square rooter 121 of FIG. 3 as an approximation to the velocity or rate of change of the vector sum of the X and Y signals.
In the case where the velocity signal is used to provide a control voltage for the Z axis of a display system, the function generator 34 can be replaced by a free running oscillator directly providing a sine function output and providing a cosine function output through an integrator. In this case phase detection circuit 78 provides similar detection of the period of the sine and cosine function electrical signals and enables the display 74 for a preselected period of time after the positive slope zero crossing of the sine function signal. The preselected time, corresponding to 1r/2, qr, (31r/2), 211' or other portions of the sine and cosine functions, is terminated by detecting subsequent zero crossings or reference levels of the sine and cosine function signals or, alternatively, by counts in a counter. Where a counter is used, it is run at a high frequency from which the output frequency of the generator 34 is taken by count down techniques to insure accurate synchronization of the counter and sine and cosine cycles. In this case, any portion of a cycle can be used as the preselected time by specifying a corresponding count.
Referring to FIG. 5 there is shown an operational scheme for the digital control unit 48 combined with the capabilities of a computer. The digital control unit 48 may receive computed coefficient data from a computer interface 160, data line 162 and computer 90, or may generate the computation itself if associated with a small computer. The digital control unit 48 receives directly data input from a graphic input 164 and manual data entry keyboard 166 among other input sources.
Within the digital control unit 48, a data bus 168 provides data communication among the inputs and outputs of the digital control unit 48 and internal units including curve transformation 170, mode generator 172. The internal units further include random access and ROM memory 174, plus output registers 176, 178, 180, 182, 184, 186 for Ax, Bx, Ay, By, Y, and X (or Y ,Ay and X,,Ax) signals respectively. An enable control 188 provides time and duration control for the portion of period used for marking at display 74 from phase, and level information provided by the phase detection circuit 78 over line 80.
The mode generator 172 allows selection ofa variety of display orientations and modes. in point mode a single point is displayed. Increment mode provides display of sequential contiguous points or lines. Vector relative and absolute allows straight lines drawn at absolute or relative position by setting either the A or B coefficients at zero and using X and Y, signals for position. The non-zero coefficients are scaled and set in a ratio to define slope. Curve increment" provides elliptical fitted sections in contiguous display. Curve relative and absolute provides for display of curve sections at selected positions. Figure relative and absolute, character and symbol generate displays of figures and alpha-numeric characters and symbols. The parameters for specific curves, vectors, figures, characters, and symbols can be stored in memory 174 for use without the necessity of recalculation. Computer 90 can supply special parameters to memory 174 where special user needs demand unusual displays such as transistor symbols. Memory 174 also provides storage of parameters for all portions of a complete display for illumination of a CRT Display to give the appearance of a continuous image.
When alpha-numeric characters and symbols are to be generated, each character or symbol is initially generated on a scale substantially larger than its ultimate scale on the display surface. It is subsequently reduced a predetermined amount and positioned for proper size and placement according to data received from computer 90. The mode generator 172 in response to data specifying alpha-numeric information from computer 90 obtains from memory 172 the parameters of the strokes necessary for displaying each character and symbol in a size larger than the ultimate display by the predetermined reduction. This allows the initial point for each character to be specified from an array of a great many initial points rather than a very limited number of points possible if small size (e.g., typewriter scale) characters and symbols were initially generated to scale. The limited number of initial points would result in character distortion or misalignment.
With generation of the X and Y function signals in a large scale for each character, mode generator 172 provides the scaling signal 63 to the gain control inputs of the summing amplifiers 58 and 64 to adjust the scale of the X and Y function signals to produce the character size specified by computer 90 or keyboard 166. Positioning is accomplished by the X and Y signals after reduction of the Ax and Ay signals. For non-alpha-numeric displays scaling signal 63 is set at a value for no reduction.
Digital control unit 48 also provides for various transformations on the curves through operations of curve transformation 170. A 3-D" transformation varies display intensity and/or perspective projections to give the effect of a 3-D curve projected on the display surface. Rotation provides a selected angular displacement. Scaling" alters the relative size of sections. Scissoring" and windowing" expands selected portions. Sub-routining effectively allows for any other preprogrammed transformation. All these transformations and manipulations are achieved through mathematical manipulations directly on the A and B parameters by known mathematical techniques without the need for recalculation from original data. A data flow controller 190 provides data sequencing and organization in the well known manner of digital control implementation to deliver appropriate data to the proper location at the right moment.
Having described preferred embodiments for this Display System it will be apparent to those skilled in the art that other forms may be used in practicing the spirit of the invention. It is accordingly intended to limit the scope of this invention only as specified in the following claims.
What we claim is:
l. In a system of the type having means for displaying a representation of a desired function and having means for developing a plurality of separate electrical signals where each said separate electrical signal is operable to control the inputs of said display means to cause said representation to be displayed, a system for controlling the rate of change of the vector sum of said separate electrical signals comprising:
means for at least approximating the time derivative of said separate electrical signals;
means for producing single polarity signals in response to and varying with the magnitude of the derivative of said separate electrical signals; means for summing said single polarity signals; and means for controlling the rate of change of the output of said developing means to maintain the summation of said single polarity signals at least approximately at a value representative of a predetermined rate of change of said vector sum. 2. The system of claim 1 wherein said means for producing single polarity signals comprises a squarer.
3. A system for generating X and Y function electrical signals in response to four independently variable parameters, said X and Y signals being for application to orthogonal deflection controls of a controlled motion element to produce motion in a quarter elliptical cycle curve section, said system including:
controllable means for generating two electrical signals phase separated by a quarter cycle to provide a sine and cosine function electrical signal;
means for controlling said controllable means for producing quarter cycle portions of said sine and cosine function electrical signals;
means responsive to the quarter cycle sine function electrical signal for generating first and second product signals representing the product of said quarter cycle sine function electrical signal by first and second ones of said four parameters;
means responsive to the quarter cycle cosine function electrical signal for generating third and fourth product signals representing the product of said quarter cycle cosine function electrical signal by third and fourth ones of said four parameters; and
means for combining said first and third product signals and said second and fourth product signals to provide respective first and second combined signals to be said X and Y function electrical signals.
4. The system for generating X and Y function electrical signals of claim 3 further including:
means for differencing said first combined signal with a signal representative of said first parameter to provide said X function electrical signal; and
means for differencing said second combined signal with a signal representative of said second parameter to provide said Y function electrical signal.
5. The system of claim 4, for providing a plurality of said sections and further including means for registering the values of said X and Y function electrical signals at the terminating point of each said section and means for combining said X and Y function electrical signals for each said section with the registered values of said X and Y signals at the terminating point for the preceeding section.
6. The system for generating X and Y function electrical signals of claim 4 further including:
means for providing first and second initial value signals; and
means for combining said first and second initial value signals respectively with said X and Y function electrical signals to define an initial point for a section ofa curve.
7. The system for generating X and Y function electrical signals of claim 3 further including:
means for receiving input point and slope data constraints; and
means for providing said four parameters from said received input data constraints to cause said X and Y function electrical signals to represent a quarter cycle ellipse having said constraints.
8. The system of claim 7 wherein said constraints are the position and slope in orthogonal coordinates of each endpoint of said section of said curve.
9. The system of claim 7 wherein said constraints are in orthogonal coordinates the position of each endpoint and one intermediate point and the slope of one of said three points on said section of said curve.
10. The system of claim 7 wherein said constraints are in orthogonal coordinates, the position on said section of said curve of the endpoints and a third point which is at the maximum perpendicular distance from a straight line between said endpoints.
11. The system of claim 3 further comprising means for controlling the rate of change of said X and Y function electrical signals to maintain the vector sum of the rates of change with respect to time of said X and Y function electrical signals substantially equal to a preselected value.
12. The system of claim 11 wherein said controlling means is characterized by including means to adjust the frequency of the sine and cosine function electrical signals as generated by said generating means to control the vector sum of the rates of change of said X and Y function electrical signals.
13. The system of claim 3 wherein said means for generating a sine and cosine function electrical signal comprises:
means for developing a triangle wave electrical signal; and means for approximating a trigonometric sine function electrical signal and a simultaneous cosine function electrical signal in response to said triangle wave and having a plurality of break points causing successive altera-tions of said triangle wave to approximate said trigonometric functions;
said break points being distributed so as to occur at substantially even spacing in said X and Y function electrical signals.
14. The system of claim 3 further including:
controllable intensity means for displaying images in response to said X and Y function electrical signals; and
means for regulating the brightness of each part of the displayed images by controlling the display intensity in response to the vector sum of the rates of change with respect to time of said X and Y function electrical signals.
15. A system for displaying curve sections comprising:
means for generating a quarter cycle sine function electrical signal and a quadrature phased quarter cycle cosine function electrical signal;
means for multiplying said sine function electrical signal by first and second independent parameters to provide first and second time varying quarter cycle sine functions;
means for multiplying said cosine function electrical signal by third and fourth independent parameters to provide third and fourth time varying quarter cycle cosine functions;
means for combining at least said first and third time varying functions to produce a first output control signal;
means for combining at least said second and fourth time varying functions to produce a second output control signal; and
display means operative to receive said first and second control signals on orthogonally reacting inputs thereof to produce quarter cycle elliptical curve sections in response to said control signals; said first, second, third, and fourth independent parameters representing point and slope constraints for quarter cycle elliptical curve sections.
16. The system of claim 15 wherein said display means is a cathode-ray-tube.
17. The system of claim 16 further including means to maintain the brightness of display of said display means in response to variations in the writing speed of said display means from variations in the rates of change of said output control signals.
18. The system of claim 15 wherein said display means is a storage cathode-ray-tube.
19. The system of claim 15 wherein said display means is an X-Y plotter.
20. The system of claim 15 further including means for compensating for display brightness variations due to changes in the writing speed of said display means from variations in the rates of change of said output control signals.
21. A system for generating orthogonal control signals for use in producing a curve section between first and second points, said system including:
means for receiving representations of said first and second points and of first and second further characteristics of said curve section;
means for deriving from said received representations four independently variable parameters according to a predetermined transformation;
means for generating quarter cycle quadrature phased sine and cosine function signals;
means for multiplying said sine and cosine function signals each by different sets of two of said four parameters to provide four time varying signals; means for summing said time varying signals in pairs with first and second ones of said parameters respectively and corresponding orthogonal coordinates of said first point to provide said orthogonal control signals.
22. The system of claim 21 wherein said first and second further characteristics include curve slope at said first and second points.
23. The system of claim 21 wherein said first and