CN114970283A - Geometric model structure detection method, device, equipment and storage medium - Google Patents

Geometric model structure detection method, device, equipment and storage medium Download PDF

Info

Publication number
CN114970283A
CN114970283A CN202210740189.2A CN202210740189A CN114970283A CN 114970283 A CN114970283 A CN 114970283A CN 202210740189 A CN202210740189 A CN 202210740189A CN 114970283 A CN114970283 A CN 114970283A
Authority
CN
China
Prior art keywords
geometric
transformation matrix
rotation
confirming
periodic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210740189.2A
Other languages
Chinese (zh)
Other versions
CN114970283B (en
Inventor
段忠祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pera Corp Ltd
Original Assignee
Pera Corp 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 Pera Corp Ltd filed Critical Pera Corp Ltd
Priority to CN202210740189.2A priority Critical patent/CN114970283B/en
Publication of CN114970283A publication Critical patent/CN114970283A/en
Application granted granted Critical
Publication of CN114970283B publication Critical patent/CN114970283B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Geometry (AREA)
  • Computational Mathematics (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Image Analysis (AREA)

Abstract

The invention relates to a method, a device, equipment and a storage medium for detecting a geometric model structure. The method comprises the following steps: receiving an input geometric model; after confirming that the number of vertexes of two geometric surfaces to be detected in the geometric model is the same and that the vertexes of the geometric surfaces are associated with arc edges, calculating a periodic surface rotation transformation matrix according to the arc edges; and after confirming that the boundary points of the two geometric surfaces have one-to-one correspondence according to the periodic surface rotation transformation matrix, confirming that the two geometric surfaces are a pair of rotation periodic surfaces. According to the scheme provided by the invention, whether the two geometric surfaces to be detected in the geometric model are a pair of rotation period surfaces can be quickly judged, so that the grid generation efficiency is favorably improved, and the calculation efficiency and precision of numerical simulation are improved.

Description

几何模型结构检测方法、装置、设备及存储介质Geometric model structure detection method, device, equipment and storage medium

技术领域technical field

本发明涉及数据处理技术领域,尤其涉及一种几何模型结构检测方法、装置、设备及存储介质。The present invention relates to the technical field of data processing, and in particular, to a geometric model structure detection method, device, equipment and storage medium.

背景技术Background technique

在计算机辅助工程领域,需要对几何模型的几何面进行网格生成处理,生成网格是数字仿真技术的关键,对仿真效率和精确度至关重要。在几何模型中,一对旋转周期面是指通过绕特定轴旋转可以达到完全重合的两个几何面。在对几何模型的各个几何面进行网格生成的过程中,若判断出几何模型中有两个几何面为一对旋转周期面,在对其中一个旋转周期面生成网格后,根据该旋转周期面上已生成的网格,可以快速生成另一个旋转周期面的网格,从而利于提升对几何模型的网格生成效率。通过旋转变换能够重合一致的周期面网格可以进一步提高数值模拟计算的精度和效率。In the field of computer aided engineering, it is necessary to generate meshes for the geometric surfaces of the geometric model. The mesh generation is the key to digital simulation technology, and it is very important to the simulation efficiency and accuracy. In the geometric model, a pair of rotating periodic surfaces refers to two geometric surfaces that can be completely coincident by rotating about a specific axis. In the process of meshing each geometric surface of the geometric model, if it is determined that there are two geometric surfaces in the geometric model as a pair of rotating periodic surfaces, after meshing one of the rotating periodic surfaces, according to the rotation period The mesh that has been generated on the surface can quickly generate another mesh of the rotating periodic surface, which is beneficial to improve the mesh generation efficiency of the geometric model. The coincident periodic surface grids can be further improved by the rotation transformation, which can further improve the accuracy and efficiency of numerical simulation calculations.

然而,相关技术中并无法判断几何模型中待检测的两个几何面是否为一对旋转周期面,从而影响了网格生成效率,降低了数值模拟的计算效率。However, in the related art, it is impossible to judge whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which affects the grid generation efficiency and reduces the calculation efficiency of the numerical simulation.

发明内容SUMMARY OF THE INVENTION

为解决或部分解决相关技术中存在的问题,本发明提供一种几何模型结构检测方法、装置、设备及存储介质,能够快速判断几何模型中待检测的两个几何面是否为一对旋转周期面,利于提升网格生成效率,提升数值模拟的计算效率和精度。In order to solve or partially solve the problems existing in the related art, the present invention provides a geometric model structure detection method, device, equipment and storage medium, which can quickly determine whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces. , which is beneficial to improve the grid generation efficiency and improve the computational efficiency and accuracy of numerical simulation.

本发明第一方面提供一种几何模型结构检测方法,包括:A first aspect of the present invention provides a geometric model structure detection method, comprising:

接收输入的几何模型;receive the input geometry;

在确认所述几何模型中待检测的两个几何面的顶点数量相同,且确认所述几何面的顶点关联有圆弧边后,根据所述圆弧边,计算周期面旋转变换矩阵;After confirming that the number of vertices of the two geometric surfaces to be detected in the geometric model is the same, and after confirming that the vertices of the geometric surfaces are associated with arc edges, calculate the rotation transformation matrix of the periodic surface according to the arc edges;

在根据所述周期面旋转变换矩阵确认两个所述几何面的边界点存在一一对应关系后,确认两个所述几何面为一对旋转周期面。After confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface, it is confirmed that the two geometric surfaces are a pair of rotating periodic surfaces.

在一种实施例中,所述确认所述几何面的顶点关联有圆弧边的方式包括:In an embodiment, the method of confirming that the vertices of the geometric surface are associated with arc edges includes:

获取所述几何面的顶点所关联的几何边;Obtain the geometric edges associated with the vertices of the geometric face;

从所述几何边上采集三个采样点,并计算所述三个采样点所确定的外接圆;Collect three sampling points from the geometric edge, and calculate the circumcircle determined by the three sampling points;

在根据所述外接圆判断出所述几何边为圆弧边后,确认所述几何面的顶点关联有圆弧边。After determining that the geometric edge is an arc edge according to the circumscribed circle, it is confirmed that the vertex of the geometric surface is associated with an arc edge.

在一种实施例中,所述根据所述外接圆判断出所述几何边为圆弧边的方式包括:In an embodiment, the method for determining that the geometric edge is an arc edge according to the circumscribed circle includes:

从所述几何边上采集预设数量的校验点;collecting a preset number of checkpoints from the geometric edge;

在确认各所述校验点在所述外接圆所在平面上,且各所述校验点相距所述外接圆的圆心的距离为所述外接圆的半径后,判断出所述几何边为圆弧边。After confirming that each of the check points is on the plane of the circumscribed circle, and the distance between each of the check points and the center of the circumscribed circle is the radius of the circumscribed circle, it is determined that the geometric edge is a circle arc edge.

在一种实施例中,所述根据所述圆弧边,计算周期面旋转变换矩阵,包括:In an embodiment, the calculating the rotation transformation matrix of the periodic surface according to the arc edge includes:

根据所述圆弧边,确定所述圆弧边对应的圆心、目标圆心角以及垂直于所述圆弧边所在平面的旋转轴向量;其中,所述目标圆心角根据所述圆弧边所在的外接圆以及位于所述外接圆上的两个所述几何面的顶点确定;According to the arc edge, determine the center of the circle corresponding to the arc edge, the target center angle, and the rotation axis vector perpendicular to the plane where the arc edge is located; wherein, the target center angle is determined according to the arc edge. The circumscribed circle of and the vertexes of the two geometric surfaces located on the circumscribed circle are determined;

根据所述圆心、所述目标圆心角以及所述旋转轴向量,计算周期面旋转变换矩阵。According to the center of the circle, the target center angle and the rotation axis vector, a rotation transformation matrix of the periodic surface is calculated.

在一种实施例中,所述根据所述圆心、所述目标圆心角以及所述旋转轴向量,计算周期面旋转变换矩阵,包括:In an embodiment, calculating the rotation transformation matrix of the periodic surface according to the center of the circle, the target center angle and the rotation axis vector includes:

通过将所述圆心移动至预先构建的三维坐标系中的原点,确定移动变换矩阵;Determine the movement transformation matrix by moving the center of the circle to the origin in the pre-built three-dimensional coordinate system;

通过将所述旋转轴向量旋转第一旋转角至所述三维坐标系上的目标坐标平面,确定第一旋转变换矩阵;Determine a first rotation transformation matrix by rotating the rotation axis vector by a first rotation angle to a target coordinate plane on the three-dimensional coordinate system;

通过将所述旋转轴向量旋转第二旋转角至所述三维坐标系上的目标坐标轴,确定第二旋转变换矩阵;Determine a second rotation transformation matrix by rotating the rotation axis vector by a second rotation angle to the target coordinate axis on the three-dimensional coordinate system;

通过将所述旋转轴向量旋转对应所述目标圆心角大小的角度,确定第三旋转变换矩阵;Determine a third rotation transformation matrix by rotating the rotation axis vector by an angle corresponding to the size of the target central angle;

根据所述移动变换矩阵、所述第一旋转变换矩阵、所述第二旋转变换矩阵以及所述第三旋转变换矩阵,计算周期面旋转变换矩阵;Calculate a periodic plane rotation transformation matrix according to the movement transformation matrix, the first rotation transformation matrix, the second rotation transformation matrix and the third rotation transformation matrix;

其中,所述目标坐标平面与所述目标坐标轴,根据所述旋转轴向量分别在所述三维坐标系中三个坐标平面上的投影长度,从所述三维坐标系中的三个坐标平面与三个坐标轴中匹配确定。Wherein, the target coordinate plane and the target coordinate axis, according to the projection length of the rotation axis vector on the three coordinate planes in the three-dimensional coordinate system, respectively, from the three coordinate planes in the three-dimensional coordinate system Matching with the three axes is determined.

在一种实施例中,所述根据所述周期面旋转变换矩阵确认两个所述几何面的边界点存在一一对应关系的方式包括:In an embodiment, the method for confirming that there is a one-to-one correspondence between boundary points of the two geometric surfaces according to the periodic surface rotation transformation matrix includes:

根据所述周期面旋转变换矩阵,对其中一个所述几何面的边界点进行变换,得到变换结果;According to the rotation transformation matrix of the periodic surface, transform the boundary point of one of the geometric surfaces to obtain a transformation result;

在确认所述变换结果与另一个所述几何面的边界点存在一一对应关系后,确认两个所述几何面的边界点存在一一对应关系。After confirming that the transformation result has a one-to-one correspondence with the boundary points of the other geometric surfaces, confirm that the boundary points of the two geometric surfaces have a one-to-one correspondence.

在一种实施例中,所述几何面的边界点包括所述几何面的顶点以及所述几何面的几何边上的端点。In one embodiment, the boundary points of the geometric surface include vertices of the geometric surface and end points on the geometric edges of the geometric surface.

本发明第二方面提供一种几何模型结构检测装置,包括:A second aspect of the present invention provides a geometric model structure detection device, comprising:

接收模块,用于接收输入的几何模型;A receiving module for receiving the input geometric model;

计算模块,用于在确认所述几何模型中待检测的两个几何面的顶点数量相同,且确认所述几何面的顶点关联有圆弧边后,根据所述圆弧边,计算周期面旋转变换矩阵;The calculation module is used to calculate the rotation of the periodic surface according to the circular arc edge after confirming that the number of vertices of the two geometric surfaces to be detected in the geometric model is the same, and after confirming that the vertices of the geometric surface are associated with an arc edge transformation matrix;

确认模块,用于在根据所述周期面旋转变换矩阵确认两个所述几何面的边界点存在一一对应关系后,确认两个所述几何面为一对旋转周期面。The confirmation module is configured to confirm that the two geometric surfaces are a pair of rotating periodic surfaces after confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the periodic surface rotation transformation matrix.

本发明第三方面提供一种电子设备,包括:A third aspect of the present invention provides an electronic device, comprising:

处理器;以及processor; and

存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的方法。A memory having executable code stored thereon which, when executed by the processor, causes the processor to perform the method as described above.

本发明第四方面提供一种计算机可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的方法。A fourth aspect of the present invention provides a computer-readable storage medium on which executable codes are stored, and when the executable codes are executed by a processor of an electronic device, the processor is caused to execute the above method.

本发明提供的技术方案可以包括以下有益效果:The technical scheme provided by the present invention can include the following beneficial effects:

本发明提供的方法,通过接收输入的几何模型,在确认几何模型中待检测的两个几何面的顶点数量相同,且确认几何面的顶点关联有圆弧边后,根据圆弧边,计算周期面旋转变换矩阵,在根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系后,确认两个几何面为一对旋转周期面。这样,可以快速判断几何模型中待检测的两个几何面是否为一对旋转周期面,利于提升网格生成效率,提升数值模拟的计算效率和精度。In the method provided by the present invention, by receiving the input geometric model, after confirming that the number of vertices of the two geometric surfaces to be detected in the geometric model is the same, and after confirming that the vertices of the geometric surfaces are associated with arc edges, the cycle is calculated according to the arc edges. Surface rotation transformation matrix. After confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the periodic surface rotation transformation matrix, confirm that the two geometric surfaces are a pair of rotating periodic surfaces. In this way, it can be quickly determined whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which is beneficial to improve the efficiency of grid generation and the calculation efficiency and accuracy of numerical simulation.

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention.

附图说明Description of drawings

通过结合附图对本发明示例性实施例进行更详细地描述,本发明的上述以及其它目的、特征和优势将变得更加明显,其中,在本发明示例性实施例中,相同的参考标号通常代表相同部件。The above and other objects, features and advantages of the present invention will become more apparent from the detailed description of the exemplary embodiments of the present invention in conjunction with the accompanying drawings, wherein the same reference numerals generally refer to the exemplary embodiments of the present invention. same parts.

图1是本发明实施例示出的几何模型结构检测方法的流程示意图;1 is a schematic flowchart of a method for detecting a geometric model structure according to an embodiment of the present invention;

图2是本发明实施例示出的几何模型结构检测方法的另一流程示意图;2 is another schematic flowchart of the geometric model structure detection method shown in the embodiment of the present invention;

图3是本发明实施例示出的几何模型结构检测方法中几何模型的结构示意图;3 is a schematic structural diagram of a geometric model in a method for detecting a geometric model structure according to an embodiment of the present invention;

图4是本发明实施例示出的几何模型结构检测方法中旋转向量轴的旋转过程示意图;4 is a schematic diagram of the rotation process of the rotation vector axis in the geometric model structure detection method shown in the embodiment of the present invention;

图5是本发明实施例示出的几何模型结构检测装置的结构示意图;5 is a schematic structural diagram of a geometric model structure detection device shown in an embodiment of the present invention;

图6是本发明实施例示出的电子设备的结构示意图。FIG. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.

具体实施例specific embodiment

下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的实施例,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。Embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. Although embodiments of the present invention are shown in the drawings, it should be understood that the present invention may be embodied in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.

在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。The terminology used in the present invention is for the purpose of describing particular embodiments only and is not intended to limit the present invention. As used in this specification and the appended claims, the singular forms "a," "the," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that the term "and/or" as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.

应当理解,尽管在本发明可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。It should be understood that although the terms "first", "second", "third", etc. may be used in the present invention to describe various information, such information should not be limited by these terms. These terms are only used to distinguish the same type of information from each other. For example, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information, without departing from the scope of the present invention. Thus, a feature defined as "first" or "second" may expressly or implicitly include one or more of that feature. In the description of the present invention, "plurality" means two or more, unless otherwise expressly and specifically defined.

相关技术中并无法判断几何模型中待检测的两个几何面是否为一对旋转周期面,从而影响了网格生成效率,降低了数值模拟的计算效率和精度。In the related art, it is impossible to judge whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which affects the grid generation efficiency and reduces the computational efficiency and accuracy of the numerical simulation.

针对上述问题,本发明实施例提供一种几何模型结构检测方法,能够快速判断几何模型中待检测的两个几何面是否为一对旋转周期面,利于提升网格生成效率,提升数值模拟的计算效率和精度。In view of the above problems, the embodiments of the present invention provide a geometric model structure detection method, which can quickly determine whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which is beneficial to improve the grid generation efficiency and improve the calculation of numerical simulation. Efficiency and Precision.

以下结合附图详细描述本发明实施例的技术方案。The technical solutions of the embodiments of the present invention are described in detail below with reference to the accompanying drawings.

图1是本发明实施例示出的几何模型结构检测方法的流程示意图。FIG. 1 is a schematic flowchart of a method for detecting a geometric model structure according to an embodiment of the present invention.

参见图1,该方法包括:Referring to Figure 1, the method includes:

S101、接收输入的几何模型。S101. Receive an input geometric model.

在该步骤中,接收用户输入的几何模型。其中,几何模型可以是指3D模型文件,例如step、iges、stl等不同格式的3D模型文件。In this step, the geometric model input by the user is received. The geometric model may refer to a 3D model file, for example, a 3D model file in different formats such as step, iges, and stl.

S102、在确认几何模型中待检测的两个几何面的顶点数量相同,且确认几何面的顶点关联有圆弧边后,根据圆弧边,计算周期面旋转变换矩阵。S102. After confirming that the number of vertices of the two geometric surfaces to be detected in the geometric model is the same, and after confirming that the vertices of the geometric surfaces are associated with arc edges, calculate the rotation transformation matrix of the periodic surface according to the arc edges.

其中,几何模型中待检测的两个几何面可以是用户预先选中的两个几何面。The two geometric surfaces to be detected in the geometric model may be two geometric surfaces pre-selected by the user.

其中,确认几何面的顶点关联有圆弧边的方式可以包括:获取几何面的顶点所关联的几何边。从几何边上采集三个采样点,并计算三个采样点所确定的外接圆。在根据外接圆判断出几何边为圆弧边后,确认几何面的顶点关联有圆弧边。The manner of confirming that the vertices of the geometric face are associated with arc edges may include: acquiring the geometric edges associated with the vertices of the geometric face. Collect three sample points from the geometric edge, and calculate the circumcircle determined by the three sample points. After judging that the geometric edge is an arc edge according to the circumscribed circle, confirm that the vertex of the geometric surface is associated with an arc edge.

在该步骤中,根据圆弧边计算周期面旋转变换矩阵可以包括:根据圆弧边,确定圆弧边对应的圆心、目标圆心角以及垂直于圆弧边所在平面的旋转轴向量。其中,目标圆心角根据圆弧边所在的外接圆以及位于外接圆上的两个几何面的顶点确定。根据圆心、目标圆心角以及旋转轴向量,计算周期面旋转变换矩阵。In this step, calculating the rotation transformation matrix of the periodic surface according to the arc edge may include: determining the center corresponding to the arc edge, the target center angle and the rotation axis vector perpendicular to the plane where the arc edge is located, according to the arc edge. The target central angle is determined according to the circumcircle where the arc edge is located and the vertices of the two geometric surfaces located on the circumcircle. Calculate the rotation transformation matrix of the periodic surface according to the center of the circle, the center angle of the target circle and the vector of the rotation axis.

S103、在根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系后,确认两个几何面为一对旋转周期面。S103 , after confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface, confirm that the two geometric surfaces are a pair of rotating periodic surfaces.

其中,根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系的方式包括:根据周期面旋转变换矩阵,对其中一个几何面的边界点进行变换,得到变换结果。在确认变换结果与另一个几何面的边界点存在一一对应关系后,确认两个几何面的边界点存在一一对应关系。The method of confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface includes: transforming the boundary point of one of the geometric surfaces according to the rotation transformation matrix of the periodic surface to obtain a transformation result. After confirming that the transformation result has a one-to-one correspondence with the boundary points of another geometric surface, confirm that there is a one-to-one correspondence between the boundary points of the two geometric surfaces.

其中,几何面的边界点包括几何面的顶点以及几何面的几何边上的端点。The boundary points of the geometric surface include vertexes of the geometric surface and endpoints on the geometric edges of the geometric surface.

从该实施例可以看出,本发明实施例提供的方法,通过接收输入的几何模型,在确认几何模型中待检测的两个几何面的顶点数量相同,且确认几何面的顶点关联有圆弧边后,根据圆弧边,计算周期面旋转变换矩阵,在根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系后,确认两个几何面为一对旋转周期面。这样,可以快速判断几何模型中待检测的两个几何面是否为一对旋转周期面,利于提升网格生成效率,提升数值模拟的计算效率和精度。It can be seen from this embodiment that, in the method provided by the embodiment of the present invention, by receiving the input geometric model, the number of vertices of the two geometric surfaces to be detected is the same in the confirmation geometric model, and the vertices of the confirmed geometric surface are associated with arcs After the edge, calculate the rotation transformation matrix of the periodic surface according to the arc edge. After confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface, confirm that the two geometric surfaces are a pair of rotating periodic surfaces. In this way, it can be quickly determined whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which is beneficial to improve the efficiency of grid generation and the calculation efficiency and accuracy of numerical simulation.

图2是本发明实施例的几何模型结构检测方法的另一流程示意图。图2相对图1更详细描述了本发明的方案。FIG. 2 is another schematic flowchart of a method for detecting a geometric model structure according to an embodiment of the present invention. FIG. 2 depicts the solution of the present invention in more detail with respect to FIG. 1 .

参见图2,该方法包括:Referring to Figure 2, the method includes:

S201、接收输入的几何模型。S201. Receive an input geometric model.

在该步骤中,接收用户输入的几何模型。其中,几何模型可以是指3D模型文件,例如step、iges、stl等不同格式的3D模型文件。In this step, the geometric model input by the user is received. The geometric model may refer to a 3D model file, for example, a 3D model file in different formats such as step, iges, and stl.

S202、确认几何模型中待检测的两个几何面的顶点数量是否相同。S202. Confirm whether the number of vertices of the two geometric surfaces to be detected in the geometric model is the same.

其中,几何模型中待检测的两个几何面可以是用户预先选中的两个几何面。每个几何面通过几何边连接形成的边界确定,几何面的顶点为几何边的端点。待检测的两个几何面可以包括第一几何面与第二几何面。The two geometric surfaces to be detected in the geometric model may be two geometric surfaces pre-selected by the user. Each geometric face is determined by the boundary formed by the geometric edge connection, and the vertex of the geometric face is the endpoint of the geometric edge. The two geometric surfaces to be detected may include a first geometric surface and a second geometric surface.

如图3实施例中所示的几何模型,几何模型中待检测的两个几何面分别为第一几何面A与第二几何面B。第一几何面A有四条几何边,分别为几何边A0A1、几何边A1A2、几何边A2A3、几何边A0A3。第一几何面A有四个顶点,分别为顶点A0、顶点A1、顶点A2、顶点A3。第二几何面B有四条几何边,分别为几何边B0B1、几何边B1B2、几何边B2B3、几何边B0B3。第二几何面B有四个顶点,分别为顶点B0、顶点B1、顶点B2、顶点B3。可见,第一几何面A与第二几何面B的顶点数量相同,两个几何面的顶点数量为四个。As shown in the geometric model in the embodiment of FIG. 3 , the two geometric surfaces to be detected in the geometric model are a first geometric surface A and a second geometric surface B, respectively. The first geometric surface A has four geometric edges, namely geometric edge A 0 A 1 , geometric edge A 1 A 2 , geometric edge A 2 A 3 , and geometric edge A 0 A 3 . The first geometric surface A has four vertices, namely vertex A 0 , vertex A 1 , vertex A 2 , and vertex A 3 . The second geometric surface B has four geometric edges, namely geometric edge B 0 B 1 , geometric edge B 1 B 2 , geometric edge B 2 B 3 , and geometric edge B 0 B 3 . The second geometric surface B has four vertices, namely, vertex B 0 , vertex B 1 , vertex B 2 , and vertex B 3 . It can be seen that the number of vertices of the first geometric surface A and the second geometric surface B is the same, and the number of vertices of the two geometric surfaces is four.

进一步的,每个几何面的顶点可以通过构建集合进行记录。Further, the vertices of each geometric face can be recorded by building a set.

例如,图3实施例中,第一几何面A与第二几何面B的顶点的集合分别为:

Figure BDA0003717622940000071
Figure BDA0003717622940000072
For example, in the embodiment of FIG. 3, the sets of vertices of the first geometric surface A and the second geometric surface B are:
Figure BDA0003717622940000071
and
Figure BDA0003717622940000072

可以理解,由于一对旋转周期面是指通过绕特定轴旋转可以达到完全重合的两个几何面,因此,两个几何面的顶点数量不同,则两个几何面不是一对旋转周期面。It can be understood that since a pair of rotational periodic surfaces refers to two geometric surfaces that can be completely coincident by rotating around a specific axis, therefore, if the number of vertices of the two geometric surfaces is different, the two geometric surfaces are not a pair of rotational periodic surfaces.

在该步骤中,若确认几何模型中待检测的两个几何面的顶点数量不相同,执行S203。若确认几何模型中待检测的两个几何面的顶点数量相同,执行S204。In this step, if it is confirmed that the number of vertices of the two geometric faces to be detected in the geometric model is not the same, S203 is executed. If it is confirmed that the number of vertices of the two geometric faces to be detected in the geometric model is the same, S204 is executed.

S203、输出两个几何面不为一对旋转周期面的确认结果。S203, output the confirmation result that the two geometric surfaces are not a pair of rotating periodic surfaces.

在该步骤中,输出两个几何面不为一对旋转周期面的确认结果,也就是说,确认几何模型中待检测的两个几何面不是一对旋转周期面。In this step, the confirmation result that the two geometric surfaces are not a pair of rotational periodic surfaces is output, that is, it is confirmed that the two geometric surfaces to be detected in the geometric model are not a pair of rotational periodic surfaces.

S204、确认几何面的顶点是否关联有圆弧边。S204 , confirming whether the vertices of the geometric surface are associated with arc edges.

在其中一种实施例中,确认几何面的顶点关联有圆弧边的方式包括:In one of the embodiments, the method of confirming that the vertices of the geometric faces are associated with arc edges includes:

S204-1、获取几何面的顶点所关联的几何边。S204-1. Obtain the geometric edges associated with the vertices of the geometric surface.

在该步骤中,可以获取其中一个几何面的每一个顶点所关联的每一个几何边。例如,获取第一几何面的每一个顶点所关联的每一个几何边。顶点关联的几何边可以用集合

Figure BDA0003717622940000073
记录。In this step, each geometric edge associated with each vertex of one of the geometric faces can be obtained. For example, each geometric edge associated with each vertex of the first geometric face is obtained. The geometric edges associated with vertices can use sets
Figure BDA0003717622940000073
Record.

如图3实施例中,可以获取第一几何面A的每一个顶点Ai所关联的每一个几何边,其中i<4且i≥0。例如,顶点A0关联的几何边分别为:几何边A0A3、几何边A0A1、几何边A0B0As in the embodiment of FIG. 3 , each geometric edge associated with each vertex A i of the first geometric surface A may be obtained, where i<4 and i≥0. For example, the geometric edges associated with vertex A 0 are: geometric edge A 0 A 3 , geometric edge A 0 A 1 , and geometric edge A 0 B 0 .

S204-2、从几何边上采集三个采样点,并计算三个采样点所确定的外接圆。S204-2, collect three sampling points from the geometric edge, and calculate the circumcircle determined by the three sampling points.

需要说明的是,该步骤可以对S204-1获取的每一条几何边上执行。例如,图3实施例中,在几何边A0A3采集三个采样点,在几何边A0A1采集三个采样点,在几何边A0B0采集三个采样点。It should be noted that this step can be performed on each geometric edge obtained in S204-1. For example, in the embodiment of FIG. 3 , three sampling points are collected at geometric edge A 0 A 3 , three sampling points are collected at geometric edge A 0 A 1 , and three sampling points are collected at geometric edge A 0 B 0 .

可以理解,三个点可以确定唯一的外接圆。设三个采样点分别为点P1、P2及P3,三个采样点所确定的外接圆的圆心计算公式为:It can be understood that three points can determine a unique circumcircle. Suppose the three sampling points are points P1, P2 and P3 respectively, and the formula for calculating the center of the circumcircle determined by the three sampling points is:

Figure BDA0003717622940000081
Figure BDA0003717622940000081

外接圆的半径为圆心C到点P1、P2及P3中任意一点的距离。The radius of the circumscribed circle is the distance from the center C to any point among the points P1, P2 and P3.

S204-3、在根据外接圆判断出几何边为圆弧边后,确认几何面的顶点关联有圆弧边。S204-3, after determining that the geometric edge is an arc edge according to the circumscribed circle, confirm that the vertex of the geometric surface is associated with an arc edge.

在图3实施例中,可以理解,几何边A0A3和几何边A0A1为直线几何边,在几何边A0A3和几何边A0A1上采集的三个采样点不能计算确定外接圆。若在几何边A0B0上采集的三个采样点,可以计算确定外接圆,则根据该外接圆可以判断出几何边A0B0是否为圆弧边。In the embodiment of FIG. 3, it can be understood that the geometric edge A 0 A 3 and the geometric edge A 0 A 1 are straight geometric edges, and the three sampling points collected on the geometric edge A 0 A 3 and the geometric edge A 0 A 1 cannot be The calculation determines the circumcircle. If the three sampling points collected on the geometric edge A 0 B 0 can be calculated to determine the circumscribed circle, it can be determined whether the geometric edge A 0 B 0 is an arc edge according to the circumscribed circle.

在其中一种实施例中,根据外接圆判断出几何边为圆弧边的方式可以包括:In one of the embodiments, the manner of determining that the geometric edge is an arc edge according to the circumscribed circle may include:

S204-3-1、从几何边上采集预设数量的校验点。S204-3-1. Collect a preset number of check points from geometric edges.

例如,在图3实施例中,从几何边A0B0上采集预设数量的校验点,如采集5个校验点,从几何边上采集的校验点与采样点不相同。为了提升处理效率、降低计算开销,预设数量可以设置为小于或等于三。For example, in the embodiment of FIG. 3 , a preset number of check points are collected from the geometric edge A 0 B 0 , for example, 5 check points are collected, and the check points collected from the geometric edge are different from the sampling points. In order to improve processing efficiency and reduce computational overhead, the preset number can be set to be less than or equal to three.

S204-3-2、在确认各校验点在外接圆所在平面上,且各校验点相距外接圆的圆心的距离为外接圆的半径后,判断出几何边为圆弧边。S204-3-2. After confirming that each check point is on the plane of the circumscribed circle, and the distance between each check point and the center of the circumscribed circle is the radius of the circumscribed circle, determine that the geometric edge is an arc edge.

例如,在图3实施例中,从几何边A0B0上采集的各个校验点在外接圆所在平面上,且各校验点相距外接圆的圆心C的距离为外接圆的半径(即圆心C到点P1、P2及P3中任意一点的距离),则可以判断出几何边A0B0为圆弧边。如此,可以确认图3实施例中第一几何面A的顶点关联有圆弧边,即可以确认几何模型中待检测的其中一个几何面的顶点关联有圆弧边。For example, in the embodiment of FIG. 3 , each check point collected from the geometric edge A 0 B 0 is on the plane of the circumscribed circle, and the distance between each check point and the center C of the circumscribed circle is the radius of the circumscribed circle (ie The distance from the center C to any point among the points P1, P2 and P3), it can be judged that the geometric edge A 0 B 0 is an arc edge. In this way, it can be confirmed that the vertex of the first geometric surface A in the embodiment of FIG. 3 is associated with an arc edge, that is, it can be confirmed that the vertex of one of the geometric surfaces to be detected in the geometric model is associated with an arc edge.

在S204中,若确认几何面的顶点未关联有圆弧边,执行S203。若确认几何面的顶点关联有圆弧边,执行S205。In S204, if it is confirmed that no arc edge is associated with the vertex of the geometric surface, S203 is executed. If it is confirmed that the vertices of the geometric surface are associated with arc edges, S205 is executed.

S205、根据圆弧边,确定圆弧边对应的圆心、目标圆心角以及垂直于圆弧边所在平面的旋转轴向量。其中,目标圆心角根据圆弧边所在的外接圆以及位于外接圆上的两个几何面的顶点确定。S205 , according to the arc edge, determine the center of the circle corresponding to the arc edge, the target center angle, and the rotation axis vector perpendicular to the plane where the arc edge is located. The target central angle is determined according to the circumcircle where the arc edge is located and the vertices of the two geometric surfaces located on the circumcircle.

可以理解,若在S204中确认出几何面的顶点关联有多个圆弧边,则可以分别针对每一个圆弧边执行S205。It can be understood that, if it is confirmed in S204 that the vertices of the geometric surface are associated with a plurality of arc edges, S205 can be executed for each arc edge respectively.

在该步骤中,根据圆弧边,可以确定圆弧边对应的圆心C、目标圆心角θ以及垂直于圆弧边所在平面的旋转轴向量

Figure BDA0003717622940000091
可以理解,根据圆弧边所在平面可以确定平面法向量,旋转轴向量
Figure BDA0003717622940000092
可以是指该平面法向量。根据该平面法向量与圆心C,则可以确定旋转轴。目标圆心角θ根据圆弧边所在的外接圆以及位于外接圆上的两个几何面的顶点确定。可以理解,如果第二几何面上也存在顶点在外接圆上,则根据第一几何面上位于外接圆上的顶点和第二几何面上同在外接圆上顶点可以计算目标圆心角θ。目标圆心角θ为:第一几何面位于外接圆上的顶点与圆心的连线,与第二几何面位于外接圆上的顶点与圆心的连线之间的夹角。In this step, according to the arc edge, the center C corresponding to the arc edge, the target center angle θ, and the rotation axis vector perpendicular to the plane where the arc edge is located can be determined
Figure BDA0003717622940000091
It can be understood that the plane normal vector and the rotation axis vector can be determined according to the plane where the arc edge is located.
Figure BDA0003717622940000092
Can refer to the plane normal vector. According to the plane normal vector and the circle center C, the rotation axis can be determined. The target central angle θ is determined according to the circumcircle where the arc edge is located and the vertices of the two geometric surfaces located on the circumcircle. It can be understood that if there are vertices on the circumscribed circle on the second geometric surface, the target central angle θ can be calculated according to the vertices on the first geometric surface and the vertices on the circumscribed circle on the second geometric surface. The target central angle θ is the included angle between the line connecting the vertex of the first geometric surface on the circumcircle and the center of the circle and the line connecting the vertex of the second geometric surface on the circumcircle and the center of the circle.

在图3实施例中,对于确认的圆弧边A0B0,目标圆心角θ为向量

Figure BDA0003717622940000093
与向量
Figure BDA0003717622940000094
之间的夹角(由于第二几何面的顶点B0在外接圆上)。换句话说,向量
Figure BDA0003717622940000095
与向量
Figure BDA0003717622940000096
之间的旋转角的大小为目标圆心角θ。旋转轴向量
Figure BDA0003717622940000097
的起始点可以为圆心C,且旋转轴向量
Figure BDA0003717622940000098
可以垂直于圆弧边A0B0所在的平面。In the embodiment of Fig. 3, for the confirmed arc edge A 0 B 0 , the target central angle θ is a vector
Figure BDA0003717622940000093
with vector
Figure BDA0003717622940000094
The included angle between (because the vertex B0 of the second geometric face is on the circumcircle). In other words, the vector
Figure BDA0003717622940000095
with vector
Figure BDA0003717622940000096
The size of the rotation angle between them is the target central angle θ. Rotation axis vector
Figure BDA0003717622940000097
The starting point of can be the center C, and the rotation axis vector
Figure BDA0003717622940000098
Can be perpendicular to the plane where the arc edge A 0 B 0 is located.

S206、根据圆心、目标圆心角以及旋转轴向量,计算周期面旋转变换矩阵。S206: Calculate the rotation transformation matrix of the periodic surface according to the center of the circle, the angle of the target center of the circle, and the vector of the rotation axis.

需要说明的是,周期面旋转变换矩阵根据旋转轴向量、外接圆圆心、目标圆心角计算得到,第一几何面和第二几何面同在外接圆上的两个顶点通过周期面旋转变换矩阵可以确定对应关系。也就是说,关联圆弧边的第一几何面上的顶点,通过周期面旋转变换矩阵进行变换后的位置,与第二几何面同在外接圆上的另一个顶点的位置相同。It should be noted that the rotation transformation matrix of the periodic surface is calculated according to the rotation axis vector, the center of the circumcircle, and the central angle of the target circle. Correspondence can be determined. That is to say, the positions of the vertices on the first geometric surface associated with the arc edge, transformed by the periodic surface rotation transformation matrix, are the same as the positions of the other vertices on the circumcircle of the second geometric surface.

在其中一种实施例中,根据圆心、目标圆心角以及旋转轴向量,计算周期面旋转变换矩阵可以包括:In one of the embodiments, according to the center of the circle, the target center angle and the rotation axis vector, calculating the rotation transformation matrix of the periodic surface may include:

S206-1、通过将圆心移动至预先构建的三维坐标系中的原点,确定移动变换矩阵。S206-1. Determine the movement transformation matrix by moving the center of the circle to the origin in the pre-built three-dimensional coordinate system.

记圆心C的坐标为(Cx,Cy,Cz),通过将圆心C移动至预先构建的三维坐标系中的原点O,确定移动变换矩阵T:Remember the coordinates of the center C as (C x , C y , C z ), and determine the movement transformation matrix T by moving the center C to the origin O in the pre-built three-dimensional coordinate system:

Figure BDA0003717622940000101
Figure BDA0003717622940000101

S206-2、通过将旋转轴向量旋转第一旋转角α至三维坐标系上的目标坐标平面,确定第一旋转变换矩阵。S206-2: Determine the first rotation transformation matrix by rotating the rotation axis vector by the first rotation angle α to the target coordinate plane on the three-dimensional coordinate system.

其中,旋转轴向量

Figure BDA0003717622940000102
的坐标为(nx,ny,nz)。Among them, the rotation axis vector
Figure BDA0003717622940000102
The coordinates are (n x , n y , n z ).

在该步骤中,通过S206-1将圆心移动至预先构建的三维坐标系中的原点后,旋转轴向量

Figure BDA0003717622940000103
的起点可以为三维坐标系中的原点O。通过将旋转轴向量
Figure BDA0003717622940000104
旋转第一旋转角α至三维坐标系上的目标坐标平面,可以确定第一旋转变换矩阵Rα。In this step, after moving the center of the circle to the origin in the pre-built three-dimensional coordinate system through S206-1, the rotation axis vector
Figure BDA0003717622940000103
The starting point can be the origin O in the three-dimensional coordinate system. By turning the axis of rotation vector
Figure BDA0003717622940000104
The first rotation transformation matrix R α can be determined by rotating the first rotation angle α to the target coordinate plane on the three-dimensional coordinate system.

需要说明的是,三维坐标系中包括三个坐标平面,分别为X0Z平面、XOY平面、YOZ平面。目标坐标平面为三个坐标平面中的其中一个。三维坐标系中还包括三个坐标轴,分别为X坐标轴、Y坐标轴、Z坐标轴。旋转轴向量

Figure BDA0003717622940000105
可以绕其中一个坐标轴旋转第一旋转角α至三维坐标系上的目标坐标平面,也就说,经过旋转后,旋转轴向量
Figure BDA0003717622940000106
位于目标坐标平面上。It should be noted that the three-dimensional coordinate system includes three coordinate planes, namely the X0Z plane, the XOY plane, and the YOZ plane. The target coordinate plane is one of the three coordinate planes. The three-dimensional coordinate system also includes three coordinate axes, which are an X coordinate axis, a Y coordinate axis, and a Z coordinate axis. Rotation axis vector
Figure BDA0003717622940000105
You can rotate the first rotation angle α around one of the coordinate axes to the target coordinate plane on the three-dimensional coordinate system, that is to say, after the rotation, the rotation axis vector
Figure BDA0003717622940000106
on the target coordinate plane.

S206-3、通过将旋转轴向量旋转第二旋转角β至三维坐标系上的目标坐标轴,确定第二旋转变换矩阵。S206-3. Determine the second rotation transformation matrix by rotating the rotation axis vector by the second rotation angle β to the target coordinate axis on the three-dimensional coordinate system.

在该步骤中,可以将位于目标坐标平面上的旋转轴向量

Figure BDA0003717622940000107
旋转第二旋转角β至三维坐标系上的目标坐标轴,可以确定第二旋转变换矩阵Rβ。In this step, the rotation axis vector located on the target coordinate plane can be
Figure BDA0003717622940000107
The second rotation transformation matrix R β can be determined by rotating the second rotation angle β to the target coordinate axis on the three-dimensional coordinate system.

需要说明的是,目标坐标轴为三维坐标系中三个坐标轴的其中的一个。旋转轴向量

Figure BDA0003717622940000108
可以绕其中一个坐标轴旋转角α到目标坐标平面,再根据第二旋转角β变换至三维坐标系上的目标坐标轴。也就是说,经过旋转后,旋转轴向量
Figure BDA0003717622940000109
位于目标坐标轴上,旋转轴向量
Figure BDA00037176229400001010
与目标坐标轴重合。It should be noted that the target coordinate axis is one of the three coordinate axes in the three-dimensional coordinate system. Rotation axis vector
Figure BDA0003717622940000108
The angle α can be rotated around one of the coordinate axes to the target coordinate plane, and then transformed to the target coordinate axis on the three-dimensional coordinate system according to the second rotation angle β. That is to say, after rotation, the rotation axis vector
Figure BDA0003717622940000109
On the target axis, the rotation axis vector
Figure BDA00037176229400001010
coincides with the target axis.

S206-4、通过将旋转轴向量旋转对应目标圆心角大小的角度,确定第三旋转变换矩阵。S206-4: Determine a third rotation transformation matrix by rotating the rotation axis vector by an angle corresponding to the size of the target central angle.

在该步骤中,可以将位于目标坐标轴上的旋转轴向量

Figure BDA00037176229400001011
旋转对应目标圆心角大小的角度θ,确定第三旋转变换矩阵Rθ。In this step, the rotation axis vector located on the target coordinate axis can be
Figure BDA00037176229400001011
Rotate the angle θ corresponding to the size of the central angle of the target circle to determine the third rotation transformation matrix R θ .

S206-5、根据移动变换矩阵、第一旋转变换矩阵、第二旋转变换矩阵以及第三旋转变换矩阵,计算周期面旋转变换矩阵。S206-5: Calculate the periodic plane rotation transformation matrix according to the movement transformation matrix, the first rotation transformation matrix, the second rotation transformation matrix and the third rotation transformation matrix.

根据移动变换矩阵T、第一旋转变换矩阵Rα、第二旋转变换矩阵Rβ以及第三旋转变换矩阵Rθ,计算周期面旋转变换矩阵R。According to the movement transformation matrix T, the first rotation transformation matrix R α , the second rotation transformation matrix R β and the third rotation transformation matrix R θ , the periodic plane rotation transformation matrix R is calculated.

在其中一种实施例中,周期面旋转变换矩阵R的计算公式为:In one of the embodiments, the calculation formula of the periodic surface rotation transformation matrix R is:

Figure BDA0003717622940000111
Figure BDA0003717622940000111

其中,T-1

Figure BDA0003717622940000112
分别为T、Rα、Rβ的逆矩阵,即通过对T、Rα、Rβ进行逆变换得到。Among them, T -1 ,
Figure BDA0003717622940000112
are the inverse matrices of T, R α , and R β respectively, that is, obtained by inverse transformation of T, R α , and R β .

需要说明的是,目标坐标平面与目标坐标轴,根据旋转轴向量

Figure BDA0003717622940000113
分别在三维坐标系中三个坐标平面(即X0Z平面、XOY平面、YOZ平面)上的投影长度,从三维坐标系中的三个坐标平面(即X0Z平面、XOY平面、YOZ平面)与三个坐标轴(即X坐标轴、Y坐标轴、Z坐标轴)中匹配确定。It should be noted that the target coordinate plane and the target coordinate axis are based on the rotation axis vector
Figure BDA0003717622940000113
The projection lengths on the three coordinate planes (ie X0Z plane, XOY plane, YOZ plane) in the three-dimensional coordinate system respectively, from the three coordinate planes in the three-dimensional coordinate system (ie X0Z plane, XOY plane, YOZ plane) and three The matching is determined in the coordinate axes (ie, the X coordinate axis, the Y coordinate axis, and the Z coordinate axis).

旋转轴向量

Figure BDA0003717622940000114
的坐标为(nx,ny,nz)。Rotation axis vector
Figure BDA0003717622940000114
The coordinates are (n x , n y , n z ).

旋转轴向量

Figure BDA0003717622940000115
的长度L的计算公式为:Rotation axis vector
Figure BDA0003717622940000115
The formula for calculating the length L is:

Figure BDA0003717622940000116
Figure BDA0003717622940000116

旋转轴向量

Figure BDA0003717622940000117
分别在YOZ平面的投影长度LYZ、在X0Z平面的投影长度LZX、在XOY平面的投影长度LXY分别为:Rotation axis vector
Figure BDA0003717622940000117
The projected length L YZ on the YOZ plane, the projected length L ZX on the X0Z plane, and the projected length L XY on the XOY plane are respectively:

Figure BDA0003717622940000118
Figure BDA0003717622940000118

Figure BDA0003717622940000119
Figure BDA0003717622940000119

Figure BDA00037176229400001110
Figure BDA00037176229400001110

在其中一种实施例中,根据三个投影长度(即LYZ、LZX、LXY)的大小,分如下(1)、(2)、(3)三种情况匹配确定目标坐标平面与目标坐标轴,并计算第一旋转变换矩阵Rα、第二旋转变换矩阵Rβ以及第三旋转变换矩阵Rθ的值。In one of the embodiments, according to the size of the three projection lengths (ie L YZ , L ZX , L XY ), the following three cases (1), (2) and (3) are matched to determine the target coordinate plane and the target coordinate axis, and calculate the values of the first rotation transformation matrix R α , the second rotation transformation matrix R β and the third rotation transformation matrix R θ .

(1)旋转轴向量

Figure BDA00037176229400001111
在YOZ平面的投影长度LYZ最大的情况下(即在LYZ、LZX、LXY中LYZ的值最大)。(1) Rotation axis vector
Figure BDA00037176229400001111
In the case where the projected length L YZ of the YOZ plane is the largest (that is, the value of L YZ is the largest among L YZ , L ZX , and L XY ).

匹配确定目标坐标平面为X0Z平面,目标坐标轴为Z坐标轴。The matching determines that the target coordinate plane is the X0Z plane, and the target coordinate axis is the Z coordinate axis.

对应在S206-2至S206-4中,参见图4,旋转轴向量

Figure BDA00037176229400001112
绕X坐标轴旋转第一旋转角α至X0Z平面(目标坐标平面),然后,再绕Y坐标轴旋转第二旋转角β至Z坐标轴(目标坐标轴),使得旋转轴向量
Figure BDA00037176229400001113
与Z坐标轴重合。Corresponding to S206-2 to S206-4, see Fig. 4, the rotation axis vector
Figure BDA00037176229400001112
Rotate the first rotation angle α around the X coordinate axis to the X0Z plane (target coordinate plane), and then rotate the second rotation angle β around the Y coordinate axis to the Z coordinate axis (target coordinate axis), so that the rotation axis vector
Figure BDA00037176229400001113
Coincides with the Z coordinate axis.

可以理解,旋转轴向量

Figure BDA00037176229400001114
旋转至目标坐标平面上需要依据第一环绕轴进行,也就是说,旋转轴向量
Figure BDA0003717622940000121
绕第一环绕轴旋转第一旋转角α至目标坐标平面。旋转轴向量
Figure BDA0003717622940000122
旋转至目标坐标轴上需要依据第二环绕轴进行,也就是说,旋转轴向量
Figure BDA0003717622940000123
绕第二环绕轴旋转第二旋转角β至目标坐标轴。It can be understood that the rotation axis vector
Figure BDA00037176229400001114
Rotation to the target coordinate plane needs to be performed according to the first surrounding axis, that is, the rotation axis vector
Figure BDA0003717622940000121
Rotate the first rotation angle α around the first surrounding axis to the target coordinate plane. Rotation axis vector
Figure BDA0003717622940000122
Rotation to the target coordinate axis needs to be performed according to the second surrounding axis, that is, the rotation axis vector
Figure BDA0003717622940000123
Rotate the second rotation angle β around the second surrounding axis to the target coordinate axis.

在旋转轴向量

Figure BDA0003717622940000124
在YOZ平面的投影长度LYZ最大的情况下,第一环绕轴为X坐标轴,第二环绕轴为Y坐标轴。vector in the axis of rotation
Figure BDA0003717622940000124
In the case where the projected length L YZ of the YOZ plane is the largest, the first surrounding axis is the X coordinate axis, and the second surrounding axis is the Y coordinate axis.

第一旋转变换矩阵Rα、第二旋转变换矩阵Rβ以及第三旋转变换矩阵Rθ分别为:The first rotation transformation matrix R α , the second rotation transformation matrix R β and the third rotation transformation matrix R θ are respectively:

Figure BDA0003717622940000125
Figure BDA0003717622940000125

Figure BDA0003717622940000126
Figure BDA0003717622940000126

Figure BDA0003717622940000127
Figure BDA0003717622940000127

其中,in,

Figure BDA0003717622940000128
Figure BDA0003717622940000128

Figure BDA0003717622940000129
Figure BDA0003717622940000129

Figure BDA00037176229400001210
Figure BDA00037176229400001210

Figure BDA00037176229400001211
Figure BDA00037176229400001211

(2)旋转轴向量

Figure BDA00037176229400001212
在X0Z平面的投影长度LZX最大的情况下(即在LYZ、LZX、LXY中LZX的值最大)。(2) Rotation axis vector
Figure BDA00037176229400001212
In the case where the projected length L ZX of the X0Z plane is the largest (that is, the value of L ZX is the largest among L YZ , L ZX , and L XY ).

匹配确定目标坐标平面为X0Y平面,目标坐标轴为X坐标轴。The matching determines that the target coordinate plane is the X0Y plane, and the target coordinate axis is the X coordinate axis.

对应在S206-2至S206-4中,旋转轴向量

Figure BDA00037176229400001213
绕Y坐标轴旋转第一旋转角α至X0Y平面(目标坐标平面),然后,再绕Z坐标轴旋转第二旋转角β至X坐标轴(目标坐标轴),使得旋转轴向量
Figure BDA00037176229400001214
与X坐标轴重合。Corresponding to S206-2 to S206-4, the rotation axis vector
Figure BDA00037176229400001213
Rotate the first rotation angle α around the Y coordinate axis to the X0Y plane (target coordinate plane), and then rotate the second rotation angle β around the Z coordinate axis to the X coordinate axis (target coordinate axis), so that the rotation axis vector
Figure BDA00037176229400001214
coincides with the X-axis.

可以理解,旋转轴向量

Figure BDA00037176229400001215
旋转至目标坐标平面上需要依据第一环绕轴进行,也就是说,旋转轴向量
Figure BDA0003717622940000131
绕第一环绕轴旋转第一旋转角α至目标坐标平面。旋转轴向量
Figure BDA0003717622940000132
旋转至目标坐标轴上需要依据第二环绕轴进行,也就是说,旋转轴向量
Figure BDA0003717622940000133
绕第二环绕轴旋转第二旋转角β至目标坐标轴。It can be understood that the rotation axis vector
Figure BDA00037176229400001215
Rotation to the target coordinate plane needs to be performed according to the first surrounding axis, that is, the rotation axis vector
Figure BDA0003717622940000131
Rotate the first rotation angle α around the first surrounding axis to the target coordinate plane. Rotation axis vector
Figure BDA0003717622940000132
Rotation to the target coordinate axis needs to be performed according to the second surrounding axis, that is, the rotation axis vector
Figure BDA0003717622940000133
Rotate the second rotation angle β around the second surrounding axis to the target coordinate axis.

在旋转轴向量

Figure BDA0003717622940000134
在XOZ平面的投影长度LZX最大的情况下,第一环绕轴为Y坐标轴,第二环绕轴为Z坐标轴。vector in the axis of rotation
Figure BDA0003717622940000134
In the case where the projected length L ZX of the XOZ plane is the largest, the first surrounding axis is the Y coordinate axis, and the second surrounding axis is the Z coordinate axis.

第一旋转变换矩阵Rα、第二旋转变换矩阵Rβ以及第三旋转变换矩阵Rθ分别为:The first rotation transformation matrix R α , the second rotation transformation matrix R β and the third rotation transformation matrix R θ are respectively:

Figure BDA0003717622940000135
Figure BDA0003717622940000135

Figure BDA0003717622940000136
Figure BDA0003717622940000136

Figure BDA0003717622940000137
Figure BDA0003717622940000137

其中,in,

Figure BDA0003717622940000138
Figure BDA0003717622940000138

Figure BDA0003717622940000139
Figure BDA0003717622940000139

Figure BDA00037176229400001310
Figure BDA00037176229400001310

Figure BDA00037176229400001311
Figure BDA00037176229400001311

(3)旋转轴向量

Figure BDA00037176229400001312
在XOY平面的投影长度LXY最大的情况下(即在LYZ、LZX、LXY中LXY的值最大)。(3) Rotation axis vector
Figure BDA00037176229400001312
In the case where the projected length L XY of the XOY plane is the largest (that is, the value of L XY is the largest among L YZ , L ZX , and L XY ).

匹配确定目标坐标平面为YOZ平面,目标坐标轴为Y坐标轴。The matching determines that the target coordinate plane is the YOZ plane, and the target coordinate axis is the Y coordinate axis.

对应在S206-2至S206-4中,旋转轴向量

Figure BDA00037176229400001313
绕Z坐标轴旋转第一旋转角α至YOZ平面(目标坐标平面),然后,再绕X坐标轴旋转第二旋转角β至Y坐标轴(目标坐标轴),使得旋转轴向量
Figure BDA00037176229400001314
与Y坐标轴重合。Corresponding to S206-2 to S206-4, the rotation axis vector
Figure BDA00037176229400001313
Rotate the first rotation angle α around the Z coordinate axis to the YOZ plane (target coordinate plane), and then rotate the second rotation angle β around the X coordinate axis to the Y coordinate axis (target coordinate axis), so that the rotation axis vector
Figure BDA00037176229400001314
coincides with the Y axis.

可以理解,旋转轴向量

Figure BDA00037176229400001315
旋转至目标坐标平面上需要依据第一环绕轴进行,也就是说,旋转轴向量
Figure BDA0003717622940000141
绕第一环绕轴旋转第一旋转角α至目标坐标平面。旋转轴向量
Figure BDA0003717622940000142
旋转至目标坐标轴上需要依据第二环绕轴进行,也就是说,旋转轴向量
Figure BDA0003717622940000143
绕第二环绕轴旋转第二旋转角β至目标坐标轴。It can be understood that the rotation axis vector
Figure BDA00037176229400001315
Rotation to the target coordinate plane needs to be performed according to the first surrounding axis, that is, the rotation axis vector
Figure BDA0003717622940000141
Rotate the first rotation angle α around the first surrounding axis to the target coordinate plane. Rotation axis vector
Figure BDA0003717622940000142
Rotation to the target coordinate axis needs to be performed according to the second surrounding axis, that is, the rotation axis vector
Figure BDA0003717622940000143
Rotate the second rotation angle β around the second surrounding axis to the target coordinate axis.

在旋转轴向量

Figure BDA0003717622940000144
在XOY平面的投影长度LXY最大的情况下,第一环绕轴为Z坐标轴,第二环绕轴为X坐标轴。vector in the axis of rotation
Figure BDA0003717622940000144
In the case where the projected length LXY of the XOY plane is the largest, the first surrounding axis is the Z coordinate axis, and the second surrounding axis is the X coordinate axis.

第一旋转变换矩阵Rα、第二旋转变换矩阵Rβ以及第三旋转变换矩阵Rθ分别为:The first rotation transformation matrix R α , the second rotation transformation matrix R β and the third rotation transformation matrix R θ are respectively:

Figure BDA0003717622940000145
Figure BDA0003717622940000145

Figure BDA0003717622940000146
Figure BDA0003717622940000146

Figure BDA0003717622940000147
Figure BDA0003717622940000147

其中,in,

Figure BDA0003717622940000148
Figure BDA0003717622940000148

Figure BDA0003717622940000149
Figure BDA0003717622940000149

Figure BDA00037176229400001410
Figure BDA00037176229400001410

Figure BDA00037176229400001411
Figure BDA00037176229400001411

可以理解,在圆心移动至预先构建的三维坐标系中的原点后,且旋转轴向量通过第一旋转角α与第二旋转角β两次旋转变换后,旋转轴向量与目标轴重合,第一几何面上关联圆弧边的顶点,通过旋转对应目标圆心角大小的角度,可以变换至第二几何面上同在外接圆上的另一个顶点的位置上。上述计算得到的周期面旋转变换矩阵R,确定了第一和第二几何面上的两个顶点的变换关系。由此可见,根据计算得到的周期面旋转变换矩阵R,可以用于检测两个几何面是否为一对旋转周期面。It can be understood that after the center of the circle is moved to the origin in the pre-built three-dimensional coordinate system, and the rotation axis vector is transformed twice by the first rotation angle α and the second rotation angle β, the rotation axis vector coincides with the target axis, The vertex of the associated arc edge on the first geometric surface can be transformed to the position of another vertex on the same circumcircle on the second geometric surface by rotating the angle corresponding to the size of the target central angle. The rotation transformation matrix R of the periodic surface obtained by the above calculation determines the transformation relationship between the two vertices on the first and second geometric surfaces. It can be seen that, according to the calculated periodic surface rotation transformation matrix R, it can be used to detect whether two geometric surfaces are a pair of rotating periodic surfaces.

S207、根据周期面旋转变换矩阵确认两个几何面的边界点是否存在一一对应关系。S207 , confirming whether there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface.

在该步骤中,若根据周期面旋转变换矩阵确认两个几何面的边界点不存在一一对应关系,执行S203。若根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系,执行S208。In this step, if it is confirmed that there is no one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface, S203 is executed. If it is confirmed that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface, S208 is executed.

需要说明的是,若在S204中确认出几何面的顶点关联有多个圆弧边,对于分别针对多个圆弧边和外接圆计算得到多个周期面旋转变换矩阵,根据其中一个周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系,则执行S208,否则执行S203。也就是说,两个几何面的边界点可以通过其中一个周期面旋转变换矩阵确认出存在一一对应关系,则执行S208,否则执行S203。It should be noted that, if it is confirmed in S204 that the vertices of the geometric surface are associated with a plurality of circular arc edges, for the plurality of periodic surface rotation transformation matrices obtained by calculating respectively for the plurality of circular arc edges and the circumscribed circle, rotate according to one of the periodic surfaces. The transformation matrix confirms that there is a one-to-one correspondence between the boundary points of the two geometric surfaces, then execute S208; otherwise, execute S203. That is to say, it can be confirmed that there is a one-to-one correspondence between the boundary points of the two geometric surfaces through the rotation transformation matrix of one of the periodic surfaces, and then S208 is performed, otherwise, S203 is performed.

在其中一种实施例中,根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系的方式可以包括:In one of the embodiments, the method of confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface may include:

S207-1、根据周期面旋转变换矩阵,对其中一个几何面的边界点进行变换,得到变换结果。S207-1, according to the rotation transformation matrix of the periodic surface, transform the boundary point of one of the geometric surfaces to obtain a transformation result.

如图3实施例中,根据周期面旋转变换矩阵R,对第一几何面A的边界点进行变换,得到变换结果。In the embodiment shown in FIG. 3 , the boundary points of the first geometric plane A are transformed according to the periodic plane rotation transformation matrix R to obtain a transformation result.

其中,几何面的边界点包括几何面的顶点以及几何面的几何边上的端点。也就是说,第一几何面A的边界点可以是顶点A0、顶点A1、顶点A2、顶点A3。第一几何面A的边界点也可以是几何边A0A1、几何边A1A2、几何边A2A3、几何边A0A3上的端点。The boundary points of the geometric surface include vertexes of the geometric surface and endpoints on the geometric edges of the geometric surface. That is, the boundary points of the first geometric surface A may be vertex A 0 , vertex A 1 , vertex A 2 , and vertex A 3 . The boundary point of the first geometric surface A may also be the end point on the geometric edge A 0 A 1 , the geometric edge A 1 A 2 , the geometric edge A 2 A 3 , and the geometric edge A 0 A 3 .

例如,对第一几何面A的边界点A0进行变换,得到变换结果a0For example, transform the boundary point A 0 of the first geometric surface A to obtain the transformation result a 0 .

S207-2、在确认变换结果与另一个几何面的边界点存在一一对应关系后,确认两个几何面的边界点存在一一对应关系。S207-2. After confirming that the transformation result has a one-to-one correspondence with the boundary points of another geometric surface, confirm that the boundary points of the two geometric surfaces have a one-to-one correspondence.

也就是说,变换结果所对应的位置一一映射在另一个几何面的对应的边界点上,则可以确认两个几何面的边界点存在一一对应关系。That is to say, the positions corresponding to the transformation results are mapped one-to-one on the corresponding boundary points of another geometric surface, and it can be confirmed that there is a one-to-one correspondence between the boundary points of the two geometric surfaces.

例如,在图3实施例中,若两个几何面的边界点存在一一对应关系,对第一几何面A的边界点A0进行变换,得到变换结果a0。变换结果a0所对应的位置为第二几何面B的边界点B0For example, in the embodiment of FIG. 3 , if there is a one-to-one correspondence between the boundary points of the two geometric surfaces, the boundary point A 0 of the first geometric surface A is transformed to obtain the transformation result a 0 . The position corresponding to the transformation result a 0 is the boundary point B 0 of the second geometric surface B.

又例如,在图3实施例中,若第一几何面A的边界点与第二几何面B的边界点存在一一对应关系,第一几何面A的顶点A0、A1、A2、A3,根据周期面旋转变换矩阵R进行变换后的变换结果,分别对应第二几何面B上的顶点B0、B1、B2、B3For another example, in the embodiment of FIG. 3 , if there is a one-to-one correspondence between the boundary points of the first geometric surface A and the boundary points of the second geometric surface B, the vertices A 0 , A 1 , A 2 , A 3 , the transformation result after transformation is performed according to the rotation transformation matrix R of the periodic surface, corresponding to the vertices B 0 , B 1 , B 2 , and B 3 on the second geometric surface B, respectively.

又例如,在图3实施例中,若第一几何面A的边界点与第二几何面B的边界点存在一一对应关系,第一几何面A的几何边A0A1上的端点A0,根据周期面旋转变换矩阵R进行变换后的变换结果,对应第二几何面B上的对应的几何边B0B1上的端点B0。第一几何面A的几何边A0A1上的端点A1,根据周期面旋转变换矩阵R进行变换后的变换结果,对应第二几何面B上的对应的几何边B0B1上的端点B1。换句话说,第一几何面A的边界环为A0A1A2A3,第二几何面B的边界环为B0B1B2B3,对于第一几何面A的任意一条几何边AiA(i+1)%4,第二几何面B的任意一条几何边BiB(i+1)%4,其中,0≤i<4,%为求余符号。几何边AiA(i+1)%4上的端点通过周期面旋转变换矩阵R的变换后可以一一对应在几何边BiB(i+1)%4的端点位置上。也就是说,通过校验其中一个几何面的几何边的端点与另一个几何面的对应的几何边的端点是否存在一一对应关系,以确定两个几何面上的几何边是否一一对应。For another example, in the embodiment of FIG. 3 , if there is a one-to-one correspondence between the boundary points of the first geometric surface A and the boundary points of the second geometric surface B, the endpoint A on the geometric edge A 0 A 1 of the first geometric surface A 0 , the transformation result after transformation is performed according to the rotation transformation matrix R of the periodic surface, which corresponds to the endpoint B 0 on the corresponding geometric edge B 0 B 1 on the second geometric surface B. The endpoint A 1 on the geometric edge A 0 A 1 of the first geometric surface A, the transformation result after the transformation is performed according to the periodic surface rotation transformation matrix R, corresponds to the corresponding geometric edge B 0 B 1 on the second geometric surface B. Endpoint B 1 . In other words, the boundary ring of the first geometric surface A is A 0 A 1 A 2 A 3 , and the boundary ring of the second geometric surface B is B 0 B 1 B 2 B 3 . For any geometry of the first geometric surface A Edge A i A (i+1)% 4 , any geometric edge B i B (i+1) % 4 of the second geometric surface B, where 0≤i<4, % is the remainder symbol. The endpoints on the geometric edge A i A (i+1)% 4 can be in a one-to-one correspondence with the endpoint positions of the geometric edge B i B (i+1) % 4 after being transformed by the periodic surface rotation transformation matrix R. That is to say, by checking whether there is a one-to-one correspondence between the end points of the geometric edges of one of the geometric surfaces and the corresponding end points of the geometric edges of the other geometric surface, it is determined whether the geometric edges on the two geometric surfaces are in a one-to-one correspondence.

综上,根据周期面旋转变换矩阵,对其中一个几何面的边界点进行变换,若变换结果与另一个几何面的边界点存在一一对应关系,则确认两个几何面的边界点存在一一对应关系。具体的,根据周期面旋转变换矩阵,对其中一个几何面的顶点进行变换,若变换结果与另一个几何面的顶点存在一一对应关系,并且根据周期面旋转变换矩阵,对其中一个几何面上其中一条几何边上的两个端点变换,若变换结果与另一个几何面的上对应的一条几何边上的两个端点存在一一对应关系,则确认两个几何面的边界点存在一一对应关系。To sum up, transform the boundary points of one of the geometric surfaces according to the rotation transformation matrix of the periodic surface. If the transformation result has a one-to-one correspondence with the boundary points of the other geometric surface, confirm that the boundary points of the two geometric surfaces exist one-to-one. Correspondence. Specifically, according to the rotation transformation matrix of the periodic surface, the vertices of one of the geometric surfaces are transformed. If there is a one-to-one correspondence between the transformation result and the vertices of the other geometric surface, and according to the rotation transformation matrix of the periodic surface, the vertices of one of the geometric surfaces are transformed according to the rotation transformation matrix of the periodic surface. The two endpoints on one of the geometric edges are transformed. If the transformation result has a one-to-one correspondence with the two endpoints on the corresponding geometric edge on the other geometric surface, confirm that the boundary points of the two geometric surfaces have a one-to-one correspondence. relation.

S208、输出两个几何面为一对旋转周期面的确认结果。S208, output the confirmation result that the two geometric surfaces are a pair of rotating periodic surfaces.

在该步骤中,输出两个几何面为一对旋转周期面的确认结果,也就是说,确认几何模型中待检测的两个几何面为一对旋转周期面。In this step, the confirmation result that the two geometric surfaces are a pair of rotating periodic surfaces is output, that is, it is confirmed that the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces.

例如,在图3实施例中,可以确认第一几何面A与第二几何面B为一对旋转周期面。For example, in the embodiment of FIG. 3 , it can be confirmed that the first geometric surface A and the second geometric surface B are a pair of rotational periodic surfaces.

从该实施例可以看出,本发明实施例提供的方法,可以快速判断几何模型中待检测的两个几何面是否为一对旋转周期面,利于提升网格生成效率,提升数值模拟的计算效率。It can be seen from this embodiment that the method provided by the embodiment of the present invention can quickly determine whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which is beneficial to improve the efficiency of grid generation and the calculation efficiency of numerical simulation .

与前述应用功能实现方法实施例相对应,本发明还提供了一种几何模型结构检测装置、电子设备及相应的实施例。Corresponding to the foregoing application function implementation method embodiments, the present invention further provides a geometric model structure detection device, an electronic device, and corresponding embodiments.

图5是本发明实施例示出的几何模型结构检测装置的结构示意图。FIG. 5 is a schematic structural diagram of an apparatus for detecting a geometric model structure according to an embodiment of the present invention.

参见图5,一种几何模型结构检测装置50,包括:接收模块510、计算模块520以及确认模块530。Referring to FIG. 5 , a geometric model structure detection device 50 includes: a receiving module 510 , a calculating module 520 and a confirming module 530 .

接收模块510,用于接收输入的几何模型。The receiving module 510 is used for receiving the input geometric model.

计算模块520,用于在确认几何模型中待检测的两个几何面的顶点数量相同,且确认几何面的顶点关联有圆弧边后,根据圆弧边,计算周期面旋转变换矩阵。The calculation module 520 is used to calculate the rotation transformation matrix of the periodic surface according to the circular arc edge after confirming that the number of vertices of the two geometric surfaces to be detected in the geometric model is the same and that the vertices of the geometric surface are associated with the arc edge.

确认模块530,用于在根据周期面旋转变换矩阵确认两个几何面的边界点存在一一对应关系后,确认两个几何面为一对旋转周期面。The confirmation module 530 is configured to confirm that the two geometric surfaces are a pair of rotating periodic surfaces after confirming that there is a one-to-one correspondence between the boundary points of the two geometric surfaces according to the rotation transformation matrix of the periodic surface.

从该实施例可以看出,本发明实施例提供的装置50,可以快速判断几何模型中待检测的两个几何面是否为一对旋转周期面,利于提升网格生成效率,提升数值模拟的计算效率和精度。It can be seen from this embodiment that the device 50 provided by the embodiment of the present invention can quickly determine whether the two geometric surfaces to be detected in the geometric model are a pair of rotating periodic surfaces, which is beneficial to improve the grid generation efficiency and improve the calculation of numerical simulation Efficiency and Precision.

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不再做详细阐述说明。Regarding the apparatus in the above-mentioned embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment of the method, and will not be described in detail here.

图6是本发明实施例示出的电子设备的结构示意图。FIG. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.

参见图6,电子设备600包括存储器610和处理器620。Referring to FIG. 6 , an electronic device 600 includes a memory 610 and a processor 620 .

处理器620可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。The processor 620 may be a central processing unit (Central Processing Unit, CPU), other general-purpose processors, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field-available processor Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.

存储器610可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM)和永久存储装置。其中,ROM可以存储处理器620或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施例中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施例中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器610可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(例如DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施例中,存储器610可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等)、磁性软盘等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。Memory 610 may include various types of storage units, such as system memory, read only memory (ROM), and persistent storage. The ROM may store static data or instructions required by the processor 620 or other modules of the computer. Persistent storage devices may be readable and writable storage devices. Permanent storage may be a non-volatile storage device that does not lose stored instructions and data even if the computer is powered off. In some embodiments, persistent storage devices employ mass storage devices (eg, magnetic or optical disks, flash memory) as persistent storage devices. In other embodiments, the persistent storage device may be a removable storage device (eg, a floppy disk, an optical drive). System memory can be a readable and writable storage device or a volatile readable and writable storage device, such as dynamic random access memory. System memory can store some or all of the instructions and data that the processor needs at runtime. Additionally, memory 610 may include any combination of computer-readable storage media, including various types of semiconductor memory chips (eg, DRAM, SRAM, SDRAM, flash memory, programmable read only memory), and magnetic and/or optical disks may also be employed. In some embodiments, memory 610 may include a removable storage device that is readable and/or writable, such as a compact disc (CD), a read-only digital versatile disc (eg, DVD-ROM, dual-layer DVD-ROM), Read-only Blu-ray Disc, Ultra-Density Disc, Flash Card (eg SD Card, Min SD Card, Micro-SD Card, etc.), Magnetic Floppy Disk, etc. Computer-readable storage media do not contain carrier waves and transient electronic signals transmitted over wireless or wireline.

存储器610上存储有可执行代码,当可执行代码被处理器620处理时,可以使处理器620执行上文述及的方法中的部分或全部。Executable codes are stored on the memory 610, and when the executable codes are processed by the processor 620, the processor 620 can be caused to execute some or all of the above-mentioned methods.

此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中部分或全部步骤的计算机程序代码指令。Furthermore, the method according to the present invention can also be implemented as a computer program or computer program product comprising computer program code instructions for performing some or all of the steps in the above-described method of the present invention.

或者,本发明还可以实施为一种计算机可读存储介质(或非暂时性机器可读存储介质或机器可读存储介质),其上存储有可执行代码(或计算机程序或计算机指令代码),当可执行代码(或计算机程序或计算机指令代码)被电子设备(或服务器等)的处理器执行时,使处理器执行根据本发明的上述方法的各个步骤的部分或全部。Alternatively, the present invention can also be implemented as a computer-readable storage medium (or a non-transitory machine-readable storage medium or a machine-readable storage medium) having executable code (or computer program or computer instruction code) stored thereon, When the executable code (or computer program or computer instruction code) is executed by a processor of an electronic device (or server, etc.), the processor is caused to perform some or all of the steps of the above-described method according to the present invention.

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。Various embodiments of the present invention have been described above, and the foregoing descriptions are exemplary, not exhaustive, and not limiting of the disclosed embodiments. Numerous modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or improvement over the technology in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

Claims (10)

1. A geometric model structure detection method is characterized by comprising the following steps:
receiving an input geometric model;
after confirming that the number of vertexes of two geometric surfaces to be detected in the geometric model is the same and that the vertexes of the geometric surfaces are associated with arc edges, calculating a periodic surface rotation transformation matrix according to the arc edges;
and after confirming that the boundary points of the two geometric surfaces have one-to-one correspondence according to the periodic surface rotation transformation matrix, confirming that the two geometric surfaces are a pair of rotation periodic surfaces.
2. The method according to claim 1, wherein the confirming that the vertex of the geometric surface is associated with the arc edge comprises:
acquiring a geometric edge associated with a vertex of the geometric surface;
collecting three sampling points from the geometric side, and calculating circumscribed circles determined by the three sampling points;
and after judging that the geometric side is an arc side according to the circumscribed circle, confirming that the vertex of the geometric surface is associated with the arc side.
3. The method according to claim 2, wherein the determining that the geometric side is a circular arc side according to the circumscribed circle comprises:
collecting a preset number of check points from the geometric side;
and after confirming that each check point is on the plane of the circumscribed circle and the distance between each check point and the circle center of the circumscribed circle is the radius of the circumscribed circle, judging that the geometric side is an arc side.
4. The method of claim 1, wherein computing a periodic surface rotation transformation matrix from the circular arc edge comprises:
according to the arc edge, determining a circle center corresponding to the arc edge, a target central angle and a rotation axis vector perpendicular to a plane where the arc edge is located; the target central angle is determined according to a circumscribed circle where the arc edge is located and vertexes of two geometric surfaces located on the circumscribed circle;
and calculating a periodic surface rotation transformation matrix according to the circle center, the target circle center angle and the rotation axis vector.
5. The method of claim 4, wherein said computing a periodic surface rotation transformation matrix from the center of the circle, the target center angle, and the rotation axis vector comprises:
determining a movement transformation matrix by moving the circle center to an origin in a pre-constructed three-dimensional coordinate system;
determining a first rotation transformation matrix by rotating the rotation axis vector by a first rotation angle to a target coordinate plane on the three-dimensional coordinate system;
determining a second rotation transformation matrix by rotating the rotation axis vector by a second rotation angle to a target coordinate axis on the three-dimensional coordinate system;
determining a third rotation transformation matrix by rotating the rotation axis vector by an angle corresponding to the size of the target central angle;
calculating a periodic surface rotation transformation matrix according to the movement transformation matrix, the first rotation transformation matrix, the second rotation transformation matrix and the third rotation transformation matrix;
and the target coordinate plane and the target coordinate axis are determined by matching the three coordinate planes and the three coordinate axes in the three-dimensional coordinate system according to the projection lengths of the rotation axis vectors on the three coordinate planes in the three-dimensional coordinate system.
6. The method according to claim 1, wherein the determining the boundary points of the two geometric surfaces have a one-to-one correspondence relationship according to the periodic surface rotation transformation matrix comprises:
according to the periodic surface rotation transformation matrix, transforming the boundary point of one of the geometric surfaces to obtain a transformation result;
and after confirming that the transformation result has one-to-one correspondence with the boundary point of the other geometric surface, confirming that the boundary points of the two geometric surfaces have one-to-one correspondence.
7. The method of claim 1, wherein:
the boundary points of the geometric surface include vertices of the geometric surface and end points on geometric edges of the geometric surface.
8. A geometric model structure detection apparatus, comprising:
the receiving module is used for receiving the input geometric model;
the calculation module is used for calculating a periodic surface rotation transformation matrix according to the circular arc edges after confirming that the number of vertexes of two geometric surfaces to be detected in the geometric model is the same and that the vertexes of the geometric surfaces are associated with the circular arc edges;
and the confirming module is used for confirming that the two geometric surfaces are a pair of rotating periodic surfaces after confirming that the boundary points of the two geometric surfaces have one-to-one correspondence according to the periodic surface rotating transformation matrix.
9. An electronic device, comprising:
a processor; and
a memory having executable code stored thereon, which when executed by the processor, causes the processor to perform the method of any one of claims 1-7.
10. A computer-readable storage medium having stored thereon executable code, which when executed by a processor of an electronic device, causes the processor to perform the method of any one of claims 1-7.
CN202210740189.2A 2022-06-28 2022-06-28 Geometric model structure detection method, device, equipment and storage medium Active CN114970283B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210740189.2A CN114970283B (en) 2022-06-28 2022-06-28 Geometric model structure detection method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210740189.2A CN114970283B (en) 2022-06-28 2022-06-28 Geometric model structure detection method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN114970283A true CN114970283A (en) 2022-08-30
CN114970283B CN114970283B (en) 2025-01-28

Family

ID=82966228

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210740189.2A Active CN114970283B (en) 2022-06-28 2022-06-28 Geometric model structure detection method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114970283B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118171547A (en) * 2024-05-16 2024-06-11 深圳十沣科技有限公司 Automatic grid generation method, device, equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108021098A (en) * 2017-12-05 2018-05-11 华中科技大学 A kind of tool path optimization method for automatically generating tire-mold safety cylinder body
CN108122255A (en) * 2017-12-20 2018-06-05 哈尔滨工业大学 It is a kind of based on trapezoidal with circular combination terrestrial reference UAV position and orientation method of estimation
CN113627548A (en) * 2021-08-17 2021-11-09 熵智科技(深圳)有限公司 Planar workpiece template matching method, device, medium and computer equipment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108021098A (en) * 2017-12-05 2018-05-11 华中科技大学 A kind of tool path optimization method for automatically generating tire-mold safety cylinder body
CN108122255A (en) * 2017-12-20 2018-06-05 哈尔滨工业大学 It is a kind of based on trapezoidal with circular combination terrestrial reference UAV position and orientation method of estimation
CN113627548A (en) * 2021-08-17 2021-11-09 熵智科技(深圳)有限公司 Planar workpiece template matching method, device, medium and computer equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118171547A (en) * 2024-05-16 2024-06-11 深圳十沣科技有限公司 Automatic grid generation method, device, equipment and storage medium
CN118171547B (en) * 2024-05-16 2024-08-13 深圳十沣科技有限公司 Automatic grid generation method, device, equipment and storage medium

Also Published As

Publication number Publication date
CN114970283B (en) 2025-01-28

Similar Documents

Publication Publication Date Title
Sawhney et al. Boundary first flattening
Sheffer et al. Robust spherical parameterization of triangular meshes
Jakovljevic et al. Recognition of planar segments in point cloud based on wavelet transform
CN110599582B (en) Rapid algorithm of rectangular object bounding box
CN112966711A (en) Pointer instrument indicating number identification method and system based on convolutional neural network
CN114970283A (en) Geometric model structure detection method, device, equipment and storage medium
CN115730407A (en) A motor vibration and noise analysis method, device, equipment and storage medium
Kwok et al. Improvements to the iterative closest point algorithm for shape registration in manufacturing
WO2019024723A1 (en) Feature point matching result processing method and device
US20080143708A1 (en) System and method for auto-dimensioning boundary representation model
CN118013770B (en) Discrete grid patch geometric topological relation reconstruction method, device, equipment and storage medium
CN113887028A (en) Method and device for determining etching simulation model and electronic equipment
CN113139157A (en) Method for calculating main energy direction of DUT (device under test) and computer equipment
CN118172413A (en) Method for determining the actual position of the rotation center of a pole piece correction device and related products
CN114998755A (en) Method and device for landmark matching in remote sensing images
CN113392913B (en) Planar graph matching degree evaluation method, device and system based on boundary feature point set
CN103903287B (en) The generation method and device of building building CAD diagram shape
CN115688497B (en) Load graphic element display method and device, electronic equipment and storage medium
CN116882326A (en) Non-structural surface anisotropic grid generation method and grid generation device
CN111882069A (en) Method, device, device and storage medium for judging relative phase of single qubit
CN116882255B (en) A method and system for randomly generating porous medium models based on Fourier series
Abhishek et al. A hybrid marching cubes based IsoAlpha method for interface reconstruction
CN119514470B (en) Geometric feature extraction method in chip simulation software, electronic equipment
US20240320871A1 (en) Image generation method and image generation device
CN112352262B (en) Method and device for selecting a six-dimensional pose hypothesis from multiple six-dimensional pose hypotheses

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant