一种结构参数信息可视化方法与流程

文档序号:19943549发布日期:2020-02-14 23:31阅读:220来源:国知局
一种结构参数信息可视化方法与流程

本发明涉及计算机仿真技术领域,尤其涉及一种结构参数信息可视化方法。



背景技术:

信息可视化(informationvisualization)旨在研究大规模非数值型信息资源的视觉呈现,通过利用图形图像方面的技术与方法,帮助人们理解和分析数据。

传统的结构参数信息可视化,往往是通过人工手动将结构单元信息输入到excel表格中,当结构单元id没有规律且结构单元数大时,往往会很耗时,而且很容易出现误差。

现有结构参数信息可视化方法主要存在以下问题:对结构单元的分布有一定的局限性,若结构单元的排列或形状不规则,可能会导致输出的结构信息表与实际情况存在差异。



技术实现要素:

针对上述现有技术的缺点,本发明的目的是提供一种高效、直观的结构参数信息可视化方法。

本发明实施例提供的一种结构参数信息可视化方法,该方法包括:

1)获取结构单元数据;

2)获取参考坐标系;

3)获取结构单元位置坐标;

4)映射结构单元id号到excel中;

5)保存文件。

进一步地,上述方法中,所述获取结构单元数据,包括获取一维单元结构数据和二维单元结构数据。

进一步地,上述方法中,所述获取一维单元结构数据后,还包括:

1)获取一维单元结构参考坐标系;

3)进行结构单元坐标系转换;

4)获取结构单元行号和列号;

5)确定结构单元位置坐标;

6)映射结构单元id号到excel中;

7)保存文件。

进一步地,上述方法中,所述获取一维单元结构参考坐标系,是根据三个点来确认参考坐标系,确认xy平面。

进一步地,上述方法中,所述结构单元坐标系转换,是将结构单元的形心,投影到参考坐标系中的xy平面,得到平面坐标系下的结构单元形心坐标。

进一步地,上述方法中,所述获取结构单元的列号流程如下:

1)获取结构单元局部坐标数据;

2)对结构单元以x坐标值由小到大进进行排序,得到结构单元id号列表数据;

3)获取结构单元在x轴方向平均间距,并计算置信空间;

4)对结构单元id号列表数据循环;

5)获取x坐标值最小的结构单元id号,并作为循环起始结构单元,同时将该单元从结构单元列表中删除;

6)对结构单元id号列表进行循环;

7)计算剩余结构单元在x轴方向的间距;

8)判断剩余结构单元间距是否在置信空间内,如是,则继续进行下一步,如否,则不处理;

9)确定在置信空间内的剩余结构单元和初始结构单元在同一列,将其追加到结构单元列表中;

10)进行结构单元id号列表循环;

11)循环完成后,剔除筛选出的同一列中的结构单元,此时列号已找出;

12)最后判断结构单元列表是否为空,如是,则继续进行下一步,如否,则返回结构单元循环的步骤;

13)输出结构单元列号。进一步地,上述方法中,所述获取二维单元结构数据后,还包括:

1)获取二维单元结构参考坐标系;

3)获取起始结构单元节点id;

4)获取结构单元拓扑关系;

5)获取结构单元位置坐标;

6)映射结构单元id号到excel中;

7)保存文件。

进一步地,上述方法中,所述获取起始结构单元节点id的流程如下:

1)获取二维单元结构数据;

2)获取所有二维单元的节点,将节点id号存在集合中;

3)获取节点数据中x坐标最小,y坐标最大的点,即左上节点;

4)筛选出边界上的节点;

5)计算所有边界上的点到左上节点的距离,距离最小的节点即为起始节点。

进一步地,上述方法中,所述获取结构单元的拓扑关系,是指获取每个结构单元与其相邻的结构单元的位置关系数据。

进一步地,上述方法中,所述获取结构单元拓扑关系的步骤如下:

1)获取结构单元数据和id号列表;

2)获取结构单元边界数据;

3)获取结构单元拓扑关系,根据边界数据查找是否有其他结构单元共享。

进一步地,上述方法中,所述获取结构单元边界数据,具体的,设定以结构单元id为key的字典,每个key对应4个值,每个值是对应的边界id组成的列表,并按顺时针排列。

进一步地,上述方法中,所述根据边界数据查找是否有其他结构单元共享的方法包括:

设定以结构单元为key的字典,每个key对应4个值,每个值是对应的相邻结构单元id的列表,并按顺时针排列,没有则为空列表;

其中,key为正整数,key的值为1,2,3,4。

进一步地,上述方法中,所述获取起始结构单元的流程如下:

1)获取结构单元边界节点数据;

2)进行结构单元循环;

3)获取参考坐标系x轴方向在二维结构单元边界列表中的位置;

4)确定二维结构单元在x轴方向处的边界节点;

5)判断起始节点是否在查找的边界节点数据内;

6)如是,则起始结构单元获取完成,如否,则返回进行二维结构单元循环的步骤操作。

进一步地,上述方法中,所述结构单元循环流程如下:

1)获取结构单元位置坐标;

2)获取结构单元拓扑位置关系数据,并存放在dict_seid_topo字典中;

3)根据字典dict_seid_topo中数据循环;

4)判断dict_seid_topo是否为空,如是,则继续进行下一步;如否,则淘汰;

5)判断结构单元是否已获取位置坐标;

6)如是,则淘汰,如否,则获取当前结构单元的位置关系数据;

7)确定当前结构单元的位置坐标;

8)将该结构单元从结构单元列表中删除;

9)判断结构单元列表是否为空;

10)如是,结束循环;如否,则将该结构单元作为起始循环位置坐标。

与现有技术相比,本发明实施例根据结构单元形心的空间坐标映射到定义的参考坐标平面中,通过分析结构单元的投影坐标,获取结构单元的拓扑位置数据,将单元id号映射到excel单元格中,更加直观的反应出结构形状以及各个结构单元在空间中的相对位置关系。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种结构参数信息可视化方法简易流程图;

图2为本发明提供的一种结构参数信息可视化方法整体流程图;

图3为本发明提供的获取结构单元的列号流程示意图;

图4为本发明提供的获取起始结构单元的流程示意图;

图5为本发明提供的结构单元循环流程示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明主要通过python语言开发,基于vtk开发3d图形引擎,基于wxpython开发图形界面实现结构参数信息可视化。

下面结合说明书附图对本发明实施例作进一步详细描述。

如图1所示,本发明实施例公开了一种结构参数信息可视化方法,该方法包括:

1)获取结构单元数据;

2)获取参考坐标系;

3)获取结构单元位置坐标;

4)映射结构单元id号到excel中;

5)保存文件。

进一步地,如图2所示,所述获取结构单元数据,包括获取一维单元结构数据和二维单元结构数据。

进一步地,如图2所示,所述获取一维单元结构数据后,还包括:

1)获取一维单元结构参考坐标系;

3)进行结构单元坐标系转换;

4)获取结构单元行号和列号;

5)确定结构单元位置坐标;

6)映射结构单元id号到excel中;

7)保存文件。

进一步地,上述方法中,所述获取一维单元结构参考坐标系,是根据三个点来确认参考坐标系,确认xy平面。

具体实施中,根据三个点来确认参考坐标系,point_1,point_2用来确认x方向,三个点用来确认xy平面。

进一步地,上述方法中,所述结构单元坐标系转换,是将结构单元的形心,投影到参考坐标系中的xy平面,得到平面坐标系下的结构单元形心坐标。

进一步地,如图3所示,所述获取结构单元的列号流程如下:

1)获取结构单元局部坐标数据;

2)对结构单元以x坐标值由小到大进进行排序,得到结构单元id号列表数据;

3)获取结构单元在x轴方向平均间距,并计算置信空间;

4)对结构单元id号列表数据循环;

5)获取x坐标值最小的结构单元id号,并作为循环起始结构单元,同时将该单元从结构单元列表中删除;

6)对结构单元id号列表进行循环;

7)计算剩余结构单元在x轴方向的间距;

8)判断剩余结构单元间距是否在置信空间内,如是,则继续进行下一步,如否,则不处理;

9)确定在置信空间内的剩余结构单元和初始结构单元在同一列,将其追加到结构单元列表中;

10)进行结构单元id号列表循环;

11)循环完成后,剔除筛选出的同一列中的结构单元,此时列号已找出;

12)最后判断结构单元列表是否为空,如是,则继续进行下一步,如否,则返回结构单元循环的步骤;

13)输出结构单元列号。

需要说明的是,本发明实施例行号的获取与上述列号获取步骤类似,在此将不再赘述。

进一步地,如图2所示,所述获取二维单元结构数据后,还包括:

1)获取二维单元结构参考坐标系;

3)获取起始结构单元节点id;

4)获取结构单元拓扑关系;

5)获取结构单元位置坐标;

6)映射结构单元id号到excel中;

7)保存文件。

进一步地,上述方法中,所述获取起始结构单元节点id的流程如下:

1)获取二维单元结构数据;

2)获取所有二维单元的节点,将节点id号存在集合中;

3)获取节点数据中x坐标最小,y坐标最大的点,即左上节点;

4)筛选出边界上的节点;

5)计算所有边界上的点到左上节点的距离,距离最小的节点即为起始节点。

实施中,根据选择的结构单元与选取的坐标系参考方向,确定起始节点orign_point,获取节点id号。

进一步地,上述方法中,所述获取结构单元的拓扑关系,是指获取每个结构单元与其相邻的结构单元的位置关系数据。

进一步地,上述方法中,所述获取结构单元拓扑关系的步骤如下:

1)获取结构单元数据id号列表;

2)获取结构单元边界数据;

3)获取结构单元拓扑关系,根据边界数据查找是否有其他结构单元共享。

进一步地,优选的,所述获取结构单元边界数据,具体的,设定以结构单元id为key的字典,每个key对应4个值,每个值是对应的边界id组成的列表,并按顺时针排列。例如:dict[7122053]=[[319203,319202],[319202,320202],[320202,320203],[319203,320203]]。

进一步地,优选的,所述根据边界数据查找是否有其他结构单元共享的方法包括:

设定以结构单元为key(其中,key为正整数,key的值为1,2,3,4。)的字典,每个key对应4个值,每个值是对应的相邻结构单元id的列表,并按顺时针排列,没有则为空列表。示例如下表:dict[7122053]=[[],[],[37122153],[7122054]]。

进一步地,如图4所示,所述获取起始结构单元的流程如下:

1)获取结构单元边界节点数据;

2)进行结构单元循环;

3)获取参考坐标系x轴方向在二维结构单元边界列表中的位置;

4)确定二维结构单元在x轴方向处的边界节点;

5)判断起始节点是否在查找的边界节点数据内;

6)如是,则起始结构单元获取完成,如否,则返回进行二维结构单元循环的步骤操作。

实施中,本发明根据起始节点号,参考坐标系x轴方向,获取起始结构单元的id号,该单元的位置坐标为[0,0]。

进一步地,如图5所示,所述结构单元循环流程如下:

1)获取结构单元位置坐标;

2)获取结构单元拓扑位置关系数据,并存放在dict_seid_topo字典中(存放结构单元的id号和与其相邻结构单元id号和位置关系数据(例如{1:1001,2:1002,3:1003,4:1004});

3)根据字典dict_seid_topo中数据循环;

4)判断dict_seid_topo是否为空,如是,则继续进行下一步;如否,则淘汰;

5)判断结构单元是否已获取位置坐标;

6)如是,则淘汰,如否,则获取当前结构单元的位置关系数据;

7)确定当前结构单元的位置坐标;

8)将该结构单元从结构单元列表中删除;

9)判断结构单元列表是否为空;

10)如是,结束循环;如否,则将该结构单元作为起始循环位置坐标。

本发明实施例根据参考坐标x轴的方向,来确定初始结构单元循环的位置,同时从起始结构单元开始循环。

综上,本发明提供了一种高效、直观的结构参数信息可视化方法。具体的,本发明实施例通过python语言开发,基于vtk开发3d图形引擎,基于wxpython开发图形界面,根据结构单元形心的空间坐标映射到定义的参考坐标平面中,通过分析结构单元的投影坐标,获取结构单元的拓扑位置数据,将单元id号映射到excel单元格中,更加直观的反应出结构形状以及各个结构单元在空间中的相对位置关系。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1