TWI486907B - Free surface area computation system and method - Google Patents

Free surface area computation system and method Download PDF

Info

Publication number
TWI486907B
TWI486907B TW099102795A TW99102795A TWI486907B TW I486907 B TWI486907 B TW I486907B TW 099102795 A TW099102795 A TW 099102795A TW 99102795 A TW99102795 A TW 99102795A TW I486907 B TWI486907 B TW I486907B
Authority
TW
Taiwan
Prior art keywords
free
polyline
triangle
form surface
vertices
Prior art date
Application number
TW099102795A
Other languages
Chinese (zh)
Other versions
TW201128572A (en
Inventor
Chih Kuang Chang
Xin-Yuan Wu
Xiao-Chao Sun
Jin-Bo Hu
Min Wang
Original Assignee
Hon Hai Prec Ind Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hon Hai Prec Ind Co Ltd filed Critical Hon Hai Prec Ind Co Ltd
Priority to TW099102795A priority Critical patent/TWI486907B/en
Publication of TW201128572A publication Critical patent/TW201128572A/en
Application granted granted Critical
Publication of TWI486907B publication Critical patent/TWI486907B/en

Links

Landscapes

  • Image Generation (AREA)

Description

自由曲面面積計算系統及方法 Free surface area calculation system and method

本發明涉及一種電腦輔助設計系統及方法,尤其是一種自由曲面面積計算系統及方法。 The invention relates to a computer aided design system and method, in particular to a free curved surface area calculation system and method.

在電腦輔助設計中,長度和面積是圖元最基本的屬性,例如直線長度和平面圖形的面積計算等由簡單的四則運算即可以完成。而自由曲面是一種抽象圖形,其主要由邊界點及控制點描述物體的形狀,利用常規的數學運算無法得到自由曲面的面積。目前,關於自由曲面面積的計算方法要麼精度高但速度慢,要麼速度快但精度低。 In computer-aided design, the length and area are the most basic attributes of the primitive. For example, the length of the line and the area calculation of the plane figure can be completed by a simple four-step operation. The free-form surface is an abstract figure, which mainly describes the shape of the object by boundary points and control points. The area of the free-form surface cannot be obtained by conventional mathematical operations. At present, the calculation method for the free-form surface area is either high precision but slow, or fast but low precision.

鑒於以上內容,有必要提供一種自由曲面面積計算系統及方法,可以快速計算出自由曲面的面積,並且能夠提高自由曲面面積的計算精度。 In view of the above, it is necessary to provide a free-form surface area calculation system and method, which can quickly calculate the area of the free-form surface and improve the calculation accuracy of the free-form surface area.

一種自由曲面面積計算系統,應用於電子裝置。該系統包括:邊界處理模組、三角網格化模組及計算模組。邊界處理模組用於獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線。三角網格化模組用於在參數平面內設置樣點,根據設置的樣點、所述多義線的頂點以及經過樣點的垂直線段或水平線段與多義線的交點構建逼近所述輪廓面的多邊形,並對所述 多邊形進行三角網格化。計算模組用於根據三角網格化得到的三角形計算自由曲面的面積。 A free-form surface area calculation system is applied to an electronic device. The system comprises: a boundary processing module, a triangular meshing module and a computing module. The boundary processing module is configured to obtain a contour surface composed of boundary points of the free surface, and obtain a polyline that approximates the contour surface in the parameter plane. The triangular meshing module is configured to set a sample point in the parameter plane, and construct an approaching the contour surface according to the set sample point, the vertices of the polyline, and the vertical line segment of the sample point or the intersection of the horizontal line segment and the polyline Polygon and said The polygon is triangulated. The calculation module is used to calculate the area of the free surface based on the triangle obtained by the triangular meshing.

一種自由曲面面積計算方法,該方法包括:(A)邊界處理步驟:獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線;(B)三角網格化步驟:在參數平面內設置樣點,根據設置的樣點、所述多義線的頂點以及經過樣點的垂直線段或水平線段與多義線的交點構建逼近所述輪廓面的多邊形,並對所述多邊形進行三角網格化;及(C)計算步驟:根據三角網格化得到的三角形計算自由曲面的面積。 A method for calculating a free-form surface area, the method comprising: (A) a boundary processing step of: obtaining a contour surface composed of boundary points of a free-form surface, and obtaining a polyline that approximates the contour surface in a parameter plane; (B) triangular meshing Step: setting a sample point in the parameter plane, and constructing a polygon approaching the contour surface according to the set sample point, the vertices of the polyline, and the vertical line segment passing through the sample point or the intersection of the horizontal line segment and the polyline, and The polygon is triangulated; and (C) the calculation step: calculating the area of the free surface from the triangle obtained by the triangular meshing.

相較於習知技術,本發明提供的自由曲面面積計算系統及方法,可以快速計算出自由曲面的面積,並且能夠提高自由曲面面積的計算精度。 Compared with the prior art, the free-form surface area calculation system and method provided by the invention can quickly calculate the area of the free-form surface and improve the calculation precision of the free-form surface area.

100‧‧‧電子裝置 100‧‧‧Electronic devices

10‧‧‧自由曲面面積計算系統 10‧‧‧ Free-form surface area calculation system

11‧‧‧邊界處理模組 11‧‧‧Boundary Processing Module

13‧‧‧三角網格化模組 13‧‧‧Triangular grid module

15‧‧‧顯示模組 15‧‧‧Display module

17‧‧‧計算模組 17‧‧‧Computation Module

20‧‧‧儲存設備 20‧‧‧Storage equipment

30‧‧‧處理器 30‧‧‧ Processor

40‧‧‧顯示設備 40‧‧‧Display equipment

圖1係本發明自由曲面面積計算系統較佳實施例之功能模組圖。 1 is a functional block diagram of a preferred embodiment of a free-form surface area calculation system of the present invention.

圖2係本發明自由曲面面積計算方法較佳實施例之流程圖。 2 is a flow chart of a preferred embodiment of a method for calculating a free curved surface area of the present invention.

圖3係圖2中步驟S201之具體流程圖。 FIG. 3 is a specific flowchart of step S201 in FIG. 2.

圖4係圖2中步驟S203之具體流程圖。 FIG. 4 is a specific flowchart of step S203 in FIG. 2.

圖5係圖2中步驟S205之具體流程圖。 FIG. 5 is a specific flowchart of step S205 in FIG. 2.

圖6係求取多義線頂點之示意圖。 Figure 6 is a schematic diagram of the vertices of a polyline.

圖7係參數平面內樣點、多義線頂點及交點之示意圖。 Figure 7 is a schematic diagram of sample points, polyline vertices, and intersection points in a parameter plane.

圖8及圖9係連接三角形之示意圖。 8 and 9 are schematic views of a connecting triangle.

如圖1所示,係本發明自由曲面面積計算系統10較佳實施例之功能模組圖。該自由曲面面積計算系統10安裝並運行於電子裝置100。該電子裝置100還包括儲存設備20、處理器30及顯示設備40。該電子裝置100可以為電腦或其他任意適用的具有資料處理功能的裝置。 1 is a functional block diagram of a preferred embodiment of the free-form surface area computing system 10 of the present invention. The freeform surface area computing system 10 is mounted and operates on the electronic device 100. The electronic device 100 further includes a storage device 20, a processor 30, and a display device 40. The electronic device 100 can be a computer or any other suitable device having data processing functions.

儲存設備20用於儲存自由曲面面積計算系統10的電腦化程式碼。儲存設備20可以為電子裝置100內置的記憶體,也可以為電子裝置100外接的記憶體。 The storage device 20 is used to store the computerized code of the freeform surface area computing system 10. The storage device 20 may be a memory built in the electronic device 100 or a memory external to the electronic device 100.

處理器30執行自由曲面面積計算系統10的電腦化程式碼,將自由曲面轉換為參數平面內的三角形,計算轉換得到的三角形面積之和得到自由曲面的面積。 The processor 30 executes the computerized code of the free-form surface area calculation system 10, converts the free-form surface into a triangle in the parameter plane, and calculates the sum of the converted triangle areas to obtain the area of the free-form surface.

顯示設備40用於顯示所述自由曲面、自由曲面轉換後得到的參數平面內的三角形,以及計算得到的自由曲面的面積。 The display device 40 is configured to display a triangle in a parameter plane obtained by converting the free-form surface and the free-form surface, and an area of the calculated free-form surface.

該自由曲面面積計算系統10包括:邊界處理模組11、三角網格化模組13、顯示模組15及計算模組17。 The free-form surface area calculation system 10 includes a boundary processing module 11, a triangular meshing module 13, a display module 15, and a computing module 17.

邊界處理模組11用於獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線(具體介紹請參見下文關於圖3的描述)。 The boundary processing module 11 is configured to obtain a contour surface composed of boundary points of the free curved surface, and obtain a polyline that approximates the contour surface in the parameter plane (for details, please refer to the description of FIG. 3 below).

三角網格化模組13用於在參數平面內設置樣點,根據設置的樣點、所述多義線的頂點以及經過樣點的垂直線段或水平線段與多義線的交點構建逼近所述輪廓面的多邊形,並對所述多邊形進行三角網格化(具體介紹請參見下文關於圖4的描述)。 The triangular meshing module 13 is configured to set a sample point in the parameter plane, and construct the approximating the contour surface according to the set sample point, the vertices of the polyline, and the vertical line segment of the sample point or the intersection of the horizontal line segment and the polyline. Polygons and triangulate the polygons (see the description of Figure 4 below for details).

顯示模組15用於在顯示設備40上顯示所述自由曲面、自由曲面轉 換後得到的參數平面內的三角形,以及計算得到的自由曲面的面積。 The display module 15 is configured to display the free-form surface and the free-form surface on the display device 40. The triangle in the parameter plane obtained after the change, and the area of the calculated free surface.

計算模組17用於根據三角網格化得到的三角形計算自由曲面的面積(具體介紹請參見下文關於圖5的描述)。 The calculation module 17 is configured to calculate the area of the free-form surface according to the triangle obtained by the triangular meshing (for details, please refer to the description about FIG. 5 below).

如圖2所示,係本發明自由曲面面積計算方法較佳實施例之流程圖。 As shown in FIG. 2, it is a flow chart of a preferred embodiment of the free-form surface area calculation method of the present invention.

步驟S201,邊界處理模組11獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線(具體介紹請參見下文關於圖3的描述)。顯示模組15顯示所述自由曲面、輪廓面及多義線。 In step S201, the boundary processing module 11 obtains a contour surface composed of boundary points of the free-form surface, and obtains a polyline that approximates the contour surface in the parameter plane (refer to the description of FIG. 3 below for details). The display module 15 displays the free-form surface, the contour surface, and the polyline.

步驟S203,三角網格化模組13在參數平面內設置樣點,根據設置的樣點、所述多義線的頂點以及經過樣點的垂直線段或水平線段與多義線的交點構建逼近所述輪廓面的多邊形,並對所述多邊形進行三角網格化(具體介紹請參見下文關於圖4的描述)。顯示模組15顯示所述參數平面、樣點、多義線的頂點、交點以及三角網格化前後的多邊形。 Step S203, the triangular meshing module 13 sets a sample point in the parameter plane, and constructs an approaching the contour according to the set sample point, the vertices of the polyline, and the intersection of the vertical line segment or the horizontal line segment passing through the sample line and the polyline. The polygon of the face, and the triangle is meshed (see the description of Figure 4 below for details). The display module 15 displays the parameter plane, the sample point, the vertices of the polyline, the intersection point, and the polygons before and after the triangle meshing.

步驟S205,計算模組17根據三角網格化得到的三角形計算自由曲面的面積(具體介紹請參見下文關於圖5的描述)。顯示模組15顯示計算得到的自由曲面的面積。 In step S205, the calculation module 17 calculates the area of the free-form surface according to the triangle obtained by the triangular meshing (refer to the description of FIG. 5 below for details). The display module 15 displays the calculated area of the freeform surface.

如圖3所示,係圖2中步驟S201之具體流程圖。 As shown in FIG. 3, it is a specific flowchart of step S201 in FIG.

步驟S301,邊界處理模組11從儲存設備20讀取一個自由曲面。 In step S301, the boundary processing module 11 reads a free surface from the storage device 20.

步驟S303,邊界處理模組11連接該自由曲面的邊界點得到由一系 列首尾相連的曲線構成的自由曲面的輪廓面。 Step S303, the boundary processing module 11 connects the boundary points of the free-form surface to obtain a system. The contour of the freeform surface formed by the curves connected end to end.

步驟S305,邊界處理模組11讀取構成輪廓面的一條曲線。 In step S305, the boundary processing module 11 reads a curve constituting the contour surface.

步驟S307,邊界處理模組11判斷該曲線是否為有理曲線。若該曲線為有理曲線,則流程直接進入步驟S321;若該曲線不是有理曲線,則流程進入步驟S309。在本實施例中,所述有理曲線為B樣條曲線。構成輪廓面的曲線可能為直線、圓弧、橢圓弧及有理曲線,其中有理曲線更逼近自由曲面的輪廓線條。 In step S307, the boundary processing module 11 determines whether the curve is a rational curve. If the curve is a rational curve, the flow directly proceeds to step S321; if the curve is not a rational curve, the flow proceeds to step S309. In this embodiment, the rational curve is a B-spline curve. The curve forming the contour surface may be a straight line, an arc, an elliptical arc, and a rational curve, wherein the rational curve is closer to the contour line of the free surface.

步驟S309,邊界處理模組11判斷該曲線是否為橢圓弧。若該曲線為橢圓弧,則流程進入步驟S311,邊界處理模組11將該橢圓弧轉換為有理曲線。若該曲線不是橢圓弧,則流程進入步驟S313。 In step S309, the boundary processing module 11 determines whether the curve is an elliptical arc. If the curve is an elliptical arc, the flow proceeds to step S311, and the boundary processing module 11 converts the elliptical arc into a rational curve. If the curve is not an elliptical arc, the flow advances to step S313.

步驟S313,邊界處理模組11判斷該曲線是否為直線。若該曲線為直線,則流程進入步驟S315,邊界處理模組11將該直線轉換為有理曲線。若該曲線不是直線,則流程進入步驟S317。 In step S313, the boundary processing module 11 determines whether the curve is a straight line. If the curve is a straight line, the flow proceeds to step S315, and the boundary processing module 11 converts the straight line into a rational curve. If the curve is not a straight line, the flow advances to step S317.

步驟S317,邊界處理模組11判斷該曲線是否為圓弧。若該曲線為圓弧,則流程進入步驟S319,邊界處理模組11將該圓弧轉換為有理曲線。若該曲線不是圓弧,則流程進入步驟S321。 In step S317, the boundary processing module 11 determines whether the curve is an arc. If the curve is an arc, the flow proceeds to step S319, and the boundary processing module 11 converts the arc into a rational curve. If the curve is not an arc, the flow proceeds to step S321.

步驟S321,邊界處理模組11判斷輪廓面中是否還有曲線未被讀取。若輪廓面中還有曲線未被讀取,則流程自步驟S305開始重複,直到輪廓面中的所有曲線都為有理曲線,流程進入步驟S323。 In step S321, the boundary processing module 11 determines whether there is still a curve in the contour surface that is not read. If there are still curves in the contour plane that have not been read, the flow repeats from step S305 until all the curves in the contour plane are rational curves, and the flow advances to step S323.

步驟S323,邊界處理模組11得到由所有有理曲線組成的一條封閉邊界曲線。將構成輪廓面的所有曲線轉換為有理曲線不僅能夠使得有理曲線組成的封閉邊界曲線更加逼近自由曲面的輪廓面,而且對單一類型曲線(即有理曲線)的處理能夠提高處理速度。 In step S323, the boundary processing module 11 obtains a closed boundary curve composed of all rational curves. Converting all the curves that make up the contour surface into rational curves not only makes the closed boundary curve composed of rational curves more close to the contour surface of the free surface, but also the processing of a single type curve (ie, rational curve) can improve the processing speed.

步驟S325,邊界處理模組11根據各有理曲線的參數方程得到各有理曲線的控制點,根據控制點求取逼近所述封閉邊界曲線的多義線。每條有理曲線有對應的以參數U、V表示的參數方程,U、V的取值範圍為0~1,根據參數方程可以得到各有理曲線的控制點。 In step S325, the boundary processing module 11 obtains the control points of the rational curves according to the parameter equations of the rational curves, and obtains the polyline that approximates the closed boundary curve according to the control points. Each rational curve has a corresponding parameter equation represented by parameters U and V. The range of U and V ranges from 0 to 1. According to the parameter equation, the control points of each rational curve can be obtained.

步驟S327,邊界處理模組11利用中值插值法得到該多義線在參數平面內的一系列頂點。在本實施例中,參數平面的水準方向用U表示,垂直方向用V表示,參數平面內的每個點的座標可以(U,V)表示,其對應於二維座標(X,Y),其中U、V的取值範圍為0~1。例如,假設圖6中所示圓弧為上述封閉邊界曲線,圓弧上的點A、B、C、D相連接得到一條多義線,但該多義線與所述圓弧不夠貼合,即該該多義線與所述圓弧的逼近精度誤差較大,為了提高逼近精度,可以取多義線相鄰兩頂點間的圓弧段的中點,將該中點與所述兩頂點分別連接。例如,取多義線相鄰兩頂點A、B間的圓弧段的中點A1,分別連接AA1、A1B。依此類推,多義線的頂點越多,與封閉邊界曲線的逼近精度就越高。需要指出的是,圖6~圖9只是以相連的線段示意多義線,實際上多義線的組成可以為相連的線段或弧線。 In step S327, the boundary processing module 11 uses a median interpolation method to obtain a series of vertices of the polyline in the parameter plane. In this embodiment, the level direction of the parameter plane is represented by U, the vertical direction is represented by V, and the coordinates of each point in the parameter plane may be represented by (U, V), which corresponds to the two-dimensional coordinate (X, Y), The values of U and V range from 0 to 1. For example, suppose the arc shown in FIG. 6 is the closed boundary curve, and the points A, B, C, and D on the arc are connected to obtain a polyline, but the polyline is not enough to fit the arc, that is, the The approximation accuracy error between the polyline and the arc is large. To improve the approximation accuracy, the midpoint of the arc segment between two adjacent vertices of the polyline may be taken, and the midpoint and the two vertices are respectively connected. For example, the midpoint A1 of the arc segment between the adjacent two vertices A and B of the polyline is connected to AA1 and A1B, respectively. By analogy, the more vertices of the polyline, the higher the approximation accuracy with the closed boundary curve. It should be noted that FIG. 6 to FIG. 9 only indicate the polyline with the connected line segments. In fact, the composition of the polyline may be a connected line segment or an arc.

步驟S329,邊界處理模組11輸出該多義線所有頂點組成的頂點佇列。 In step S329, the boundary processing module 11 outputs a vertex queue composed of all the vertices of the polyline.

如圖4所示,係圖2中步驟S203之具體流程圖。 As shown in FIG. 4, it is a specific flowchart of step S203 in FIG.

步驟S401,三角網格化模組13在參數平面內設置樣點,得到參數平面內的樣點佇列。如圖7所示,三角網格化模組13將U軸平均分為5段得到6個均勻分佈的樣點p1~p6,將V軸平均分成4段得到5個均勻分佈的樣點p1、p7~p10。這樣,經過樣點p1~p6的6條V線段 (包括V軸)上各分佈5各樣點(圖中樣點用空心圓表示)。 In step S401, the triangular meshing module 13 sets samples in the parameter plane to obtain a sample queue in the parameter plane. As shown in FIG. 7, the triangular meshing module 13 divides the U-axis into 5 segments to obtain 6 uniformly distributed samples p1 to p6, and divides the V-axis into 4 segments to obtain 5 uniformly distributed samples p1. P7~p10. Thus, the six V-line segments passing through the samples p1~p6 Each sample (including the V-axis) is distributed with 5 samples (the sample points in the figure are indicated by open circles).

步驟S403,三角網格化模組13讀取參數平面內多義線的頂點,落入多義線內的樣點,以及經過樣點的U線段或V線段(U線段數目多則取U線段,V線段數目多則取V線段)與多義線的交點。如圖7所示,參數平面內黑色的實心圓表示多義線L的頂點,V線段p5p14上的樣點p16、p17、p18落入多義線L內,V線段p5p14與多義線L有交點G1、G2。 Step S403, the triangular meshing module 13 reads the vertices of the polyline in the parameter plane, the sample points falling into the polyline, and the U line segment or the V line segment passing through the sample point (the U line segment is taken when the number of U line segments is large, V The number of line segments is more than the intersection of the V-line segment and the polyline. As shown in FIG. 7, the black solid circle in the parameter plane represents the vertex of the polyline L, and the samples p16, p17, and p18 on the V line segment p5p14 fall into the polyline L, and the V line segment p5p14 and the polyline L have an intersection G1. G2.

步驟S405,三角網格化模組13根據上述讀取的頂點、樣點及交點構成參數平面內的一個多邊形。 In step S405, the triangular meshing module 13 forms a polygon in the parameter plane according to the read vertices, samples and intersections.

步驟S407,三角網格化模組13連接多義線的頂點、落入多義線內的樣點及所述交點將該多邊形分割成一系列三角形,連接原則是各三角形的外接圓中沒有多邊形的其他頂點。如圖8所示,是步驟S405所得到的多邊形的部分示意圖,圖中點Q5~Q9這5個點為多義線L的頂點,點p16、p17、p18這3個點為落入多義線L內的樣點,點G1、G2這2個點為V線段p5p14與多義線L的交點。三角網格化模組13連接該10個點得到圖9中所示的8個三角形。 Step S407, the triangular meshing module 13 connects the vertices of the polyline, the sample points falling in the polyline, and the intersection to divide the polygon into a series of triangles. The connection principle is that there are no other vertices in the circumscribed circle of each triangle. . As shown in FIG. 8 , it is a partial schematic diagram of the polygon obtained in step S405 . The five points of the points Q5 to Q9 are the vertices of the polyline L, and the three points p16, p17 and p18 fall into the polyline L. In the sample point, the two points G1 and G2 are the intersections of the V line segment p5p14 and the polyline L. The triangular meshing module 13 connects the 10 points to obtain the 8 triangles shown in FIG.

步驟S409,三角網格化模組13過濾掉落在多義線外的三角形。例如,如果圖7中的點Q1、Q2、Q3、Q4被連接成2個三角形,則該2個三角形落在多義線L外,為無效的三角形,需要被過濾掉。 In step S409, the triangular meshing module 13 filters out the triangles that fall outside the polyline. For example, if the points Q1, Q2, Q3, and Q4 in FIG. 7 are connected into two triangles, the two triangles fall outside the polyline L and are invalid triangles, which need to be filtered out.

步驟S411,三角網格化模組13輸出參數平面內所有有效的三角形組成的三角形佇列。 In step S411, the triangular meshing module 13 outputs a triangular array of all valid triangles in the parameter plane.

如圖5所示,係圖2中步驟S205之具體流程圖。 As shown in FIG. 5, it is a specific flowchart of step S205 in FIG. 2.

步驟S501,計算模組17從三角形佇列中讀取一個三角形。 In step S501, the calculation module 17 reads a triangle from the triangle array.

步驟S503,計算模組17根據該三角形的三個頂點座標計算該三角形的各邊長。 In step S503, the calculation module 17 calculates the lengths of the sides of the triangle according to the three vertex coordinates of the triangle.

步驟S505,計算模組17根據該三角形的各邊長計算該三角形的面積。 In step S505, the calculation module 17 calculates the area of the triangle according to the length of each side of the triangle.

步驟S507,計算模組17判斷三角形佇列中是否還有三角形未被讀取。如果三角形佇列中還有三角形未被讀取,則流程自步驟S501開始重複,直到三角形佇列中的所有三角形面積都被計算得到,流程進入步驟步驟S509。 In step S507, the calculation module 17 determines whether there are still triangles in the triangle array that are not read. If there are still triangles in the triangle array that have not been read, the flow repeats from step S501 until all the triangle areas in the triangle array are calculated, and the flow advances to step S509.

步驟S509,計算模組17計算所有三角形的面積之和得到自由曲面的面積。 In step S509, the calculation module 17 calculates the sum of the areas of all the triangles to obtain the area of the free-form surface.

以上所述僅為本發明之較佳實施例而已,且已達廣泛之使用功效,凡其他未脫離本發明所揭示之精神下所完成之均等變化或修飾,均應包含在下述之申請專利範圍內。 The above is only the preferred embodiment of the present invention, and has been used in a wide range of applications. Any other equivalent changes or modifications which are not departing from the spirit of the present invention should be included in the following claims. Inside.

100‧‧‧電子裝置 100‧‧‧Electronic devices

10‧‧‧自由曲面面積計算系統 10‧‧‧ Free-form surface area calculation system

11‧‧‧邊界處理模組 11‧‧‧Boundary Processing Module

13‧‧‧三角網格化模組 13‧‧‧Triangular grid module

15‧‧‧顯示模組 15‧‧‧Display module

17‧‧‧計算模組 17‧‧‧Computation Module

20‧‧‧儲存設備 20‧‧‧Storage equipment

30‧‧‧處理器 30‧‧‧ Processor

40‧‧‧顯示設備 40‧‧‧Display equipment

Claims (8)

一種自由曲面面積計算方法,應用於電子裝置,該方法包括:邊界處理步驟:獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線,其中邊界處理步驟包括:從與電子裝置相連接的儲存設備讀取一個自由曲面;連接該自由曲面的邊界點得到由一系列首尾相連的曲線構成的自由曲面的輪廓面;將構成所述輪廓面的所有曲線轉化為有理曲線,得到由所有有理曲線組成的一條封閉邊界曲線;根據各有理曲線的參數方程得到各有理曲線的控制點,根據控制點求取逼近所述封閉邊界曲線的多義線;利用中值插值法得到該多義線在參數平面內的一系列頂點;三角網格化步驟:在參數平面內設置樣點,根據設置的樣點、所述多義線的頂點以及經過樣點的垂直線段或水平線段與多義線的交點構建逼近所述輪廓面的多邊形,並對所述多邊形進行三角網格化;及計算步驟:根據三角網格化得到的三角形計算自由曲面的面積。 A method for calculating a free-form surface area is applied to an electronic device. The method includes: a boundary processing step: acquiring a contour surface composed of boundary points of a free-form surface, and obtaining a polyline that approximates the contour surface in a parameter plane, wherein the boundary processing step includes : reading a free-form surface from a storage device connected to the electronic device; connecting a boundary point of the free-form surface to obtain a contour surface of a free-form surface formed by a series of curves connected end to end; converting all curves constituting the contour surface into The rational curve obtains a closed boundary curve composed of all rational curves; the control points of each rational curve are obtained according to the parametric equations of each rational curve, and the polyline which approximates the closed boundary curve is obtained according to the control point; using the median interpolation method Obtaining a series of vertices of the polyline in the parameter plane; a triangle meshing step: setting a sample point in the parameter plane according to the set sample point, the vertices of the polyline, and the vertical line segment or the horizontal line segment passing through the sample point The intersection of the polylines constructs a polygon that approximates the contour plane and the polygon The meshing line; and calculating steps: calculating the area of a free curved surface according to the triangle of the triangular mesh obtained. 如申請專利範圍第1項所述的自由曲面面積計算方法,其中三角網格化步驟包括:在參數平面內設置樣點;讀取參數平面內多義線的頂點,落入多義線內的樣點,以及經過樣點的水平線段或垂直線段與多義線的交點;根據上述讀取的頂點、樣點及交點構成參數平面內的一個多邊形;及連接多義線的頂點、落入多義線內的樣點及所述交點將該多邊形分割成一系列三角形。 The free-form surface area calculation method according to claim 1, wherein the triangular meshing step comprises: setting a sample point in the parameter plane; reading a vertex of the polyline in the parameter plane, and dropping the sample into the polyline And a horizontal line segment of the sample or an intersection of the vertical line segment and the polyline; the vertices, samples, and intersections read according to the above form a polygon in the parameter plane; and the vertices connecting the polylines and falling into the polyline The point and the intersection divide the polygon into a series of triangles. 如申請專利範圍第2項所述的自由曲面面積計算方法,其中三角網格化步 驟還包括:過濾掉落在多義線外的三角形。 A method for calculating a free-form surface area as described in claim 2, wherein the triangular meshing step The step also includes filtering out the triangles that fall outside the polyline. 如申請專利範圍第3項所述的自由曲面面積計算方法,其中計算步驟包括:根據過濾後剩下的各三角形的頂點座標計算過濾後剩下的各三角形的邊長;根據過濾後剩下的各三角形的邊長計算過濾後剩下的各三角形的面積;及加總所有過濾後剩下的所有三角形的面積得到自由曲面的面積。 The method for calculating a free-form surface area according to claim 3, wherein the calculating step comprises: calculating, according to a vertex coordinate of each triangle remaining after the filtering, a side length of each triangle remaining after filtering; according to remaining after filtering The side length of each triangle is calculated by the area of each triangle remaining after filtering; and the area of all the triangles remaining after all filtering is added to obtain the area of the free surface. 一種自由曲面面積計算系統,應用於電子裝置,該系統包括:邊界處理模組,用於獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線,其中邊界處理模組獲取自由曲面的邊界點組成的輪廓面,在參數平面內求取逼近該輪廓面的多義線包括:從與電子裝置相連接的儲存設備讀取一個自由曲面;連接該自由曲面的邊界點得到由一系列首尾相連的曲線構成的自由曲面的輪廓面;將構成所述輪廓面的所有曲線轉化為有理曲線,得到由所有有理曲線組成的一條封閉邊界曲線;根據各有理曲線的參數方程得到各有理曲線的控制點,根據控制點求取逼近所述封閉邊界曲線的多義線;利用中值插值法得到該多義線在參數平面內的一系列頂點;三角網格化模組,用於在參數平面內設置樣點,根據設置的樣點、所述多義線的頂點以及經過樣點的垂直線段或水平線段與多義線的交點構建逼近所述輪廓面的多邊形,並對所述多邊形進行三角網格化;及計算模組,用於根據三角網格化得到的三角形計算自由曲面的面積。 A free-form surface area calculation system is applied to an electronic device, the system comprising: a boundary processing module, configured to acquire a contour surface composed of boundary points of a free-form surface, and obtain a polyline that approximates the contour surface in a parameter plane, wherein the boundary The processing module obtains a contour surface composed of boundary points of the free surface, and obtaining a polyline that approximates the contour surface in the parameter plane includes: reading a free surface from a storage device connected to the electronic device; connecting the boundary of the free surface Pointing to obtain a contour surface of a free-form surface composed of a series of curves connected end to end; converting all the curves constituting the contour surface into rational curves, and obtaining a closed boundary curve composed of all rational curves; a parametric equation according to each rational curve Obtaining control points of each rational curve, obtaining a polyline that approximates the closed boundary curve according to the control point; using a median interpolation method to obtain a series of vertices of the polyline in the parameter plane; a triangular meshing module for Set the sample point in the parameter plane, according to the set sample, the vertices of the polyline, and the sample a vertical line segment or a intersection of a horizontal line segment and a polyline to construct a polygon that approximates the contour plane, and triangulate the polygon; and a calculation module for calculating a free surface from the triangle obtained by the triangle meshing area. 如申請專利範圍第5項所述的自由曲面面積計算系統,其中三角網格化模組構建逼近所述輪廓面的多邊形,並對所述多邊形進行三角網格化包括: 在參數平面內設置樣點;讀取參數平面內多義線的頂點,落入多義線內的樣點,以及經過樣點的水平線段或垂直線段與多義線的交點;根據上述讀取的頂點、樣點及交點構成參數平面內的一個多邊形;及連接多義線的頂點、落入多義線內的樣點及所述交點將該多邊形分割成一系列三角形。 The free-form surface area calculation system of claim 5, wherein the triangular meshing module constructs a polygon that approximates the contour surface, and triangular meshing the polygon includes: Set the sample point in the parameter plane; read the vertices of the polyline in the parameter plane, the sample points falling within the polyline, and the intersection of the horizontal line segment or the vertical line segment and the polyline through the sample; according to the vertices read above, The sample points and intersections form a polygon in the parameter plane; and the vertices connecting the polylines, the samples falling within the polyline, and the intersections divide the polygon into a series of triangles. 如申請專利範圍第6項所述的自由曲面面積計算系統,其中三角網格化模組對所述多邊形進行三角網格化還包括:過濾掉落在多義線外的三角形。 The free-form surface area calculation system of claim 6, wherein the triangular meshing of the polygon by the triangular meshing module further comprises: filtering out a triangle falling outside the polyline. 如申請專利範圍第7項所述的自由曲面面積計算系統,其中計算模組根據三角網格化得到的三角形計算自由曲面的面積包括:根據過濾後剩下的各三角形的頂點座標計算過濾後剩下的各三角形的邊長;根據過濾後剩下的各三角形的邊長計算過濾後剩下的各三角形的面積;及加總所有過濾後剩下的所有三角形的面積得到自由曲面的面積。 The free-form surface area calculation system according to claim 7, wherein the calculating module calculates the area of the free-form surface according to the triangle obtained by the triangular meshing, including: calculating the remaining after filtering according to the vertices of the remaining triangles after filtering The side length of each of the lower triangles; the area of each triangle remaining after filtering is calculated based on the side lengths of the remaining triangles after filtering; and the area of all the triangles remaining after filtering is added to obtain the area of the free curved surface.
TW099102795A 2010-02-01 2010-02-01 Free surface area computation system and method TWI486907B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW099102795A TWI486907B (en) 2010-02-01 2010-02-01 Free surface area computation system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW099102795A TWI486907B (en) 2010-02-01 2010-02-01 Free surface area computation system and method

Publications (2)

Publication Number Publication Date
TW201128572A TW201128572A (en) 2011-08-16
TWI486907B true TWI486907B (en) 2015-06-01

Family

ID=45025296

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099102795A TWI486907B (en) 2010-02-01 2010-02-01 Free surface area computation system and method

Country Status (1)

Country Link
TW (1) TWI486907B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200823689A (en) * 2006-11-21 2008-06-01 Jing-Jing Fang Method of three-dimensional digital human model construction from two photos and obtaining anthropometry information
TW200912799A (en) * 2007-09-07 2009-03-16 Hon Hai Prec Ind Co Ltd System and method for computing minimum distance between point clouds
TW200925812A (en) * 2007-12-14 2009-06-16 Nat Univ Tsing Hua Method of planning path for curved surface cutting process based on global optimization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200823689A (en) * 2006-11-21 2008-06-01 Jing-Jing Fang Method of three-dimensional digital human model construction from two photos and obtaining anthropometry information
TW200912799A (en) * 2007-09-07 2009-03-16 Hon Hai Prec Ind Co Ltd System and method for computing minimum distance between point clouds
TW200925812A (en) * 2007-12-14 2009-06-16 Nat Univ Tsing Hua Method of planning path for curved surface cutting process based on global optimization

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Randrianarivony, M., & Brunnett, G. (2003, March). Well behaved mesh generation for parameterized surfaces from IGES files. IEEE. *

Also Published As

Publication number Publication date
TW201128572A (en) 2011-08-16

Similar Documents

Publication Publication Date Title
CN102110181A (en) Free curved surface area calculation system and method
US7586489B2 (en) Method of generating surface defined by boundary of three-dimensional point cloud
CN101441780B (en) Method for slitting three-dimensional gridding model
Xie et al. Piecewise C/sup 1/continuous surface reconstruction of noisy point clouds via local implicit quadric regression
CN107886569B (en) Measurement-controllable surface parameterization method and system based on discrete lie derivative
US8456470B2 (en) Lighting environment simulation system and method
CN102853763A (en) Method for measuring volumes of historical relics with irregular surfaces
TWI475511B (en) System and method for meshing curved surface
CN113724401A (en) Three-dimensional model cutting method and device, computer equipment and storage medium
TWI506244B (en) System and method for computing distances between curved surfaces
Aubry et al. A robust conforming NURBS tessellation for industrial applications based on a mesh generation approach
TWI486907B (en) Free surface area computation system and method
CN111310349A (en) Data processing and analyzing method suitable for discrete element calculation information continuous display
JP4526121B2 (en) Method for calculating intersection of triangle and line segment and its program
CN110796735A (en) NURBS curved surface finite element plate shell mesh division method and computer implementation system
CN116451493A (en) Fluid simulation method for complex structure
TWI426463B (en) Curved-surface rendering system and method
US20130223720A1 (en) Method and system for determining a boundary surface network
CN116229005B (en) Geodesic determining method and device for three-dimensional roadway model
Ye et al. An improved algorithm for triangle to triangle intersection test
CN109979007A (en) A kind of geometric modeling method and apparatus of building body
TWI486905B (en) System and method for importing curved faces from an iges document
CN112614046B (en) Method and device for drawing three-dimensional model on two-dimensional plane
Obermaier et al. Generation of adaptive streak surfaces using moving least squares
CN115984511B (en) CAD-based parallelepiped volume average conformal meshing method

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees