Decoration plane material designing and ordering method and system based on three-dimensional modeling technology
Through three-dimensional modeling technology, the multi-layer panel model is converted into a unified coordinate system, the actual size is calculated and the number is sorted, which solves the problem of information integration in decoration surface material design, and realizes an efficient and accurate design and ordering process.
Patent Information
- Application Number
- CN202510518020.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-23
- Publication Date
- 2025-08-08
AI Technical Summary
In the existing decoration surface material design and ordering process, it is difficult to integrate information from multiple layers, which are prone to location disorders and size distortion, and are inefficient.
Using three-dimensional modeling technology, by selecting panel models of multiple layers, determining the coordinate system and unit settings, converting them into a unified coordinate system, calculating the actual size and sorting the number, and generating an ordering map without positional confusion or distortion.
It improves the work efficiency of decoration surface material design, reduces human error, ensures design accuracy and standardization, and realizes an efficient and simple design and ordering process.
Smart Images

Figure CN120449255A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of decoration design, and in particular relates to a method and system for designing and ordering decoration surface materials based on three-dimensional modeling technology. Background Art
[0002] In the current design and ordering process for decorative surface materials, designers typically rely on two-dimensional drawings to design and specify panels. While this approach meets basic design requirements, it has significant limitations when dealing with complex structures or multi-layered projects. Traditional design methods require designers to manually measure the actual dimensions of each panel and record its position information one by one. This is not only inefficient but also prone to human error, such as inaccurate dimensions and misplaced positions. Furthermore, when integrating information from different layers, the lack of a unified coordinate system and unit settings further increases the difficulty and error rate of data processing.
[0003] Existing solutions primarily rely on CAD (computer-aided design) software to design surface materials. Designers first create individual panel models on separate layers, manually adjusting these layers to ensure their relative positioning is correct. They also attempt to verify the accuracy of all panel dimensions and positional information through manual checks. However, this process is time-consuming and labor-intensive, especially when working on large projects, and information omissions and errors are inevitable.
[0004] In this context, a significant technical issue arises: how to efficiently and accurately integrate panel model information from multiple layers while ensuring that the position and size of each panel will not be misaligned or distorted during the entire conversion and integration process? Summary of the Invention
[0005] The purpose of the present invention is to provide a method and system for designing and ordering decorative surface materials based on three-dimensional modeling technology, which improves work efficiency, reduces human errors, and makes the design of complex decorative surface materials simpler and faster, so as to solve the problems raised in the above-mentioned background technology.
[0006] To achieve the above-mentioned purpose, the present invention adopts the following technical solution: a method for designing and ordering decorative surface materials based on three-dimensional modeling technology, comprising the following steps:
[0007] Select panel models from multiple layers and determine the coordinate system and unit settings for each layer; based on the coordinate system and unit settings, convert all panel models into a unified coordinate system; calculate the actual size of each panel after conversion, sort and number them in a specified order, and extract geometric information of each panel based on the sorting number; convert the geometric information into a predetermined format, and integrate all panel information into a single file using the predetermined format; check the position and size of each panel in the single file, and finally generate an order drawing that contains all panel information without position confusion or size distortion.
[0008] Preferably, selecting panel models from multiple layers and determining the coordinate system and unit settings of each layer includes:
[0009] Identify the position information of the panel model in each layer, and record the original coordinate point set P = {p1, p2, ..., pn} corresponding to the position information;
[0010] Calculate the conversion coefficient k for the original coordinate point set P, where k = target unit length / original unit length;
[0011] The original coordinate point set P is adjusted using the conversion coefficient k to generate a new coordinate point set P'={p'1, p'2, ..., p'n}, where p'i=k*pi;
[0012] Based on the new coordinate point set P', calibrate each layer to a unified coordinate system.
[0013] Preferably, based on the coordinate system and unit settings, all panel models are converted to a unified coordinate system, including:
[0014] Obtain the position information of each panel model defined by the new coordinate point set P', and establish an empty unified coordinate system U to store the adjusted panel model positions;
[0015] For each panel model, calculate the translation vector T between the original coordinate system and the unified coordinate system, where T = (U origin coordinate-p'1 coordinate, U origin coordinate-p'2 coordinate, ..., U origin coordinate-p'n coordinate);
[0016] The translation vector T is used to adjust the position of each panel model, and the new coordinates of each panel model are updated to p'i = p'i + T, where i = 1, 2, ..., n;
[0017] Verify whether all panel models are correctly transformed into the unified coordinate system U by comparing the distance Dt between the new and old coordinate points of each panel model after transformation, and whether Dt = sqrt((p”ix-p'i.x)^2+(p”iy-p'i.y)^2) is less than the set threshold for all i=1 to n.
[0018] Preferably, the calculating the actual size of each panel after conversion and numbering them in a specified order includes:
[0019] Based on the new coordinate point set P' of each panel model in the unified coordinate system U, calculate the side length L of each panel, where for any quadrilateral panel, its side length L = sqrt((p'i+1.xp'ix)^2+(p'i+1.yp'iy)^2), and traverse all vertex pairs to obtain the complete set of side lengths;
[0020] The area A of each panel is calculated using the set of side lengths. For a quadrilateral panel, the total area is calculated by dividing it into triangles:
[0021] A=0.5abs((x1y2+x2y3+x3y1)-(y1 x2+y2x3+y3x1));
[0022] Among them, (x1, y1), (x2, y2), (x3, y3) are the coordinates of three consecutive points;
[0023] The actual size Sz of each panel is determined according to the area A and the side length L. All panels are sorted and assigned unique numbers N according to the actual size Sz.
[0024] Preferably, extracting geometric information of each panel according to the sorting number includes:
[0025] Index all panels according to the unique number N and create a geometric information mapping table M corresponding to the number, where M(N) = {side length set L, area A, new coordinate point set P};
[0026] For each panel, use the new coordinate point set P" in the mapping table M to calculate the slope S of each edge, S = (p"i+1.yp"iy) / (p"i+1.xp"ix);
[0027] Based on the side length set L, area A, and slope S, determine the geometric shape features of each panel and record the features in a geometric information list G, G = {N, L, A, S};
[0028] The data integrity in the geometric information list G is verified by checking whether the side length set L and slope S of each panel conform to a predefined mathematical relationship.
[0029] Preferably, converting the geometric information into a predetermined format includes:
[0030] Creating a conversion template T based on the data in the geometric information list G;
[0031] For each panel, use the conversion template T to format each item in the geometric information list G to generate a formatted set of side lengths Lf, areas Af, and slopes Sf, where Lf = round(L, 2), Af = round(A, 2), and Sf = round(S, 4);
[0032] Based on the formatted edge length set Lf, area Af, and slope Sf, a geometric description string D of each panel is constructed, D = "N:"+N+", L:"+Lf+", A:"+Af+", S:"+Sf", integrating all geometric information into a single string.
[0033] Preferably, all panel information is integrated into a single file using the predetermined format, including:
[0034] Initialize an empty target file F and define an index sequence I to record the position order of each panel in the file, I = {1, 2, ..., n};
[0035] For each panel, based on the geometric description string D, write the string into the target file F in the order of the index sequence I to form a continuous data block B. For the i-th panel, the starting position of its data block Bi in the file is sum(length(Bj))(j=1toi-1);
[0036] Calculate and record the length Li of each data block Bi, and add an index segment S to the target file F. The index segment S contains the starting position and length information of all panels, S = "N:" + N +", Start:" + Start_i +", Length:" + Li;
[0037] Check whether D completely matches the extracted "N:"+N+",L:"+Lf+",A:"+Af+",S:"+Sf to ensure that all panel information is correctly integrated into a single file.
[0038] Preferably, checking the position and size of each panel in the single file comprises:
[0039] Read the index segment S in the target file F, and locate the data block Bi of each panel based on the starting position Start_i and length Li information provided by the index segment S;
[0040] Extract the geometric description string D of each panel from the data block Bi, parse the side length Lf, area Af and slope Sf, and calculate the relative order R of each panel in the file based on the starting position Start_i, where R = Start_i - Start_(i-1);
[0041] Using the relative order R and the analyzed geometric information, verify the consistency of the panel sizes by comparing the distance Dt between adjacent panels and the side length Lf to see if they satisfy the mathematical relationship Dt = sqrt((x2 - x1)^2 + (y2 - y1)^2), where (x1, y1) and (x2, y2) are the coordinates of the key points of adjacent panels;
[0042] Confirm the accuracy of the positions and sizes of all panels to ensure that the relative order R, side length Lf, area Af and slope Sf of each panel are as expected, and there is no position disorder or size distortion.
[0043] Preferably, the final generation of an order drawing containing all panel information without position disorder or size distortion includes:
[0044] According to the confirmed relative order R and geometric description string D, the information of each panel is extracted from the target file F, and rearranged according to the relative order R to form a new ordered panel list O;
[0045] Calculate the actual layout coordinates X of each panel in the order diagram based on the side length Lf, area Af, and slope Sf in the ordered panel list O. For the i-th panel, its layout coordinates x and y can be obtained by adding the layout coordinates of the previous panel to the side length adjustment of the panel, that is, x_i = x_(i-1) + Lfcos(Sf), y_i = y_(i-1) + Lfsin(Sf);
[0046] Draw the outline of each panel based on the actual layout coordinate X, and mark the specific position and size of each panel on the order drawing. At the same time, to avoid overlap or gaps, check whether the distance Dt between adjacent panels is equal to half of the sum of their side lengths, Dt = (Lf + Lf) / 2;
[0047] Integrate the outline and annotation information of all panels to generate a complete order drawing K. By traversing each panel in the ordered panel list O and adding its corresponding outline and annotation to the order drawing K, ensure that the position and size of each panel meet the requirements and complete the production of the order drawing.
[0048] In another aspect, the present invention provides a system for designing and ordering decorative surface materials based on three-dimensional modeling technology, comprising:
[0049] The layer initialization module is used to select panel models from multiple layers and determine the coordinate system and unit settings of each layer;
[0050] A coordinate system conversion module, used to convert all panel models into a unified coordinate system based on the coordinate system and unit settings;
[0051] An information extraction module is used to calculate the actual size of each panel after conversion, sort and number them in a specified order, and extract the geometric information of each panel according to the sorted numbers;
[0052] A file integration module, configured to convert the geometric information into a predetermined format and integrate all panel information into a single file using the predetermined format;
[0053] The order drawing generation module is used to check the position and size of each panel in the single file, and finally generate an order drawing containing all panel information without position disorder or size distortion.
[0054] Technical effects and advantages of the present invention: The method and system for designing and ordering decorative surface materials based on three-dimensional modeling technology proposed by the present invention have the following advantages over the prior art:
[0055] The present invention automatically selects and converts panel models from multiple layers into a unified coordinate system, calculates the actual dimensions, and then sorts and numbers them, effectively managing and integrating the information of each panel, and ultimately generating an order drawing without positional confusion or size distortion. This method significantly improves work efficiency, reduces human errors, makes the design of complex decorative surface materials simpler and faster, and ensures that the final product meets design specifications and requirements, thus realizing an efficient and accurate design and ordering process. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] Figure 1 This is a flow chart of the method for designing and ordering decorative surface materials based on three-dimensional modeling technology of the present invention;
[0057] Figure 2 This is a block diagram of the system for designing and ordering decorative surface materials based on three-dimensional modeling technology of the present invention. DETAILED DESCRIPTION
[0058] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of the embodiments. The specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0059] The present invention provides Figure 1 The method shown here uses 3D modeling technology to design and order decorative surface materials. This method automatically selects and converts panel models from multiple layers into a unified coordinate system, calculates their actual dimensions, and then sorts and numbers them. This effectively manages and integrates the information of each panel, ultimately generating an order drawing without positional confusion or size distortion. The details are as follows:
[0060] In this embodiment, a method for designing and ordering decorative surface materials based on 3D modeling technology includes the following steps:
[0061] Step 1: Select the panel models from multiple layers and determine the coordinate system and unit settings for each layer; specifically:
[0062] Identify the position information of the panel models in each layer and record the original coordinate point set P = {p1, p2, ..., pn} corresponding to the position information; each point pi represents a vertex or key point of a panel model, ensuring that the position information of all panel models is accurately recorded to provide basic data for subsequent processing.
[0063] Calculate the conversion factor k for the original coordinate point set P, where k = target unit length / original unit length. For example, if the original unit is centimeters (cm) and the target unit is meters (m), then k = 0.01. Unify the units between different layers so that they can be compared and operated on the same scale.
[0064] The original coordinate point set P is adjusted using the conversion coefficient k to generate a new coordinate point set P' = {p'1, p'2, ..., p'n}, where p'i = k*pi; this step implements unit conversion so that all coordinate points are expressed in the same unit system, eliminating errors caused by unit differences.
[0065] Based on the new coordinate point set P', each layer is calibrated to a unified coordinate system, ensuring the accuracy of the relative position relationship between different layers and facilitating subsequent size calculations and layout design.
[0066] Example 1
[0067] Suppose there are two layers, layer A uses centimeters as the unit, and layer B uses millimeters as the unit. We need to convert the panel models in these two layers to a unified coordinate system, and set the target unit to meters.
[0068] Identify location information: For the panel model in layer A, its original coordinate point set is P_A = {p1_A, p2_A, ..., pn_A}; for layer B, its coordinate point set is P_B = {p1_B, p2_B, ..., pm_B}.
[0069] Calculate the conversion factor:
[0070] For layer A, k_A = 0.01 (because 1 meter = 100 centimeters).
[0071] For layer B, k_B = 0.001 (because 1 meter = 1000 mm).
[0072] Adjust the coordinate point set:
[0073] The new coordinate point set of layer A is P'_A = {p'1_A, p'2_A, ..., p'n_A}, where p'i_A = k_A*pi_A.
[0074] The new coordinate point set of layer B is P'_B = {p'1_B, p'2_B, ..., p'm_B}, where p'i_B = k_B*pi_B.
[0075] Calibrate to a unified coordinate system: Based on the new coordinate point sets P'_A and P'_B, adjust the positions of all panel models so that they are in the same coordinate system to ensure that the relative positional relationship between all panel models in subsequent processing is correct.
[0076] Step 2: Based on the coordinate system and unit settings, convert all panel models to a unified coordinate system; specifically including:
[0077] Obtain the position information of each panel model defined by the new coordinate point set P', and establish an empty unified coordinate system U to store the adjusted panel model positions; this system will serve as the basis for repositioning all panel models.
[0078] For each panel model, calculate the translation vector T between the original coordinate system and the unified coordinate system, where T = (U origin coordinate - coordinate of p'1, U origin coordinate - coordinate of p'2, ..., U origin coordinate - coordinate of p'n); T represents the distance from the original coordinate point p'i to the origin of the unified coordinate system U. By calculating the translation vector T, determine how to move each panel model so that it is located in the unified coordinate system U.
[0079] The translation vector T is used to adjust the position of each panel model, and the new coordinates of each panel model are updated to p"i=p'i+T, where i=1, 2, ..., n; this is achieved by adding the translation vector T to its original coordinate point p'i. This step actually moves all panel models from the original coordinate system to the unified coordinate system U.
[0080] Verify that all panel models have been correctly transformed into the unified coordinate system U by comparing the distance Dt between the new and old coordinate points of each panel model after transformation. This formula satisfies Dt = sqrt((p”ix - p'i.x)^2 + (p”iy - p'i.y)^2, which is less than a set threshold for all i = 1 to n. This formula is used to calculate the Euclidean distance between the panel model coordinate points before and after transformation. If the distance Dt between the transformed coordinate point p”i and the pre-transformed coordinate point p'i is less than the set threshold, the transformation is considered successful.
[0081] Example 2
[0082] Suppose there are two panel models A and B, with their coordinate points P'_A = {p'1_A, p'2_A} and P'_B = {p'1_B, p'2_B}, respectively. Unit conversion has already been completed. Now we need to convert them to a unified coordinate system U, with the origin of U set to (0, 0).
[0083] Get position information and establish a unified coordinate system U: Get the coordinate points in P'_A and P'_B, and establish an empty unified coordinate system U.
[0084] Calculate the translation vector T:
[0085] For panel A, calculate T_A = (0-p'1_A.x, 0-p'1_A.y), and similarly calculate T_A for other points.
[0086] For panel B, calculate T_B = (0-p'1_B.x, 0-p'1_B.y), and similarly calculate T_B for other points.
[0087] Use translation vector T to adjust the position:
[0088] Update the new coordinates of panel A to p'1_A = p'1_A + T_A. Update other points similarly.
[0089] Update the new coordinates of panel B to p'1_B = p'1_B + T_B. Update other points similarly.
[0090] Verify the conversion results:
[0091] Calculate the distance Dt between the new and old coordinate points of each panel model after transformation. For example, for the first point of panel A, calculate Dt = sqrt((p"1_A.x-p'1_A.x)^2+(p"1_A.y-p'1_A.y)^2).
[0092] If all calculated Dt values are less than a set threshold (e.g., 0.01), the conversion is successful.
[0093] Step 3: Calculate the actual size of each panel after conversion and number them in the specified order; specifically:
[0094] Based on the new coordinate point set P” of each panel model in the unified coordinate system U, calculate the side length L of each panel, where for any quadrilateral panel, its side length L = sqrt((p”i+1.xp”ix)^2+(p”i+1.yp”iy)^2). Traverse all vertex pairs to obtain the complete set of side lengths; this formula is used to calculate the Euclidean distance between two adjacent vertices, thereby obtaining the length of each side.
[0095] The area A of each panel is calculated using the set of side lengths. For a quadrilateral panel, the total area is calculated by dividing it into triangles:
[0096] A=0.5abs((x1y2+x2y3+x3y1)-(y1x2+y2x3+y3x1));
[0097] Where (x1, y1), (x2, y2), and (x3, y3) are the coordinates of three consecutive points. By decomposing a complex polygon into simple triangles, its area can be calculated more conveniently.
[0098] The actual size Sz of each panel is determined based on the area A and side length L. All panels are sorted and assigned a unique number N based on the actual size Sz. The actual size Sz comprehensively describes the size of the panel by combining the area A and side length L. For example, the area or the longest side can be used as the primary size criterion.
[0099] Example 3
[0100] Suppose we have a quadrilateral panel whose new coordinate point set P” = {p”1, p”2, p”3, p”4}, with coordinates of (0,0), (2,0), (2,2), (0,2) respectively.
[0101] Calculate the side length L:
[0102] Calculate the length of the first side: L1 = sqrt((2-0)^2 + (0-0)^2) = sqrt(4) = 2;
[0103] Calculate the length of the second side: L2 = sqrt((2-2)^2 + (2-0)^2) = sqrt(4) = 2;
[0104] Calculate the length of the third side: L3 = sqrt((0-2)^2 + (2-2)^2) = sqrt(4) = 2;
[0105] Calculate the length of the fourth side: L4 = sqrt((0-0)^2 + (0-2)^2) = sqrt(4) = 2;
[0106] The complete set of edge lengths is {2,2,2,2}.
[0107] Calculate area A:
[0108] Divide the quadrilateral into two triangles: {(0,0),(2,0),(2,2)} and {(0,0),(2,2),(0,2)};
[0109] Compute the area of the first triangle:
[0110] A1=0.5abs((00+22+20)-(02+02+20))=0.5abs(4)=2;
[0111] Compute the area of the second triangle:
[0112] A2=0.5abs((02+20+00)-(02+20+00))=0.5abs(4)=2;
[0113] The total area A=A1+A2=2+2=4.
[0114] Determine the actual size Sz and sort the number: Assuming that the actual size Sz uses the area A as the standard, then Sz=4, sort all panels according to the area Sz (in this example there is only one panel), and assign it a unique number N=1.
[0115] Through the above steps, we can accurately calculate the actual size of each panel and sort and number them according to these sizes. This method not only improves the accuracy of the calculation, but also makes the panel information more organized.
[0116] Step 4: Extracting geometric information of each panel according to the sorting number; specifically including:
[0117] All panels are indexed according to the unique number N, and a geometric information mapping table M corresponding to the number is created, where M(N) = {side length set L, area A, new coordinate point set P"}; using the panel's unique number N as a key, all relevant information of the panel can be quickly accessed, including the side length set L, area A, and new coordinate point set P".
[0118] For each panel, the slope S of each edge is calculated using the new coordinate point set P" in the mapping table M, where S = (p"i+1.yp"iy) / (p"i+1.xp"ix); by calculating the slope of each edge, the geometric characteristics of the panel can be more comprehensively described.
[0119] Based on the side length set L, area A and slope S, the geometric features of each panel are determined and recorded in a geometric information list G, G = {N, L, A, S}; this information together describes the geometric features of the panel.
[0120] Verify the data integrity in the geometric information list G by checking whether the side length set L and slope S of each panel conform to a predefined mathematical relationship. This step verifies the correctness of the data by checking the mathematical relationship between the side length set L and the slope S. For example, for any triangle, the Pythagorean theorem a^2 + b^2 = c^2 should be satisfied (where a and b are the lengths of the right angle legs, and c is the length of the hypotenuse).
[0121] Example 4
[0122] Suppose there is a quadrilateral panel with a unique number N = 1, a side length set L = {2, 2, 2, 2}, an area A = 4, and a new coordinate point set P'' = {(0, 0), (2, 0), (2, 2), (0, 2)}.
[0123] Create a geometric information mapping table M: M(1) = {side length set L = {2,2,2,2}, area A = 4, new coordinate point set P'' = {(0,0), (2,0), (2,2), (0,2)}};
[0124] Calculate the slope S of each side:
[0125] Calculate the slope of the first side: S1 = (0-0) / (2-0) = 0;
[0126] Calculate the slope of the second side: S2 = (2-0) / (2-2) = infinity (vertical line);
[0127] Calculate the slope of the third side: S3 = (2-2) / (0-2) = 0;
[0128] Calculate the slope of the fourth side: S4 = (0-2) / (0-0) = infinity (vertical line);
[0129] Record geometric shape features to the geometric information list G:
[0130] G(1)={N=1,L={2,2,2,2},A=4,S={0,infinity,0,infinity}};
[0131] Verify data integrity:
[0132] Check the mathematical relationship between the set of side lengths L and the slope S. For example, for the triangle consisting of the points (0,0), (2,0), and (2,2), the Pythagorean theorem should be satisfied:
[0133] a = 2 (horizontal side), b = 2 (vertical side), c = sqrt(a^2 + b^2) = sqrt(8);
[0134] Confirmed: 2^2+2^2=8, which satisfies the Pythagorean theorem.
[0135] Through the above steps, it can be ensured that the geometric information of each panel is accurately calculated and recorded, and the integrity and accuracy of the data are ensured through the verification steps.
[0136] Step 5: Convert the geometric information into a predetermined format; specifically including:
[0137] Based on the data in the geometric information list G, a conversion template T is created; this template ensures that the information of all panels is represented in a consistent manner.
[0138] For each panel, the transformation template T is used to format each item in the geometric information list G, generating a formatted set of side lengths Lf, area Af, and slope Sf, where Lf = round(L, 2). This formula rounds the side length L to two decimal places. The round function rounds a value to a specified number of decimal places.
[0139] Af=round(A,2), this formula is used to round the area A to two decimal places.
[0140] Sf=round(S,4); This formula is used to round the slope S to four decimal places.
[0141] Ensure consistent and readable output formatting by properly rounding numeric values.
[0142] Based on the formatted set of side lengths Lf, area Af, and slope Sf, a geometric description string D is constructed for each panel: D = "N:"+N+", L:"+Lf+", A:"+Af+", S:"+Sf", consolidating all geometric information into a single string. This concise string facilitates subsequent data management and processing.
[0143] Example 5
[0144] Assume there is a panel whose geometric information list G is as follows:
[0145] N=1;
[0146] L={2.123456,2.123456,2.123456,2.123456};
[0147] A=4.001234;
[0148] S={0.00012345,0.00012345,0.00012345,0.00012345}.
[0149] Create conversion template T: Define conversion template T, specify that the side length is rounded to two decimal places, the area is rounded to two decimal places, and the slope is rounded to four decimal places.
[0150] Formatting adjustments:
[0151] Format the side length set Lf:
[0152] Lf=[round(2.123456,2),round(2.123456,2),round(2.123456,2),roun d(2.123456,2)]=[2.12,2.12,2.12,2.12];
[0153] Format area Af: Af = round(4.001234, 2) = 4.00;
[0154] Format the slope Sf:
[0155] Sf=[round(0.00012345,4),round(0.00012345,4),round(0.00012345,4),round(0.00012345,4)]=[0.0001,0.0001,0.0001,0.0001];
[0156] Construct the geometry description string D:
[0157] Construct the geometry description string D:
[0158] "N:"+1+",L:"+[2.12,2.12,2.12,2.12]+",A:"+4.00+",S:"+[0.0001,0.0001,0.0001,0.0001];
[0159] To organize the above information into a more readable format:
[0160] D="N:1,L:[2.12,2.12,2.12,2.12],A:4.00,S:[0.0001,0.0001,0.0001,0.0001]";
[0161] Through the above steps, the geometric information of the panel can be converted into a predetermined format, ensuring that all information is presented in a consistent and easy-to-understand manner.
[0162] Step 6: Integrate all panel information into a single file using the predetermined format; specifically including:
[0163] Initialize an empty target file F and define an index sequence I to record the position order of each panel in the file, I = {1, 2, ..., n}; the index sequence I is used to determine the writing order of each panel in the file to ensure that the data blocks are arranged in sequence according to the number N.
[0164] For each panel, based on the geometric description string D, the string is written sequentially into the target file F according to the order of the index sequence I, forming a continuous data block B. For the i-th panel, the starting position of its data block Bi in the file is sum(length(Bj))(j=1toi-1); this formula calculates the starting position of the i-th panel data block Bi in the file. Specifically, it represents the sum of the lengths of the first (i-1) data blocks. For example, if the lengths of the first two data blocks are 10 and 15 respectively, the starting position of the third data block is 10+15=25.
[0165] Calculate and record the length Li of each data block Bi. Add an index segment S to the target file F. Index segment S contains the starting position and length information of all panels: S = "N:" + N+", Start:" + Start_i+, Length:" + Li. The data block length Li represents the byte length of each panel data block. Index segment S is an additional information segment used to record the panel number N, starting position Start_i, and length Li. This allows for quick location of any data block by index.
[0166] Check that D completely matches the extracted "N:"+N+", L:"+Lf+", A:"+Af+", S:"+Sf to ensure that all panel information is correctly integrated into a single file. By comparing the original geometry description string D with the information extracted from the target file, ensure that the data is not lost or damaged during the writing and reading process.
[0167] Example 6
[0168] Suppose there are two panels, and their geometry description strings are:
[0169] First panel: D1 = "N:1,L:[2.12,2.12],A:4.00,S:[0.0001,0.0001]";
[0170] Second panel: D2 = "N:2,L:[3.50,3.50],A:6.25,S:[0.0002,0.0002]";
[0171] Initialize the target file F and index sequence I: Initialize an empty target file F.
[0172] Define index sequence I = {1, 2}.
[0173] Write a block of data and determine the starting position:
[0174] The data block B1 of the first panel (N=1) is written to the file, and its length is length(D1)=len("N:1,L:[2.12,2.12],A:4.00,S:[0.0001,0.0001]")=38 bytes.
[0175] The starting position is sum(length(Bj))(j=1to1-1)=0.
[0176] The data block B2 of the second panel (N=2) is written to the file, and its length is length(D2)=len("N:2,L:[3.50,3.50],A:6.25,S:[0.0002,0.0002]")=39 bytes.
[0177] The starting position is sum(length(Bj))(j=1to2-1)=38.
[0178] Add index segment S: Index segment S contains the following content:
[0179] S1="N:1,Start:0,Length:38";
[0180] S2="N:2,Start:38,Length:39";
[0181] Verify data integrity:
[0182] Extract the information of the first panel:
[0183] "N:1,L:[2.12,2.12],A:4.00,S:[0.0001,0.0001]", which exactly matches the original D1.
[0184] Extract the information of the second panel:
[0185] "N:2,L:[3.50,3.50],A:6.25,S:[0.0002,0.0002]", which exactly matches the original D2.
[0186] Through the above steps, all panel information is integrated into a single file, and the fast positioning function is achieved through the index segment.
[0187] Step 7: Check the position and size of each panel in the single file; specifically including:
[0188] Read the index segment S in the target file F and locate each panel's data block Bi based on the starting position Start_i and length Li provided by the index segment S. The index segment S contains the panel number N, starting position Start_i, and length Li. This information allows for quick location of the specific data block for each panel in the file.
[0189] Extract the geometric description string D of each panel from the data block Bi, parse the side length Lf, area Af, and slope Sf, and calculate the relative order R of each panel in the file based on the starting position Start_i, where R = Start_i - Start_(i-1). This formula is used to calculate the offset of each panel relative to the previous panel in the file. This helps determine the relative order of the panels in the file.
[0190] Using this relative order R and the analyzed geometric information, the consistency of the panel dimensions is verified by comparing the distance Dt between adjacent panels with the side length Lf to ensure that they satisfy the mathematical relationship Dt = sqrt((x2 - x1)^2 + (y2 - y1)^2), where (x1, y1) and (x2, y2) are the coordinates of the key points of adjacent panels; this formula is used to calculate the Euclidean distance between two points. By comparing the coordinates of the key points of adjacent panels, it is possible to verify that the actual distance between them meets the expected distance.
[0191] Confirm the accuracy of the positions and sizes of all panels to ensure that the relative order R, side length Lf, area Af and slope Sf of each panel are as expected, and there is no position disorder or size distortion.
[0192] Example 7
[0193] Suppose there are two panels, and their geometry description strings are:
[0194] First panel: D1 = "N:1,L:[2.12,2.12],A:4.00,S:[0.0001,0.0001]";
[0195] Second panel: D2 = "N:2,L:[3.50,3.50],A:6.25,S:[0.0002,0.0002]";
[0196] And the index segment in the target file F is as follows:
[0197] S1="N:1,Start:0,Length:38";
[0198] S2="N:2,Start:38,Length:39";
[0199] Read and locate the data block: According to index segment S1, find the data block B1 of the first panel, starting at position 0 and with a length of 38 bytes. According to index segment S2, find the data block B2 of the second panel, starting at position 38 and with a length of 39 bytes.
[0200] Extract the geometry description string and parse it: Extract the geometry description string D1 from the data block B1 of the first panel: "N:1,L:[2.12,2.12],A:4.00,S:[0.0001,0.0001]".
[0201] The solution is to find that the side length Lf = [2.12, 2.12], the area Af = 4.00, and the slope Sf = [0.0001, 0.0001].
[0202] Extract the geometry description string D2 from the data block B2 of the second panel: "N:2,L:[3.50,3.50],A:6.25,S:[0.0002,0.0002]".
[0203] The analysis shows that the side length Lf = [3.50, 3.50], the area Af = 6.25, and the slope Sf = [0.0002, 0.0002].
[0204] Calculate the relative order R:
[0205] For the first panel (N=1), R1=Start_1-Start_0=0-0=0.
[0206] For the second panel (N=2), R2=Start_2-Start_1=38-0=38.
[0207] Verify dimensional consistency: Assume that the coordinates of a key point on the first panel are (0,0) and the coordinates of a key point on the second panel are (2.12,0). Calculate the distance Dt between adjacent panels: Dt = sqrt((2.12-0)^2 + (0-0)^2) = sqrt(4.4944) = 2.12. Verify: Dt is equal to the side length of the first panel, Lf[0] = 2.12, which is as expected. Confirm the accuracy of the position and size of all panels: After the above steps, confirm that the position and size of all panels are as expected, and there is no positional confusion or dimensional distortion.
[0208] Step 8: Finally, an order drawing containing all panel information without position confusion or size distortion is generated; specifically including:
[0209] Based on the confirmed relative order R and geometry description string D, each panel's information is extracted from the target file F and rearranged according to the relative order R to form a new ordered panel list O. Ordered panel list O sorts all panels according to the relative order R to ensure that the panels are arranged in the correct order. This provides ordered panel data for subsequent layout calculation and drawing.
[0210] Calculate the actual layout coordinates X of each panel in the order diagram based on the side length Lf, area Af, and slope Sf in the ordered panel list O. For the i-th panel, the x and y of its layout coordinates can be obtained by adding the layout coordinates of the previous panel to the side length of the panel, that is:
[0211] x_i = x_(i-1) + Lfcos(Sf). This formula calculates the x-coordinate of the i-th panel. It is determined by adding the x-coordinate of the previous panel to the cosine of the current panel's side length, Lf, and its slope, Sf (adjusted horizontally).
[0212] y_i = y_(i-1) + Lfsin(Sf); This formula calculates the y-coordinate of the i-th panel. It is determined by adding the sine of the current panel's side length, Lf, and its slope, Sf (vertically adjusted), to the y-coordinate of the previous panel.
[0213] Draw the outline of each panel based on the actual layout coordinate X. Mark the specific position and size of each panel on the order drawing. To avoid overlap or gaps, check that the distance Dt between adjacent panels is equal to half the sum of their side lengths: Dt = (Lf + Lf) / 2. This formula verifies that the distance between adjacent panels is reasonable. In theory, the distance between two panels should be half the sum of their side lengths.
[0214] Integrate the outline and annotation information of all panels to generate a complete order drawing K. By traversing each panel in the ordered panel list O and adding its corresponding outline and annotation to the order drawing K, ensure that the position and size of each panel meet the requirements and complete the production of the order drawing.
[0215] Example 8
[0216] Suppose there are two panels, and their geometry description strings are:
[0217] First panel: D1 = "N:1,L:[2.12,2.12],A:4.00,S:[0.0001,0.0001]";
[0218] Second panel: D2 = "N:2,L:[3.50,3.50],A:6.25,S:[0.0002,0.0002]";
[0219] And the index segment in the target file F is as follows:
[0220] S1="N:1,Start:0,Length:38";
[0221] S2="N:2,Start:38,Length:39";
[0222] Extract and sort panel information: Extract the information of two panels from the target file F and rearrange them according to the relative order R to form an ordered panel list O = {N:1, N:2}.
[0223] Calculate the actual layout coordinate X: For the first panel (N=1), the starting coordinate is (0,0).
[0224] x_1=0+2.12*cos(0.0001)=0+2.12=2.12;
[0225] y_1=0+2.12*sin(0.0001)=0+0.0002=0;
[0226] The actual layout coordinates are (2.12,0).
[0227] For the second panel (N=2), calculate based on the coordinates of the first panel:
[0228] x_2=2.12+3.50*cos(0.0002)=2.12+3.50=5.62;
[0229] y_2=0+3.50*sin(0.0002)=0+0.0007=0;
[0230] The actual layout coordinates are (5.62,0).
[0231] Verify the distance Dt between adjacent panels: the key point coordinates of the first panel are (2.12, 0), and the key point coordinates of the second panel are (5.62, 0).
[0232] Calculate the distance Dt between adjacent panels:
[0233] Dt=sqrt((5.62-2.12)^2+(0-0)^2)=sqrt(12.25)=3.50.
[0234] Verification: Dt = (Lf[0] + Lf[1]) / 2 = (2.12 + 3.50) / 2 = 2.81, which is close to the theoretical value and in line with expectations.
[0235] Draw the outline and generate order drawing K: Draw the outline of the first panel on order drawing K, marking the positions from (0,0) to (2.12,0). Draw the outline of the second panel, marking the positions from (2.12,0) to (5.62,0). Check that the positions and sizes of all panels meet the requirements to complete the order drawing.
[0236] Through the above steps, a complete order drawing K is generated, ensuring that the position and size of all panels are accurate and meet the design requirements. This method not only improves the accuracy of the design, but also simplifies the production and construction process.
[0237] On the other hand, the present invention proposes a system for designing and ordering decoration surface materials based on three-dimensional modeling technology, such as Figure 2 Shown, including:
[0238] The layer initialization module is used to select panel models from multiple layers and determine the coordinate system and unit settings of each layer;
[0239] A coordinate system conversion module, used to convert all panel models into a unified coordinate system based on the coordinate system and unit settings;
[0240] An information extraction module is used to calculate the actual size of each panel after conversion, sort and number them in a specified order, and extract the geometric information of each panel according to the sorted numbers;
[0241] A file integration module, configured to convert the geometric information into a predetermined format and integrate all panel information into a single file using the predetermined format;
[0242] The order drawing generation module is used to check the position and size of each panel in the single file, and finally generate an order drawing containing all panel information without position disorder or size distortion.
[0243] In addition, when the above modules are executed, they are also used to implement other steps of the above method for designing and ordering decorative surface materials based on three-dimensional modeling technology, which will not be described in detail here.
[0244] In summary, the present invention automatically selects and converts panel models from multiple layers into a unified coordinate system, calculates the actual sizes and then sorts and numbers them, effectively manages and integrates the information of each panel, and finally generates an order drawing without position confusion or size distortion; this method significantly improves work efficiency, reduces human errors, makes the design of complex decorative surface materials simpler and faster, and ensures that the final product meets the design specifications and requirements, realizing an efficient and accurate design and ordering process.
[0245] Finally, it should be noted that the above is only a preferred embodiment of the present invention and is not intended to limit the present invention. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art can still modify the technical solutions described in the aforementioned embodiments or make equivalent substitutions for some of the technical features therein. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A method for designing and ordering decoration surface materials based on three-dimensional modeling technology, characterized in that: The following steps are involved: Select panel models from multiple layers and determine the coordinate system and unit settings for each layer; Based on the coordinate system and unit settings, all panel models are converted to a unified coordinate system; Calculating the actual size of each panel after conversion, sorting and numbering them in a specified order, and extracting geometric information of each panel according to the sorting number; converting the geometric information into a predetermined format, and integrating all panel information into a single file using the predetermined format; The position and size of each panel are checked in the single file, and an order drawing is finally generated that contains all panel information without position confusion or size distortion.
2. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 1, characterized in that: The step of selecting panel models from multiple layers and determining the coordinate system and unit settings of each layer includes: Identify the position information of the panel model in each layer, and record the original coordinate point set P = {p1, p2, ..., pn} corresponding to the position information; Calculate the conversion coefficient k for the original coordinate point set P, where k = target unit length / original unit length; The original coordinate point set P is adjusted using the conversion coefficient k to generate a new coordinate point set P'={p'1, p'2, ..., p'n}, where p'i=k*pi; Based on the new coordinate point set P', calibrate each layer to a unified coordinate system.
3. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 2, characterized in that: Based on the coordinate system and unit settings, all panel models are converted to a unified coordinate system, including: Obtain the position information of each panel model defined by the new coordinate point set P', and establish an empty unified coordinate system U to store the adjusted panel model positions; For each panel model, calculate the translation vector T between the original coordinate system and the unified coordinate system, where T = (U origin coordinate-p'1 coordinate, U origin coordinate-p'2 coordinate, ..., U origin coordinate-p'n coordinate); The translation vector T is used to adjust the position of each panel model, and the new coordinates of each panel model are updated to p'i = p'i + T, where i = 1, 2, ..., n; Verify whether all panel models are correctly transformed into the unified coordinate system U by comparing the distance Dt between the new and old coordinate points of each panel model after transformation, and whether Dt = sqrt((p”ix-p'i.x)^2+(p”iy-p'i.y)^2) is less than the set threshold for all i=1 to n.
4. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 3, characterized in that: The actual size of each panel after conversion is calculated and numbered in a specified order, including: Based on the new coordinate point set P' of each panel model in the unified coordinate system U, calculate the side length L of each panel, where for any quadrilateral panel, its side length L = sqrt((p'i+1.xp'ix)^2+(p'i+1.yp'iy)^2), and traverse all vertex pairs to obtain the complete set of side lengths; The area A of each panel is calculated using the set of side lengths. For a quadrilateral panel, the total area is calculated by dividing it into triangles: A=0.5abs((x1y2+x2y3+x3y1)-(y1 x2+y2x3+y3x1)); Among them, (x1, y1), (x2, y2), (x3, y3) are the coordinates of three consecutive points; The actual size Sz of each panel is determined according to the area A and the side length L. All panels are sorted and assigned unique numbers N according to the actual size Sz.
5. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 4, characterized in that: Extracting geometric information of each panel according to the sorting number, including: Index all panels according to the unique number N and create a geometric information mapping table M corresponding to the number, where M(N) = {side length set L, area A, new coordinate point set P}; For each panel, use the new coordinate point set P" in the mapping table M to calculate the slope S of each edge, S = (p"i+1.yp"iy) / (p"i+1.xp"ix); Based on the side length set L, area A, and slope S, determine the geometric shape features of each panel and record the features in a geometric information list G, G = {N, L, A, S}; The data integrity in the geometric information list G is verified by checking whether the side length set L and slope S of each panel conform to a predefined mathematical relationship.
6. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 5, characterized in that: Converting the geometric information into a predetermined format includes: Creating a conversion template T based on the data in the geometric information list G; For each panel, use the conversion template T to format each item in the geometric information list G to generate a formatted set of side lengths Lf, areas Af, and slopes Sf, where Lf = round(L, 2), Af = round(A, 2), and Sf = round(S, 4); Based on the formatted edge length set Lf, area Af, and slope Sf, a geometric description string D of each panel is constructed, D = "N:"+N+", L:"+Lf+", A:"+Af+", S:"+Sf", integrating all geometric information into a single string.
7. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 6, characterized in that: Consolidate all panel information into a single file using the predefined format, including: Initialize an empty target file F and define an index sequence I to record the position order of each panel in the file, I = {1, 2, ..., n}; For each panel, based on the geometric description string D, write the string into the target file F in the order of the index sequence I to form a continuous data block B. For the i-th panel, the starting position of its data block Bi in the file is sum(length(Bj))(j=1toi-1); Calculate and record the length Li of each data block Bi, and add an index segment S to the target file F. The index segment S contains the starting position and length information of all panels, S = "N:" + N +", Start:" + Start_i +", Length:" + Li; Check whether D completely matches the extracted "N:"+N+",L:"+Lf+",A:"+Af+",S:"+Sf to ensure that all panel information is correctly integrated into a single file.
8. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 7, characterized in that: Check the position and size of each panel in the single file, including: Read the index segment S in the target file F, and locate the data block Bi of each panel based on the starting position Start_i and length Li information provided by the index segment S; Extract the geometric description string D of each panel from the data block Bi, parse the side length Lf, area Af and slope Sf, and calculate the relative order R of each panel in the file based on the starting position Start_i, where R = Start_i - Start_(i-1); Using the relative order R and the analyzed geometric information, verify the consistency of the panel sizes by comparing the distance Dt between adjacent panels and the side length Lf to see if they satisfy the mathematical relationship Dt = sqrt((x2 - x1)^2 + (y2 - y1)^2), where (x1, y1) and (x2, y2) are the coordinates of the key points of adjacent panels; Confirm the accuracy of the positions and sizes of all panels to ensure that the relative order R, side length Lf, area Af and slope Sf of each panel are as expected, and there is no position disorder or size distortion.
9. The method for designing and ordering decoration surface materials based on three-dimensional modeling technology according to claim 8, characterized in that: The final generated order drawing contains all panel information without position confusion or size distortion, including: According to the confirmed relative order R and geometric description string D, the information of each panel is extracted from the target file F, and rearranged according to the relative order R to form a new ordered panel list O; Calculate the actual layout coordinates X of each panel in the order diagram based on the side length Lf, area Af, and slope Sf in the ordered panel list O. For the i-th panel, its layout coordinates x and y can be obtained by adding the layout coordinates of the previous panel to the side length adjustment of the panel, that is, x_i = x_(i-1) + Lfcos(Sf), y_i = y_(i-1) + Lfsin(Sf); Draw the outline of each panel based on the actual layout coordinate X, and mark the specific position and size of each panel on the order drawing. At the same time, to avoid overlap or gaps, check whether the distance Dt between adjacent panels is equal to half of the sum of their side lengths, Dt = (Lf + Lf) / 2; Integrate the outline and annotation information of all panels to generate a complete order drawing K. By traversing each panel in the ordered panel list O and adding its corresponding outline and annotation to the order drawing K, ensure that the position and size of each panel meet the requirements and complete the production of the order drawing.
10. A system for designing and ordering decorative surface materials based on three-dimensional modeling technology for implementing the method according to any one of claims 1 to 9, characterized in that: include: The layer initialization module is used to select panel models from multiple layers and determine the coordinate system and unit settings of each layer; A coordinate system conversion module, used to convert all panel models into a unified coordinate system based on the coordinate system and unit settings; An information extraction module is used to calculate the actual size of each panel after conversion, sort and number them in a specified order, and extract the geometric information of each panel according to the sorted numbers; A file integration module, configured to convert the geometric information into a predetermined format and integrate all panel information into a single file using the predetermined format; The order drawing generation module is used to check the position and size of each panel in the single file, and finally generate an order drawing containing all panel information without position disorder or size distortion.
Citation Information
Patent Citations
Automatic order placing method and system for curtain wall surface skin
CN108009144A
Automatic generation method for a photovoltaic module arrangement drawing
CN109871567A
CAD automatic building curtain wall decoration panel typesetting and data output method and system
CN114385726A
Rhino-based curtain wall panel structure size classification method
CN117852127A