Data editing device and method, storage medium and computer program product

By dividing and configuring the area of ​​3D shape data and using a processor to perform calculations and corrections, the shape discontinuity problem when converting 3D elements into polygonal shape data in the prior art is solved, and smooth 3D shape conversion is achieved.

CN112396706BActive Publication Date: 2025-09-19FUJIFILM BUSINESS INNOVATION CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202010069118.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-08-15
Filing Date
2020-01-21
Publication Date
2025-09-19
Estimated Expiration
2040-01-21

AI Technical Summary

Technical Problem

When converting the shape of an object composed of three-dimensional elements into three-dimensional shape data composed of polygons, the existing technology easily causes discontinuous shape changes and makes it difficult to maintain the smoothness of the curved surface and concave-convex parts of the original object.

Method used

By dividing the three-dimensional shape data into multiple areas and configuring three-dimensional elements according to predetermined distances and attributes, the processor performs calculations and corrections to convert it into three-dimensional shape data composed of polygons.

Benefits of technology

The smooth conversion of 3D shape data is achieved, the impact of shape changes on non-target areas is avoided, and the continuity and integrity of the object surface are ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112396706B_ABST
    Figure CN112396706B_ABST
Patent Text Reader

Abstract

A device for editing three-dimensional shape data, a storage medium, and a method for editing three-dimensional shape data. The device for editing three-dimensional shape data includes a processor that sets the distance from a predetermined location of the area to the forming surface of the three-dimensional shape of the object formed by the forming surface according to the three-dimensional shape data of the surface of the object formed by using at least one forming surface among a plurality of planes and curved surfaces divided into a plurality of three-dimensional areas.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a three-dimensional shape data editing device, a storage medium and a three-dimensional shape data editing method. Background Art

[0002] Patent document 1 discloses a method for synthesizing three-dimensional data, which is a method for expressing a shape in a boundary expression manner and synthesizing a plurality of three-dimensional data to be assigned textures into one three-dimensional data. The three-dimensional data synthesis method is characterized in that the plurality of three-dimensional data are converted from a shape expression in a boundary expression manner to a shape expression in a volume manner using feature quantities of a plurality of voxels constituting the volume, at this time, the feature quantities of the voxels are assigned the attributes of the texture, the plurality of three-dimensional data are integrated by mixing the feature quantities of the voxels, and the integrated three-dimensional data are inversely converted into a shape expression in a boundary expression manner.

[0003] Patent document 2 discloses a system for rapidly deforming a graphic object, which is used to deform a graphic object displayed together with other graphic objects. The system is characterized in that it is composed of the following units: a unit including a computer for assigning characteristics to the graphic object as an object having a volume with accompanying volume elements; a user interface connected to the computer for selecting and moving a selected one of the volume elements; a graphic object deformation unit for moving the selected volume element by an amount specified by the user interface in response to the user interface and deforming the graphic object as a result of the movement; a unit for detecting and preventing collisions between graphic objects when the graphic object is deformed; a relaxation unit for relaxing the relative positions of elements according to the elasticity of the elements; and a unit including a display for coupling to the output of the relaxation unit to reproduce the results of moving, deforming, and relaxing the graphic object having volume.

[0004] Patent Document 1: Japanese Patent Application Laid-Open No. 2001-084395

[0005] Patent Document 2: Japanese Patent Application Laid-Open No. 10-208078

[0006] When representing the three-dimensional shape of an object, three-dimensional shape data defined by combining three-dimensional elements such as rectangular parallelepipeds and cubes may be used.

[0007] In the case where a three-dimensional shape is represented by a combination of three-dimensional elements, the curved portion of the object will also be represented by the three-dimensional elements, so it is more difficult to make the surface a smooth surface compared to representing the surface of an object including curved portions by combining polygons in a shape such as a triangle.

[0008] Furthermore, when editing three-dimensional shape data composed of three-dimensional elements, a shape different from the original three-dimensional shape data will be formed using at least one of a plurality of planes and curved surfaces, so simply maintaining the original three-dimensional shape is insufficient.

[0009] Therefore, three-dimensional shape data composed of three-dimensional elements may be converted into three-dimensional shape data composed of polygons. However, when using conventional conversion methods such as the MC (Marching Cubes) method, which generates continuous planes by applying polygons to the presence or absence of three-dimensional elements, the data may not be altered, resulting in a shape that differs from the original three-dimensional shape of the object (for example, curved or concave portions of the object are represented along the shape of the three-dimensional elements). Summary of the Invention

[0010] The object of the present invention is to provide a three-dimensional shape data editing device, a storage medium and a three-dimensional shape data editing method capable of converting the three-dimensional shape of an object composed of three-dimensional elements into a three-dimensional shape composed of polygons.

[0011] The three-dimensional shape data editing device involved in the first method includes a processor, which sets the distance from a predetermined location of the area to the forming surface of the three-dimensional shape of the object formed by the forming surface according to the three-dimensional shape data of the surface of the object formed by the three-dimensional shape of the object divided into a plurality of three-dimensional areas using at least one forming surface among a plurality of planes and curved surfaces.

[0012] The editing device for three-dimensional shape data involved in the second embodiment is a device for editing three-dimensional shape data involved in the first embodiment. In a case where the forming surface located at a position represented by the distance from the predetermined place interferes with the area of ​​the predetermined place including the measurement point of the distance, the processor arranges three-dimensional elements in the area where the forming surface interferes, and converts the three-dimensional shape of the object formed by the forming surface into a three-dimensional shape formed by the three-dimensional elements.

[0013] A three-dimensional shape data editing device according to a third aspect is the three-dimensional shape data editing device according to the second aspect, wherein the processor sets an attribute indicating a property of the region for each of the regions.

[0014] A three-dimensional shape data editing device according to a fourth aspect is the three-dimensional shape data editing device according to the second aspect, wherein the processor sets an attribute indicating a property of each of the regions where the three-dimensional elements are arranged.

[0015] In the editing device for three-dimensional shape data involved in the fifth embodiment, in the editing device for three-dimensional shape data involved in the third embodiment, the processor refers to the attributes of each of the three-dimensional areas, and when the attributes satisfy a predetermined condition that does not require the configuration of three-dimensional elements, the processor does not configure three-dimensional elements in the area where the attributes that satisfy the predetermined condition are set.

[0016] The editing device for three-dimensional shape data involved in the sixth embodiment is an editing device for three-dimensional shape data involved in any one of the first to fifth embodiments, wherein the processor changes the three-dimensional shape of the object composed of three-dimensional elements and at least one of the new three-dimensional shapes formed from the three-dimensional shape composed of the three-dimensional elements using the forming surface by changing the distance set in the area.

[0017] The editing device for three-dimensional shape data involved in the seventh embodiment is a device for editing three-dimensional shape data involved in the sixth embodiment, wherein the processor changes the three-dimensional shape of the object composed of three-dimensional elements and at least one of the new three-dimensional shapes composed of the three-dimensional elements using the forming surface by performing an operation on the distance set in the area, and the operation is at least one of addition, subtraction, multiplication, division, replacement and comparison.

[0018] A three-dimensional shape data editing device according to an eighth aspect is the three-dimensional shape data editing device according to the seventh aspect, wherein the processor changes the value based on an attribute indicating a property of the region.

[0019] In the editing device for three-dimensional shape data involved in the 9th embodiment, in the editing device for three-dimensional shape data involved in the 6th embodiment, the processor compares the distances set in the area of ​​the three-dimensional shape of the object including different shapes according to the area, selects any one of the distances according to the area based on the selection rule common to each area, and sets the selected distance as the new distance in the area, thereby changing the three-dimensional shape of the object composed of three-dimensional elements.

[0020] A three-dimensional shape data editing device according to a tenth aspect is the three-dimensional shape data editing device according to any one of the sixth to ninth aspects, wherein the processor specifies a range of the area in which the distance is to be changed.

[0021] The editing device for three-dimensional shape data involved in the 11th method includes a processor that converts a three-dimensional shape composed of three-dimensional elements in the area at a distance from a predetermined location where the area is divided into a plurality of three-dimensional areas to the forming surface of the three-dimensional shape of an object composed of at least one forming surface among a plurality of planes and curved surfaces into a new three-dimensional shape composed of the forming surface.

[0022] The editing device for three-dimensional shape data involved in the 12th embodiment is a device for editing three-dimensional shape data involved in the 11th embodiment, wherein the processor configures the forming surface at a boundary between a first area in the area where three-dimensional elements are configured and a second area in the area where no three-dimensional elements are configured, and corrects the vertices of the forming surface configured at the boundary between the first area and the second area according to a ratio of the distances set respectively in the first area and the second area.

[0023] A three-dimensional shape data editing device according to a thirteenth aspect is the three-dimensional shape data editing device according to the twelfth aspect, wherein the processor corrects the ratio of the distance based on an attribute indicating a property of the region.

[0024] The storage medium involved in the 14th method records the following three-dimensional shape data editing program: it is used to enable a computer to set the distance from a predetermined location of the area to the forming surface of the three-dimensional shape of the object formed by the forming surface according to the three-dimensional shape data of the surface of the object formed by using at least one forming surface among a plurality of planes and curved surfaces divided into a plurality of three-dimensional areas.

[0025] The storage medium involved in the 15th method records the following three-dimensional shape data editing program: used to enable a computer to convert a three-dimensional shape composed of three-dimensional elements in the area where the distance from a predetermined location of the area divided into a plurality of three-dimensional areas to the forming surface of the three-dimensional shape of an object composed of at least one forming surface among a plurality of planes and curved surfaces is set, into a new three-dimensional shape composed of the forming surface.

[0026] The three-dimensional shape data editing device method involved in the 16th method includes the following steps: according to the three-dimensional shape data of the surface of the three-dimensional shape of an object formed by using at least one forming surface among a plurality of planes and curved surfaces, the three-dimensional shape of the area is divided into a plurality of three-dimensional areas, and the distance from a predetermined location of the area to the forming surface of the three-dimensional shape of the object formed by the forming surface is set.

[0027] The three-dimensional shape data editing device method involved in the 17th method includes the following steps: converting the three-dimensional shape of the area composed of three-dimensional elements at a distance from a predetermined place where the area is set according to the division into multiple three-dimensional areas to the forming surface of the three-dimensional shape of an object composed of at least one forming surface among multiple planes and curved surfaces into a new three-dimensional shape composed of the forming surface.

[0028] Effects of the Invention

[0029] According to the first, fourteenth and sixteenth methods, the following effect is achieved: three-dimensional shape data of a surface forming a three-dimensional shape of an object using at least one of a plurality of planes and curved surfaces can be converted into three-dimensional shape data composed of three-dimensional elements.

[0030] According to the 11th aspect, the 15th aspect, and the 17th aspect, there is an effect in that the three-dimensional shape of an object composed of three-dimensional elements can be converted into a three-dimensional shape composed of polygons.

[0031] According to the second aspect, there is an effect that three-dimensional elements can be arranged along the three-dimensional shape of an object.

[0032] According to the third aspect, there is an effect that the properties of the region can be associated with the region where no three-dimensional elements are arranged.

[0033] According to the fourth aspect, there is an effect that the properties of the region can be associated with the three-dimensional elements.

[0034] According to the fifth aspect, there is an effect that the three-dimensional shape can be changed according to the attributes of the region.

[0035] According to the sixth method, the following effect is achieved: compared with the case where the three-dimensional shape of an object is changed by correcting the configuration of at least one forming surface in an object composed of multiple planes and curved surfaces, the three-dimensional shape of the object can be changed easily and seamlessly.

[0036] According to the seventh method, the following effect is achieved: compared with the case where the three-dimensional shape of an object is changed by correcting the configuration of at least one forming surface in an object composed of a plurality of planes and curved surfaces, the three-dimensional shape can be changed without affecting the surrounding area continuous with the range to be deformed.

[0037] According to the eighth aspect, there is an effect in that the arrangement position of the three-dimensional element can be adjusted according to the attribute of the region.

[0038] According to the ninth aspect, there is an effect that objects can be synthesized easily and seamlessly, compared to synthesizing objects by correcting the configuration of the forming surfaces of at least one forming surface among a plurality of planes and curved surfaces.

[0039] According to the tenth method, the following effect is achieved: compared to the case where the three-dimensional shape of an object is changed by correcting the configuration of at least one forming surface in an object composed of a plurality of planes and curved surfaces, it is possible to change only the shape of the range to be deformed without being restricted by the partitions or boundaries of the planes and curved surfaces.

[0040] According to the twelfth aspect, there is an effect that even if the shape of an object composed of three-dimensional elements is changed, it can be converted into a new three-dimensional shape composed of at least one forming surface among a plurality of flat surfaces and curved surfaces.

[0041] According to the thirteenth aspect, there is an effect that the arrangement position of the formation surface can be adjusted according to the attribute of the region. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] Embodiments of the present invention will be described in detail with reference to the following drawings.

[0043] Figure 1 is a diagram showing an example of the structure of an editing device;

[0044] Figure 2 is a diagram showing an example of a three-dimensional shape of an object represented by a polygon;

[0045] Figure 3 is a diagram showing an example of a three-dimensional shape of an object represented by voxels;

[0046] Figure 4 is a flowchart showing an example of the flow of voxel conversion processing;

[0047] Figure 5 1 is a diagram showing an example of dividing a three-dimensional coordinate space in which an object is arranged into a plurality of regions;

[0048] Figure 6 This diagram illustrates the SDF of a region and the interference between the region and an object composed of polygons.

[0049] Figure 7 This is a diagram showing an example of the arrangement of voxels;

[0050] Figure 8 FIG. 1 is a diagram showing an example of three-dimensional shape data of an object generated by voxel conversion processing;

[0051] Figure 9 This is a flowchart showing an example of the flow of polygon arrangement processing;

[0052] Figure 10 FIG. 1 is a diagram showing an example of three-dimensional shape data used for explaining polygon arrangement processing;

[0053] Figure 11 is a diagram showing an example of a determination area;

[0054] Figure 12 FIG. 1 is a diagram showing an example of arranging polygons on an object composed of voxels;

[0055] Figure 13 FIG. 1 is a diagram showing an example of three-dimensional shape data of an object composed of polygons generated by polygon arrangement processing;

[0056] Figure 14 is a flowchart showing an example of the flow of polygon correction processing;

[0057] Figure 15 FIG. 1 is a diagram showing an example of three-dimensional shape data used for explaining polygon correction processing;

[0058] Figure 16 FIG. 1 is a diagram showing another example of three-dimensional shape data of an object composed of polygons generated by polygon arrangement processing;

[0059] Figure 17 FIG. 1 is a diagram showing an example of a first determination area;

[0060] Figure 18 This is a diagram illustrating correction of the polygon in the first determination area;

[0061] Figure 19 is a diagram showing an example of the second determination area;

[0062] Figure 20 A diagram illustrating correction of the polygon in the second determination area;

[0063] Figure 21 FIG. 1 is a diagram showing an example of the third determination area;

[0064] Figure 22 This is a diagram illustrating correction of the polygon in the third determination area;

[0065] Figure 23 FIG. 1 is a diagram showing an example of three-dimensional shape data of an object composed of polygons generated by polygon correction processing;

[0066] Figure 24 FIG. 1 is a diagram showing an example of three-dimensional shape data used for explaining a deformation process of a polygon;

[0067] Figure 25A diagram illustrating points to note regarding the shape of an object defined by three-dimensional shape data;

[0068] Figure 26 FIG. 1 is a diagram showing an example of three-dimensional shape data obtained by reducing an object;

[0069] Figure 27 FIG. 1 is a diagram showing an example of three-dimensional shape data obtained by enlarging an object;

[0070] Figure 28 FIG. 1 is a diagram showing an example of three-dimensional shape data obtained by specifying a subtracted value for each region;

[0071] Figure 29 FIG. 1 is a diagram showing an example of dividing a region to be operated on into a plurality of groups;

[0072] Figure 30 1 is a diagram showing an example of three-dimensional shape data obtained by replacing SDF by group;

[0073] Figure 31 FIG. 1 is a diagram showing another example of three-dimensional shape data used for explaining deformation processing of polygons;

[0074] Figure 32 FIG. 1 is a diagram showing an example of three-dimensional shape data obtained by determining the sign of the SDF set in the region;

[0075] Figure 33 This is a diagram showing an example of three-dimensional shape data obtained by synthesizing two three-dimensional shape data.

[0076] Explanation of symbols

[0077] 2-object, 4-polygon, 6-voxel, 8-area, 10-editing device, 12-computer, 12A-CPU, 12B-ROM, 12C-RAM, 12D-non-volatile memory, 14-operation unit, 16-display unit, 18-communication unit, 20-determination area, 22-contour, 24-correction point, 26-center of area, 28-group. DETAILED DESCRIPTION

[0078] Hereinafter, the present embodiment will be described with reference to the accompanying drawings. In all the drawings, the same components and processes are denoted by the same reference numerals, and repeated descriptions are omitted.

[0079] First, refer to Figure 1 The configuration of a three-dimensional shape data editing device 10 according to this embodiment will be described.

[0080] The editing device 10 is comprised of, for example, a computer 12. The computer 12 includes a CPU (Central Processing Unit) 12A, an example of a processor; a ROM (Read Only Memory) 12B; a RAM (Random Access Memory) 12C; a nonvolatile memory 12D; and an input / output (I / O) interface 12E. The CPU 12A, ROM 12B, RAM 12C, nonvolatile memory 12D, and I / O 12E are interconnected via a bus 12F. Furthermore, an operation unit 14, a display unit 16, and a communication unit 18 are connected to the I / O 12E.

[0081] The nonvolatile memory 12D is an example of a storage device that maintains stored information even when power to the nonvolatile memory 12D is cut off. For example, a semiconductor memory is used, but a hard disk can also be used. The nonvolatile memory 12D does not need to be built into the computer 12 and can be a portable storage device such as a memory card that is removable from the computer 12.

[0082] The operation unit 14 is a functional unit that receives instructions from a user of the editing device 10 , and is configured to include input devices such as a mouse, a keyboard, and a touch panel.

[0083] The display unit 16 is a functional unit that displays information processed by the CPU 12A, and is configured to include display devices such as a liquid crystal display and an organic EL (Electro Luminescence) display.

[0084] The communication unit 18 is connected to a communication line such as the Internet or a LAN (Local Area Network), and has an interface for performing data communication with an external device connected to the communication line.

[0085] Figure 2 : is a diagram showing an example of the three-dimensional shape of the object 2 represented by the three-dimensional shape data. Figure 2 As shown, the editing device 10 uses XYZ coordinates represented by the X, Y, and Z axes to represent the three-dimensional shape of the object 2. Hereinafter, the XYZ coordinates are referred to as "three-dimensional coordinate space" and the three-dimensional shape of the object 2 is simply referred to as "the shape of the object 2."

[0086] As a data format of three-dimensional shape data, for example, a data format in which polygons 4 are combined to form the surface of the object 2 may be used.

[0087] Polygons 4 are the planar or curved surfaces that form the shape of object 2. The shape of polygons 4 is not limited; for example, polygons such as triangles or quadrilaterals can be used, and the shape of object 2 can be formed by combining multiple polygons 4. Specifically, the three-dimensional shape data defining the shape of object 2 using polygons 4 includes, for example, the position and arrangement direction of each polygon 4, and information regarding connections with adjacent polygons 4.

[0088] In addition, in addition to polygons, a data format in which a functional surface such as a combined spline surface or a Bezier surface is used to constitute the surface of the object 2 can also be used.

[0089] When the shape of the object 2 is to be changed by editing the three-dimensional shape data that defines the shape of the object 2 using the polygon 4 through the editing device 10, adjacent polygons 4 share vertices and edges to represent the shape of the object 2. Therefore, if the shape of the part of the object 2 that the user wants to change is changed, the influence of the deformation will successively affect the deformed part and even the adjacent polygons 4, and sometimes the shape of the object 2 in the part that was unintentionally deformed will be changed.

[0090] Therefore, the editing device 10 converts the three-dimensional shape data defining the shape of the object 2 using polygons 4 into three-dimensional shape data defined using voxels 6 , and changes the shape of the object 2 by editing the three-dimensional shape data composed of voxels 6 .

[0091] The voxel 6 is a basic element constituting the three-dimensional shape of the object 2. For example, a cube is used, but the present invention is not limited to a cube. Other three-dimensional elements such as a cuboid, a triangular pyramid, a sphere, and a cylinder may also be used. In other words, the voxel 6 is an example of a three-dimensional element.

[0092] The desired three-dimensional shape of the object 2 is expressed by stacking voxels 6. Each voxel 6 can also be assigned attributes such as color, intensity, material, and texture, indicating the properties of the voxel 6. The color and material of the object 2 can be expressed based on the presence or absence of voxels 6 and the attributes of the voxels 6.

[0093] "Material" includes information indicating the category of materials such as resin, metal, rubber, etc., information indicating the name of materials such as ABS, PLA, etc., information indicating the product name and product number of commercially available materials, information indicating the material name, abbreviation, number, etc. specified by standards such as ISO and JIS, and at least one of information indicating material properties such as thermal conductivity, electrical conductivity, and magnetism.

[0094] Furthermore, “texture” refers to physical property information or attributes of the texture, such as reflectivity, transmittance, gloss, and surface characteristics of the object 2 , not just color.

[0095] Attributes also include attribute patterns set using at least one of a period, a formula, and other three-dimensional shape data. Attribute patterns include at least one of the following: continuously changing the color, material, or texture of three-dimensional shape data based on repetition of a certain period, gradation, expression based on a slope or extreme point expressed by a formula, or other three-dimensional shape data; or filling a specified range of three-dimensional shape data with a specified shape or continuously changing the specified range.

[0096] As described above, the shape of the object 2 is represented by a set of voxels 6 , specifically, for example, by element values ​​of X, Y, and Z coordinates in a three-dimensional coordinate space.

[0097] Figure 3 This diagram shows an example of the shape of object 2 represented by voxel 6. If coordinates in a three-dimensional coordinate space are represented by (X, Y, Z), then if voxel 6 exists at the coordinates (X, Y, Z), for example, "(X, Y, Z) ≥ 1" is assumed. On the other hand, if voxel 6 does not exist at the coordinates (X, Y, Z), the shape of object 2 is represented by "(X, Y, Z) = 0." In other words, the three-dimensional shape data defining the shape of object 2 using voxel 6 includes element values ​​of the coordinates (X, Y, Z) indicating the presence or absence of voxel 6, and attributes that establish a corresponding relationship with voxel 6.

[0098] The shape of object 2 is not necessarily represented by coordinates (X, Y, Z) in a three-dimensional coordinate space; for example, it can also be represented by an index number uniquely associated with the coordinates (X, Y, Z). In this case, if the value associated with the index number is "1," it indicates that voxel 6 exists at the location indicated by the index number. This index number serves as a number for identifying region 8, which will be described later.

[0099] Furthermore, the three-dimensional coordinate space is not limited to three-dimensional orthogonal coordinates such as X, Y, and Z. For example, polar coordinates using r and θ can also be used. In this case, similar to how the three-dimensional coordinate space can be represented by index numbers (1, 2, 3, ...) at intervals of X, Y, and Z, a correspondence can be established between the intervals of r and θ and the index numbers, and a value of 1 or greater can be assigned to the position represented by the index number to indicate the presence of voxel 6. Furthermore, by associating voxels 6 of different shapes with values ​​of 1 or greater, voxels 6 of the shape corresponding to the set value will be located at the specified position in the three-dimensional coordinate space.

[0100] When the three-dimensional shape data defined by voxels 6 is modified to change the shape of object 2, the three-dimensional shape data represents the shape of object 2 based on the presence or absence of voxels 6. This prevents the deformation from affecting areas other than the area intended by the user, as occurs when the three-dimensional shape data defined by polygons 4 is modified to change the shape of object 2. In other words, when the shape of object 2 is modified by editing the three-dimensional shape data defined by voxels 6, such as by adding or deleting voxels 6, deformation can be performed only on the area intended by the user.

[0101] Furthermore, when the shape of object 2 is changed by correcting the three-dimensional shape data defined by polygon 4, the following situation may sometimes occur: the connection state of polygon 4 changes, resulting in the inability to connect the edges and vertices of polygons 4 to form gaps on the surface of object 2 or the polygons 4 intersecting with each other. This situation will not occur when the shape of object 2 is changed by correcting the three-dimensional shape data defined by voxel 6.

[0102] However, the three-dimensional shape data defined by voxel 6 represents the shape of object 2 by a combination of voxels 6, and thus, compared with the case where object 2 is constructed using polygons 4, it is easier to produce bumps and depressions on the curved surface part of the constructed object 2, which may sometimes be different from the shape before the shape of object 2 is constructed by voxels 6.

[0103] Therefore, in the editing device 10 , deformation of the object 2 is performed using the three-dimensional shape data defined by the voxels 6 , and the three-dimensional shape data defined by the voxels 6 is converted into new three-dimensional shape data defined by the polygons 4 .

[0104] In addition, the three-dimensional shape itself can be changed by actually adding and deleting voxels 6 from the three-dimensional shape data defined by voxel 6, and it is also possible to generate new three-dimensional shape data reflecting arbitrary deformation when converting the three-dimensional shape defined by voxel 6 into new three-dimensional shape data defined by polygon 4 without changing the three-dimensional shape.

[0105] Figure 4 This is a flowchart showing an example of the flow of voxel conversion processing executed by the CPU 12A of the editing device 10 when converting three-dimensional shape data defining the shape of the object 2 using polygons 4 into three-dimensional shape data defined using voxels 6 .

[0106] Regulation Figure 4 The editing program for the voxel conversion process is stored in advance in, for example, the ROM 12B of the editing device 10. The CPU 12A of the editing device 10 reads the editing program stored in the ROM 12B and executes the voxel conversion process.

[0107] First, in step S10 , the CPU 12A divides the three-dimensional coordinate space in which the object 2 represented by the three-dimensional shape data defined by the polygons 4 (hereinafter referred to as “the object 2 composed of polygons 4 ”) is arranged into a plurality of areas 8 .

[0108] Figure 5 1 is a diagram showing an example of dividing a three-dimensional coordinate space in which an object 2 composed of polygons 4 is arranged into a plurality of regions 8. Figure 5 In the example of FIG, a three-dimensional coordinate space is divided into a grid along the XY plane, the XZ plane, and the YZ plane. Figure 5 In the example shown in FIG. 1 , an object 2 composed of polygons 4 is viewed from a direction opposite to an XZ plane including the X-axis and the Z-axis. Each divided region 8 is represented by a three-dimensional shape (a cube in this example). However, for the sake of convenience, in the following description, Figure 5 As shown, the description will be made using a two-dimensional diagram showing the state when the object 2 divided into a plurality of regions 8 is viewed from a direction perpendicular to the XZ plane. Therefore, it should be noted that the object 2 actually has depth in the Y-axis direction.

[0109] exist Figure 5 , an example of dividing the three-dimensional coordinate space in which the object 2 composed of polygons 4 is arranged into a grid along the XY plane, the XZ plane, and the YZ plane is shown, but the method of dividing the three-dimensional coordinate space into a plurality of areas 8 is not limited to this.

[0110] For example, the three-dimensional coordinate space can be divided into different intervals in the X, Y, and Z directions, and the three-dimensional coordinate space can be divided into a plane that is not along any of the XY plane, the XZ plane, and the YZ plane. In addition, the three-dimensional coordinate space can be divided into a plurality of regions 8 using curved surfaces. Furthermore, the three-dimensional coordinate space can be divided in such a way that the shape of the divided regions 8 becomes a predetermined arbitrary shape such as a sphere, a cylinder, a polyhedron such as a triangular prism or a pentagonal prism, a triangular pyramid, or a cone. The following is an example of dividing the three-dimensional coordinate space into a plurality of regions 8 such as a cube with a side length of 10 mm.

[0111] In step S20, the CPU 12A selects any one area 8 from the areas 8 divided in step S10. The area 8 selected in step S20 is referred to as a selected area 8.

[0112] In step S30 , the CPU 12A determines whether the object 2 formed by the polygon 4 interferes with the selection area 8 .

[0113] The object 2 interfering with the selection area 8 means that the polygon 4 representing the outline of the object 2 is in contact with or included in the selection area 8 .

[0114] To determine whether the object 2 formed by the polygon 4 interferes with the selected area 8, the CPU 12A calculates the distance to the selected area 8, for example. A known method for managing distance values ​​with a sign is a signed distance field (SDF).

[0115] The SDF is a well-known method for expressing the positional relationship of a three-dimensional shape. The distance from a predetermined location included in the selection area 8 to the nearest polygon 4 is set as the signed distance field of the selection area 8. At this time, if the predetermined location, which serves as a reference point for distance measurement (hereinafter referred to as a "measurement point"), is included in the interior of the object 2, the CPU 12A assigns a positive sign to the calculated distance. If it is not included in the interior of the object 2, the CPU 12A assigns a negative sign to the calculated distance.

[0116] That is, if the distance set to the selection area 8 is a value greater than or equal to 0, the object 2 formed by the polygon 4 will interfere with the selection area 8. Furthermore, even if the distance set to the selection area 8 is less than 0, if the distance set to the selection area 8 is less than or equal to the distance to a location within the selection area 8, the object 2 formed by the polygon 4 can be considered to interfere with the selection area 8. Of course, the definition of the sign can be reversed, and the unsigned distance value and information such as the outside and inside of the object 2 can be managed separately.

[0117] Furthermore, the determination of whether selected area 8 interferes with object 2 formed by polygon 4 is not limited to this method; a determination criterion can be set according to the situation. For example, the inner product of the vector to polygon 4 closest to the measurement point and the vectors to each vertex forming selected area 8 can be taken, and the interference between selected area 8 and polygon 4 can be determined based on whether the signs match. Alternatively, a point cluster can be generated on polygon 4, and selected area 8 including the points can be determined to interfere with polygon 4.

[0118] Figure 6 This is a diagram illustrating the SDF of region 8 and the interference state between region 8 and object 2 formed by polygon 4. Figure 6 As an example, among the multiple regions 8 in the three-dimensional coordinate space divided in step S10, focus is placed on four regions 8: region 8A, region 8B, region 8C, and region 8D. Furthermore, a predetermined location serving as a distance measurement point is set at the center of each region 8A to 8D, that is, the center of region 8 represented by the cube.

[0119] exist Figure 6In the example, the judgment criterion is defined as follows: if the sign of the SDF set in area 8 is positive, it is judged that the selected area 8 interferes with the object 2 composed of the polygon 4; if the sign of the SDF set in area 8 is negative, it is judged that the selected area 8 does not interfere with the object 2 composed of the polygon 4.

[0120] In this case, the sign of the SDF set in region 8C is positive, so it interferes with object 2 formed by polygon 4. The signs of the SDFs set in regions 8A, 8B, and 8D are negative, so they do not interfere with object 2 formed by polygon 4. The following describes an example of determining whether interference occurs between selected region 8 and object 2 formed by polygon 4 based on this definition.

[0121] In addition, as another definition example of the judgment criteria related to interference, Figure 6 In the example, even if the sign of the SDF set for region 8 is negative, if polygon 4 representing the outline of object 2 slightly contacts or is included in region 8, object 2 can be defined as interfering with region 8. Furthermore, CPU 12A stores the distance to the surface of region 8, that is, the distance until polygon 4 representing the outline of object 2 contacts region 8, in the direction viewed from the measurement point of the SDF in each region 8.

[0122] According to this determination criterion, first, since the sign of the SDF set in the region 8C is positive, it is determined that interference occurs with the object 2 formed by the polygon 4 .

[0123] Since the sign of the SDF of region 8A is negative and the magnitude of the SDF is larger than the distance to the vertex of region 8A located farthest from the measurement point, it is determined that there is no interference with object 2 formed by polygon 4 .

[0124] The sign of the SDF of region 8B is negative, but the magnitude of the SDF is equal to the radius of the inscribed circle of region 8B centered at the measurement point of region 8B, so it is determined that interference occurs with the object 2 formed by polygon 4 .

[0125] The sign of the SDF of region 8D is also negative, but the magnitude of the SDF is smaller than the radius of the inscribed circle of region 8D centered at the measurement point of region 8D. Therefore, it is determined that interference occurs with object 2 formed by polygon 4 .

[0126] Furthermore, as another example of the definition of the criterion related to interference, Figure 6 In the example, it can also be defined as follows: even if the sign of the SDF set in area 8 is negative, if the distance is a predetermined value (for example, less than 1 / 3 of each side of the selected area 8), the object 2 also interferes with the area 8.

[0127] According to this determination criterion, the sign of the SDF set in the region 8C is positive, and therefore it is determined that interference occurs with the object 2 formed by the polygon 4 .

[0128] The signs of the SDFs set in regions 8A and 8B are negative, and the sizes of the SDFs are larger than 1 / 3 when the size of one side of region 8 is 1. Therefore, it is determined that there is no interference with object 2 formed by polygon 4.

[0129] Even if the sign of the SDF set in the region 8D is negative, the magnitude of the SDF is 1 / 3 or less, and therefore it is determined that interference occurs with the object 2 formed by the polygon 4 .

[0130] In this manner, the CPU 12A determines whether interference occurs between the selected area 8 and the object 2 formed by the polygon 4 based on a predetermined criterion for determining whether interference occurs between the defined area 8 and the object 2 formed by the polygon 4. The criterion for determining whether interference occurs between the defined area 8 and the object 2 formed by the polygon 4 is set by the user operating the editing device 10 and is stored, for example, in the non-volatile memory 12D.

[0131] In the determination process of step S30 , when it is determined that the object 2 formed of the polygon 4 interferes with the selection area 8 , the process proceeds to step S40 .

[0132] In step S40, CPU 12A arranges voxels 6 in selected area 8 and proceeds to step S50. For example, the three-dimensional shape of voxels 6 arranged in selected area 8 is preferably the same as the three-dimensional shape of selected area 8, but different three-dimensional shapes are also possible. Here, as an example, the three-dimensional shape of voxels 6 is assumed to be the same as the three-dimensional shape of selected area 8.

[0133] Figure 7 8C is a diagram showing the arrangement of voxels 6 when the region 8C is selected as the selected region 8. Figure 6 In the explanation, the region 8C is determined to interfere with the object 2 formed by the polygon 4, and therefore the voxel 6 is arranged in the region 8C. Figure 7 As shown, the shaded area 8 represents the area 8 where the voxels 6 are arranged.

[0134] Furthermore, CPU 12A sets attributes corresponding to the properties of object 2 at the portion corresponding to selected area 8 in voxel 6. The attributes set in voxel 6 include at least the SDF of selected area 8, and user-specified attributes such as object 2's color, strength, material, texture, transmittance, and deformation.

[0135] Transmittance refers to the proportion of light incident on object 2 that is not reflected by the surface of object 2 but instead passes through it. It is an example of a property that indicates the appearance of object 2. Objects 2 with higher transmittance make it easier to see the background behind them.

[0136] The amount of deformation refers to the degree of deformation caused by the force acting on the object 2 , and is an example of an attribute indicating the state of force applied to the object 2 .

[0137] Setting the attribute to the voxel 6 is also equivalent to setting the attribute to the selection area 8 where the voxel 6 is arranged, and therefore is also equivalent to setting the attribute to the selection area 8.

[0138] On the other hand, in the determination process of step S30, if it is determined that the object 2 composed of the polygon 4 does not interfere with the selected area 8, the process of step S40 is not executed and the process moves to step S50. That is, no voxel 6 is arranged in the selected area 8 determined to be not interfered with by the object 2 composed of the polygon 4. In the description of this embodiment, the unshaded area 8 (in Figure 7 In the example, the region 8 (corresponding to region 8A, region 8B, and region 8D) represents a region 8 in which no voxel 6 is configured.

[0139] Furthermore, the CPU 12A also sets the attributes of the SDF including at least the selected region 8 for the selected region 8 determined not to interfere with the object 2 formed by the polygon 4. Furthermore, the CPU 12A may also set attributes pre-specified by the user for the selected region 8 determined not to interfere with the object 2 formed by the polygon 4. In other words, the CPU 12A may also set attributes for the region 8 where no voxels 6 are arranged.

[0140] In step S50 , the CPU 12A determines whether or not there is an unselected area that has not been selected in step S20 among the plurality of areas 8 divided in step S10 .

[0141] If there is an unselected area, the process proceeds to step S20 , where an unselected area 8 is selected from the plurality of areas 8 divided in step S10 .

[0142] The processes of steps S20 to S50 are repeatedly performed until all of the plurality of regions 8 divided in step S10 are selected in the process of step S20. As a result, voxels 6 are arranged in regions 8 that interfere with the object 2 formed by the polygons 4. In other words, the three-dimensional shape data defining the shape of the object 2 using the polygons 4 is converted into three-dimensional shape data defining the shape of the object 2 using the voxels 6.

[0143] In the determination process of step S50, if it is determined that all of the plurality of areas 8 divided in step S10 are selected, the process ends. Figure 4 The voxel conversion process shown.

[0144] Figure 8 Yes means through Figure 4 The voxel conversion process shown makes Figure 5 The object 2 in the three-dimensional coordinate space composed of polygons 4 is converted into an example of a figure composed of voxels 6. For the convenience of explanation, Figure 8 , an example of roughly dividing the three-dimensional coordinate space is shown. However, if the regions 8 are divided gradually finer, the three-dimensional shape of the object 2 can be constructed in more detail.

[0145] Furthermore, even in a region 8 that interferes with an object 2 formed of polygons 4, the CPU 12A may not arrange voxels 6 based on the attributes set for that region 8. Conversely, even in a region 8 that does not interfere with an object 2 formed of polygons 4, the CPU 12A may arrange voxels 6 based on the attributes set for that region 8.

[0146] For example, when voxels 6 are arranged in a region 8 where a deformation amount greater than a predetermined value is set, stress may be generated that damages adjacent voxels 6. Therefore, if voxels 6 are intentionally not arranged, the space created by the absence of voxels 6 acts as a buffer zone against the deformation of surrounding voxels 6, thereby achieving the effect of suppressing cracks and the like generated in the object 2 due to the action of the force.

[0147] Furthermore, if the voxels 6 are intentionally arranged in the region 8 adjacent to the portion of the object 2 whose strength does not reach a predetermined value and does not interfere with the object 2 , the portion of the object 2 estimated to have insufficient strength is enhanced.

[0148] The CPU 12A deforms the three-dimensional shape data of the object 2 composed of voxels 6 generated in this manner according to the user's instruction, and converts the deformed object 2 into new three-dimensional shape data composed of polygons 4 when it is necessary to use the three-dimensional shape data including a smooth curved surface.

[0149] Furthermore, the user does not necessarily need to convert the shape of the object 2 composed of voxels 6 into new three-dimensional shape data composed of polygons 4. Instead, the user may simply set attributes in the region 8 through the editing device 10 and use the voxels 6 as is. The method for converting the shape of the object 2 composed of voxels 6 will be described in detail later.

[0150] First, an example of converting the three-dimensional shape data of an object 2 composed of 6 voxels into the three-dimensional shape data of an object 2 composed of 4 polygons will be described. Here, as an example, the shape of the object 2 composed of 6 voxels is not changed, and only attributes are set to convert the data into the three-dimensional shape data of the object 2 composed of 4 polygons.

[0151] Figure 9This is a flowchart showing an example of the flow of polygon placement processing executed by the CPU 12A of the editing device 10. Figure 9 The editing program for the polygon arrangement process shown is stored in advance in, for example, the ROM 12B of the editing device 10. The CPU 12A of the editing device 10 reads the editing program stored in the ROM 12B and executes the polygon arrangement process.

[0152] Here, use Figure 10 The polygon arrangement processing is described with reference to an example of three-dimensional shape data of an object 2 in which the arrangement relationship between the region 8 and the voxel 6 can be confirmed. Figures 10 to 13 In the area 8 of each figure in FIG, a sub-reference numeral is assigned. In the case where it is necessary to distinguish and explain each area 8, for example, Figure 10 The lower left region 8 to which the sub-reference numeral “1” is assigned is denoted as region 8 - 1 , thereby being distinguished from the other regions 8 .

[0153] exist Figure 9 In step S110 , the CPU 12A selects one determination region 20 from the three-dimensional coordinate space in which the object 2 composed of voxels 6 is arranged and which is divided into a plurality of regions 8 .

[0154] The determination area 20 is a conversion unit from voxels 6 to polygons 4 in the MC method. For example, a range including two areas 8 in each of the X-axis direction, the Y-axis direction, and the Z-axis direction, for a total of eight areas 8, is set as the determination area 20. Figure 10 For example, eight regions 8, including region 8-1, region 8-2, region 8-9, and region 8-10, and one region 8 each located behind region 8-1, region 8-2, region 8-9, and region 8-10 and arranged in the Y-axis direction, are selected as the determination region 20. In the description of the polygon arrangement process, the determination region 20 selected in step S110 is referred to as the selected determination region 20.

[0155] In step S120 , the CPU 12A determines whether or not a boundary surface exists in the selection determination area 20 .

[0156] The boundary surface is a surface where the region 8 where the voxels 6 are arranged is adjacent to the region 8 where the voxels 6 are not arranged. Figure 10 In this example, the surfaces adjacent to regions 8-1 and 8-9, and the surfaces adjacent to regions 8-9 and 8-10 are examples of boundary surfaces. Regions 8-1, 8-2, and 8-10, where voxels 6 are located, are examples of the first region according to this embodiment, while region 8-9, where no voxels 6 are located, is an example of the second region according to this embodiment. If a boundary surface exists in the selection determination region 20, the process proceeds to step S130.

[0157] In addition, CPU12A can also refer to the attributes of area 8 where voxel 6 is configured, and when the attributes meet the condition that voxel 6 does not need to be configured, delete voxel 6 from area 8 where the attributes that meet the condition are set, and determine whether there is a boundary surface in the selection determination area 20.

[0158] Specifically, as described above, when the deformation amount set in region 8 is greater than a predetermined value, the voxels 6 arranged in this region 8 may be deleted. Furthermore, when the transmittance set in region 8 is greater than a predetermined value, even if the voxels 6 arranged in this region 8 are deleted, the external shape of the object 2 is minimally affected, and thus the voxels 6 arranged in this region 8 may be deleted.

[0159] Furthermore, when there is a region 8 that satisfies the condition that no voxels 6 need to be arranged, the CPU 12A may treat the region 8 as a region where no voxels 6 exist, and determine whether a boundary surface exists in the selection determination region 20 , without actually deleting the voxels 6 arranged in the region 8 .

[0160] In step S130 , the CPU 12A arranges the polygon 4 that straddles the boundary surfaces included in the selection determination area 20 on the voxel 6 , and then moves to step S140 .

[0161] Figure 11 This figure shows an example of arranging polygons 4 on the surfaces adjacent to areas 8-1 and 8-9, and on the surfaces adjacent to areas 8-9 and 8-10. CPU 12A selects, from among the pre-prepared patterns for arranging polygons 4, a pattern in which, for example, the vertices of polygons 4 are arranged at the centers 26 of each boundary surface, and arranges polygons 4. For convenience, polygons 4 arranged using the MC method are referred to as MC faces, and the vertices of the arranged polygons 4 are referred to as MC vertices.

[0162] On the other hand, if no boundary surface exists in the selection determination area 20, the process of step S130 is not performed and the process moves to step S140. In other words, if no boundary surface exists in the selection determination area 20, polygons 4 are not arranged in any area 8 included in the selection determination area 20.

[0163] In step S140, CPU 12A determines whether any unselected areas 8 exist in the three-dimensional coordinate space divided into the plurality of areas 8 that are not included in the determination area 20 selected in step S110. If any unselected areas 8 exist, the process proceeds to step S110, where a new determination area 20 is selected. In this case, CPU 12A selects a new determination area 20 by shifting the determination area 20 by one area in any predetermined direction: the X-axis direction, the Y-axis direction, or the Z-axis direction. Furthermore, if the determination area 20 includes the last area 8 in the predetermined direction and the determination area 20 cannot be shifted further in the predetermined direction, CPU 12A shifts the determination area 20 by one area in a direction different from the predetermined direction and then repeats the process of shifting the determination area 20 in the direction opposite to the predetermined direction to select all the divided areas 8.

[0164] In the determination process of step S140, if it is determined that there is no unselected area 8 not included in the determination area 20, the process ends. Figure 9 The polygon configuration process is shown.

[0165] Figure 12 It means that Figure 10 The diagram shows an example of arranging polygons 4 on the boundary surfaces of the regions 8 shown in FIG. 2 , where the judgment regions 20 are shifted by one region. When polygons 4 are arranged on the same boundary surfaces in adjacent judgment regions 20, the CPU 12A arranges the polygons 4 so that the vertices of the polygons 4 coincide. Furthermore, there are multiple regions 8 in the Y-axis direction of the three-dimensional coordinate space, but for ease of explanation, only the region 8 visible in the front when viewed from a direction perpendicular to the XZ plane is shown. Figure 10 .

[0166] Figure 13 It means that polygon configuration is used to process Figure 10 FIG. 4 is a diagram showing an example of the arrangement of the polygons 4 in each region 8 that is finally arranged.

[0167] The three-dimensional shape data of the object 2 obtained by the polygon arrangement process is simply the three-dimensional shape data obtained by arranging the polygons 4 so that the vertices of the polygons 4 are located at the center 26 of the boundary surface. Therefore, even if the shape of the object 2 is not changed by the editing device 10, it may sometimes represent a shape different from the original shape of the object 2. Therefore, the polygon correction process is executed.

[0168] Figure 14 This is a flowchart showing an example of the flow of polygon correction processing executed by the CPU 12A of the editing device 10. Figure 14The editing program for the polygon correction process is stored in advance in, for example, the ROM 12B of the editing device 10. The CPU 12A of the editing device 10 reads the editing program stored in the ROM 12B and executes the polygon correction process.

[0169] Here, use Figure 15 The polygon correction process will be described using an example of three-dimensional shape data of the object 2 in which the arrangement relationship between the regions 8 and the voxels 6 can be confirmed. Figures 15 to 23 The numerical values ​​recorded in the regions 8 of the respective figures are SDFs set in the respective regions 8 , and the contour 22 represents the contour line when the original object 2 is cut along the XZ plane.

[0170] Figure 16 It means targeting Figure 15 The three-dimensional shape data of the object 2 composed of voxels 6 is shown by Figure 9 The polygon arrangement process shown in FIG. is an example of an arrangement of polygons 4. In the polygon arrangement process, polygons 4 are arranged so that the vertices of polygons 4 are located at the center 26 of the boundary surface. Figure 16 As shown, a polygon 4 is arranged around the voxel 6, and the polygon 4 represents the outline 22 of the object 2. Figure 15 The outline 22 of the original object 2 is shown and Figure 16 It can be seen from the outline 22 of the object 2 represented by the polygon 4 that the shape of the object 2 is converted from voxel 6 to polygon 4 only through polygon configuration processing. Sometimes the shape of the object 2 represented by the converted three-dimensional shape data will be different from the original shape of the object 2.

[0171] Therefore, in step S210, the CPU 12A selects one determination area 20 from the three-dimensional coordinate space where the object 2 divided into a plurality of areas 8 after being converted into polygons 4 by the polygon arrangement process is arranged. The method of selecting the determination area 20 is the same as that in Figure 9 The selection method described in step S110 is the same as that in step S210. In the description of the polygon correction process, the determination area 20 selected in step S210 is referred to as a selected determination area 20.

[0172] Figure 17 It means that the configuration is as follows Figure 16 FIG. 1 shows an example of a determination area 20 selected from the three-dimensional shape data of a polygon 4. For convenience of explanation, in the description of the polygon correction process, alphabetical sub-reference numerals may be assigned to each area 8 included in the determination area 20 to distinguish between the areas 8 included in the determination area 20.

[0173] In step S220, the CPU 12A determines whether or not the polygon 4 exists in the selection determination area 20. If the polygon 4 exists in the selection determination area 20, the process proceeds to step S230.

[0174] In step S230 , CPU 12A corrects the arrangement of polygon 4 by moving the positions of the vertices of polygon 4 arranged to contact center 26 of the boundary surface according to the ratio of the sizes of the SDFs set in two adjacent regions 8 (referred to as “pair regions”) forming the boundary surface.

[0175] Figure 18 is extracted Figure 17 The diagram of the determination area 20 is shown. Taking the paired areas consisting of area 8A and area 8D and the paired areas consisting of area 8B and area 8C included in the determination area 20 as examples, the movement of the vertices of the polygon 4 in contact with the center 26 of the boundary surface of the paired areas will be described.

[0176] First, for a paired region consisting of region 8A and region 8D, CPU 12A calculates the distance between the measurement point of the SDF in region 8A and the measurement point of the SDF in region 8D (referred to as the "inter-region distance"). CPU 12A identifies a point in the calculated inter-region distance that is based on the ratio of the size of the SDF in region 8A to the size of the SDF in region 8D as correction point 24, and moves the vertex of polygon 4 that contacts the center 26 of the boundary surface formed by the paired region consisting of region 8A and region 8D to the position of correction point 24.

[0177] That is, the point where the inter-area distance is divided into 7:3 becomes the calibration point 24 which is the vertex of the polygon 4 in contact with the center 26 of the boundary surface formed by the pair of areas consisting of the area 8A and the area 8D.

[0178] Similarly, in the case of a pair of regions consisting of region 8B and region 8C, the SDF of region 8B is "-0.2" and the SDF of region 8C is "+0.7", so the point where the inter-region distance between region 8B and region 8C is divided into 2:7 becomes the correction point 24 of the vertex of polygon 4 that contacts the center 26 of the boundary surface formed by the pair of regions consisting of region 8B and region 8C.

[0179] CPU 12A corrects the arrangement of polygon 4 so that the vertices of polygon 4 are located at the calculated positions of correction points 24. Figure 17 Compared to the arrangement of the polygons 4 in the determination area 20 shown, the arrangement of the polygons 4 is closer to the outline 22 of the object 2 .

[0180] On the other hand, when it is determined in the determination process of step S220 that the polygon 4 does not exist in the selection determination area 20, the process of step S230 is not executed, and the process proceeds to step S240.

[0181] In step S240, the CPU 12A determines whether there is an unselected area 8 in the three-dimensional coordinate space divided into a plurality of areas 8 that is not included in the determination area 20 selected in step S210. If there is an unselected area 8, the process proceeds to step S210, where a new determination area 20 is selected. The method for selecting a new determination area 20 is the same as in step S240. Figure 9 That is, the processing of steps S210 to S240 is repeatedly performed until there is no unselected area 8 not included in the determination area 20.

[0182] Figure 19 It means Figure 17 The illustrated determination area 20 is an example of a determination area 20 that is shifted by one area in the X-axis direction. Figure 19 In the illustrated determination area 20 , there are a pair of areas consisting of an area 8B and an area 8C, and a pair of areas consisting of an area 8E and an area 8H.

[0183] Figure 20 is extracted Figure 19 The calculation of the correction point 24 for the vertex of the polygon 4 that contacts the center 26 of the boundary surface formed by the pair of regions consisting of the region 8B and the region 8C is as described above.

[0184] In the case of a pair of regions consisting of region 8E and region 8H, the SDF of region 8E is "-0.6" and the SDF of region 8H is "+0.4", so the point where the inter-region distance between region 8E and region 8H is divided into 6:4 becomes the correction point 24 of the vertex of polygon 4 that contacts the center 26 of the boundary surface formed by the pair of regions consisting of region 8E and region 8H.

[0185] Figure 21 It means Figure 19 The illustrated determination area 20 is a diagram showing an example of the determination area 20 in which the determination area 20 is further shifted by one area in the X-axis direction. Figure 21 In the illustrated determination area 20 , there are a pair of areas consisting of an area 8E and an area 8H, and a pair of areas consisting of an area 8G and an area 8H.

[0186] Figure 22 is extracted Figure 21The calculation of the correction point 24 for the vertex of the polygon 4 that contacts the center 26 of the boundary surface formed by the pair of regions consisting of the region 8E and the region 8H is as described above.

[0187] In the case of a pair of regions consisting of region 8G and region 8H, the SDF of region 8G is "-0.3" and the SDF of region 8H is "+0.4", so the location where the inter-region distance between region 8G and region 8H is divided into 3:4 becomes the correction point 24 of the vertex of polygon 4 that contacts the center 26 of the boundary surface formed by the pair of regions consisting of region 8G and region 8H.

[0188] In this way, the processing of steps S210 to S240 is repeatedly performed while shifting the determination area 20 until there is no unselected area 8 not included in the determination area 20, thereby obtaining correction so that the vertex is finally located as shown in FIG. Figure 23 With the polygon 4 at the position shown, the shape of the object 2 before the polygon correction process is performed will be close to the original shape of the object 2.

[0189] In the determination process of step S240, if it is determined that there is no unselected area 8 not included in the determination area 20, the arrangement of all polygons 4 constituting the shape of the object 2 is corrected, and thus the process ends. Figure 14 The polygon correction process is shown.

[0190] In addition, for the sake of convenience, Figure 9 After the polygon configuration process is completed, execute Figure 14 The polygon correction process is described in the following manner, but Figure 9 Step S110 in Figure 14 The determination area of ​​step S210 in the embodiment represents the same area, and the determination area of ​​step S220 in the embodiment represents the same area. Figure 9 It is self-evident that the time point at which the polygon is configured in step S130 becomes a positive judgment, and thus it can also be performed just after the execution. Figure 9 Step 130 is followed by Figure 14 The method of step S230 does not separate the polygon arrangement processing and the polygon correction processing but integrates them into one processing. Figure 9 If it is determined in the determination process of step S120 that there is no boundary surface in the selection determination area 20, then steps S130 and S140 will not be executed. Figure 14 The process of step S230 is completed and transferred to step S140.

[0191] In addition, Figure 14When correcting the arrangement of polygon 4 in step S230, CPU 12A may also correct the ratio of the distances between regions in the region based on the attributes of region 8. For example, if the hardness of object 2 in region 8 is higher, the desired strength can be achieved with a smaller volume. In other words, even if hard areas of object 2 are chipped away, the desired strength can be achieved.

[0192] Therefore, if the hardness of the object 2 set in the area 8 is greater than a predetermined value, the CPU 12A may also make the SDF value of the area 8 smaller than the original SDF value, so that the vertex of the polygon 4 is closer to the measurement point of the SDF in the area 8 of the corrected SDF, that is, the center of the area 8.

[0193] Conversely, if the hardness of the object 2 set in the region 8 is less than a predetermined value, the CPU 12A may increase the SDF value of the region 8 relative to the original SDF value, thereby moving the vertices of the polygon 4 away from the center of the modified SDF region 8. In other words, by giving the object 2 thickness, the portion of the object 2 where the hardness is less than the predetermined value is reinforced.

[0194] Next, a description will be given of a deformation process of the shape of the object 2 composed of voxels 6 in the editing device 10 .

[0195] Figure 24 : is a diagram showing an example of three-dimensional shape data including SDF of each region 8 set in a three-dimensional coordinate space. Figures 24 to 33 In , the value recorded in each area 8 represents the SDF of the corresponding area 8. Figures 24 to 33 In the region 8, the sign of the SDF is set to positive by Figure 4 The voxel conversion process shown configures a region 8 of voxels 6 , whereby the shaded region represents the shape of the object 2 .

[0196] As described above, the polygons 4 forming the outline of the object 2 are arranged by Figure 14 The polygon correction process shown is performed based on the ratio of the size of the SDF to the area. Figure 25 As shown, regarding the Figure 24 In the shape of object 2 composed of polygons 4 generated from the three-dimensional shape data of the SDF shown, the contour of object 2 may sometimes not align with the boundary of region 8. For example, if the sign of the SDF set for region 8 is positive and the magnitude of the SDF is larger than the value representing the distance from the center of region 8 to the boundary of region 8, the contour of object 2 is located farther from the boundary of region 8 when viewed from the center of region 8. However, in the description of the deformation processing of object 2, the generated contour of object 2 is shown aligned with the boundary of region 8 for ease of explanation.

[0197] Now, set it to: Figure 4 The voxel conversion process shown in FIG. 8 is set in each region 8 as follows Figure 24 The CPU 12A of the editing device 10 changes the shape of the object 2 by changing the SDF set in the area 8 .

[0198] Specifically, CPU12A Figure 24 The SDF of each region 8 shown performs an operation using a specified value to change the shape of the object 2. Here, the operation refers to at least one of addition, subtraction, multiplication, division, substitution, and comparison, or a combination thereof.

[0199] Figure 26 It means from Figure 24 The figure shows an example of three-dimensional shape data obtained by uniformly subtracting "2" from the SDF in each region 8 of the three-dimensional shape data. In this case, the number of regions 8 with positive signs of SDF is reduced to less than Figure 24 The number of positive regions in the SDF is 8, which will reduce the Figure 24 The three-dimensional shape data is obtained based on the shape of the object 2 shown.

[0200] and, Figure 27 It means in Figure 24 The figure shows an example of three-dimensional shape data obtained by uniformly adding "1" to the SDF in each area 8 of the three-dimensional shape data. In this case, the number of areas 8 with positive signs of SDF increases to more than Figure 24 The number of regions in which the sign of the SDF is positive is 8, which will result in the amplification Figure 24 The three-dimensional shape data is obtained based on the shape of the object 2 shown.

[0201] The value calculated for the SDF of the region 8 is not limited. In addition to the user-specified value, statistics such as the maximum value, minimum value, and average value of the SDF of each region 8 included in the user-specified range may be used as the addition or subtraction amount.

[0202] In the above description, an example is shown in which the same value is added or subtracted for each area 8 . However, the value to be added or subtracted may be changed for each area 8 .

[0203] Figure 28 Yes Figure 24 The diagram shows an example of three-dimensional shape data obtained by increasing or decreasing the value of the SDF in each area 8 of the three-dimensional shape data from the upper row to the lower row. Figure 28 In the example, the top row is numbered "1" and the rows below the row numbered "1" are numbered "2".

[0204] If the amount of SDF reduction is increased by 0.1 each time according to the row number, for example, in each area 8 included in the row with row number 1, "0.1" is subtracted from the SDF, in each area 8 included in the row with row number 2, "0.2" is subtracted from the SDF, and in each area 8 included in the row with row number M (M is an integer greater than 1), "0.1M" is subtracted from the SDF, then the sign of the SDF included in the area 8 of the row located lower is more likely to become negative, and thus three-dimensional shape data with a gradient in a gradually tapering manner will be obtained.

[0205] In this way, by providing a gradient for the SDF addition or subtraction in region 8, the shape of object 2 can be obtained to suit the user's desired purpose, such as thickening a portion of object 2 where strength is desired, thinning a portion where strength reduction is acceptable, or providing a mold with a draft gradient. CPU 12A refers to the attributes (e.g., strength) set in region 8 and changes the SDF addition or subtraction for each region 8 based on the attributes.

[0206] In addition, here, as an example, an example of changing the shape of object 2 by performing operations on the SDF set in area 8 is described, but CPU12A can also change the configuration of voxel 6 by changing the SDF of area 8, for example, by following a certain formula or performing separate operations based on comparison results, thereby changing the shape of object 2.

[0207] Of course, the operation on the selected area 8 of the object 2 is not limited to taking the entire object as an object at one time. In addition to performing operations only on the range specified by the user, it is also easy to think of performing operations only on a specific range that meets certain conditions such as curvature, SDF value, roughness or thickness represented by the number of sets of voxels 6, etc.

[0208] Then, the CPU 12A of the editing device 10 changes the shape of the object 2 by replacing the SDF set in the area 8 with another value.

[0209] Figure 29 It means that Figure 24 The figure shows an example of dividing each region 8 represented by the three-dimensional shape data into a plurality of groups 28A to 28G. If the SDF of each region 8 included in group 28A, group 28C, and group 28G is replaced with "-1.0" and the SDF of each region 8 included in group 28B, group 28D, and group 28F is replaced with "+1.0", the object 2 changes to the following Figure 30 The shape shown.

[0210] The range of the replacement SDF is specified by the user, for example. Furthermore, the shape of the replacement SDF range is not limited to a rectangular parallelepiped and can be specified using any three-dimensional shape, such as a cube, triangular pyramid, sphere, or cylinder. Furthermore, the replacement SDF range does not necessarily need to be specified using a three-dimensional shape; for example, it can be specified using any two-dimensional shape, such as a rectangle, circle, triangle, trapezoid, or rhombus.

[0211] When specifying a range to replace the SDF, it is not necessary to specify the range along the boundary of the region 8 . For example, a range that passes through the middle of the region 8 so as to intersect the region 8 may be specified.

[0212] Furthermore, the range of the replacement SDF can be specified for each region 8, or can be specified based on the SDF value or attribute value of region 8. For example, a set of regions 8 that meet the following conditions, such as an SDF within ±0.5, a display color of red, a deformation amount greater than a certain value, and the curvature of the original three-dimensional shape's forming surface and the curvature of the new three-dimensional shape formed by the polygons converted from the three-dimensional elements, can be set as the range of the replacement SDF.

[0213] Then, the CPU 12A of the editing device 10 changes the shape of the object 2 by reversing the sign of the SDF set in the area 8 .

[0214] Figure 31 1 is a diagram showing an example of three-dimensional shape data including SDF of each region 8 set in a three-dimensional coordinate space. Figure 31 The three-dimensional shape data shown is obtained by reversing the signs of the SDF set in each area 8. Figure 32 .

[0215] exist Figure 31 In the , negative SDF is converted to positive SDF and positive SDF is converted to negative SDF, thus in Figure 31 The shape of the object 2 is converted into the shape obtained by not arranging voxels 6 in the region 8 where voxels 6 are arranged and arranging voxels 6 in the region 8 where voxels 6 are not arranged. That is, Figure 32 The shape of the object 2 shown becomes as shown in FIG. Figure 31 The shapes of the objects shown are interlocking shapes (also called "paired shapes").

[0216] Of course, the method of specifying the range for inverting the sign of the SDF is not limited, and the method described in the method of specifying the range for replacing the SDF can be applied.

[0217] Furthermore, the CPU 12A of the editing device 10 compares the SDF set in the area 8 according to the area 8 of the three-dimensional coordinate space that respectively includes the shape of the object 2, selects any one SDF according to the compared area 8 according to a predetermined selection rule common to each area 8, and sets the selected SDF as the new SDF in the compared area 8, thereby changing the shape of the object 2.

[0218] For example, suppose there is Figure 24 The three-dimensional shape data shown and Figure 32 The three-dimensional shape data shown here is provided. While the description herein assumes that the origin of the three-dimensional coordinate space in each three-dimensional shape data item is the same, the user can adjust the origin to any position, and the size or coordinate system of the selection area 8 can also be different. If the spacing or coordinate system are inconsistent, interpolation processes such as nearest neighbor interpolation, bilinear interpolation, and bicubic interpolation can be combined, coordinate conversion can be performed, and selection rules can be set between different coordinate systems.

[0219] CPU12A is located in Figure 24 The three-dimensional shape data shown and Figure 32 The SDF of the region 8 at the same position in the three-dimensional shape data shown is used to generate three-dimensional shape data by setting any SDF for each region 8 as a new SDF for that region 8.

[0220] Figure 33 is to indicate that by placing Figure 24 The three-dimensional shape data shown and Figure 32 The diagram shows an example of three-dimensional shape data in which a smaller SDF among the SDFs of the regions 8 at the same position in the three-dimensional shape data is set as a new SDF in each region 8 .

[0221] At this time, if Figure 33 As shown, the representation can be obtained by Figure 24 The object represented by the three-dimensional shape data shown is the same as the object represented by Figure 32 The three-dimensional shape data shown represents the overlapping parts of the objects 2, that is, the three-dimensional shape data of the objects 2 of the common parts.

[0222] The selection rule of selecting the smaller SDF from the SDFs to be compared is an example of a selection rule common to each region 8 according to this embodiment. For example, a larger SDF may be selected. In this case, three-dimensional shape data of the combined two objects 2 to be compared can be obtained.

[0223] Alternatively, selection rules may be set based on the attributes set for each region 8 and the three-dimensional elements. For example, if an attribute representing a specific material is set in region 8, selecting the larger SDF from the SDFs used for comparison can yield three-dimensional shape data for an object 2 composed of a continuous set of the specific material. Furthermore, by leaving the arrangement of the three-dimensional elements unchanged and comparing only the attributes set for each region 8, it is possible to change only the color or material arrangement without altering the three-dimensional shape of the object 2.

[0224] In addition, the CPU 12A may also designate an area of ​​the comparison SDF. The method of designating the range of the comparison SDF is not limited, and the designation method described in the method of designating the range of the replacement SDF can be applied.

[0225] Furthermore, the editing device 10 does not necessarily have to implement Figure 4 The voxel conversion process shown may receive three-dimensional shape data composed of voxels 6 as an editing target and perform at least one of deformation processing of the object 2, polygon arrangement processing, and polygon correction processing on the received three-dimensional shape data.

[0226] Thus, according to the editing device 10 of this embodiment, the shape of the object 2 is changed after the three-dimensional shape data of the object 2 is converted into the three-dimensional shape data of the object 2 composed of voxels 6, rather than directly editing the original three-dimensional shape data of the object 2 composed of polygons 4 to change the shape of the object 2. Furthermore, when converting the three-dimensional shape data of the object 2 composed of voxels 6 into the three-dimensional shape data of the object 2 composed of polygons 4, the editing device 10 of this embodiment corrects the positions of the vertices of the polygons 4 according to the ratio of the size of the SDF set for each region.

[0227] The editing device 10 according to this embodiment determines the region 8 where the voxels 6 are arranged based on the SDF. However, any value other than the SDF may be used to determine the region 8 where the voxels 6 are arranged, as long as the value indicates the interference state between the region 8 and the polygon 4 .

[0228] While the present invention has been described above using the embodiments, the present invention is not limited to the scope described in the embodiments. The embodiments may be modified or improved in a variety of ways without departing from the spirit of the present invention, and such modifications or improvements are also included in the technical scope of the present invention. For example, the order of processing may be changed without departing from the spirit of the present invention.

[0229] In the embodiment, as an example, a method of implementing each process by software is described, but it is also possible to implement the same process in an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a PLD (Programmable Logic Device). Figure 4 、 Figure 9 and Figure 14 The processing of each flowchart shown in the figure is performed by hardware. In this case, the processing speed can be increased compared with the case where each processing is performed separately by software.

[0230] Thus, the CPU 12A, which is an example of a general-purpose processor, may be replaced with a dedicated processor specifically provided for specific processing, such as an ASIC, FPGA, PLD, GPU (Graphics Processing Unit), or FPU (Floating Point Unit).

[0231] Furthermore, the operations of the processors in each embodiment may be performed by a plurality of processors rather than by a single CPU 12A. Furthermore, the operations of the processors in each embodiment may be performed by cooperation of processors included in a plurality of computers 12 physically located at separate locations.

[0232] In the above embodiment, the 3D shape data editing program is described as being installed in ROM 12B, but the present invention is not limited to this. The 3D shape data editing program can also be provided by being recorded on a computer-readable storage medium. For example, the 3D shape data editing program can be provided by being recorded on an optical disk such as a CD (Compact Disc) ROM or a DVD (Digital Versatile Disc) ROM. Furthermore, the 3D shape data editing program can also be provided by being recorded on a portable semiconductor memory such as a USB (Universal Serial Bus) memory or a memory card.

[0233] Furthermore, the editing device 10 may acquire the three-dimensional shape data editing program according to this embodiment from an external device connected to the communication line via the communication unit 18 .

[0234] The above-described embodiments of the present invention are provided for the purpose of illustration and explanation. In addition, the embodiments of the present invention do not fully and exhaustively include the present invention, and do not limit the present invention to the disclosed embodiments. It is obvious that various modifications and variations are self-evident to those skilled in the art to which the present invention belongs. The present embodiment is selected and described in order to most easily explain the principles of the present invention and its application. Thus, other technical personnel in this technical field can understand the present invention by determining the various modifications optimized for the assumed various embodiments. The scope of the present invention is defined by the above claims and their equivalents.

Claims

1. A device for editing three-dimensional shape data, comprising a processor, The processor sets the distance from a predetermined location of the region to the forming surface of the three-dimensional shape of the object formed by the forming surface according to the three-dimensional shape data of the surface of the object formed by at least one of a plurality of planes and curved surfaces, divided into a plurality of three-dimensional regions, wherein the predetermined location is the center of each of the regions. The processor arranges the formation surface at a boundary between a first area where a three-dimensional element is arranged and a second area where no three-dimensional element is arranged in the area, The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

2. The three-dimensional shape data editing device according to claim 1, wherein: In a case where the forming surface interference located at a position represented by the distance from the predetermined place includes the area of ​​the predetermined place that serves as a measurement point of the distance, the processor configures three-dimensional elements in the area of ​​the forming surface interference and converts the three-dimensional shape of the object formed by the forming surface into a three-dimensional shape formed by the three-dimensional elements.

3. The apparatus for editing three-dimensional shape data according to claim 2, wherein: The processor sets an attribute indicating a property of the region for each of the regions.

4. The apparatus for editing three-dimensional shape data according to claim 2, wherein: The processor sets an attribute indicating a property of each of the regions in which the three-dimensional elements are arranged.

5. The three-dimensional shape data editing device according to claim 3, wherein: The processor refers to the attributes of each of the three-dimensional areas, and when the attributes satisfy a predetermined condition that does not require the configuration of a three-dimensional element, does not configure a three-dimensional element in the area where the attributes satisfying the predetermined condition are set.

6. The three-dimensional shape data editing device according to any one of claims 1 to 5, wherein: The processor changes at least one of a three-dimensional shape of the object formed by three-dimensional elements and a new three-dimensional shape formed from the three-dimensional shape formed by the three-dimensional elements using the forming surface by changing the distance set in the area.

7. The three-dimensional shape data editing device according to claim 6, wherein: The processor changes the three-dimensional shape of the object composed of three-dimensional elements and at least one of the new three-dimensional shapes formed from the three-dimensional shape composed of the three-dimensional elements using the forming surface by performing an operation on the distance set in the area, and the operation is at least one of addition, subtraction, multiplication, division, replacement and comparison.

8. The three-dimensional shape data editing device according to claim 7, wherein: The processor changes the value according to an attribute representing a property of the area.

9. The apparatus for editing three-dimensional shape data according to claim 6, wherein: The processor compares the distances set in the area including the three-dimensional shape of the object of different shapes, for each area. According to the selection rules common to each area, any of the distances is selected according to the area, The selected distance is set as the new distance in the area, thereby changing the three-dimensional shape of the object composed of three-dimensional elements.

10. The three-dimensional shape data editing device according to claim 6, wherein: The processor specifies a range of the area in which the distance is to be changed.

11. A device for editing three-dimensional shape data, comprising a processor, The processor converts a three-dimensional shape composed of three-dimensional elements in an area divided into a plurality of three-dimensional areas, the distance from a predetermined location where the area is set to the forming surface of the three-dimensional shape of an object formed by at least one forming surface of a plurality of planes and curved surfaces, into a new three-dimensional shape formed using the forming surface, the predetermined location being the center of each of the areas, The processor arranges the formation surface at a boundary between a first area where a three-dimensional element is arranged and a second area where no three-dimensional element is arranged in the area, The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

12. The three-dimensional shape data editing device according to claim 11, wherein: The processor corrects the ratio of the distances according to an attribute representing a property of the area.

13. A storage medium having recorded thereon a program for editing three-dimensional shape data as follows: for causing a computer to set distances from predetermined locations in a plurality of three-dimensional regions to the forming surfaces of the three-dimensional shape of the object formed by the forming surfaces, based on three-dimensional shape data of a surface formed by at least one of a plurality of planes and curved surfaces, wherein the predetermined locations are centers of the respective three-dimensional regions; The forming surface is arranged at a boundary between a first area in which three-dimensional elements are arranged and a second area in which three-dimensional elements are not arranged in the area. The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

14. A storage medium having recorded thereon a program for editing three-dimensional shape data as follows: for causing a computer to convert a three-dimensional shape composed of three-dimensional elements in an area divided into a plurality of three-dimensional areas, the distance from a predetermined location where the area is set to the formation surface of the three-dimensional shape of an object formed by at least one formation surface of a plurality of planes and curved surfaces, into a new three-dimensional shape formed using the formation surface, the predetermined location being the center of each of the areas, The forming surface is arranged at a boundary between a first area in which three-dimensional elements are arranged and a second area in which three-dimensional elements are not arranged in the area. The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

15. A method for editing three-dimensional shape data, comprising the following steps: Based on three-dimensional shape data of a surface forming a three-dimensional shape of an object using at least one of a plurality of planes and curved surfaces, setting distances from predetermined locations in the regions to the forming surfaces of the three-dimensional shape of the object formed by the forming surfaces, each of the regions being divided into a plurality of three-dimensional regions, the predetermined locations being the centers of the respective regions; Arranging the formation surface at a boundary between a first region in which three-dimensional elements are arranged and a second region in which no three-dimensional elements are arranged in the region; and The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

16. A method for editing three-dimensional shape data, comprising the following steps: Converting a three-dimensional shape composed of three-dimensional elements in a region divided into a plurality of three-dimensional regions at a distance from a predetermined location where the region is set to the formation surface of the three-dimensional shape of an object formed by at least one formation surface of a plurality of planes and curved surfaces into a new three-dimensional shape formed using the formation surface, the predetermined location being the center of each of the regions; Arranging the formation surface at a boundary between a first region in which three-dimensional elements are arranged and a second region in which no three-dimensional elements are arranged in the region; and The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

17. A computer program product, characterized in that Includes programs for causing a computer to: for causing a computer to set distances from predetermined locations in a plurality of three-dimensional regions to the forming surfaces of the three-dimensional shape of the object formed by the forming surfaces, based on three-dimensional shape data of a surface formed by at least one of a plurality of planes and curved surfaces, wherein the predetermined locations are centers of the respective three-dimensional regions; The forming surface is arranged at a boundary between a first area in which three-dimensional elements are arranged and a second area in which three-dimensional elements are not arranged in the area. The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

18. A computer program product, characterized in that Includes programs for causing a computer to: for causing a computer to convert a three-dimensional shape composed of three-dimensional elements in an area divided into a plurality of three-dimensional areas, the distance from a predetermined location where the area is set to the formation surface of the three-dimensional shape of an object formed by at least one formation surface of a plurality of planes and curved surfaces, into a new three-dimensional shape formed using the formation surface, the predetermined location being the center of each of the areas, The forming surface is arranged at a boundary between a first area in which three-dimensional elements are arranged and a second area in which three-dimensional elements are not arranged in the area. The vertices of the formation surface arranged at the boundary between the first region and the second region are corrected based on the ratio of the distances set in the first region and the second region respectively.

Citation Information

Patent Citations

  • Method and device for synthesizing three-dimensional data

    JP2001084395A

  • Additive manufacturing of 3D part

    CN109767495A

  • System and method for quickly transforming graphic object

    JP1998208078A