TEMPORAL HARD MEDIA IMAGING
A method of determining a tilt, bearing, and/or barrel rotation of a virtual marking implement with respect to a surface is disclosed herein. The tilt, bearing, and/or barrel rotation are used to vary geometry of an impression profile associated with a selected physical marking implement as well as the intensity of a rendering on an electronic presentation device. Further, the impression profile associated with the selected physical marking implement may change over time as marks are rendered on the electronic presentation device. More specifically, a quantity of use of the physical marking implement defines in part the size, orientation, and/or shape of one or more facets on the physical marking implement. Existing facets on the physical marking implement may be modified and/or new facets may be added to the physical marking implement as marks are rendered on the electronic presentation device.
Latest Corel Corporation Patents:
- Three-dimensional operations based on planar projections in graphic user interfaces
- Drawing function identification in graphics applications
- Digital imaging of granular media in graphics applications
- Stroke tapestry methods and systems
- Methods and systems for generating graphical content through easing and paths
This application claims the benefit of U.S. Provisional Application No. 61/145,470, entitled “Virtual Hard Media Imaging,” filed Jan. 16, 2009; and is related to U.S. Nonprovisional application Ser. No. 12/464,943, entitled “Virtual Hard Media Imaging,” filed May 13, 2009 and U.S. Nonprovisional application Ser. No. ______, entitled “Virtual Faceted Hard Media Imaging,” filed Jan. 8, 2010; all of which are specifically incorporated by reference for all they disclose and teach.
BACKGROUNDVarious software and hardware tools provide users the ability to create computer rendered images using techniques that replicate physical techniques of creating physical images. These software tools include virtual marking implements that model tip geometries associated with various physical marking implements (e.g., pencils, felt pens, crayons, markers, chalk, erasers, charcoal, pastels, colored pencils, scraperboard tools (e.g., knifes, cutters, gauges), conte crayons, and silverpoint). Further, these hardware tools include an electronic stylus combined with an electronic tablet that can approximate the physical feel of the various marking implements and enable the user to emulate movements of a physical marking implement on a surface (e.g. paper, canvas, whiteboard, and chalkboard).
In order to change the tip geometry, the user is typically required to select a different virtual marking implement or modify the tip geometry of the selected virtual marking implement within the software tools. However, in other implementations, the user physically utilizes different electronic styluses that correspond to different tip geometries.
Other implementations have used angle, pressure, tilt, velocity, and other motions of the electronic stylus to vary the size and/or overall opacity of an impression profile associated with the selected physical marking implement. However, past software tools do not vary the geometry and/or intensity of the impression profile (e.g. intensity distribution) based on an angle of the electronic stylus applied to the electronic tablet to model a physical marking implement oriented at the angle.
SUMMARYThe presently disclosed technology teaches a virtual marking implement (e.g. an electronic stylus) configured to determine a tilt angle of the virtual marking implement with respect to a surface (e.g., using an accelerometer or other means of determining a tilt angle of the virtual marking implement with respect to a surface). Further, the presently disclosed technology teaches determining a bearing of the virtual marking implement with respect to the surface. The angle and bearing are then used to vary a geometry of an impression profile associated with a selected physical marking implement as well as an intensity of a rendering on an electronic presentation device.
In a further implementation of the presently disclosed technology, barrel rotation of the virtual marking implement is also determined and used to vary the geometry of the impression profile associated with the selected physical marking implement as well as the intensity of the rendering on the electronic presentation device.
Still further, the impression profile associated with the selected physical marking implement may change over time as marks are rendered on an electronic presentation device. More specifically, a quantity of use of the physical marking implement defines in part the size, orientation, and/or shape of one or more facets on the physical marking implement. Existing facets on the physical marking implement may be modified and/or new facets may be added to the physical marking implement as marks are rendered on the electronic presentation device.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Other features, details, utilities, and advantages of the claimed subject matter will be apparent from the following more particular written Detailed Description of various implementations and implementations as further illustrated in the accompanying drawings and defined in the appended claims.
The presently disclosed technology is best understood from the following Detailed Description describing various implementations read in connection with the accompanying drawings.
Current virtual marking implements (e.g., electronic styluses) fail to adequately model the effect of altering an angle of the electronic stylus with respect to a tablet on an intensity distribution of a selected physical marking implement (e.g., pencils, felt pens, crayons, markers, chalk, erasers, charcoal, pastels, colored pencils, scraperboard tools (e.g., knifes, cutters, gauges), conte crayons, and silverpoint). Further, current electronic styluses also fail to adequately model the effect of a quantity of use of the electronic stylus on an intensity distribution of the selected physical marking implement. The presently disclosed technology, teaches a virtual marking implement (i.e., a tilt sensitive input device) configured to determine a tilt angle and/or a bearing of the virtual marking implement when applied to a tablet surface (e.g. an electronic tablet). The virtual marking implement, for example, may comprise an accelerometer or other sensor for determining the tilt angle and/or bearing of the virtual marking implement. The angle and bearing are then used to vary a geometry of an impression profile associated with the selected physical marking implement as well as the intensity distribution of a rendering on an electronic presentation device.
Further, a faceting module is adapted to track quantity of use of the electronic stylus and create and/or vary one or more facets (i.e., wherein the physical marking implement is not symmetrical about a central axis) on a surface of the selected physical marking implement to mimic actual use of the physical marking implement (e.g., wear on a pencil tip). The quantity of use is a calculation based on one or more factors including, but not limited to, existing facet(s) and their corresponding size(s) and orientation(s), tip material properties (e.g., hardness) of the selected physical marking implement, a selected marking surface and/or selected roughness of the marking surface, distance traveled by the virtual marking implement in contact with the tablet surface, and pressure applied by the virtual marking implement on the tablet surface. Other factors may be used that allow a calculation of mimicked actual use of the selected physical marking implement.
In a further implementation, the presently disclosed technology teaches determining a barrel rotation of the virtual marking implement with respect to the tablet surface. The barrel rotation is then used to vary the geometry of the impression profile associated with the selected physical marking implement as well as the intensity distribution of the rendering on the electronic presentation device. Barrel rotation is especially applicable when the physical marking implement possesses one or more facets. As a result, tilt angle, bearing, quantity of use, (and in some implementations, barrel rotation) are used to define one or more facets on a surface of the selected physical marking implement.
In a further implementation, an accelerometer based virtual marking implement that does not utilize a tablet surface or other surface (e.g. wiimote for Nintendo Wii®) may be used to model the effect of altering an angle, barrel rotation, and/or bearing of the virtual marking implement on an intensity distribution of a selected physical marking implement. In another implementation, a haptic device (e.g. a virtual marking implement connected to an arm that provides a user force, vibration, and/or motion feedback) may be used to model the effect of altering an angle, barrel rotation, and/or bearing of the haptic device on an intensity distribution of a selected faceted physical marking implement.
As a result, a user may actively vary the impression profile while he or she produces strokes of the virtual marking implement across the tablet surface without the need to change the physical marking implement selection or switch to a different virtual marking implement. Further, the faceting module may vary the impression profile while each of the strokes is produced. The user may have the option to turn the faceting module off so that when a desired facet size, orientation, and/or shape is achieved, the user may maintain that facet as further marks are rendered on an electronic presentation device. The user may turn the faceting module back on when he or she desires to change the facet size, orientation, and/or shape. Physical marking implements that may possess facets that vary with a quantity of use are described below in varying levels of detail and include, but are not limited to, chalk, pencils, charcoal, erasers, crayons, pastels, colored pencils, conte crayons, and any solid marking implement that doesn't have hairs (i.e. non-brushes) and that may possess one or more facets that can vary with use.
When creating a rendering on a virtual canvas using the virtual marking implement and the tablet surface, a user may wish to vary the tip geometry of the virtual marking implement so that a corresponding impression profile mimics an impression of a corresponding physical marking implement at a corresponding orientation (and in some implementations, with one or more facets). The user may tilt and/or rotate the barrel of the virtual marking implement with respect to the tablet surface at a variety of angles to achieve a desired impression. Further, the user may “wear” a desired facet into the virtual marking implement by moving the virtual marking implement back and forth on the tablet surface. For example,
In some implementations, the tilt angle of the virtual marking implement equals the tilt angle of a corresponding physical marking implement. However, in other implementations, the tilt angle of the virtual marking implement may correspond to a lesser or greater tilt angle of the corresponding physical marking implement. For example, a user may desire greater tilt precision within a smaller tilt range of the corresponding physical marking implement. More specifically, in this implementation, greater hand movements of the virtual marking implement mimic smaller hand movements of a corresponding physical marking implement. In that case, 0°-90° tilt of the virtual marking implement may result in a 30°-60° tilt range of the corresponding physical marking implement. Similarly, the user may desire to achieve a greater tilt range of the corresponding physical marking implement while having to tilt the virtual marking implement a lesser amount. In that case, 30°-60° tilt of the virtual marking implement may result in a 0°-90° tilt range of the corresponding physical marking implement. This concept can equally be applied to barrel rotation. For example, a 0°-15° virtual marking implement barrel rotation may be mapped to a 0°-30° physical marking implement barrel rotation.
In the implementations shown in
In one implementation, the ability to detect the tilt of the virtual marking implement is limited to 0°-60°. However, it may be desirable to render markings corresponding to tilt angles of a physical marking implement ranging from 0°-90°. The 0°-60° detectable range may be mapped to the 0°-90° desired range to enable the user to achieve any desired tilt angle of the physical marking implement using the virtual marking implement with a limited tilt range. This enables the user to achieve a wide range of impression profiles even when the ability to detect tilt angles of the virtual marking implement is limited.
In still another implementation, once the tilt angle and/or barrel rotation angle of the virtual marking implement reaches a limit of tilt angle detection (e.g., 60°), a maximum tilt angle impression profile of the physical marking implement may be selected (e.g., a 90°). In other implementations, the impression profile may change at user perceptible tilt or barrel rotation angle steps (e.g., an impression profile change for every 5 degrees of tilt). In another implementation, the tilt or barrel rotation angle steps may be so small that the impression profile may appear to change uniformly (i.e. imperceptible tilt angle steps).
This impression profile 116 is intended to model a contact area between the first faceted surface 190 of the conical tip 140 of the physical marking implement 124 and a marking surface where the mark is strongest where the pressure is the greatest. Similar to impression profile 112, impression profile 116 fades in intensity with distance from the area of greater intensity 132 of the impression profile 116 to an outer edge 186 of the impression profile 116. The fade in intensity to the outer edge 186 of the impression profile 116 is more gradual in the direction of tilt (positive x-direction) and more rapid in a direction away from the tilt (negative x-direction). Dissimilar to impression profile 112, impression profile 116 is oblong in the x-direction due to the oblong first faceted surface 190. Further, impression profile 116 is larger than impression profile 112 because the first faceted surface 190 in contact with a marking surface is larger than the point of contact 128 in contact with the marking surface.
This impression profile 120 is intended to model a contact area between the second faceted surface 194 of the conical tip 140 of the physical marking implement 124 and a marking surface where the mark is strongest where the pressure is the greatest. Similar to impression profiles 112, 116, impression profile 120 fades in intensity with distance from the area of greater intensity 132 of the impression profile 120 to an outer edge 186 of the impression profile 120. The fade in intensity to the outer edge 186 of the impression profile 116 is more gradual in the direction of tilt (positive x-direction) and more rapid in a direction away from the tilt (negative x-direction). Further, similar to impression profile 116; impression profile 120 is oblong in the x-direction due to the oblong second faceted surface 194. Further, impression profile 120 is larger than impression profile 116 because the second faceted surface 194 in contact with a marking surface is larger than the first faceted surface 190 in contact with the marking surface.
Impression profiles 112, 116, and 120 of
This impression profile 312 is intended to model the point of contact 338 of the flat tip 344 of the physical marking implement 324 and a marking surface where the mark is strongest where the pressure is the greatest. Here, the pressure is the greatest at a center 384 of the impression profile 316 at the point of contact 338. The intensity fades uniformly and rapidly from the center 384 to the outer edge 386 in the x-direction. In the y-direction, the intensity fades uniformly from the center 384 to the outer edge 386 over a length of a lower edge of the flat tip 344 in contact with the marking surface due to a slight curvature of the lower edge away from the marking surface.
The virtual marking implement 304 is tilted 45 degrees from vertical to model the faceted surface 390 of the flat tip 344 in contact with a marking surface (e.g., at 45 degrees from vertical as shown in
When a profile of a faceted tip with a flat side (e.g., flat tip 444) is modeled, a falloff value may be used. The falloff may be used to cut a portion of the profile off from an impression profile corresponding to a position and shape of a facet combined with the tilt angle and/or barrel rotation. Referring specifically to
The virtual marking implement 304 is tilted 45 degrees from vertical to model the faceted surface 394 of the flat tip 344 in contact with a marking surface (e.g., at 45 degrees from vertical as shown in
Similar to impression profile 316, the impression profile 320 is an ellipse stretched along the x-direction with falloffs on the left and right side of the impression profile 320. The falloffs correspond to relatively flat sides of the faceted surface 394 (i.e., lower edge 388 and upper edge 389). As the virtual marking implement 304 is tilted onto either the lower edge 388 or upper edge 389, the falloff quickly decreases to zero (i.e., disappears from the impression profile). The falloff may be incorporated into the system as a function and/or curve that varies according to tip profile, tilt angle, facet shape/orientation, and/or barrel rotation. In addition, the falloff may be curved or angular depending on the tip profile, tilt angle, facet shape/orientation, and/or barrel rotation.
Impression profiles 312, 316, and 320 of
Impression profiles 512, 516, and 520 of
Referring to
In one implementation, virtual marking implement 724 may measure tilt angle, tilt direction, and/or barrel rotation directly and send that information to a computer. In other implementations, the computer may collect various position data from the virtual marking implement 724 and calculate the tilt and/or barrel rotation of the virtual marking implement 724 based on the collected position data. Further, the x-direction tilt and y-direction tilt may be collected as a tilt angle and directional bearing of the tilt. Alternatively, the x-direction tilt and y-direction may be collected directly and subsequently converted to a tilt angle and directional bearing of the tilt.
In still further implementations, tilt angle, tilt direction, and/or barrel rotation are determined when the virtual marking implement 724 contacts or comes in close contact with the electronic tablet 736. In other implementations, the computer may monitor the tilt and/or position data sent from the virtual marking implement 724 so long as the virtual marking implement 724 is within range of the computer. Further, the virtual marking implement 724 may utilize accelerometers to determine tilt angle, however, other means for measuring and/or calculating tilt angle, tilt direction, and/or barrel rotation are contemplated.
In one implementation, the scratch pad 737 is always active and motion of the virtual marking implement across the scratch pad 737 always results in “wearing” one or more facets into the selected physical marking implement. In another implementation, the scratch pad 737 may be deactivated by a user so that the user may keep a desired facet even when producing strokes of the virtual marking implement 724 in the region of the tablet surface 708 occupied by the scratch pad 737. The user may activate the scratch pad 737 when he or she desires to use the scratch pad 737 again to change the facet number, size, orientation, and/or shape on the selected physical marking implement. Activation and deactivation of the scratch pad 737 may be accomplished by the user using a variety of user input devices (e.g., keystroke, mouse selection, virtual marking implement selection).
In other implementations, the scratch pad 737 has a different size, shape (e.g., circular or rectangular), and/or orientation with respect to the remainder of the tablet surface 708 (e.g., occupying another corner of the tablet surface 708, occupying a side of the tablet surface 708, occupying a center of the tablet surface 708) than that shown in
In still other implementations, the tablet surface 708 does not include a scratch pad. Any portion of the tablet surface 708 may be used to “wear” one or more facets into the selected physical marking implement that is modeled by the virtual marking implement 724 by moving the virtual marking implement 724 across any portion of the tablet surface 708 until a desired facet is obtained. Additionally, the tablet surface 708 may always be active for “wearing” and motion of the virtual marking implement across the tablet surface 708 always results in “wearing” one or more facets into the selected physical marking implement. Alternatively, the tablet surface 708 may be deactivated for “wear” by a user so that the user may keep a desired facet even when producing strokes of the virtual marking implement 724 on the tablet surface 708.
The generation of an impression profile is based on information received from the user including: selection of a physical marking implement and dimensional information of the physical marking implement. In some implementations, the dimensional information of the physical marking implement is predefined based on common attributes of the selected physical marking implement. In other implementations, the dimensional information of the selected physical marking implement is customizable by the user. For example, the user may specify the physical marking implement's length, diameter, x-sectional profile, and tip angle, facet shape, facet orientation, other properties specific to the physical marking implement that the user wishes to model. The user may also modify facet shape and/or orientation by “wearing” one or more facets into the selected physical marking implement. Further, the generation of an impression profile is based on information received from the virtual marking implement including tilt angle, tilt bearing (or alternatively x-direction tilt, y-direction tilt), and/or barrel rotation.
In the right illustration of
As a result, while the first facet 890 still exists on the conical tip 840, the second facet 894 has replaced some of the first facet 890 with the second facet 984. Further, the facets 840, 894 are “worn” into the conical tip 840 flush with the marking surface 860 at the orientation of the physical marking implement 824 when the facets 840, 894 are created. As a result, the facets 840, 894 may be oriented at any angle on the conical tip 840. This process may be repeated to create numerous facets on a conical tip 840. Further, this process may be utilized on other tip shapes (e.g., round tips and flat tips).
In the right illustration of
As a result, while the first facet 890 still exists on the conical tip 840, the second facet 894 has replaced some of the first facet 890 with the second facet 984. Further, the facets 840, 894 are “worn” into the conical tip 840 flush with the marking surface 860 at the orientation of the physical marking implement 824 when the facets 840, 894 are created. As a result, the facets 840, 894 may be oriented at any orientation on the conical tip 840. This process may be repeated to create numerous facets on a conical tip 840. Further, this process may be utilized on other tip shapes (e.g., round tips and flat tips).
In one implementation, impression profiles are created using bitmaps with bits having varying intensities corresponding to a modeled physical mark. A series of bitmaps are rendered on an electronic presentation device in real-time corresponding to dimensional information and physical properties of the physical marking implement as the tilt angle changes. Further, the maximum size of the bitmap is defined by a dimension of the modeled physical marking implement. In one implementation, the dimension is the greater of the length and width of a marking portion of the physical marking implement. Therefore, the height and width of the maximum bitmap are equal to the greater of the length and width of the marking portion of the physical marking implement. However, the actual size of each rendered bitmap varies according to the selected physical marking implement, tilt angle and/or barrel rotation.
In one conical tip implementation, a maximum width of a facet surface of the physical marking implement defines the maximum bitmap size. In another conical tip implementation (e.g., a pencil), a length of exposed lead along a portion of the conical tip (i.e. a marking portion) of the physical marking implement in contact with a marking surface defines the maximum bitmap size. In yet another implementation (e.g., crayons, chalk, charcoal, and pastels), a length of the entire conical tip defines the maximum bitmap size.
In one flat tip or round tip implementation, the greater of a length and a width of a facet surface on the physical marking implement defines the maximum bitmap size. In another flat tip or round tip implementation, the greater of a diameter and a length of a marking portion of the physical marking implement defines the maximum bitmap size. More specifically, in an implementation where the marking portion runs the entire length of the physical marking implement (e.g., a crayon without a label, piece of chalk, piece of charcoal, or pastel), the greater dimension is the length rather than the diameter of the physical marking implement. In another flat tip or round tip implementation where the marking portion length is only a portion of the entire length of the physical marking implement (e.g., a pencil eraser and a crayon with a label); the greater dimension may be the diameter rather than the length of the physical marking implement or the greater of a length and a width of the facet surface of the physical marking implement.
Further, in some implementations, the orientation of each rendered bitmap varies according to bearing of the tilt. More specifically, the height and width of each rendered bitmap is defined by the tilt angle and the orientation of height and width with respect to an x-direction and a y-direction is defined by the bearing of the tilt. This calculation is commonly performed by an affine transform.
The affine transform may be used to scale each rendered bitmap in the direction of the tilt and in directions orthogonal to the tilt. More specifically, the affine transform allows the rendered bitmap to be scaled in two separate directions with distinct scaling ratios. In other implementations, the orientation of height and width with respect to the x-direction and the y-direction may also be calculated using formulae specific to the modeled physical marking implement.
In some implementations, the rendered bitmap is smooth (e.g., a marker). In other implementations, the rendered bitmap is grainy (e.g., chalk). The visual appearance of the bitmap on the electronic presentation device mimics the appearance of the selected physical marking implement on a marking surface.
Cumulatively, a maximum dimension of the bitmaps 970, 978, and 974 of
Once a bitmap size is determined, an intensity value is determined for each of the bits in the bitmap. The intensity value for each bit mimics an intensity of the corresponding location in a mark made by a physical marking implement on a marking surface. Bitmap with intensity values approximate the impression profiles discussed above with respect to
In another implementation, at least one tip geometry for each available physical marking implement oriented at each available tilt angle, bearing, and barrel rotation is saved in a database associated with a drawing application. Further, multiple tip geometries for each physical marking implement may be stored in the database corresponding to multiple lengths, widths, or other variable properties of the selected physical marking implement. In one implementation, a user selects a physical marking implement in the drawing application. In another implementation, the user modifies default tip geometry, including facets, associated with the selected physical marking implement thereby creating a custom tip geometry. In still other implementations, the user creates a tip geometry from scratch using dimensional and marking characteristics of the physical marking implement that the user wishes to model.
In one implementation, all bitmaps for a selected tip geometry are generated based on the look-up tables. The drawing application monitors a tablet surface for contact by a virtual marking implement. Once the virtual marking implement makes contact with the tablet surface, the computer application reads tilt, bearing (or alternatively tilt in x-direction and y-direction), and rotation information and selects the bitmap that corresponds best to the measured tilt, bearing, and rotation information. The drawing application then adjusts the bitmap and renders the appropriate mark on a presentation device. In one implementation, the drawing application repeatedly monitors the virtual marking implement for tilt, bearing, and rotation information at a high rate and adjusts the rendering as the user changes tilt, bearing, and rotation of the virtual marking implement. The drawing application may also monitor quantity of use of the virtual marking implement at each measured tilt, bearing, and rotation to determine if and when one or more facets should be changed and/or added to the selected tip geometry. These operations may be done rapidly and/or at a high rate to render markings for the user in real-time.
In an alternative implementation, the look-up tables may not contain impression profiles for all available tilt, bearing, and rotation angles. The drawing application can calculate in real-time changes in the impression profile based on changes in tilt, bearing, and/or rotation by applying a function that modifies a stored impression profile to the appropriate tilt, bearing, and rotation. Similarly, the look-up tables may not contain impression profiles for all available facets corresponding to various quantities of use at various tilt, bearing, and rotation angles. The drawing application can calculate in real-time changes in the impression profile based on quantity of use by applying a function that modifies a stored impression profile to the appropriate quantity of use.
In yet another implementation, the drawing application renders marks on a presentation device without the use of the one or more look-up tables. Here, the drawing application reads tilt, bearing, rotation, and quantity of use information from the virtual marking implement and generates bitmaps in real-time that correspond best to the measured tilt, bearing, rotation, and quantity of use based on a combination of physical marking implement settings, curves, and measurements. The drawing application then adjusts the bitmaps and renders the appropriate impression profiles on the presentation device.
In still another implementation, bitmaps are generated in real-time and stored in a cache. While rendering marks on the presentation device, the drawing application retrieves bitmaps from the cache corresponding to measured tilt, bearing, rotation, and quantity of use information. If an appropriate bitmap does not exist in the cache for the measured tilt, bearing, rotation, and quantity of use information, the drawing application generates a new bitmap for that combination of tilt, bearing, rotation, and quantity of use and stores the new bitmap in the cache.
In a first determining operation 1120, the drawing application determines the maximum bitmap size of the selected physical marking implement. In a second determining operation 1130, the drawing application then determines tip geometry based on the selected physical marking implement, selected facet, facet created by a quantity of use, and/or user created tip geometry. In a retrieving operation 1140, the drawing application uses the determined tip geometry and determined maximum bitmap size to retrieve tip parameter sets that define properties of the selected physical marking implement. These properties include, but are not limited to, scaling factors, intensity curves or functions, and/or impression profile look-up tables.
In a third determining operation 1150, the drawing application then determines bitmap sizes by applying scale factors based on tilt, bearing, barrel rotation, and/or quantity of use to the maximum bitmap size of the selected physical marking implement. There may be separate scale factors for bitmap size in the x-direction and the y-direction, or alternatively each scale factor may apply to bitmap size in both the x-direction and the y-direction. In a computing operation 1160, the drawing application then computes an offset dimension and/or a falloff based on the tilt, bearing, barrel rotation, and/or quantity of use of the virtual marking implement. The offset dimension defines the direction and magnitude of an offset between the center of intensity of each bitmap with respect to the dimensional center of each bitmap. The falloff may be used to cut a portion of the bitmap off corresponding to a position and shape of a facet combined with the tilt angle and/or barrel rotation.
In a generating operation 1170, an intensity profile is generated based on the tip parameter set, the bitmap size, and the offset/falloff dimension(s). In a creation operation 1180, the intensity profile is applied to the bitmap size to generate a bitmap unique to a specific combination of tip geometry, tilt, bearing, barrel rotation, and/or quantity of use.
In a reading operation 1230, once the drawing application detects a marking event, the drawing application reads a tilt measurement, a bearing measurement, and/or a barrel rotation measurement from the virtual marking implement. The drawing application may also read and track a quantity of use of the virtual marking implement. The quantity of use can be used to place one or more facets on the selected physical marking implement. In a selection operation 1240, the drawing application selects a bitmap from the set of bitmaps that best corresponds to the tilt, bearing, barrel rotation, and quantity of use measurements. Finally, in a rendering operation 1250, the drawing application renders the impression profile on the electronic display utilizing the geometry and intensity distribution of the selected bitmap. In another implementation, the creation operation 1210 is performed in real-time by the drawing application based on the reading operation 1230.
The I/O section 1304 is connected to one or more user-interface devices (e.g., a keyboard 1316 and a display unit 1318), a disk storage unit 1312, and a disk drive unit 1320. Display unit 1318 may be any presentation device adapted to present information to a user. Generally, in contemporary systems, the disk drive unit 1320 is a DVD/CD-ROM drive unit capable of reading the DVD/CD-ROM medium 1310, which typically contains programs and data 1322. Computer program products containing mechanisms to effectuate the systems and methods in accordance with the described technology may reside in the memory section 1304, on a disk storage unit 1312, or on the DVD/CD-ROM medium 1310 of such a system 1300. Alternatively, a disk drive unit 1320 may be replaced or supplemented by a floppy drive unit, a tape drive unit, or other storage medium drive unit. The network adapter 1324 is capable of connecting the computer system to a network via the network link 1314, through which the computer system can receive instructions and data embodied in a carrier wave. Examples of such systems include Intel and PowerPC systems offered by Apple Computer, Inc., personal computers offered by Dell Corporation and by other manufacturers of Intel-compatible personal computers, AMD-based computing systems and other systems running a Windows-based, UNIX-based, or other operating system. It should be understood that computing systems may also embody devices such as Personal Digital Assistants (PDAs), mobile phones, gaming consoles, set top boxes, etc.
When used in a LAN-networking environment, the computer system 1300 is connected (by wired connection or wirelessly) to a local network through the network interface or adapter 1324, which is one type of communications device. When used in a WAN-networking environment, the computer system 1300 typically includes a modem, a network adapter, or any other type of communications device for establishing communications over the wide area network. In a networked environment, program modules depicted relative to the computer system 1300 or portions thereof, may be stored in a remote memory storage device. It is appreciated that the network connections shown are exemplary and other means of and communications devices for establishing a communications link between the computers may be used.
In an example implementation, a drawing module that performs operations described herein may be incorporated as part of the operating system, application programs, or other program modules. Further, a faceting module may track quantity of use of a virtual marking implement and/or place one or more facets on a selected physical marking implement based on the quantity of use in combination with tilt, bearing, and/or barrel rotation measurements. The faceting module may be a part of the drawing module or separate component. The drawing module and/or faceting module may perform any of the operations identified in
The present specification provides a complete description of the methodologies, systems and/or structures and uses thereof in example implementations of the presently-described technology. Although various implementations of this technology have been described above with a certain degree of particularity, or with reference to one or more individual implementations, those skilled in the art could make numerous alterations to the disclosed implementations without departing from the spirit or scope of the technology hereof. Since many implementations can be made without departing from the spirit and scope of the presently described technology, the appropriate scope resides in the claims hereinafter appended. Other implementations are therefore contemplated. Furthermore, it should be understood that any operations may be performed in any order, unless explicitly claimed otherwise or a specific order is inherently necessitated by the claim language. It is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative only of particular implementations and are not limiting to the embodiments shown. Changes in detail or structure may be made without departing from the basic elements of the present technology as defined in the following claims.
Claims
1. A method of determining a mark modeling a contact area between an implement and a marking surface, the method comprising:
- determining a first facet on the implement based on a first quantity of use of the implement at a first tilt measurement of a tilt sensitive device; and
- determining a geometry of the mark and an intensity distribution within the mark based on the first tilt measurement and the first determined facet, wherein the geometry of the mark and the intensity distribution within the mark are based on an orientation of the first facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
2. The method of claim 1, wherein a first marking event specifies the first tilt measurement and a bearing measurement of the tilt sensitive device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the bearing measurement.
3. The method of claim 1, wherein a first marking event specifies the first tilt measurement and a barrel rotation measurement of the tilt sensitive input device, the first facet on the implement is further based on a quantity of use of the implement at the measured tilt and barrel rotation, and at least one of the geometry of the mark and intensity distribution within the mark are further based on the barrel rotation measurement.
4. The method of claim 1, further comprising:
- selecting a tip geometry corresponding to a physical marking implement, wherein at least one of the geometry of the mark and the intensity distribution of the mark is further based on the selected tip geometry.
5. The method of claim 1, further comprising:
- receiving a first marking event that specifies the first tilt measurement of the tilt sensitive device and a second marking event that specifies a second tilt measurement of the tilt sensitive input device; and
- determining a second facet on the implement based on a second quantity of use of the implement at the second measured tilt, wherein the determining a geometry of the mark and an intensity distribution within the mark is further based on the second tilt measurement and the second determined facet, and wherein the geometry of the mark and the intensity distribution within the mark are further based on an orientation of the second facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
6. The method of claim 1, further comprising:
- presenting the mark via a presentation device.
7. A system for determining a mark modeling a contact area between an implement and a marking surface, the system comprising:
- a tilt sensitive device configured to input a first marking event that specifies a first tilt measurement of the tilt sensitive input device;
- a faceting module configured to determine a first facet on the implement based on a first quantity of use of the implement at the first measured tilt; and
- a determining module configured to determine a geometry of the mark and an intensity distribution within the mark based on the first tilt measurement and the first determined facet, wherein the geometry of the mark and the intensity distribution within the mark are based on an orientation of the first facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
8. The system of claim 7, further comprising:
- rendering circuitry configured to render the mark on the presentation device.
9. The system of claim 7, wherein the first marking event further specifies a bearing measurement of the tilt sensitive device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the bearing measurement.
10. The system of claim 7, wherein the first marking event further specifies a barrel rotation measurement of the tilt sensitive input device, the first facet on the implement is further based on a quantity of use of the implement at the measured tilt and barrel rotation, and at least one of the geometry of the mark and intensity distribution within the mark are further based on the barrel rotation measurement.
11. The system of claim 7, wherein at least one of the geometry of the mark and the intensity distribution of the mark is further based on a user selected tip geometry corresponding to a physical marking implement.
12. The system of claim 7, further comprising:
- a mapping module configured to map the geometry of the mark to an impression bitmap.
13. The system of claim 7, wherein
- the tilt sensitive device is further configured to input a second marking event that specifies a second tilt measurement of the tilt sensitive input device; wherein
- the faceting module is further configured to determine a second facet on the implement based on a second quantity of use of the implement at the second measured tilt; wherein
- the geometry of the mark and an intensity distribution within the mark is further based on the second tilt measurement and the second determined facet; and wherein
- the geometry of the mark and the intensity distribution within the mark are further based on an orientation of the second facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
14. The system of claim 7, further comprising:
- a presentation device configured to present the mark.
15. The system of claim 7, wherein the faceting module may be turned on and off by a user.
16. A method of determining a mark modeling a contact area between an implement and a marking surface, the method comprising:
- determining a facet on the implement based on a quantity of use of the implement at a tilt measurement of a tilt sensitive device; and
- finding the mark that corresponds to the tilt measurement and the determined facet in a look-up table, wherein a geometry of the mark and an intensity distribution within the mark are based on an orientation of the facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
17. The method of claim 16, wherein a marking event specifies the tilt measurement and a bearing measurement of the tilt sensitive device and the mark further corresponds to the bearing measurement in the look-up table.
18. The method of claim 16, wherein a marking event specifies the tilt measurement and a barrel rotation measurement of the tilt sensitive input device, the facet on the implement is further based on a quantity of use of the implement at the measured tilt and barrel rotation, and the mark further corresponds to the barrel rotation measurement in the look-up table.
19. The method of claim 16, further comprising:
- selecting a tip geometry corresponding to a physical marking implement, wherein the mark further corresponds to the selected tip geometry in the look-up table.
20. One or more computer-readable media storing computer-readable instructions for execution by a processor to perform a method of determining a mark modeling a contact area between an implement and a marking surface comprising:
- determining a facet on the implement based on a quantity of use of the implement at a tilt measurement of a tilt sensitive device; and
- determining a geometry of the mark and an intensity distribution within the mark based on the tilt measurement and the determined facet, wherein the geometry of the mark and the intensity distribution within the mark are based on an orientation of the facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
21. The computer-readable media of claim 20, wherein a marking event specifies the tilt measurement and a bearing measurement of the tilt sensitive device and at least one of the geometry of the mark and intensity distribution within the mark are further based on the bearing measurement.
22. The computer-readable media of claim 20, wherein a marking event specifies the tilt measurement and a barrel rotation measurement of the tilt sensitive input device, the facet on the implement is further based on a quantity of use of the implement at the measured tilt and barrel rotation, and at least one of the geometry of the mark and intensity distribution within the mark are further based on the barrel rotation measurement.
23. The computer-readable media of claim 20, wherein the method further comprises:
- selecting a tip geometry corresponding to a physical marking implement, wherein at least one of the geometry of the mark and the intensity distribution of the mark are further based on the selected tip geometry.
24. One or more computer-readable media storing computer-readable instructions for execution by a processor to perform a method of finding a mark modeling a contact area between an implement and a marking surface comprising:
- determining a facet on the implement based on a quantity of use of the implement at a tilt measurement of a tilt sensitive device; and
- finding the mark that corresponds to the tilt measurement and the determined facet in a look-up table, wherein a geometry of the mark and an intensity distribution within the mark are based on an orientation of the facet on the implement with respect to the marking surface and variations in pressure between the implement and the marking surface over the modeled contact area.
25. The computer-readable media of claim 24, wherein a marking event specifies a tilt measurement and a bearing measurement of the tilt sensitive device and the mark further corresponds to the bearing measurement in the look-up table.
26. The computer-readable media of claim 24, wherein a marking event specifies a tilt measurement and a barrel rotation measurement of the tilt sensitive input device, the facet on the implement is further based on a quantity of use of the implement at the measured tilt and barrel rotation, and the mark further corresponds to the barrel rotation measurement in the look-up table.
27. The computer-readable media of claim 24, wherein the method further comprises:
- selecting a tip geometry corresponding to a physical marking implement, wherein the mark further corresponds to the selected tip geometry in the look-up table.
Type: Application
Filed: Jan 8, 2010
Publication Date: Jul 22, 2010
Applicant: Corel Corporation (Ottawa)
Inventor: Christopher Jason Tremblay (Cantley)
Application Number: 12/684,653