WO2024150416A1 - 描画プログラム、描画装置、制御方法及び記録媒体 - Google Patents
描画プログラム、描画装置、制御方法及び記録媒体 Download PDFInfo
- Publication number
- WO2024150416A1 WO2024150416A1 PCT/JP2023/000819 JP2023000819W WO2024150416A1 WO 2024150416 A1 WO2024150416 A1 WO 2024150416A1 JP 2023000819 W JP2023000819 W JP 2023000819W WO 2024150416 A1 WO2024150416 A1 WO 2024150416A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- texture
- length
- output length
- forming elements
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/10—Texturing; Colouring; Generation of textures or colours
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/20—Drawing from basic elements
- G06T11/23—Drawing from basic elements using straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/60—Creating or editing images; Combining images with text
Definitions
- the present invention relates to a drawing program, a drawing device, a drawing method, and a recording medium, and in particular to a technique for drawing lines that involve texture expression.
- digital illustration or computer illustration there is a technique (digital illustration or computer illustration) for creating electronic illustrations using an information processing device such as a tablet.
- digital illustration applications are configured to allow various texture expressions to be added to line segments (reference lines or outlines) input using a pointing device such as a stylus or mouse.
- texture expressions include, for example, expressions that mimic so-called brush strokes, such as those drawn using a writing instrument such as a pencil or paintbrush.
- the texture of a line segment that represents a brush stroke is expressed by arranging a number of texture-forming elements (unit elements for forming texture, elements with a unique image pattern that matches the texture to be expressed; known as sprites) according to the length of the base line.
- a line segment that represents a brush stroke is expressed by multiple texture-forming elements of the image pattern defined for the brush in question, arranged in accordance with the shape and length of the line segment.
- texture expression using such a method may not be suitable for applications in which animation is generated while transforming a two-dimensional image related to a created illustration. More specifically, a method in which texture-forming elements are arranged according to the shape and length of a line segment after transformation does not ensure continuity of arrangement between the texture-forming elements arranged on the line segment before transformation, and a homogeneous expression may not be achieved. For example, when the reference line changes (stretches) as shown in Figures 14A to 14D, if texture-forming elements are arranged according to the length, changes in the arrangement density and flickering may occur during the transition of the change, as shown in Figures 15A to 15D. As a result, an animation that connects two-dimensional images before and after transformation may produce an expression that prevents stable viewing.
- Patent document 1 discloses a line drawing method that ensures uniform texture expression even when the reference line is deformed.
- the placement position of the texture-forming element is determined according to the length of the reference line, the size and transparency of the texture-forming element is set, and the texture-forming element is placed on the reference line and drawn, so the longer the reference line, the greater the amount of calculation required.
- the amount of calculation may become excessive, causing processing delays and preventing optimal viewing.
- the present invention has been made in consideration of the above-mentioned problems, and aims to provide a drawing program, drawing device, drawing method, and recording medium that generate textures that can be seamlessly switched in response to length changes and that create the desired texture expression.
- the drawing program of the present invention causes a computer that generates a texture that forms a texture representation of a line to execute the following steps: an acquisition process that acquires distribution information on the distribution pattern in a reference texture of texture forming elements that form a texture representation, for a reference texture having a reference length; a first determination process that determines an output length that indicates the length of the texture to be generated and that is different from the reference length; a second determination process that determines the placement positions of the texture forming elements in the texture having the output length based on the distribution information acquired in the acquisition process; and a generation process that generates a texture having the output length by placing the texture forming elements in the placement positions determined in the second determination process.
- the present invention makes it possible to generate textures that can be seamlessly switched in response to length changes and that create the desired texture expression.
- FIG. 1 is a diagram illustrating a reference texture according to an embodiment and a modification of the present invention
- FIG. 1 is a diagram for explaining a linked texture according to an embodiment and a modified example of the present invention
- FIG. 1 is a diagram for explaining particle correspondence according to an embodiment and a modified example of the present invention
- FIG. 2 is another diagram for explaining particle correspondence according to the embodiment and modified example of the present invention.
- FIG. 11 is yet another diagram for explaining particle correspondence according to the embodiment and modified example of the present invention.
- FIG. 1 illustrates a first class of particles according to an embodiment and a variation of the present invention.
- FIG. 1 illustrates a second class of first particles according to an embodiment and a variation of the present invention.
- FIG. 1 illustrates a first class of particles according to an embodiment and a variation of the present invention.
- FIG. 1 illustrates a second particle of a second class according to an embodiment and a variation of the present invention.
- FIG. 1 is a diagram for explaining the arrangement frequency of particles of an extended intermediate texture according to an embodiment and a modified example of the present invention
- FIG. 1 is a diagram for explaining a shortened intermediate texture according to an embodiment and a modification of the present invention
- FIG. 1 is a diagram for explaining a shortened intermediate texture according to an embodiment and a modification of the present invention
- FIG. 13 is a diagram illustrating a shortened intermediate texture according to an embodiment and a modification of the present invention
- FIG. 1 is a diagram for explaining the arrangement frequency of particles of abbreviated intermediate textures according to an embodiment and a modified example of the present invention
- FIG. 11 is another diagram illustrating a shortened intermediate texture according to an embodiment and a modified example of the present invention
- 1 is a flowchart illustrating a generation process for generating a line drawing texture, which is executed on the PC 100 according to an embodiment and a modification of the present invention
- 1 is a flowchart illustrating a drawing process for drawing a line segment using a line-drawing texture, which is executed on the PC 100 according to an embodiment and a modification of the present invention
- FIG. 1 is a diagram for explaining drawing of lines with texture representation according to the prior art
- FIG. 1 is a diagram for explaining drawing of lines with texture representation according to the prior art
- FIG. 1 is a diagram for explaining drawing of lines with texture representation according to the prior art
- FIG. 1 is a diagram for explaining drawing of lines with texture representation according to the prior art
- FIG. 1 is a diagram for explaining drawing of lines with texture representation according to the prior art
- FIG. 1 is a diagram for explaining drawing of lines with texture representation according to the prior art
- FIG. 1 is a diagram for explaining changes in appearance when lines are drawn with texture representation according to the prior art.
- FIG. 1 is a diagram for explaining changes in appearance when lines are drawn with texture representation according to the prior art.
- FIG. 1 is a diagram for explaining changes in appearance when lines are drawn with texture representation according to the prior art.
- FIG. 1 is a diagram for explaining changes in appearance when lines are drawn with texture representation according to the prior art.
- FIG. 1 is a diagram for explaining changes in appearance when lines are drawn with texture representation according to the prior art.
- the embodiment described below is an example of the application of the present invention to a PC, as an example of a rendering device, capable of generating textures that show texture representation and drawing lines with texture representation using the textures.
- the present invention can be applied to any device that can generate textures that show texture representation or draw lines with texture representation using the textures.
- FIG. 1 is a block diagram showing a hardware configuration of a PC 100 according to an embodiment of the present invention.
- the control unit 101 is a control device such as a CPU, and controls the operation of each block of the PC 100. Specifically, the control unit 101 reads out programs stored in the storage device 102, such as an operating system program and a program related to an illustration editing application that includes drawing lines with texture representation, and expands them into the memory 103 and executes them to control the operation of each block.
- programs stored in the storage device 102 such as an operating system program and a program related to an illustration editing application that includes drawing lines with texture representation
- the storage device 102 is, for example, a non-volatile memory such as a rewritable ROM, or an information storage device such as a HDD detachably connected to the PC 100.
- the storage device 102 may also include a recording medium such as a disk on which a program having functions provided by an illustration editing application is recorded, which can be accessed via a predetermined read/write interface such as an optical drive.
- the storage device 102 stores not only the above-mentioned programs, but also information such as parameters required for the operation of each block, various data used to present drawing objects, etc.
- Memory 103 is, for example, a volatile memory such as a RAM.
- Memory 103 is used not only as a development area for developing programs and the like read from storage device 102, but also as a storage area for storing intermediate data and the like output during the operation of each block. Alternatively, memory 103 is also used as an area for storing intermediate calculation results and calculation results and the like during the execution of any processing.
- the drawing unit 104 is a drawing device such as a GPU.
- the drawing unit 104 generates a screen (image) to be displayed in the display area of the display unit 110.
- the drawing unit 104 generates the screen to be displayed on the display unit 110 by drawing an object that is expanded on a two-dimensional plane and includes line segments (straight lines and curved lines) whose lengths are variable and that have texture representation.
- the screen generated by the drawing unit 104 in relation to the illustration editing application is controlled (display updated) by the display control unit 105 to be displayed on the display unit 110.
- the display unit 110 may be, for example, a display device such as an LCD.
- the display unit 110 is described as being a component of the PC 100, but the implementation of the present invention is not limited to this.
- the display unit 110 does not need to have the same housing as the PC 100, and may be an external display device that is detachably connected to the PC 100.
- the operation input unit 106 is a user interface that the PC 100 has, such as a mouse, keyboard, pen tablet, game controller, etc.
- the operation input unit 106 detects an operation input made to various interfaces, it outputs a control signal corresponding to the operation input to the control unit 101.
- the operation input unit 106 notifies the control unit 101 of the occurrence of an event corresponding to the operation input.
- textures are expressed by arranging multiple texture-forming elements along a reference line that defines the shape of a line segment.
- the texture of a brush is expressed by arranging texture-forming elements provided for the brush in a two-dimensional area defined by the line width and reference line set for the brush, in accordance with the placement frequency of the texture-forming elements per unit length determined according to the thickness of the "paint" of the brush.
- the longer the reference line the larger the size of the two-dimensional area becomes, and the more texture-forming elements are placed in the area.
- each texture-forming element is determined sequentially to avoid flickering of appearance due to deformation of the reference line, as in the method described in Patent Document 1, the amount of calculation required to draw a line segment increases as the reference line becomes longer.
- the PC 100 employs a method in which textures (raster images) in which texture-forming elements are arranged in advance for a predetermined texture expression are generated for a number of different length patterns, and a texture of a length corresponding to the deformation state of the reference line (particularly the length in the longitudinal direction) is arranged on the reference line to draw the line.
- textures raster images
- a texture of a length corresponding to the deformation state of the reference line particularly the length in the longitudinal direction
- Texture Generation First, a description will be given of generation of textures having a plurality of types of length patterns that are used for drawing lines and that have a common texture expression. In this embodiment, the generation of the textures is assumed to be provided as one of the functions of an illustration editing application.
- a texture with the same length as the reference line has been generated, then that texture can be applied to the reference line as is, thereby drawing a line segment with the textured expression indicated by that texture.
- the line segment is drawn, for example, by stretching/shortening the texture with the closest length and applying it to the reference line. At this time, the stretch/shortening ratio of the texture is determined according to the difference between the length of the texture and the length of the reference line, but if this ratio deviates significantly from 1, the textured expression of the texture is not guaranteed in the drawn line segment.
- the closest length is selected from the length patterns from which textures have been generated, and the texture having that length is stretched to L0 and applied to the reference line.
- the closest length is length L1, which is slightly shorter than L0
- texture 201 having length L1 is stretched and applied to the reference line
- a line segment is drawn that ensures a certain degree of texture expression of that texture 201.
- the closest length is length L2, which is extremely shorter than L0 (about 1/2 in the figure)
- texture 202 having length L2 is stretched to L1 and applied to the reference line
- a line segment is drawn that does not ensure the texture expression of that texture 202.
- the length of a line segment is set arbitrarily depending on the purpose of the illustration, so it is not realistic to prepare textures for infinite lengths. Furthermore, given the prerequisite that textures must be generated with a length resolution that ensures texture expression even when stretched, the number of length patterns for generating textures becomes enormous.
- textures generated for drawing lines with texture representation need to be generated within a limited range of lengths.
- textures generated for drawing lines are generated only for some length patterns, and for lines of lengths not included in those length patterns, they need to be generated so that they can be expressed by combining textures of those length patterns.
- textures generated for drawing lines with texture representation must ensure continuity in the distribution of particles on the line before and after switching texture patterns when the texture patterns are switched sequentially in response to gradual changes in the length of the line.
- line drawing textures with multiple types of length patterns must ensure that the particle placement frequency is constant, and that the amount of change in the relative placement positions of particles showing the same appearance is kept constant, even when switched sequentially to textures of different lengths.
- the particle distribution pattern in order to render lines of any length by combining limited length patterns, the particle distribution pattern must be uniform even when multiple textures are arranged in the longitudinal direction of the line, resulting in a homogeneous texture expression.
- textures when textures are arranged adjacent to each other, particles must be distributed in the boundary area in the same way as in other areas, ensuring seamless texture expression.
- condition information is obtained that defines the rules for generating the texture representation indicated by each line rendering texture (particle arrangement conditions).
- the texture of a pencil or brush cannot be expressed by uniformly coloring the two-dimensional area in which the line segment with that texture is drawn with one color at a fixed density (especially the degree of shading and blurring), so it is formed by distributing particles with a specific pixel pattern somewhat irregularly, as described above. For example, by arranging particles with density (or hue, brightness, opacity, etc.) that varies irregularly (or in a specific pattern) based on random numbers, etc., a non-uniform, heterogeneous texture like a pencil or brush stroke is formed.
- the particle distribution pattern may be determined as the particle arrangement frequency per unit length (number of particles arranged per unit length ⁇ concentration).
- the average or variance of the change in the particle hue, brightness, opacity, etc. can also be used as the particle distribution pattern.
- the condition information therefore defines the frequency of particle placement per unit length that must be guaranteed when generating a line drawing texture for texture expression that requires the generation of the line drawing texture.
- a texture having a prescribed length in the longitudinal direction (hereinafter referred to as the reference length) is generated based on the condition information, and a line drawing texture of another length pattern is generated based on this texture.
- one of the line drawing textures to be generated is a texture having a reference length (hereinafter referred to as the reference texture), and is generated by determining the placement positions of particles according to the condition information, and placing and drawing the particles at the placement positions.
- condition information may be generated by the user setting various parameters related to particle types and particle arrangement for the desired line drawing texture.
- multiple types of particles are arranged in the drawing area.
- Each particle is selected according to the texture expression to be formed. For example, in the case of a pencil, by using eight patterns of particles (raster images) as shown in FIG. 3, it is possible to show a texture expression with a certain degree of heterogeneity. More specifically, by enlarging/reducing, adjusting the opacity, and rotating any of the eight patterns of particles, it is possible to form a texture expression in which the regularity of the particle arrangement is difficult to perceive.
- the type of particle may be one type, it is preferable to employ multiple types of particles because the regularity is more easily perceived. Therefore, in this embodiment, the condition information includes information on the particle type arranged in the texture in addition to information on the frequency of particle arrangement per unit length.
- the condition information defines the placement frequency to place 32 particles per drawing area having a reference length in the longitudinal direction. More specifically, the condition information defines that for the line width for generating the texture, 32 particles (specifically, a two-dimensional distribution of 8 particles in the longitudinal direction and 4 particles in the width (short) direction) are placed in an area 401 having a reference length in the longitudinal direction. Note that in the example of FIG. 4, only one type of particle (circle) is shown to make the invention easier to understand.
- the placement positions of particles when generating the reference texture are determined, for example, by dividing the area 401 into a grid based on condition information and randomly determining the central coordinates of particles to be placed in each grid.
- the grids that line the ends in the transverse direction (top and bottom ends) are defined with margins because the image of the particle to be placed may be drawn outside the grid depending on the position of the central coordinates of the particle.
- the line segment is drawn by placing multiple textures adjacent to each other. Therefore, when the line segment drawing textures are placed adjacent to each other, they are configured so that the particles distributed at their ends (boundaries) do not become discontinuous. Therefore, the reference texture needs to be configured so that when multiple reference textures are placed adjacent to each other, a common particle pattern recursively appears in reference length units.
- lattice group 402 in the leftmost column and lattice group 403 in the rightmost column have the same particle arrangement positions.
- lattice group 402 and lattice group 403 are configured such that only half of their area is included in region 401, so the number of lattices included in region 401 is essentially 32, which is the same as the arrangement frequency per reference length defined in the condition information.
- Information about the particle placement positions determined for the reference texture is stored as information about the distribution pattern of particles in the reference texture (hereinafter referred to as reference distribution information).
- reference distribution information information about the distribution pattern of particles in the reference texture.
- the reference texture is configured to show a common particle distribution pattern at the longitudinal ends, so that by arranging them adjacently, it is possible to draw longer line segments showing a specified texture expression.
- line segments whose length is an integer multiple of the reference length can be drawn using only the reference texture while ensuring a globally uniform texture expression.
- the length of the shortest line segment that can be drawn using only the reference texture is the reference length
- the next line segment that can be drawn using only the reference texture is twice the reference length (hereinafter referred to as double length). Therefore, the illustration editing application of this embodiment generates a line drawing texture for each length determined by subdividing the length range up to double length at a specified length resolution.
- the reference texture can be used to ensure that lines of a reference length, an integer multiple of the reference length, or a length that is slightly different from these lengths are drawn with a suitable texture representation.
- the reference texture cannot be used to ensure that lines of a suitable texture representation are drawn. For this reason, the illustration editing application of this embodiment generates textures for drawing lines of gradually different lengths for lengths between 0 and the reference length and lengths between the reference length and twice as long.
- the length pattern for which the line drawing texture is generated is defined as the length corresponding to each stage when the length range up to double the length is divided into 32 stages, 64 stages, etc. (stage 0 is excluded because length 0 does not require the placement of a line drawing texture).
- the reference length is set to 64 pixels, and the double length up to 128 pixels is evenly divided into 32 stages, and the line drawing texture is generated based on the reference texture for each stage except for length 0 and the reference length.
- the length resolution is conveniently set to 32 levels, but as mentioned above, the length resolution can be set finer or coarser depending on how smoothly the line segment rendering texture should be switched in response to changes in line length. Also, equal division is not a required element, and the length for generating the line segment rendering texture can be sparsely specified for some length ranges and densely specified for other length ranges.
- the method for generating a texture for line drawing differs depending on the length of the texture to be generated (hereafter referred to as the output length), so below we will explain both the side longer than the reference length (expression extended from the reference length) and the side shorter than the reference length (expression shortened from the reference length).
- a concatenated texture hereinafter referred to as a concatenated texture
- a texture having an output length S times the reference length (1 ⁇ S ⁇ 2) is generated by determining the arrangement positions of particles in the texture based on reference distribution information related to the reference texture and information indicating the particle distribution related to the concatenated texture (hereinafter referred to as concatenated distribution information).
- the concatenated texture 502 is described as being generated as one of the line rendering textures.
- the concatenated texture 502 is formed by connecting two reference textures 501, and is replaced by two reference textures 501 when drawing lines, as described below, so generating the concatenated texture 502 is not essential for implementing the present invention.
- the texture related to the extended representation is the texture applied when the applied line segment is extended from the reference length to twice its length, so the texture expression shown by the reference texture 501 must be guaranteed during the extension process. In addition, similarity must be guaranteed in the particle distribution pattern so that flickering of appearance does not occur when the applied texture is switched. In other words, the texture related to the extended representation must be configured to show a certain similarity between textures in the local particle placement positions while keeping the particle placement frequency constant globally. In other words, the texture applied in the process of extending the line segment from the reference length to twice its length is generated by controlling the particle placement positions according to the output length so that the particle distribution pattern shown in the reference distribution information gradually approaches the particle distribution pattern shown in the connected distribution information.
- the particles distributed in the reference texture 601 are associated with the particles distributed in the linked texture 602.
- the association means associating particles that have the same relative position in the texture and show the same pattern between the reference texture 601 and the linked texture 602 as the same particle.
- particles that have been matched are particles that are maintained in a constant relative position regardless of changes in the longitudinal length in the representation in which the reference texture 601 is stretched and changes into the concatenated texture 602.
- particles that have been matched are particles that do not disappear in the process of stretching the line segment to twice the reference length, but remain in an area where the relative position is common, and are particles that are placed in the same relative position in the stretched intermediate texture.
- particles that have been matched are particles that are always placed in an area where the relative position is common, regardless of the length, in output lengths that are longer than the reference length.
- the area with a common relative position may be determined based on the lattice defined when the reference texture 601 was generated, as shown in Figures 7A to 7C, for example.
- the reference texture 601 is generated with 10 lattices (5 divisions in the longitudinal direction x 2 divisions in the transverse direction) defined in the area 701 related to the texture, as shown in Figure 7A, and either A or B particles are placed in each lattice.
- the area 701 related to the reference texture 601 is expanded twice in the longitudinal direction, each lattice is also expanded twice in the longitudinal direction, as shown in Figure 7B.
- the area 711 in Figure 7B is the same size as the area related to the linked texture 602, the area indicated by each lattice expanded twice in the longitudinal direction specifies the area in the linked texture 602 that corresponds to each lattice of the reference texture 601.
- Figure 7C shows the lattice of Figure 7B superimposed on the linked texture 602. Therefore, the lattice area of the reference texture 601 and the lattice area of the linked texture 602, identified by the lattice coordinates (M, N) using the lattice row number M and column number N, are areas that have a common relative position.
- a particle 703 of pattern B is placed in a lattice region 702 specified by the lattice coordinates (4, 1)
- a particle 713 of pattern B is placed in a lattice region 712 specified by the same lattice coordinates. Therefore, the particle 703 and particle 713 placed in the lattice region of the lattice coordinates (4, 1) can be associated between the reference texture 601 and the linked texture 602.
- particle 705 of pattern A is placed in lattice region 704 specified by lattice coordinates (3,1) in FIG. 7A, but no particle of pattern A is placed in lattice region 714 specified by the same lattice coordinates in FIG. 7C. Therefore, particle 705 placed in the lattice region of lattice coordinates (3,1) cannot be associated between reference texture 601 and linked texture 602. In other words, particle 705 cannot be associated because there is no particle of the same pattern in linked texture 602 with a small change in relative position.
- each particle distributed in the reference texture 601 and the connected texture 602 is classified into either a first category of particles that can be associated, or a second category of particles that cannot be associated. That is, the particles in the first category are particles shown in black in FIG. 7D, which maintain their arrangement in a region of a fixed relative position regardless of the length of the stretched intermediate texture.
- the particles in the second category are particles whose arrangement in a region of a fixed relative position or not changes depending on the length of the stretched intermediate texture. More specifically, the particles in the second category include first particles shown in black in FIG. 7E, which exist in the reference texture 601 but disappear from the region with a common relative position as the length of the stretched intermediate texture increases, and second particles shown in black in FIG. 7F, which do not exist in the reference texture 601 but appear as the length of the stretched intermediate texture increases.
- the linked texture 602 is generated by linking the reference texture 601
- the particles in the lattice regions at the ends of the reference texture 601 are always classified into the first category.
- the extended intermediate texture is arranged adjacently on a line segment when drawing a line segment longer than twice the length, the particles do not become discontinuous at the boundary.
- the placement position of each particle is determined for each stage of length related to the extended representation, and an extended intermediate texture is generated.
- the distribution pattern of particles at the reference length (reference distribution information) and the distribution pattern of particles at double length (linked distribution information) are determined, if particles are randomly placed in the extended intermediate texture showing the extension process, the continuity of the particle distribution pattern is not guaranteed, and the appearance may flicker.
- only particles distributed in the reference texture 601 and the linked texture 602 are used to generate the extended intermediate texture, and when determining the placement position of each particle, these particles are classified according to their characteristics, and the determination method is different for each classification according to the texture length, as follows:
- the placement position of the particle in the extended intermediate texture is determined based on the relative position of the particle in the reference texture 601 and the relative position of the particle in the linked texture 602.
- the arrangement position of the particle [i] in the extended intermediate texture is determined by moving the relative X coordinate from X i to X i ' as the output length increases. That is, the arrangement position of the particle [i] is determined so as to move sequentially from the relative coordinate in the reference texture 601 to the relative coordinate in the concatenated texture 602 as the output length increases.
- the X coordinate (absolute coordinate) X out of the arrangement position of particle [i] in the extended intermediate texture of the output length L out is expressed as follows:
- L ref denotes the reference length
- L dub denotes the double length.
- the placement positions of the first category particles placed at the ends of the extended intermediate texture are controlled so that they are placed at the same relative positions in both the reference texture 601 and the linked texture 602.
- the relative positions of the first category particles at the ends are controlled to be the same in extended intermediate textures of any length, so no processing is performed to move the relative positions of the particles depending on the output length.
- the second class of particles exists in one of the reference texture 601 and the concatenated texture 602, but there is no corresponding particle in the other texture. For this reason, in the process of decompression representation, there is no need to move the placement position to a different relative position as with the first class of particles. Therefore, for the first particle of the second class that is included only in the reference texture 601, the placement position in the decompressed intermediate texture is determined so as to maintain the relative position of the particle in the reference texture 601.
- the X coordinate (absolute coordinate) Xa out of the placement position in the decompressed intermediate texture of output length L out of a particle [i] whose X coordinate (absolute coordinate) is Xa i in the reference texture 601 is given by It can be derived as:
- the placement position in the extended intermediate texture is determined so as to maintain the relative position of the particle in the concatenated texture 602. That is, the X coordinate (absolute coordinate) Xb out of the placement position in the extended intermediate texture of the output length L out of a particle [i] whose X coordinate (absolute coordinate) is Xbi in the concatenated texture 602 is given by: It can be derived as:
- the arrangement size is determined so that the representation that disappears or appears depending on the output length is shown in the decompressed intermediate texture. That is, for the first particles, a visible arrangement size is determined for an output length close to the reference length, and an invisible arrangement size (0) is determined for an output length close to double length. For the second particles, an invisible arrangement size (0) is determined for an output length close to the reference length, and a visible arrangement size is determined for an output length close to double length. That is, the arrangement size of the first particles becomes smaller (not displayed) as the output length becomes longer, and becomes larger (displayed) as the output length becomes shorter. The arrangement size of the second particles becomes larger (displayed) as the output length becomes longer, and becomes smaller (not displayed) as the output length becomes shorter.
- the output length and placement size of each particle can be determined according to the placement frequency of the particles defined for the reference texture 601. In other words, by maintaining the placement frequency of the particles per unit length of the reference texture 601, it is possible to ensure a uniform texture expression in the extended intermediate texture.
- maintaining the placement frequency of particles means, in this embodiment, adjusting the area occupied by the particles placed in each lattice region so that it is equal to the area of one particle in the reference texture 601 when a lattice of the same size as that used when generating the reference texture 601 is defined as shown in FIG. 8. That is, since multiple particle placement positions may be included in one lattice region depending on the output length, in this case the placement size of each particle is adjusted to 1 (default size) or less so that the sum of the sizes of all particles is 1. In other words, in this embodiment where the placement frequency of one particle per lattice region is set, if the particle placement positions determined for the output length are included in the same lattice region, the placement frequency is not guaranteed. For this reason, the placement frequency is maintained by adjusting the particle size to include 0.
- FIG. 8 shows an example in which it is possible to define, in an area 801 having an output length in the longitudinal direction, substantially 14 lattices (specifically, a two-dimensional distribution of seven in the longitudinal direction and two in the transverse direction) of the same size as those defined when generating the reference texture shown in FIG. 7.
- the lattice area 802 contains two particles 803 and 804, the arrangement sizes of the two particles are determined according to their classification. For example, if one of the particles is a particle of the first classification, the arrangement size of that particle is maintained at 1 regardless of the output length in the extended representation, so the arrangement size of the other particle is determined to be 0. Also, for example, if both particles are particles of the second classification, the arrangement size of the first particle is determined according to the size of (output length - reference length), and the arrangement size of the second particle is determined according to the size of (double length - output length).
- Figure 8 illustrates an example of an output length that allows an integer number of grids of the same size as those defined when the reference texture was generated to be defined in the longitudinal direction, but it goes without saying that the implementation of the present invention is not limited to this.
- the particle placement frequency of the extended intermediate texture may be controlled so that the difference from the particle placement frequency of the reference texture falls below a predetermined threshold value.
- the threshold value is set to an extent that no visible difference in appearance is observed between the extended intermediate texture and the reference texture.
- the particle arrangement frequency in the extended intermediate texture may be maintained by adjusting the opacity of the particles.
- it may be maintained by adjusting both the particle arrangement size and opacity.
- a line segment rendering texture (hereinafter referred to as a shortened intermediate texture) whose output length is shorter than the reference length, i.e., whose output length is S times the reference length (0 ⁇ S ⁇ 1), does not have a texture that can be used as a specific guide for particle placement positions, as in the case of a concatenated texture.
- a texture hereinafter simply referred to as a shortened texture
- the placement positions of particles in a shortened intermediate texture for an output length are determined based on reference distribution information for the reference texture and shortened distribution information indicating the distribution state of particles in a shortened texture generated for the output length.
- FIG. 9A illustrates a reference texture 901 and a shortened texture 902 in which the reference texture 901 is shortened by half in the longitudinal direction.
- the particles are compressed in the longitudinal direction overall, so the same texture expression as the reference texture 901 is not guaranteed.
- the particle arrangement density may be higher than that of the reference texture 901, as shown in FIG. 9B.
- the particle arrangement frequency changes, so in order to generate a shortened intermediate texture, it is necessary to adjust the particle arrangement size in the same way as the decompressed representation.
- the adjustment of placement size may be performed in the same manner as that performed for the second category of particles in the extended intermediate texture. For example, as shown in FIG. 10, when a grid of the same size as that used when generating the reference texture 901 is defined in the area related to the shortened texture 902, the sum of the sizes of all particles placed in each grid area may be adjusted to 1.
- FIG. 9C shows an example of a shortened intermediate texture of 1/2 length that is generated by determining the position and size of the particles in this way.
- the area in which the particles are placed has sufficient length in the longitudinal direction, so the placement size of the particles at the ends can be made the same as that of the reference texture 901.
- the longitudinal length of the particles may exceed the output length, so for output lengths that are equal to or less than the longitudinal length of the particles, the particles may be compressed in the longitudinal direction as shown in Figure 11 to prevent changes in the texture representation due to overlapping particles.
- a method of adjusting the particle arrangement size in order to maintain the particle arrangement frequency is used in generating the shortened intermediate texture, but the implementation of the present invention is not limited to this.
- the particle arrangement frequency in the shortened intermediate texture may be maintained by adjusting the opacity of the particles.
- it may be maintained by adjusting both the particle arrangement size and opacity.
- each pattern By arranging the particles of each pattern at the placement positions and sizes determined in this manner, it is possible to generate textures that provide a common texture expression for multiple output lengths up to twice the length. Details will be described later, but the generated line segment drawing textures (reference texture, concatenated texture, extended intermediate texture, and shortened intermediate texture) can each be used to provide a uniform texture expression for line segments with lengths from 0 to twice the length.
- each of the line segment drawing textures is configured to be arranged adjacent to each other, it is possible to provide a uniform texture expression for line segments longer than twice the length by using multiple line segment drawing textures.
- textures for line drawing are generated for each length stage that is evenly divided into 32 stages up to double length, and when drawing a line segment whose length changes, these are switched to and applied in sequence according to the line length. Details will be described later, but when drawing a line segment whose length is less than double length and for which no line drawing texture has been generated, for example, the longest line drawing texture shorter than that length is stretched to the length of the line and used. Then, when the line segment is stretched to reach the next length stage, the texture for that length stage is switched to.
- the line segment drawing texture is configured so that the user does not perceive the change in texture applied to the drawn line segment. Therefore, it is assumed that information regarding particle arrangement is determined so that a certain degree of similarity in the particle distribution pattern is guaranteed between the line segment drawing texture of one length stage (first length) and the line segment drawing texture of the next longest length stage (second length).
- the texture of the first length (hereinafter referred to as the first texture) is stretched as necessary and applied to line segments whose length is equal to or greater than the first length and less than the second length. Therefore, when the line segment is stretched from the first length and reaches the second length, a switch is made from the first texture to the texture of the second length (hereinafter referred to as the second texture).
- the placement size of each particle is adjusted according to the output length so that the placement frequency of the particles remains constant regardless of the output length, and the placement position is also adjusted based on the distribution pattern in the reference texture or linked texture according to the output length so that the relative position within the texture area is maintained. Therefore, the extent to which a difference appears in the distribution pattern of the particles between the first texture and the second texture, i.e., how easily the user perceives the change when switching from the first texture to the second texture, depends on the difference in the lengths corresponding to each texture (the first length and the second length).
- the degree to which the first texture is stretched before switching to the second texture also depends on the magnitude of the difference in length that each texture corresponds to.
- the first texture and the second texture in order to generate a line drawing texture that ensures a consistent texture expression and that makes it difficult for the user to perceive the change, it is preferable to configure the first texture and the second texture so that their similarity when made equal in length is equal to or greater than a threshold.
- the texture expression (appearance) formed by the distributed particles when the first texture is stretched to the second length is similar to the second texture, the user will not perceive a change in the line drawing texture in the process of stretching or shortening the line, and will get the impression that seamless texture expression is guaranteed.
- types of textures are generated as line rendering textures, each of which is generated as T[m] (m is an integer such that 0 ⁇ m ⁇ N).
- the longitudinal length of T[m] is S[m] times the reference length
- the relationship between m and S[m] is (when the length is determined by equally dividing up to Se times).
- T[m] has a length S[m] times the reference length
- T[m+1] has a length S[m+1] times the reference length. Therefore, the difference in the longitudinal length between the texture T[m] of the first length and the texture T[m+1] of the second length is
- L ref is the reference length.
- the line segment by configuring the line segment to switch to a different line segment rendering texture every time the line segment length changes by one pixel, it is possible to present a stretched representation that ensures a more uniform texture without displaying a stretched texture.
- the number N of such length patterns is given by It can be derived as:
- the number of length patterns is not limited to the above-mentioned 32, but can be set to any value such as 64 or 128 depending on the required quality of the line drawing texture (how inconspicuous the difference is when switching) and the reference length.
- the line segment can be drawn using a single texture T[31], but this is replaced with two reference textures T[15] before drawing.
- the concatenated texture T[31] is originally generated by concatenating two reference textures T[15], even if T[30] is replaced with two T[15] at the length where T[30] switches to T[31], the user will not be able to recognize the replacement.
- two adjacent textures T[23] with a length of 1.5 are applied to draw the line segment with texture expression. That is, as the line segment extends, the two reference textures that were applied when the line segment was twice as long are successively switched to longer textures according to the length of the line segment. Then, when the line segment reaches four times its reference length, both textures are switched to double-length texture T[31] (concatenated texture), and these are replaced by two reference textures T[15], respectively, just as when a double-length line segment is drawn. Therefore, when the line segment extends beyond four times its reference length, each of the successively replaced textures is switched to a texture of a different length.
- the number of line rendering textures applied doubles every time the length of a line segment becomes 2 N times the reference length (replaced with 2 N reference textures). Therefore, the number of textures used to render a line segment can be derived (2 N ) from the number of times N that can be bit-shifted to the right until the integer value becomes 0 when the value obtained by dividing the length of the line segment by the reference length is cast into an integer type and expressed in binary .
- the control unit 101 generates a reference texture based on the input condition information, and acquires reference distribution information for the generated reference texture.
- the condition information includes information on the particle pattern to be arranged in the reference texture, information on the particle arrangement frequency per unit length, and information on the reference length.
- the control unit 101 acquires the reference distribution information by determining the particle arrangement positions of each pattern so as to satisfy the particle arrangement frequency based on the condition information.
- the control unit 101 determines the output length for each of the line drawing textures to be generated other than the reference texture.
- the output length for each texture is determined by dividing the length range from 0 to the maximum length equally into a predetermined number of divisions, with the reference length multiplied by a predetermined integer value as the maximum length.
- the predetermined integer value is 2, and the number of divisions is 32.
- the predetermined integer value and the number of divisions may be predetermined, or may be determined based on, for example, an input by a user.
- control unit 101 determines particle placement positions based on the reference distribution information for each of the line segment rendering textures to be generated.
- the control unit 101 also determines the particle placement size as necessary. More specifically, the control unit 101 determines particle placement positions using different methods for output lengths (output lengths related to extended representations) that are longer than the reference length among the output lengths determined in S1202 and output lengths (output lengths related to shortened representations) that are shorter than the reference length.
- the control unit 101 For the output length related to the expanded representation, the control unit 101 first generates a concatenated texture by concatenating reference textures, and obtains concatenated distribution information for the generated concatenated texture. The control unit 101 then matches particles distributed in the reference texture with particles distributed in the concatenated texture based on the reference distribution information and concatenated distribution information, and classifies the particles. Next, the control unit 101 determines the placement position of each particle for each output length according to the classification. For particles in the second classification, the control unit 101 also determines the placement size based on the reference distribution information, concatenated distribution information, particle classification information, and particle placement frequency information.
- control unit 101 converts the reference distribution information according to each output length to obtain shortened distribution information corresponding to the output length.
- the control unit 101 determines the placement position of each particle based on the shortened distribution information.
- the control unit 101 also determines the placement size based on the shortened distribution information, the priority of the particle, and information on the placement frequency of the particle.
- the drawing unit 104 under the control of the control unit 101, the drawing unit 104 generates line drawing textures (extended intermediate textures and shortened intermediate textures) for each output length based on the information on the placement position and placement size of each particle determined in S1203. That is, the drawing unit 104 generates line drawing textures for each output length by placing particles of the corresponding pattern at the determined placement positions.
- the generated textures are stored in the storage device 102 in association with the output length.
- control unit 101 obtains the length of the line segment to be drawn.
- the length of the line segment is derived based on the vector information of the reference line input to define the line segment.
- the control unit 101 determines whether the length of the line segment acquired in S1301 is less than twice the length of the reference texture, twice the length, or more than twice the length. If the control unit 101 determines that the length of the line segment is less than twice the length of the reference texture, it moves the process to S1303; if it determines that the length is twice the length, it moves the process to S1305; and if it determines that the length is more than twice the length, it moves the process to S1307.
- the drawing unit 104 applies the line drawing texture selected in S1303 to the reference line to draw the line. At this time, if the length of the line drawing texture differs from the length of the line, the drawing unit 104 extends the line drawing texture to the length of the line before applying it.
- the drawn line is included in the screen related to the illustration editing application, and is displayed on the display unit 110 by the display control unit 105.
- the control unit 101 selects a line segment rendering texture that corresponds to the length of the line segment in S1305.
- the line segment rendering texture that corresponds to the length of the line segment is a concatenated texture, but when the control unit 101 selects the concatenated texture, it replaces it with two reference length textures.
- the drawing unit 104 under the control of the control unit 101, applies the line drawing texture (two reference textures) selected in S1305 to the reference line to draw the line.
- the drawn line is similarly included in the screen related to the illustration editing application, and is displayed on the display unit 110 by the display control unit 105.
- control unit 101 determines the number of line drawing textures to use (hereinafter referred to as the number of textures) based on the length of the line.
- control unit 101 derives the length of the section (section length) to which one line drawing texture is applied by dividing the length of the line by the number of textures.
- control unit 101 selects one line drawing texture that corresponds to the section length. More specifically, the control unit 101 selects one texture that has the longest length equal to or less than the section length among the line drawing textures related to the texture expression of the drawing target.
- the drawing unit 104 arranges the line drawing textures selected in S1308 by the number of textures and applies them to the reference line to draw the line. At this time, if the length of the line drawing texture differs from the section length, the drawing unit 104 extends each line drawing texture to the section length before applying it.
- the drawn line is similarly included in the screen related to the illustration editing application, and is displayed on the display unit 110 by the display control unit 105.
- a line segment with texture expression is drawn using a line segment drawing texture in an illustration editing application, but the implementation of the present invention is not limited to this.
- the drawing of a line segment with texture expression may be performed by any application that can use the line segment drawing texture generated by the generation process.
- the present invention relating to line segment drawing can be performed by any information processing device that acquires and stores the line segment drawing texture generated by the generation process, and it is not essential that it be performed by the application that generates the line segment drawing texture or the information processing device that generated it.
- the drawing program of this embodiment can draw lines with the desired texture expression while avoiding an increase in the amount of calculation.
- any curve formed by two or more control points can be configured to show a homogeneous texture expression throughout the curve by drawing a line drawing texture according to the length between two control points (segments) that are consecutively arranged on the curve based on a drawing process.
- each line drawing texture is configured so that the particle distribution pattern at the end is common, a drawing expression in which particles are naturally connected at the connection part of consecutive segments can be shown.
- the concatenated texture is generated by concatenating two reference textures, but the implementation of the present invention is not limited to this. From the viewpoint of minimizing the number of textures generated, it is preferable that the length of the concatenated texture that serves as the basis for generating the extended intermediate texture is twice the reference length, as described above. However, it goes without saying that the length of the concatenated texture may be any length that is a predetermined integer multiple of the reference length, and an integer value of 3 or more may be used as the predetermined integer.
- a concatenated texture is generated by concatenating three reference textures, and a line rendering texture is generated for a length range from 0 to 3 times longer. Then, in the rendering process using this line rendering texture, each time the length of a line segment becomes 3N times the reference length, three reference textures are applied instead of the concatenated texture to the section to which it is applied.
- the particles according to the first classification are associated when particles of the same pattern are distributed in a lattice region having common lattice coordinates, but the present invention is not limited to this.
- the particles according to the first classification may be associated when, for any particle of the reference texture, particles of the same pattern are distributed within a predetermined distance from a point on the connected texture having common relative coordinates with the particle.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/000819 WO2024150416A1 (ja) | 2023-01-13 | 2023-01-13 | 描画プログラム、描画装置、制御方法及び記録媒体 |
| JP2024569984A JPWO2024150416A1 (https=) | 2023-01-13 | 2023-01-13 | |
| US19/264,660 US20250336109A1 (en) | 2023-01-13 | 2025-07-09 | Recording medium, drawing apparatus, and drawing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/000819 WO2024150416A1 (ja) | 2023-01-13 | 2023-01-13 | 描画プログラム、描画装置、制御方法及び記録媒体 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US19/264,660 Continuation US20250336109A1 (en) | 2023-01-13 | 2025-07-09 | Recording medium, drawing apparatus, and drawing method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024150416A1 true WO2024150416A1 (ja) | 2024-07-18 |
Family
ID=91896680
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2023/000819 Ceased WO2024150416A1 (ja) | 2023-01-13 | 2023-01-13 | 描画プログラム、描画装置、制御方法及び記録媒体 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20250336109A1 (https=) |
| JP (1) | JPWO2024150416A1 (https=) |
| WO (1) | WO2024150416A1 (https=) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62190566A (ja) * | 1986-02-18 | 1987-08-20 | Fujitsu Ltd | 中間調画像処理装置 |
-
2023
- 2023-01-13 JP JP2024569984A patent/JPWO2024150416A1/ja active Pending
- 2023-01-13 WO PCT/JP2023/000819 patent/WO2024150416A1/ja not_active Ceased
-
2025
- 2025-07-09 US US19/264,660 patent/US20250336109A1/en active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62190566A (ja) * | 1986-02-18 | 1987-08-20 | Fujitsu Ltd | 中間調画像処理装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2024150416A1 (https=) | 2024-07-18 |
| US20250336109A1 (en) | 2025-10-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10607377B2 (en) | Rendering semi-transparent user interface elements | |
| US7602968B2 (en) | Overlaid graphical user interface and method for image processing | |
| US20040075699A1 (en) | Method and apparatus for highlighting graphical objects | |
| US8144171B2 (en) | Scale-dependent rendering of natural media styles | |
| EP0559708A1 (en) | Image synthesis and processing | |
| US12518463B2 (en) | Graphics processing unit render mode selection system | |
| JP2000003167A (ja) | アニメ―ションフォント作成方法 | |
| CN114066714B (zh) | 一种合批渲染方法、装置、设备及存储介质 | |
| CN115170709A (zh) | 动态图像的编辑方法、装置和电子设备 | |
| KR102573822B1 (ko) | 벡터 이미지의 화풍 변환 및 재생 방법 | |
| CN108133506A (zh) | 实现线条动态效果的方法、装置及系统 | |
| JP2004139411A (ja) | 毛筆描画装置、毛筆描画プログラムおよび毛筆描画方法 | |
| WO2024150416A1 (ja) | 描画プログラム、描画装置、制御方法及び記録媒体 | |
| WO2024150415A1 (ja) | 描画プログラム、描画装置、制御方法及び記録媒体 | |
| JP4291323B2 (ja) | ニットデザイン方法および装置 | |
| US8942476B1 (en) | Saturation varying and lighting independent color color control for computer graphics | |
| US20130195354A1 (en) | Saturation Varying Color Space | |
| US5739825A (en) | Computer generated hatch filling within a vector graphic | |
| CN118334227A (zh) | 一种基于三维引擎的视觉纹理映射方法及系统 | |
| JP4116325B2 (ja) | 画像表示制御装置 | |
| US6859911B1 (en) | Graphically representing data values | |
| EP0454477A2 (en) | Image editing system | |
| JP6663066B1 (ja) | 描画用プログラム、描画表現制御装置、制御方法及び記録媒体 | |
| JP7823600B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
| JPH0594167A (ja) | 画像表示方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23915201 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2024569984 Country of ref document: JP Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024569984 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 23915201 Country of ref document: EP Kind code of ref document: A1 |