Wayfinding method, device, equipment and storage medium in a building
By meshing and path planning within the building, ensuring that the path is consistent with the building axial direction, the problem of path planning in the existing technology is solved, and the modeling efficiency is improved.
Patent Information
- Application Number
- CN202110698745.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-06-23
- Publication Date
- 2025-02-07
- Estimated Expiration
- 2041-06-23
AI Technical Summary
When planning paths within buildings, prior art are prone to pass through walls in obliquely, violating building codes and reducing modeling efficiency.
By determining the outline range of the target building and meshing based on the axial direction of the building, after obtaining the grid information, path planning is carried out between the starting point and the end point to ensure that the path is consistent with the axial direction of the building and avoiding oblique passage through the wall.
The path planning meets the requirements of building specifications, avoids oblique penetration of walls, and greatly improves modeling efficiency.
Smart Images

Figure CN113256029B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of automatic path finding technology, and more specifically, to a path finding method, device, equipment and storage medium in a building. Background Art
[0002] With the continuous development of social science and technology, computer-aided modeling has become a mainstream trend, and path planning is the most difficult and most error-prone part of modeling.
[0003] Path planning in a building can provide a path basis for laying pipelines and cables. In the prior art, for a specified starting point and end point in a building, the line between the starting point and the end point is directly determined as the planned path. Figure 1 As shown, it illustrates a schematic diagram of path planning in a tower in the prior art. The tower includes end units, wing units and a core tube. If the starting point is a pipe point inside the core tube and the end point is an exit point at the edge of the end unit 2, according to the prior art, a line will be directly connected between the starting point and the end point, and the line is the planned path. Figure 1 It can be seen that the planned path will cross the wall diagonally, while the building code only allows vertical routing for non-shear walls, and does not allow the path to cross the wall diagonally. Therefore, the path planned according to the existing technology does not meet the requirements of the building code, and the modeler needs to make changes, which greatly reduces the modeling efficiency. Summary of the invention
[0004] In view of the above problems, this application is proposed to provide a method, device, equipment and storage medium for finding a path in a building to solve the problem that the path planned by the prior art will obliquely pass through the wall. The specific solution is as follows:
[0005] A method for finding a way in a building, comprising:
[0006] Determine the outline of the target building;
[0007] Based on the axial direction of the target building, the outline range is meshed to obtain mesh information corresponding to the target building;
[0008] Combined with the grid information corresponding to the target building, a path is planned between the starting point and the end point to obtain the shortest path between the starting point and the end point.
[0009] Preferably, before performing path planning between the starting point and the end point in combination with the grid information corresponding to the target building, the method further comprises:
[0010] Determine the routing status of each area within the outline based on the attributes of each object in the target building, wherein the routing status indicates the permission of the area for routing;
[0011] Based on the routing traffic status of each area within the contour range, the grid information corresponding to the target building is adjusted to obtain adjusted grid information;
[0012] The step of combining the grid information corresponding to the target building and planning a path between the starting point and the end point includes:
[0013] Combined with the adjusted grid information corresponding to the target building, a path is planned between the starting point and the end point.
[0014] Preferably, the step of determining the outline range of the target building includes:
[0015] Determine the contour range of each characteristic area constituting the target building, and determine the contour range of the target building based on the contour range of each characteristic area.
[0016] Preferably, the grid division of the contour range based on the axial direction of the target building to obtain grid information corresponding to the target building includes:
[0017] Determine the axes of the characteristic areas constituting the target building;
[0018] Based on the axial direction of each characteristic area, each characteristic area is grid-divided, and the grid information corresponding to the target building is composed of the grid-divided results of each characteristic area.
[0019] Preferably, the grid division is performed on each characteristic area based on the axial direction of each characteristic area, and the grid information corresponding to the target building is formed by the grid division results of each characteristic area, including:
[0020] For each feature region constituting the target building, the feature regions with consistent axes are merged, and the merged feature regions and the unmerged feature regions form a set of feature regions to be processed;
[0021] For each feature area in the set of feature areas to be processed, grid division is performed along its axial direction, and the grid information corresponding to the target building is composed of the grid division results of each feature area in the set of feature areas to be processed.
[0022] Preferably, determining the routing status of each area within the contour range based on the attributes of each object in the target building includes:
[0023] Obtaining the outline range of each room, the outline range of each structural column, and the outline range of each structural wall in the target building;
[0024] Based on the properties of each room, determine the target room that is not routable, and mark the routing status of the outline range of the target room as not routable;
[0025] Mark the routing status of the contour range of each structural column as non-routable;
[0026] Based on the properties of each structural wall, the routing status of the contour range of the structural wall of the "shear wall" type is marked as non-routable, and the routing status of the contour range of other types of structural walls other than the "shear wall" type is marked as vertical routing.
[0027] Preferably, it also includes:
[0028] The outline range of each room in the target building, the outline range of each structural column and the outline range of each structural wall are expanded.
[0029] Preferably, the adjusting the grid information corresponding to the target building based on the routing traffic status of each area within the contour range includes:
[0030] Traverse each grid coordinate in the grid information corresponding to the target building, and for the current grid coordinate traversed:
[0031] It is determined whether the current grid coordinates are in a region where the routing status is non-routable. If so, the current grid coordinates are marked as non-routable.
[0032] Preferably, the adjusting the grid information corresponding to the target building based on the routing traffic status of each area within the contour range further includes:
[0033] Determine the adjacent grid coordinates of the current grid coordinate in the axial direction and perpendicular to the axial direction;
[0034] Obtaining a first structural wall within the contour range, which is perpendicular to a vector formed by a current grid coordinate and an adjacent grid coordinate and whose routing status is marked as vertical routing;
[0035] In each of the first structural walls, a second structural wall whose contour range includes the current grid coordinates and the adjacent grid coordinates is selected;
[0036] It is determined whether the positioning line of the second structural wall is perpendicular to a vector formed by the current grid coordinate and the adjacent grid coordinate. If not, the edge between the current grid coordinate and the adjacent grid is marked as non-routable.
[0037] Preferably, it also includes:
[0038] Anti-aliasing is performed on each subpath contained in the shortest path between the start point and the end point.
[0039] Preferably, the anti-aliasing process is performed on each sub-path included in the shortest path between the starting point and the end point, including:
[0040] For the subpath set included in the shortest path between the starting point and the end point, starting from the second subpath, two consecutive subpaths are selected one by one to be added to the set to be judged, and the set to be judged initially includes the first subpath in the subpath set;
[0041] Loopingly judging whether each subpath in the set to be judged can be merged, until it is determined that each subpath in the current set to be judged cannot be merged, merging each subpath in the set to be judged at the previous moment of the current moment to obtain a merged subpath, and deleting each subpath in the set to be judged at the previous moment from the subpath set to obtain a new subpath set, and returning to execute the step of selecting two consecutive subpaths to add to the set to be judged starting from the second subpath for the new subpath set, until it is determined that there are less than three subpaths in the new subpath set;
[0042] The merged sub-paths obtained from each merge and the sub-paths in the new sub-path set obtained at the last merge are combined into the final result.
[0043] Preferably, the determining whether each sub-path in the set to be determined can be merged includes:
[0044] Take the end point of the last subpath in the set to be judged and project it to the first subpath in the set to be judged, take the projection point as the transfer point, the line segment from the starting point of the first subpath to the transfer point as the first line segment, and the line segment from the transfer point to the end point of the last subpath as the second line segment;
[0045] Determine whether the first line segment and the second line segment intersect with an area marked as non-routable in a routing status,
[0046] If not, determine whether each subpath in the set to be judged can be merged;
[0047] If so, determining whether the first line segment and the second line segment intersect with an area marked as vertical routing passing in routing passing state;
[0048] If not, determine whether each subpath in the set to be judged can be merged;
[0049] If so, determine whether the intersection state is a vertical intersection. If it is a vertical intersection, determine that the sub-paths in the set to be determined can be merged. If it is not a vertical intersection, determine that the sub-paths in the set to be determined cannot be merged.
[0050] Preferably, the target building is a tower.
[0051] A wayfinding device in a building, comprising:
[0052] A target building outline range determination unit, used to determine the outline range of the target building;
[0053] A grid division unit, used to perform grid division on the contour range based on the axial direction of the target building to obtain grid information corresponding to the target building;
[0054] The path planning unit is used to plan a path between the starting point and the end point in combination with the grid information corresponding to the target building to obtain the shortest path between the starting point and the end point.
[0055] A wayfinding device in a building, comprising: a memory and a processor;
[0056] The memory is used to store programs;
[0057] The processor is used to execute the program to implement the various steps of the in-building path-finding method as described above.
[0058] A storage medium stores a computer program, which, when executed by a processor, implements the various steps of the above-mentioned method for finding a way in a building.
[0059] With the help of the above technical scheme, the path-finding method in the building of the present application, after determining the outline range of the target building, divides the outline range into grids based on the axis of the target building. Since the grid division of the present application is divided according to the axis of the target building, the natural direction of the divided grid is correct. When the path is subsequently planned between the starting and ending points based on the grid information, the obtained path is consistent with the axis, which is reflected in the drawing as the path is parallel or perpendicular to the wall, and there is no situation of obliquely crossing the wall. This path meets the requirements of building specifications and does not require secondary correction by the modeler, which greatly improves the modeling efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0060] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present application. Also, the same reference symbols are used throughout the accompanying drawings to represent the same components. In the accompanying drawings:
[0061] Figure 1 A schematic diagram illustrating the prior art of path planning in a tower is provided;
[0062] Figure 2 A schematic diagram of a process flow of a method for path finding in a building provided in an embodiment of the present application;
[0063] Figure 3 An axial schematic diagram of each characteristic area of a tower is shown as an example;
[0064] Figure 4An example of a schematic diagram after meshing a feature area is shown;
[0065] Figure 5 Another schematic diagram of a flow chart of a method for finding a way in a building provided by an embodiment of the present application;
[0066] Figure 6 An example of a schematic diagram of the object contour range contained in each characteristic area in a tower is provided;
[0067] Figure 7 An example of a schematic diagram of an object contour after expansion;
[0068] Figure 8 A schematic diagram of determining adjacent grid coordinates of a current grid coordinate is illustrated;
[0069] Fig. 9 An example of a shortest path diagram is shown;
[0070] Fig.10 A schematic diagram illustrating anti-aliasing of the shortest path;
[0071] Fig.11 A schematic diagram of the structure of a pathfinding device in a building provided in an embodiment of the present application;
[0072] Fig.12 A schematic diagram of the structure of a path-finding device in a building provided in an embodiment of the present application. DETAILED DESCRIPTION
[0073] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0074] The present application provides a path-finding solution within a building, which can plan paths for the deployment of pipelines and lines within the building, and the planned paths are consistent with the axis of the building, and there will be no problems such as the path diagonally passing through the wall.
[0075] The present application solution can be implemented based on a terminal with data processing capabilities, which can be a mobile phone, computer, server, cloud, etc.
[0076] Next, combine Figure 2 The building path finding method of the present application may include the following steps:
[0077] Step S100: Determine the outline range of the target building.
[0078] Specifically, the outer contour of the target building can be obtained through the building information model, and then the contour range of the target building can be obtained.
[0079] Step S110: Based on the axial direction of the target building, the outline range is grid-divided to obtain grid information corresponding to the target building.
[0080] Specifically, in this step, when dividing the contour range into grids, the division is performed according to the axial direction of the target building, so that the direction between the divided grids is guaranteed to be consistent with the axial direction of the target building.
[0081] Step S120: combining the grid information corresponding to the target building, performing path planning between the starting point and the end point, and obtaining the shortest path between the starting point and the end point.
[0082] Specifically, an existing shortest path algorithm may be used in combination with the grid information of the target building to perform path planning between the starting point and the end point, such as using the Dijkstra algorithm.
[0083] The starting point and the end point can be specified by the user or set according to actual needs.
[0084] The in-building path-finding method of the present application, after determining the outline range of the target building, divides the outline range into grids based on the axis of the target building. Since the grid division of the present application is divided according to the axis of the target building, the natural direction of the divided grids is correct. When the path is subsequently planned between the starting and ending points based on the grid information, the obtained path is consistent with the axis, which is reflected in the drawing as the path is parallel or perpendicular to the wall, and there is no situation of obliquely crossing the wall. This path meets the requirements of building specifications and does not require secondary correction by modelers, which greatly improves the modeling efficiency.
[0085] In one embodiment of the present application, the above step S110 is introduced, which is an optional implementation method of gridding the contour range based on the axial direction of the target building to obtain grid information corresponding to the target building.
[0086] It is understandable that the target building contains several characteristic areas, and the axes of different characteristic areas may be the same or different. Taking the target building as a tower as an example, the characteristic areas of the tower may include end units, wing units, and core tubes. The axes of end units, wing units, and core tubes may be the same or different. Figure 3 , which illustrates an axial schematic diagram of the characteristic areas of a tower. Figure 3 In the tower building shown in the example, the axial directions of the end units, wing units and core tube are consistent. Figure 3 This is only an example of an optional tower structure. In towers of other structures, the axial directions of the end units, wing units and core tube may also be different.
[0087] Based on this, the process of meshing in step S110 may include:
[0088] First, the axes of the characteristic regions constituting the target building are determined.
[0089] Furthermore, each characteristic region is meshed based on the axial direction of each characteristic region, and the mesh information corresponding to the target building is composed of the meshed results of each characteristic region.
[0090] Specifically, the size of the grid after division and the origin coordinates of the grid division can be preset. Based on this, the number of grids n in the axial direction and the number of grids m in the direction perpendicular to the axial direction of the feature area can be calculated. Then, according to the origin coordinates, the axial direction and the vertical direction are offset respectively to obtain an n*m grid coordinate point array.
[0091] The results of grid division of each characteristic area are combined into the grid information corresponding to the target building.
[0092] See also Figure 4 , which illustrates a schematic diagram of a feature area after meshing.
[0093] Optionally, in order to further reduce the amount of calculation during meshing, an embodiment of the present application provides a solution. Specifically, the process of meshing each feature area based on the axial direction of each feature area may include:
[0094] 1) For each feature region constituting the target building, the feature regions with consistent axes are merged, and the merged feature regions and the unmerged feature regions form a set of feature regions to be processed.
[0095] Based on the above introduction, it can be known that the axes of the characteristic regions of the target building may be the same or different, so the characteristic regions with the same axes can be merged to obtain the merged characteristic regions. For the characteristic regions that have not been merged among the characteristic regions, the unmerged characteristic regions and the merged characteristic regions constitute the feature region set to be processed.
[0096] By merging feature regions in the same axis, the number of feature regions to be processed is reduced.
[0097] 2) For each feature area in the set of feature areas to be processed, grid division is performed along its axial direction, and the grid information corresponding to the target building is composed of the grid division results of each feature area in the set of feature areas to be processed.
[0098] By merging the feature regions on the same axis, the number of feature regions in the feature region set to be processed is reduced, thereby reducing the amount of calculation when performing grid division.
[0099] In another embodiment of the present application, another implementation method of the path finding method in a building is introduced, combining Figure 5 As shown, the path finding method in the building may include the following steps:
[0100] Step S200: Determine the outline range of the target building.
[0101] Step S210: Based on the axial direction of the target building, the outline range is grid-divided to obtain grid information corresponding to the target building.
[0102] Specifically, steps S200-S210 correspond to the aforementioned steps S100-S110 one by one, and please refer to the above description for details, which will not be repeated here.
[0103] Step S220: Determine the routing status of each area within the outline range based on the attributes of each object in the target building.
[0104] The route access status indicates whether the area allows the route access.
[0105] There are various objects in the target building, such as rooms, structural columns, and structural walls. Different objects have different settings for routing conditions in different areas. For example, for "exhaust fan room", structural columns, shear walls, etc., routing is not allowed, that is, the planned path cannot pass through the area where these objects are located. For structural walls other than shear walls, the building code stipulates that vertical routing is allowed, that is, the planned path is allowed to pass perpendicular to the wall.
[0106] Therefore, in this step, the routing status of each area within the outline of the target building can be determined based on the attributes of each object.
[0107] Step S230: Based on the routing traffic status of each area within the contour range, the grid information corresponding to the target building is adjusted to obtain adjusted grid information.
[0108] Specifically, as explained above, some objects are located in areas where routing is not allowed. Therefore, in this step, the grid information corresponding to the target building needs to be adjusted to mark the routing status of some grids in the grid information to obtain the adjusted grid information.
[0109] Step S240: combining the adjusted grid information corresponding to the target building, performing path planning between the starting point and the end point to obtain the shortest path between the starting point and the end point.
[0110] Compared to Figure 2The example of a path-finding method within a building, the method provided in this embodiment further adds a process of determining the routing status of each area within the contour range, and adjusting the grid information based on this. Path planning is performed based on the adjusted grid information, so that the planned path can avoid objects that are not routable in the target building, such as avoiding structural columns, and certain rooms that are set not to allow routing, such as the "exhaust fan room", etc., thereby making the shortest path between the starting point and the end point obtained in the end more accurate and practical.
[0111] Furthermore, the process of determining the routing status of each area within the contour range in the above step S220 based on the attributes of each object in the target building is introduced.
[0112] In this embodiment, the objects contained in the target building are rooms, structural columns and structural walls as an example for description.
[0113] First, the outline range of each room in the target building, the outline range of each structural column and the outline range of each structural wall are obtained.
[0114] Reference Figure 6 , which illustrates a schematic diagram of the object contour range contained in each characteristic area in a tower.
[0115] Furthermore, the routing status of the room, structural column, and structural wall is determined in the following manner:
[0116] For the room:
[0117] Based on the properties of each room, a non-routable target room is determined, and the routing status of the outline range of the target room is marked as non-routable.
[0118] Specifically, in the building code, certain types of rooms are set as non-routable, such as "exhaust machine room", "supply machine room", "pressurization machine room", etc. Therefore, based on the attribute information of each room, the target rooms that are not routable can be determined, and the routing status of the outline range of these target rooms can be marked as non-routable.
[0119] For other types of rooms, it allows routing.
[0120] For structural columns:
[0121] In building codes, structural columns are defined as non-routable areas, so the routing status of the outline range of each structural column can be marked as non-routable.
[0122] For structural walls:
[0123] In building codes, structural walls are divided into two types, namely "shear wall" type and other types. For "shear wall" type structural walls, it is defined as an area where no routing is allowed. For other types of structural walls, it is defined as an area where vertical routing is required.
[0124] Therefore, based on the properties of each structural wall, the routing status of the contour range of the "shear wall" type structural wall can be marked as non-routable, and the routing status of the contour range of other types of structural walls other than the "shear wall" type can be marked as vertical routing.
[0125] It can be understood that, after the above-mentioned marking of the routing status, all areas that are not marked as non-routable and vertical routing areas can be identified as areas that allow routing.
[0126] Further optionally, considering that the building code stipulates that the path-finding structure needs to have a certain avoidance distance from the structural wall, structural column, and room, the following processing steps can be further added in this embodiment:
[0127] The outline range of each room in the target building, the outline range of each structural column and the outline range of each structural wall are expanded.
[0128] The distance of contour expansion may be a specified avoidance distance.
[0129] Through contour expansion, a certain avoidance distance is ensured between the subsequently planned paths and structural walls, structural columns, and rooms.
[0130] Reference Figure 7 , which illustrates a schematic diagram of an object contour range expansion.
[0131] Furthermore, the process of adjusting the grid information corresponding to the target building based on the routing status of each area within the contour range in the above step S230 is introduced.
[0132] Specifically, the process of adjusting the grid information can be divided into two categories: one is marking the grid coordinates that are not routable, and the other is marking the edges between grid coordinates that are routable by different routes.
[0133] First, let’s introduce the first type of adjustment process:
[0134] Traverse each grid coordinate in the grid information corresponding to the target building, and for the current grid coordinate traversed:
[0135] It is determined whether the current grid coordinates are in a region where the routing status is non-routable. If so, the current grid coordinates are marked as non-routable.
[0136] Specifically, for grid coordinates in a non-routable area, they may be marked as non-routable.
[0137] Further, the second type of adjustment process is introduced:
[0138] Traverse each grid coordinate in the grid information corresponding to the target building, and for the current grid coordinate traversed:
[0139] 1) Determine the adjacent grid coordinates of the current grid coordinate in the axial direction and perpendicular to the axial direction.
[0140] Reference Figure 8 , which illustrates a schematic diagram of determining adjacent grid coordinates of a current grid coordinate.
[0141] Define the current grid coordinate as point, then the adjacent grid coordinate in the axial direction is hpoint, and the adjacent grid coordinate perpendicular to the axial direction is vpoint.
[0142] 2) Obtaining a first structural wall within the contour range, which is perpendicular to a vector formed by the current grid coordinates and the adjacent grid coordinates and whose routing status is marked as vertical routing.
[0143] 3) In each of the first structural walls, a second structural wall is selected whose contour range includes the current grid coordinates and the adjacent grid coordinates.
[0144] 4) Determine whether the positioning line of the second structural wall is perpendicular to the vector composed of the current grid coordinate and the adjacent grid coordinate. If not, mark the edge between the current grid coordinate and the adjacent grid as non-routable.
[0145] It can be understood that if verticality is determined, it can be determined that the edge between the current grid coordinate and the adjacent grid is allowed to be routed. The edges allowed to be routed do not need to be marked, and only the edges that are not allowed to be routed can be marked.
[0146] Next, the above step S120 is introduced, in which a path is planned between the starting point and the end point in combination with the grid information corresponding to the target building to obtain a realization process of the shortest path between the starting point and the end point.
[0147] Specifically, the Dijkstra algorithm or other shortest path calculation methods may be used in combination with the grid information to plan a path between the starting point and the end point.
[0148] In practical applications, the starting point and the end point can be any location in the building. For example, the user can specify the location of the starting point and the end point according to needs, and then directly perform path planning.
[0149] In another case, the starting point is a user-specified location, and the user's requirement is to plan a shortest path from the starting point to the edge of the target building, that is, the end point is not a specified fixed location. In this case, all the boundary points at the outermost edge of the target building can be obtained, and the top points in the axial direction and perpendicular to the axial direction of the target building can be selected as the outermost boundary points. All the obtained boundary points can form a candidate end point set.
[0150] Furthermore, for the candidate endpoint set, an optional processing method is:
[0151] Take each candidate endpoint as the endpoint and plan the shortest path from the starting point to the endpoint in combination with the grid information of the target building. If the shortest path can be planned, the shortest path corresponding to the candidate endpoint can be recorded.
[0152] Determine whether the shortest path corresponding to each candidate endpoint is compliant, and delete the non-compliant candidate endpoints and their corresponding shortest paths. Then, among the shortest paths corresponding to the retained candidate endpoints, select the shortest path corresponding to the candidate endpoint with the smallest shortest path length as the final result.
[0153] Considering that the above processing method requires calculating the shortest path for each candidate endpoint, resulting in a large amount of calculation, another optional processing method is provided as follows:
[0154] The straight-line distance from the starting point to each candidate end point can be calculated, and then the candidate end points can be sorted in order of the straight-line distance from small to large.
[0155] Select candidate endpoints in order of sorting, and take the selected candidate endpoints as the endpoints. Combined with the grid information of the target building, plan the shortest path from the start point to the end point. Determine whether the planned shortest path can be obtained. If not, select the next candidate endpoint and continue the above process. If the shortest path can be obtained, it can be further determined whether the obtained shortest path is compliant. If not, select the next candidate endpoint and continue the above process. If compliant, stop selecting candidate endpoints and use the obtained shortest path as the final result.
[0156] The process of determining whether the shortest path is compliant may include:
[0157] 1. Determine whether the shortest path complies with building regulations.
[0158] If it complies with the building regulations, it can be considered compliant, otherwise, it is considered non-compliant.
[0159] 2. Determine whether the starting point of the last subpath in the shortest path coincides with a point in the candidate endpoint set.
[0160] If they overlap, it means that a shortest path with the starting point as the end point is planned, which obviously does not meet the actual needs, so it can be considered non-compliant. If they do not overlap, it can be considered compliant.
[0161] It can be understood that the above two judgment logics 1 and 2 can be implemented separately as a means of judging whether the shortest path is compliant. In addition, the two judgment logics can also be implemented in combination.
[0162] In another embodiment of the present application, another implementation of a wayfinding method within a building is introduced.
[0163] On the basis of the above-mentioned embodiments, the present embodiment may further add an operation of performing anti-aliasing processing on the obtained shortest path, that is, performing anti-aliasing processing on each sub-path included in the shortest path between the starting point and the end point.
[0164] It is understandable that the shortest path obtained by the solution of the above embodiment may have obvious jagged edges, such as Fig. 9 shown.
[0165] Fig. 9 The shortest path in the example contains five sub-paths, namely line1-line5. Fig. 9 It can be seen that there are multiple aliasings in the shortest path. In architectural design, as few turns as possible are required, and each aliasing requires a turn. Therefore, the shortest path can be anti-aliased to minimize the number of turns.
[0166] This embodiment introduces an optional implementation method of performing anti-aliasing processing on the shortest path.
[0167] For the subpath set included in the shortest path between the starting point and the end point, starting from the second subpath, two consecutive subpaths are selected one by one to be added to the set to be judged, and the set to be judged initially includes the first subpath in the subpath set.
[0168] Loop through the steps of judging whether the subpaths in the set to be judged can be merged, until it is determined that the subpaths in the current set to be judged cannot be merged, merging the subpaths in the set to be judged at the previous moment before the current moment to obtain a merged subpath, and deleting the subpaths in the set to be judged at the previous moment from the subpath set to obtain a new subpath set, and returning to execute the step of selecting two consecutive subpaths to add to the set to be judged starting from the second subpath for the new subpath set, until it is determined that there are less than three subpaths in the new subpath set.
[0169] The merged sub-paths obtained from each merge and the sub-paths in the new sub-path set obtained at the last merge are combined into the final result.
[0170] Optionally, when combining the final results, a collinearity check can be performed, that is, to determine whether the merged sub-paths and the sub-paths in the new sub-path set obtained last time are collinear. If so, the collinear parts can be merged into one sub-path.
[0171] The process of determining whether each sub-path in the set to be determined can be merged may include:
[0172] Take the end point of the last subpath in the set to be judged and project it to the first subpath in the set to be judged. Take the projection point as the transit point, the line segment from the starting point of the first subpath to the transit point as the first line segment, and the line segment from the transit point to the end point of the last subpath as the second line segment.
[0173] Determining whether the first line segment and the second line segment intersect with an area marked as non-routable in a routing status;
[0174] If not, determine whether each subpath in the set to be judged can be merged;
[0175] If so, determining whether the first line segment and the second line segment intersect with an area marked as vertical routing passing in routing passing state;
[0176] If not, determine whether each subpath in the set to be judged can be merged;
[0177] If so, determine whether the intersection state is a vertical intersection. If it is a vertical intersection, determine that the sub-paths in the set to be determined can be merged. If it is not a vertical intersection, determine that the sub-paths in the set to be determined cannot be merged.
[0178] When it is determined that the sub-paths in the set to be determined can be merged, the first line segment and the second line segment can be used as the result of merging the sub-paths in the set to be determined.
[0179] Take the case where the set to be judged contains three sub-paths as an example:
[0180] Define the three sub-paths in the set to be judged as: line1, line2, and line3.
[0181] Combination Fig.10 As shown:
[0182] Project the end point of line3 onto line1, and use the projection point as the transfer point. The line segment from the start point of line1 to the transfer point is the first line segment lineA, and the line segment from the transfer point to the end point of line3 is the second line segment lineB.
[0183] Determine whether the first line segment lineA and the second line segment lineB intersect with an area marked as non-routable in routing status;
[0184] If not, determine that the three subpaths can be merged;
[0185] If yes, determine whether the first line segment lineA and the second line segment lineB intersect with the area marked as vertical routing passing in the routing passing state;
[0186] If not, determine that the three subpaths can be merged;
[0187] If so, determine whether the intersection state is a vertical intersection. If it is a vertical intersection, determine that the three sub-paths can be merged. If not, determine that they cannot be merged.
[0188] When it is determined that the three sub-paths line1, line2, and line3 can be merged, the first line segment lineA and the second line segment lineB are used as the merged sub-path.
[0189] Through the above anti-aliasing processing, the number of aliasing in the shortest path can be reduced, that is, the number of turns in the shortest path can be reduced.
[0190] The following is a description of a path-finding device in a building provided in an embodiment of the present application. The path-finding device in a building described below and the path-finding method in a building described above can be referenced to each other.
[0191] See also Fig.11 , Fig.11 This is a schematic diagram of the structure of a path-finding device in a building disclosed in an embodiment of the present application.
[0192] like Fig.11 As shown, the device may include:
[0193] A target building outline range determining unit 11 is used to determine the outline range of the target building;
[0194] A grid division unit 12 is used to perform grid division on the contour range based on the axial direction of the target building to obtain grid information corresponding to the target building;
[0195] The path planning unit 13 is used to plan a path between the starting point and the end point in combination with the grid information corresponding to the target building to obtain the shortest path between the starting point and the end point.
[0196] The in-building path-finding device of the present application, after determining the outline range of the target building, grids the outline range based on the axis of the target building. Since the grid division of the present application is performed according to the axis of the target building, the natural direction of the divided grids is correct. When the path is subsequently planned between the starting and ending points based on the grid information, the obtained path is consistent with the axis, which is reflected in the drawing as the path is parallel or perpendicular to the wall, and there is no situation of obliquely crossing the wall. This path meets the requirements of building specifications and does not require secondary correction by the modeler, which greatly improves the modeling efficiency.
[0197] Optionally, the device of the present application may further include:
[0198] A route access status determination unit, configured to determine the route access status of each area within the outline range based on the attributes of each object in the target building, wherein the route access status indicates the permission of the area for route access;
[0199] A grid information adjustment unit, configured to adjust the grid information corresponding to the target building based on the routing traffic status of each area within the contour range to obtain adjusted grid information;
[0200] The above-mentioned path planning unit is specifically used to: plan a path between the starting point and the end point in combination with the adjusted grid information corresponding to the target building.
[0201] Optionally, the process of the target building outline range determining unit determining the outline range of the target building may specifically include:
[0202] Determine the contour range of each characteristic area constituting the target building, and determine the contour range of the target building based on the contour range of each characteristic area.
[0203] Optionally, the process in which the mesh division unit performs mesh division on the contour range based on the axial direction of the target building to obtain mesh information corresponding to the target building may specifically include:
[0204] Determine the axes of the characteristic areas constituting the target building;
[0205] Based on the axial direction of each characteristic area, each characteristic area is grid-divided, and the grid information corresponding to the target building is composed of the grid-divided results of each characteristic area.
[0206] Optionally, the mesh division unit meshes each characteristic area based on the axial direction of each characteristic area, and the process of forming the mesh information corresponding to the target building from the mesh division results of each characteristic area may specifically include:
[0207] For each feature region constituting the target building, the feature regions with consistent axes are merged, and the merged feature regions and the unmerged feature regions form a set of feature regions to be processed;
[0208] For each feature area in the set of feature areas to be processed, grid division is performed along its axial direction, and the grid information corresponding to the target building is composed of the grid division results of each feature area in the set of feature areas to be processed.
[0209] Optionally, the process in which the route traffic status determining unit determines the route traffic status of each area within the contour range based on the attributes of each object in the target building may specifically include:
[0210] Obtaining the outline range of each room, the outline range of each structural column, and the outline range of each structural wall in the target building;
[0211] Based on the properties of each room, determine the target room that is not routable, and mark the routing status of the outline range of the target room as not routable;
[0212] Mark the routing status of the contour range of each structural column as non-routable;
[0213] Based on the properties of each structural wall, the routing status of the contour range of the structural wall of the "shear wall" type is marked as non-routable, and the routing status of the contour range of other types of structural walls other than the "shear wall" type is marked as vertical routing.
[0214] Optionally, the process of determining the routing status of each area within the contour range based on the attributes of each object in the target building may further include:
[0215] The outline range of each room in the target building, the outline range of each structural column and the outline range of each structural wall are expanded.
[0216] Optionally, the process in which the grid information adjustment unit adjusts the grid information corresponding to the target building based on the routing traffic status of each area within the contour range may specifically include:
[0217] Traverse each grid coordinate in the grid information corresponding to the target building, and for the current grid coordinate traversed:
[0218] It is determined whether the current grid coordinates are in a region where the routing status is non-routable. If so, the current grid coordinates are marked as non-routable.
[0219] Optionally, the process in which the grid information adjustment unit adjusts the grid information corresponding to the target building based on the routing traffic status of each area within the contour range may further include:
[0220] Determine the adjacent grid coordinates of the current grid coordinate in the axial direction and perpendicular to the axial direction;
[0221] Obtaining a first structural wall within the contour range, which is perpendicular to a vector formed by a current grid coordinate and an adjacent grid coordinate and whose routing status is marked as vertical routing;
[0222] In each of the first structural walls, a second structural wall whose contour range includes the current grid coordinates and the adjacent grid coordinates is selected;
[0223] It is determined whether the positioning line of the second structural wall is perpendicular to a vector formed by the current grid coordinate and the adjacent grid coordinate. If not, the edge between the current grid coordinate and the adjacent grid is marked as non-routable.
[0224] Optionally, the device of the present application may further include:
[0225] The anti-aliasing processing unit is used to perform anti-aliasing processing on each sub-path included in the shortest path between the starting point and the end point.
[0226] Optionally, the process of the anti-aliasing processing unit performing anti-aliasing processing on each sub-path included in the shortest path between the starting point and the end point may specifically include:
[0227] For the subpath set included in the shortest path between the starting point and the end point, starting from the second subpath, two consecutive subpaths are selected one by one to be added to the set to be judged, and the set to be judged initially includes the first subpath in the subpath set;
[0228] Loopingly judging whether each subpath in the set to be judged can be merged, until it is determined that each subpath in the current set to be judged cannot be merged, merging each subpath in the set to be judged at the previous moment of the current moment to obtain a merged subpath, and deleting each subpath in the set to be judged at the previous moment from the subpath set to obtain a new subpath set, and returning to execute the step of selecting two consecutive subpaths to add to the set to be judged starting from the second subpath for the new subpath set, until it is determined that there are less than three subpaths in the new subpath set;
[0229] The merged sub-paths obtained from each merge and the sub-paths in the new sub-path set obtained at the last merge are combined into the final result.
[0230] Optionally, the process of determining whether each sub-path in the set to be determined can be merged may include:
[0231] Take the end point of the last subpath in the set to be judged and project it to the first subpath in the set to be judged, take the projection point as the transfer point, the line segment from the starting point of the first subpath to the transfer point as the first line segment, and the line segment from the transfer point to the end point of the last subpath as the second line segment;
[0232] Determine whether the first line segment and the second line segment intersect with an area marked as non-routable in a routing status,
[0233] If not, determine whether each subpath in the set to be judged can be merged;
[0234] If so, determining whether the first line segment and the second line segment intersect with an area marked as vertical routing passing in routing passing state;
[0235] If not, determine whether each subpath in the set to be judged can be merged;
[0236] If so, determine whether the intersection state is a vertical intersection. If it is a vertical intersection, determine that the sub-paths in the set to be determined can be merged. If it is not a vertical intersection, determine that the sub-paths in the set to be determined cannot be merged.
[0237] The building pathfinding device provided in the embodiment of the present application can be applied to building pathfinding devices, such as mobile phones, computers, servers, and cloud computing. Fig.12 The hardware structure diagram of the wayfinding equipment in the building is shown. Fig.12 ,The hardware structure of the in-building wayfinding device may include: at least one processor 1, at least one communication interface 2, at least one memory 3 and at least one communication bus 4;
[0238] In the embodiment of the present application, the number of the processor 1, the communication interface 2, the memory 3, and the communication bus 4 is at least one, and the processor 1, the communication interface 2, and the memory 3 communicate with each other through the communication bus 4;
[0239] The processor 1 may be a central processing unit CPU, or an application-specific integrated circuit ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of the present invention, etc.;
[0240] The memory 3 may include a high-speed RAM memory, and may also include a non-volatile memory, such as at least one disk memory;
[0241] The memory stores a program, and the processor can call the program stored in the memory, wherein the program is used to:
[0242] Determine the outline of the target building;
[0243] Based on the axial direction of the target building, the outline range is meshed to obtain mesh information corresponding to the target building;
[0244] Combined with the grid information corresponding to the target building, a path is planned between the starting point and the end point to obtain the shortest path between the starting point and the end point.
[0245] Optionally, the detailed functions and extended functions of the program may refer to the above description.
[0246] The embodiment of the present application further provides a storage medium, which may store a program suitable for execution by a processor, wherein the program is used to:
[0247] Determine the outline of the target building;
[0248] Based on the axial direction of the target building, the outline range is meshed to obtain mesh information corresponding to the target building;
[0249] Combined with the grid information corresponding to the target building, a path is planned between the starting point and the end point to obtain the shortest path between the starting point and the end point.
[0250] Optionally, the detailed functions and extended functions of the program may refer to the above description.
[0251] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.
[0252] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The various embodiments can be combined as needed, and the same or similar parts can refer to each other.
[0253] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for finding a way in a building, characterized in that: include: Determine the outline of the target building; The target building is a tower; Based on the axial direction of the target building, the outline range is meshed to obtain mesh information corresponding to the target building; Combined with the grid information corresponding to the target building, a path is planned between the starting point and the end point to obtain the shortest path between the starting point and the end point.
2. The method according to claim 1, characterized in that Before performing path planning between a starting point and an end point in combination with the grid information corresponding to the target building, the method further includes: Determine the routing status of each area within the outline based on the attributes of each object in the target building, wherein the routing status indicates the permission of the area for routing; Based on the routing traffic status of each area within the contour range, the grid information corresponding to the target building is adjusted to obtain adjusted grid information; The step of combining the grid information corresponding to the target building and planning a path between the starting point and the end point includes: Combined with the adjusted grid information corresponding to the target building, a path is planned between the starting point and the end point.
3. The method according to claim 1, characterized in that Determining the outline range of the target building includes: Determine the contour range of each characteristic area constituting the target building, and determine the contour range of the target building based on the contour range of each characteristic area.
4. The method according to claim 1, characterized in that: The grid division of the contour range based on the axial direction of the target building to obtain grid information corresponding to the target building includes: Determine the axes of the characteristic areas constituting the target building; Based on the axial direction of each characteristic area, each characteristic area is grid-divided, and the grid information corresponding to the target building is composed of the grid-divided results of each characteristic area.
5. The method according to claim 4, characterized in that The grid division is performed on each characteristic area based on the axial direction of each characteristic area, and the grid information corresponding to the target building is formed by the grid division results of each characteristic area, including: For each feature region constituting the target building, the feature regions with consistent axes are merged, and the merged feature regions and the unmerged feature regions form a set of feature regions to be processed; For each feature area in the set of feature areas to be processed, grid division is performed along its axial direction, and grid information corresponding to the target building is formed by the results of the grid division of each feature area in the set of feature areas to be processed.
6. The method according to claim 2, characterized in that Determining the routing status of each area within the contour range based on the attributes of each object in the target building includes: Obtaining the outline range of each room, the outline range of each structural column, and the outline range of each structural wall in the target building; Based on the properties of each room, determine the target room that is not routable, and mark the routing status of the outline range of the target room as not routable; Mark the routing status of the contour range of each structural column as non-routable; Based on the properties of each structural wall, the routing status of the contour range of the structural wall of the "shear wall" type is marked as non-routable, and the routing status of the contour range of other types of structural walls other than the "shear wall" type is marked as vertical routing.
7. The method according to claim 6, characterized in that Also includes: The outline range of each room in the target building, the outline range of each structural column and the outline range of each structural wall are expanded.
8. The method according to claim 2, characterized in that: The adjusting the grid information corresponding to the target building based on the routing traffic status of each area within the contour range includes: Traverse each grid coordinate in the grid information corresponding to the target building, and for the current grid coordinate traversed: It is determined whether the current grid coordinates are in a region where the routing status is non-routable. If so, the current grid coordinates are marked as non-routable.
9. The method according to claim 8, characterized in that The adjusting the grid information corresponding to the target building based on the routing traffic status of each area within the contour range also includes: Determine the adjacent grid coordinates of the current grid coordinate in the axial direction and perpendicular to the axial direction; Obtaining a first structural wall within the contour range, which is perpendicular to a vector formed by a current grid coordinate and an adjacent grid coordinate and whose routing status is marked as vertical routing; In each of the first structural walls, a second structural wall whose contour range includes the current grid coordinates and the adjacent grid coordinates is selected; It is determined whether the positioning line of the second structural wall is perpendicular to a vector formed by the current grid coordinate and the adjacent grid coordinate. If not, the edge between the current grid coordinate and the adjacent grid is marked as non-routable.
10. The method according to claim 2, characterized in that Also includes: Anti-aliasing is performed on each subpath contained in the shortest path between the start point and the end point.
11. The method according to claim 10, characterized in that The anti-aliasing process is performed on each sub-path included in the shortest path between the starting point and the end point, including: For the subpath set included in the shortest path between the starting point and the end point, starting from the second subpath, two consecutive subpaths are selected one by one to be added to the set to be judged, and the set to be judged initially includes the first subpath in the subpath set; Loopingly judging whether each subpath in the set to be judged can be merged, until it is determined that each subpath in the current set to be judged cannot be merged, merging each subpath in the set to be judged at the previous moment of the current moment to obtain a merged subpath, and deleting each subpath in the set to be judged at the previous moment from the subpath set to obtain a new subpath set, and returning to execute the step of selecting two consecutive subpaths to add to the set to be judged starting from the second subpath for the new subpath set, until it is determined that there are less than three subpaths in the new subpath set; The merged sub-paths obtained from each merge and the sub-paths in the new sub-path set obtained at the last merge are combined into the final result.
12. The method according to claim 11, characterized in that The determining whether each sub-path in the set to be determined can be merged includes: Take the end point of the last subpath in the set to be judged and project it to the first subpath in the set to be judged, take the projection point as the transfer point, the line segment from the starting point of the first subpath to the transfer point as the first line segment, and the line segment from the transfer point to the end point of the last subpath as the second line segment; Determine whether the first line segment and the second line segment intersect with an area marked as non-routable in a routing status, If not, determine whether each subpath in the set to be judged can be merged; If so, determining whether the first line segment and the second line segment intersect with an area marked as vertical routing passing in routing passing state; If not, determine whether each subpath in the set to be judged can be merged; If so, determine whether the intersection state is a vertical intersection. If it is a vertical intersection, determine that the sub-paths in the set to be determined can be merged. If it is not a vertical intersection, determine that the sub-paths in the set to be determined cannot be merged.
13. A path-finding device in a building, characterized in that: include: A target building outline range determination unit, used to determine the outline range of the target building; The target building is a tower; A grid division unit, used to perform grid division on the contour range based on the axial direction of the target building to obtain grid information corresponding to the target building; The path planning unit is used to plan a path between the starting point and the end point in combination with the grid information corresponding to the target building to obtain the shortest path between the starting point and the end point.
14. A wayfinding device in a building, characterized in that: include: Memory and processor; The memory is used to store programs; The processor is used to execute the program to implement each step of the method for path finding in a building as described in any one of claims 1 to 12.
15. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, each step of the method for path finding in a building as claimed in any one of claims 1 to 12 is implemented.
Citation Information
Patent Citations
Path finding method, device and equipment and storage medium
CN111737810A
Grid path planning method based on building 3D model
CN112815951A