CN114003987A - Object positioning method and device, electronic equipment and storage medium - Google Patents

Object positioning method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN114003987A
CN114003987A CN202111178956.7A CN202111178956A CN114003987A CN 114003987 A CN114003987 A CN 114003987A CN 202111178956 A CN202111178956 A CN 202111178956A CN 114003987 A CN114003987 A CN 114003987A
Authority
CN
China
Prior art keywords
target
space
sub
empty space
dividing
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.)
Pending
Application number
CN202111178956.7A
Other languages
Chinese (zh)
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.)
Guangdong 3vjia Information Technology Co Ltd
Original Assignee
Guangdong 3vjia Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong 3vjia Information Technology Co Ltd filed Critical Guangdong 3vjia Information Technology Co Ltd
Priority to CN202111178956.7A priority Critical patent/CN114003987A/en
Publication of CN114003987A publication Critical patent/CN114003987A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Civil Engineering (AREA)
  • Structural Engineering (AREA)
  • Computational Mathematics (AREA)
  • Architecture (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The embodiment of the invention relates to an object positioning method, an object positioning device, electronic equipment and a storage medium, wherein the object positioning method comprises the following steps: acquiring target parameter data of a target vacant space, wherein the target vacant space is used for placing the object, and if the size information is changed, the target vacant space is divided based on the target parameter data including the changed size information to obtain a sub vacant space for placing the object in the target vacant space; and determining the position of the sub vacant space as the placement position of the object. The method and the device can divide the target vacant space to obtain the sub vacant space, determine the position of the sub vacant space as the placement position of the object, realize the positioning of the object, and directly place the object through space division, so that the object positioning efficiency can be improved, and the time consumption is saved.

Description

Object positioning method and device, electronic equipment and storage medium
Technical Field
Embodiments of the present invention relate to the field of positioning, and in particular, to an object positioning method and apparatus, an electronic device, and a storage medium.
Background
In the prior art, positioning technology is widely applied in various industries (such as whole house customization). In practice, some software also supports spatial orientation, but most of them are oriented to specific personnel (such as an auditor), which causes the problem that other personnel have difficulty and time consuming readjustment when using the software.
For example, the conventional spatial localization technology is to build objects (such as cabinets, plates, etc.) quickly through software, but most of the objects want to be built again, and the work difficulty is increased and the time is long because of few software supporting the re-building.
In view of the above technical problems, no effective solution has been proposed at present.
Disclosure of Invention
In view of this, embodiments of the present invention provide an object positioning method, an object positioning apparatus, an electronic device, and a storage medium, so as to implement a requirement that can be rebuilt when the object positioning method is oriented to different users.
In a first aspect, an embodiment of the present invention provides an object positioning method, where the method includes:
acquiring target parameter data of a target vacant space, wherein the target vacant space is used for placing the object, and the target parameter data comprises storage information of the target vacant space;
if the size information is changed, dividing the target vacant space based on target parameter data including the changed size information to obtain a sub vacant space for placing the object in the target vacant space;
and determining the position of the sub vacant space as the placement position of the object.
Optionally, in a method according to any embodiment of the present disclosure, the dividing the target empty space based on target parameter data including changed size information includes;
determining a length of the target empty space in a selected direction from target parameter data including the changed size information;
and dividing the target vacant space based on a set proportion and the length in the selected direction.
Optionally, in a method according to any embodiment of the present disclosure, the dividing the target empty space based on a set proportion and a length in the selected direction includes;
according to a set proportion, determining division points on line segments corresponding to the lengths in the selected direction; dividing the target empty space at the division point along a plane perpendicular to the selected direction;
and/or the presence of a gas in the gas,
determining a target sub empty space with a set length in the target empty space, wherein the direction indicated by the length of the target sub empty space is parallel to the selected direction; and dividing the vacant spaces except the target sub vacant spaces in the target vacant space along a plane perpendicular to the selected direction according to a set proportion.
Optionally, in the method of any embodiment of the present disclosure, the target empty space is a rectangular parallelepiped; and
the step of dividing the target empty space entry based on the target parameter data including the changed size information includes;
determining a plane which is parallel to the selected side face of the cuboid and has a distance with the selected side face as a target distance as a dividing plane;
and dividing the target vacant space along the dividing plane.
Optionally, in the method of any embodiment of the present disclosure, the target distance is a sum of a length of the object in a direction perpendicular to the selected side and a set distance.
Optionally, in the method of any embodiment of the present disclosure, the image of the sub empty space is presented;
and if the pose change operation aiming at the sub vacant space is detected, adjusting the bits of the sub vacant space according to the indication of the pose change operation, and presenting the image of the pose-adjusted sub vacant space.
Optionally, in the method according to any embodiment of the present disclosure, shape information of the object is stored in advance, and a size of the object may be set; the sub empty space is obtained based on the size division set for the object; the object and the target key have a one-to-one correspondence.
Optionally, in a method according to any embodiment of the present disclosure, the dividing the target empty space based on target parameter data including changed size information includes:
determining a spatial volume or a spatial volume of the target empty space based on target parameter data including the changed size information;
and dividing the space volume or the space volume according to a set proportion so as to divide the target vacant space.
In a second aspect, the present disclosure provides an object positioning apparatus, including:
an acquisition unit configured to acquire target parameter data of a target empty space for placing the object, the target parameter data including size information of the target empty space;
a dividing unit configured to divide the target empty space based on target parameter data including changed size information if the size information is changed, to obtain a sub empty space for placing the object in the target empty space;
and the determining unit is configured to determine the position of the sub empty space as the placement position of the object.
Optionally, in the apparatus according to any embodiment of the present disclosure, the dividing unit is further configured to:
determining a length of the target empty space in a selected direction from target parameter data including the changed size information;
and dividing the target vacant space based on a set proportion and the length in the selected direction.
Optionally, in the apparatus according to any embodiment of the present disclosure, the dividing unit is further configured to:
according to a set proportion, determining division points on line segments corresponding to the lengths in the selected direction; dividing the target empty space at the division point along a plane perpendicular to the selected direction;
and/or the presence of a gas in the gas,
determining a target sub empty space with a set length in the target empty space, wherein the direction indicated by the length of the target sub empty space is parallel to the selected direction; and dividing the vacant spaces except the target sub vacant spaces in the target vacant space along a plane perpendicular to the selected direction according to a set proportion.
Optionally, in the apparatus according to any embodiment of the present disclosure, the dividing unit is further configured to:
the target vacant space is in a cuboid shape; and
the step of dividing the target empty space entry based on the target parameter data including the changed size information includes;
determining a length of the rectangular parallelepiped in a direction perpendicular to a selected side surface of the rectangular parallelepiped from target parameter data including the changed size information;
determining a plane which is parallel to the selected side face and has a distance with the selected plane as a target distance as a dividing plane;
and dividing the target space along the dividing plane.
Optionally, in the apparatus according to any embodiment of the present disclosure, the target distance is a sum of the length and a set distance.
Optionally, in the apparatus of any embodiment of the present disclosure, the apparatus further includes:
a presentation unit configured to present an image of the sub empty space;
an adjusting unit configured to, if a pose change operation for the sub empty space is detected, adjust the pose of the sub empty space in accordance with an instruction of the pose change operation, and present an image of the pose-adjusted sub empty space.
Optionally, in the apparatus according to any embodiment of the present disclosure, shape information of the object is stored in advance, and a size of the object may be set; the sub empty space is obtained based on the size division set for the object; the object and the target key have a one-to-one correspondence.
In a third aspect, an embodiment of the present disclosure provides an electronic device, including:
a memory for storing a computer program;
a processor for executing the computer program stored in the memory, and when the computer program is executed, the method of any embodiment of the object positioning method of the first aspect of the present disclosure is implemented.
In a fourth aspect, the embodiments of the present disclosure provide a computer-readable medium, where the computer program, when executed by a processor, implements the method of any of the embodiments of the object positioning method according to the first aspect.
In a fifth aspect, the embodiments of the present disclosure provide a computer program, which includes computer readable code, when the computer readable code is run on a device, causes a processor in the device to execute instructions for implementing the steps in the method according to any one of the embodiments of the object localization method of the first aspect.
According to the technical scheme provided by the embodiment of the invention, the target parameter data of the target vacant space is obtained, the target vacant space is divided based on the target parameter data comprising the changed size information, the sub vacant space for placing the object in the target vacant space is obtained, then the position of the sub vacant space is determined as the placing position of the object, the object is positioned, and the object is placed directly by dividing the space, so that the object positioning efficiency can be improved, and the time consumption is saved.
Drawings
Fig. 1 is a diagram illustrating an exemplary system architecture of a subject positioning method or a subject positioning apparatus according to an embodiment of the present invention;
fig. 2 is a flowchart of an embodiment of an object positioning method according to an embodiment of the present invention;
fig. 3 is a flowchart of another object positioning method according to an embodiment of the present invention;
FIG. 4 is a flowchart illustrating an embodiment of an object positioning apparatus according to the present invention;
fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that: the relative arrangement of parts and steps, numerical expressions, and values set forth in these embodiments do not limit the scope of the present disclosure unless specifically stated otherwise.
It will be understood by those within the art that the terms "first," "second," and the like in the embodiments of the present disclosure are used merely to distinguish one object, step, device, or module from another object, and do not denote any particular technical meaning or logical order therebetween.
It is also understood that in embodiments of the present disclosure, "a plurality" may refer to two or more and "at least one" may refer to one, two or more.
It is also to be understood that any reference to any component, data, or structure in the embodiments of the disclosure, may be generally understood as one or more, unless explicitly defined otherwise or stated otherwise.
In addition, the term "and/or" in the present disclosure is only one kind of association relationship describing an associated object, and means that three kinds of relationships may exist, for example, a and/or B may mean: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" in the present disclosure generally indicates that the former and latter associated objects are in an "or" relationship.
It should also be understood that the description of the various embodiments of the present disclosure emphasizes the differences between the various embodiments, and the same or similar parts may be referred to each other, so that the descriptions thereof are omitted for brevity.
The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses.
Techniques, methods, and apparatus known to those of ordinary skill in the relevant art may not be discussed in detail, but are intended to be part of the specification where appropriate.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, further discussion thereof is not required in subsequent figures.
It should be noted that, in the present disclosure, the embodiments and features of the embodiments may be combined with each other without conflict. The present disclosure will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
Fig. 1 is an exemplary system architecture 100 of an object positioning method or an object positioning apparatus provided in an embodiment of the present disclosure.
As shown in fig. 1, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 serves as a medium for providing communication links between the terminal devices 101, 102, 103 and the server 105. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The user may use the terminal devices 101, 102, 103 to interact with the server 105 via the network 104 to receive or transmit data (e.g. target parameter data) or the like. The terminal devices 101, 102, 103 may have various client applications installed thereon, such as CAD software and the like.
The terminal apparatuses 101, 102, and 103 may be hardware or software. When the terminal devices 101, 102, 103 are hardware, they may be various electronic devices with display screens, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like. When the terminal apparatuses 101, 102, 103 are software, they can be installed in the electronic apparatuses listed above. It may be implemented as multiple pieces of software or software modules (e.g., software or software modules used to provide distributed services) or as a single piece of software or software module. And is not particularly limited herein.
The server 105 may be a server that provides various services, such as a background server that stores data transmitted by the terminal devices 101, 102, 103. As an example, the server 105 may be a cloud server.
The server may be hardware or software. When the server is hardware, it may be implemented as a distributed server cluster formed by multiple servers, or may be implemented as a single server. When the server is software, it may be implemented as multiple pieces of software or software modules (e.g., software or software modules used to provide distributed services), or as a single piece of software or software module. And is not particularly limited herein.
It should be further noted that the object positioning method provided by the embodiments of the present disclosure may be executed by a server, may also be executed by a terminal device, and may also be executed by the server and the terminal device in cooperation with each other. Accordingly, each part (for example, each unit, sub-unit, module, sub-module) included in the object positioning apparatus may be entirely disposed in the server, may be entirely disposed in the terminal device, and may be disposed in the server and the terminal device, respectively.
It should be understood that the number of terminal devices, networks, and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation. When the electronic device on which the object localization method operates does not need to perform data transmission with other electronic devices, the system architecture may include only the electronic device (e.g., server or terminal device) on which the object localization method operates.
With continued reference to FIG. 2, a flow 200 of one embodiment of an object location method in accordance with the present disclosure is shown. The object positioning method comprises the following steps:
step 201, acquiring target parameter data of a target vacant space.
In this embodiment, an execution subject of the object location method (for example, a terminal device or a server shown in fig. 1) may obtain the target parameter data of the target empty space from other electronic devices or locally through a wired connection manner or a wireless connection manner.
The target empty space is used for placing the object, and the target parameter data includes size information of the target empty space.
The target empty space, which is an unoccupied and usable space, may be a whole house or a space between a bed and a cabinet.
Target parameter data is a set of data used to identify empty space, including but not limited to: size, pose, and selected direction.
Step 202, if the size information is changed, dividing the target empty space based on target parameter data including the changed size information to obtain a sub empty space for placing the object in the target empty space.
In this embodiment, if the size information is changed, the target empty space is divided based on target parameter data including the changed size information, and a sub empty space for placing the object in the target empty space is obtained.
In some optional implementations of this embodiment, the executing main body may execute the step 202 by using the following steps:
first, the length of the target empty space in a selected direction is determined from target parameter data including changed size information.
The selected direction is a direction, and the target vacant space can be divided according to the selected direction, and the selected direction can be upward or forward.
As an example, the target empty space may be a whole house. The length of the target empty space in the selected direction may be a height of the house if the selected direction is upward, and the length of the target empty space in the selected direction may be a width of the house if the selected direction is forward. Ultraviolet rays may be inputted to the execution body as the height or width of the target empty space in a selected direction.
Then, the target empty space is divided based on a set ratio and the length in the selected direction.
In some application scenarios of the above alternative implementation, the executing entity may divide the target empty space based on a set proportion and a length in the selected direction, in the following manner:
according to a set proportion, determining division points on line segments corresponding to the lengths in the selected direction; the target empty space is divided at the division point along a plane perpendicular to the selected direction.
When the division is performed, the division may be performed in a predetermined division manner based on the above ratio. Here, the set ratio may be divided for a part or the whole of the target empty space. For example, the set ratio may indicate that the entire target empty space is divided at a ratio of 1:1:1, or may indicate that a part of the target empty space is divided at a ratio of 1:1: 1.
As an example, the set ratio may be 1:1, and the target empty space may be a room having an area of 400 square meters. If the selected direction is forward, the room is divided into two parts, i.e., front and back (where the front and back of the room can be determined according to actual needs). The room is divided into two rooms each having an area of 200 square meters, as dividing points at a distance of 10 meters from the wall surface in the left-right direction (here, the left-right direction can be determined according to actual needs) according to the length of the room. The target empty space can also be a gap between a bed and a cabinet, the distance between the roof and the ground is 6 meters, the selected direction can be upward, the set ratio can be 1:2, a horizontal line with the height of 2 meters is measured, and the gap is divided into two parts of more than 2 meters and less than 2 meters.
In some application scenarios of the above-mentioned alternative implementation, the execution body may also divide the target empty space based on a set proportion and a length in the selected direction, in the following manner:
and determining a target sub empty space with a set length in the target empty space. Wherein the direction indicated by the length of the target vacant subspace is parallel to the selected direction; and dividing the vacant spaces except the target sub vacant spaces in the target vacant space along a plane perpendicular to the selected direction according to a set proportion.
As an example, a set ratio may indicate that the fixed middle section is 20 meters in length, with the other sections divided by a ratio of 1: 1. The target empty space may be a room with a wall 30 meters long and an area 90 meters square. The selected direction may be forward. The position 5 meters away from the wall surfaces at the two ends of the room is used as a dividing point to divide the room into two rooms with the area of 15 square meters, and the middle part of the room is a fixed room with the area of 60 square meters.
In some optional implementations of this embodiment, the target empty space is a rectangular parallelepiped. In addition, the executing main body may execute the step 202 by adopting the following steps:
first, a plane parallel to a selected side surface of the rectangular parallelepiped and having a distance from the selected side surface as a target distance is determined as a division plane.
And then, dividing the target vacant space along the dividing plane.
As an example, the target empty space may be a room in which furniture is already placed, and when dividing, the space including the furniture may be divided at a distance of 20 meters to the left (here, the left and right may be defined according to actual needs, and not limited here), and then the space with the length of 20 meters may be added as the space obtained after the division.
In some optional implementation manners of this embodiment, a position where the sub empty space is located may be determined as a placement position of the object.
The sub-empty space is an unoccupied and available space and is divided by an integral space, and the sub-empty space can be a corner of a room or a gap between a cabinet and a roof.
The object is a placeable entity, and can be a cabinet or a plate of a cabinet body.
As an example, the object may be a desk placed in a corner of a room, or a board placed on top of a cabinet.
In addition, the executing main body may execute the step 203 by adopting the following steps:
in some optional implementation manners of this embodiment, in the case that the target parameter data of the acquired target empty space in the step 201 includes an object shape, the main body may perform the step 203 in the following manner:
firstly, the position of the sub-empty space is determined as the placement position of the object.
And displaying the image of the sub vacant space through the execution main body, performing pose change operation through the execution main body, adjusting the pose of the sub vacant space, and displaying the image of the sub vacant space after the pose is adjusted.
As an example, the sub empty space selection direction may be upward. The selected direction is changed to the forward direction by the executing body. And adjusting the division mode and the object of the sub-empty space according to the changed selected direction, and displaying the image of the sub-empty space again after adjustment.
And then storing the shape information of the object, wherein the shape information of the object is in one-to-one correspondence with the keys of the execution body according to the stored shape information of the object, and the size of the stored shape information of the object can be set.
As an example, the above keys may be 1, 2, 3, etc. numeric keys in a keyboard. The objects can be plates, cabinets and wardrobes, which are in one-to-one correspondence with the keys. The object to be the plate is called out by using the key 1. And then, the dimension of the plate can be adjusted according to actual requirements.
In the optional implementation manner in this embodiment, by storing the object shape information, the stored shape information is in one-to-one correspondence with the target key, and the stored shape information can be called, and the shape information can be modified, so that the optional implementation manner realizes the reuse of the shape information and the one-key calling according to the target key; in the above optional implementation manner, the image of the sub vacant space can be presented, and after the pose of the sub vacant space is adjusted, the system can adjust the sub vacant space and present the image of the adjusted sub vacant space, so that the embodiment simplifies the pose adjustment of the sub vacant space.
In the object positioning method in this embodiment, the target parameter data of the target empty space is obtained, the target empty space is divided based on the target parameter data including the changed size information, a sub-empty space for placing the object in the target empty space is obtained, and then the position of the sub-empty space is determined as the placement position of the object, so that the object positioning is achieved.
With further reference to fig. 3, a flow 300 of another embodiment of an object localization method is shown. The process 300 of the object localization method includes the following steps:
step 301, obtaining target parameter data of the target vacant space. Thereafter, step 302 is performed.
Step 302, determining the selected direction according to the changed target parameter data based on the target parameter data. Thereafter, step 303 is performed.
Step 303, judge the dividing mode. The dividing method may be: and dividing according to a set proportion. In addition, the division method may be: and dividing according to the target distance. Then, if the division is performed according to the set proportion, go to step 304; if the division is performed according to the target distance, step 305 is performed.
Step 304, dividing according to a set proportion, and then if the division is carried out according to the line segment in the selected direction, executing step 306; if the space other than the sub empty space is divided, step 307 is executed. Step 308 is then performed.
Step 305, dividing according to the target distance. Thereafter, step 308 is performed.
At step 308, the placement of the object is determined.
Optionally, step 301 may be performed one or more times. For example, after step 307 is performed, step 301 described above may be performed again.
Note that, in the case where step 301 is executed plural times, step 301 may be executed at other timing than step 307 and then step 301 described above may be executed. For example, the execution of step 301 may be started (but not limited to) after the execution of step 304 or step 305.
Here, the step 301 may be executed according to the input target parameter data, or the step 301 may be executed according to the target parameter data acquired by the execution subject. Therefore, target parameter data in the process of dividing the target vacant space can be recorded in real time, and further corresponding recording is carried out on the object. For example, the target parameter data may be divided in accordance with a selected direction of the target parameter data, and the placement position of the object may be determined; when the target parameter data is changed, the target parameter data may be divided according to the selected direction of the target parameter data, and the placement position of the object may be determined.
It should be noted that, besides the above-mentioned contents, the embodiment of the present disclosure may also include the same or similar features and effects as the embodiment corresponding to fig. 2, and no further description is provided herein.
In the optional implementation manner in this embodiment, by storing the object shape information, the stored shape information is in one-to-one correspondence with the target key, and the stored shape information can be called, and the shape information can be modified, so that the optional implementation manner realizes the reuse of the shape information and the one-key calling according to the target key; in the above optional implementation manner, the image of the sub vacant space can be presented, and after the pose of the sub vacant space is adjusted, the system can adjust the sub vacant space and present the image of the adjusted sub vacant space, so that the embodiment simplifies the pose adjustment of the sub vacant space.
In particular, the object localization method may be performed by:
when there is a change (for example, a change in size information), the corresponding space starts to calculate a parameter result (that is, the target parameter data) such as its own size coordinate.
The base 9 values of the parameters (including the length, width, height, x, y, z coordinates, and rotation values in three directions) are then adjusted according to the orientation (i.e., the selected direction) of the space (i.e., the target empty space) corresponding to the base 9 values after the spatial orientation transformation. Such as: the spatial orientation is up, and the aspect ratio on that parameter corresponds to its own property that should be aspect ratio.
Then, comparing the changed value of the parameter (i.e. the target parameter data) with the changed value of the last change record, checking whether the subset needs to be updated (for example, the target parameter data is changed, i.e. the subset needs to be updated), that is, determining whether the target empty space needs to be divided, wherein the set of the sub empty spaces obtained after the division is the subset. If so, the spatial structure of the self is updated (namely, the target vacant space is divided again). Updating the own space division structure, firstly judging whether the surrounding type division is needed (namely, the division is carried out according to the target distance), if so, reducing the own space size to fully fill the space, and then carrying out the space division layer by layer according to the placement rules of all the parts participating in the surrounding type division. Finally, the structure of the top-bag side or side-bag top (such as a cabinet structure) is determined. Secondly, judging whether proportion division is needed (namely, the proportion division is carried out according to the set proportion), if so, firstly checking whether components participating in proportion division exist at present, counting the size of occupied space in the direction of division, calculating the range of the rest space, and if not, defaulting the space in the direction of current space division to be the target vacant space and carrying out division according to the given proportion. And then, updating the structure of the patch part (namely, the object) to display whether the bounding box is displayed or not (namely, whether the image of the target vacant space is presented or not).
After the self space is updated, traversing the space of the updated subset, and then iterating the subset to call the updated logic (that is, after the target vacant space is divided, traversing all the spaces according to the steps, and dividing the space to be divided).
And updating the sizes of the synchronous exons (namely, displaying the images of the sub-vacant spaces) until all the subsets are updated.
And the surrounding type division is used for correspondingly dividing and cutting one space in the front-back/left-right/up-down dimensions. Meanwhile, the basic 9 values of the 2 spaces are clearly divided according to the division rule such as left/right/left-right centering/left-right filling. For example: the placement rule is left-right adaptive, and by left 200, the left-right 2 spaces are divided by the sum of 200 and the width of the part as a separation value. If the next surrounding component is adapted up and down, then by 100, it will be divided up into 2 spaces in the right space divided up above, with the sum of 100 and the height of the component as the separation value.
Wherein, the proportion division mainly comprises 2 types of division with components and division without components. Including the part division, the sum of the sizes of all the participating part divisions corresponding to the division direction is subtracted first when calculating the remaining value of the entire space. For example, the sum of the widths of all the participating components is calculated according to the left and right space division, and then the remaining space is divided according to the proportion. The rule of scaling also includes fixed size, and scaling. For example: the total space area is 600 square meters, and the filled division value is 1:2:1, so that the whole space is divided into 3 spaces, and the area is 150 square meters, 300 square meters and 150 square meters respectively. The division value of the filled space is 200 square meters and 1:1, the whole space is divided into 3 spaces, the size of the middle space is fixed to be 200 square meters, and the rest spaces are distributed according to the proportion of 1: 1.
The updating process may use a driver (during the updating process, the divided space is synchronously modified, or the originally divided space is reset as a new target empty space, and new target parameter data is recalculated). In the updating process, the divided space can be synchronously modified, or the originally divided space is reset, and new data is recalculated. Thus, secondary, editing and driving can be supported. The editing and modifying process is to place the core data of the rule, and the corresponding parameter formula is automatically completed in the space driving process, so that the process that a user needs to fill or modify the complex formula and the formula is not easy to maintain is omitted.
The object positioning method provides a quick operation process.
On the one hand, the components can be recycled, and when a designer designs the used space, a certain amount of components have the same properties except the size. Then the component may be uploaded to the server via a favorite for subsequent reuse. The implementation method comprises the following steps: in the structural design, the space entity has the information of the plate which can be driven by the space entity, so that each space can be stored as an independent node to be uploaded to a server in an xml mode and provided for the space entity or others to use. When the method is used, any space can be appointed to try to add the stored space components, the data in the xml format is firstly analyzed into the space object, then the minimum three-dimensional size required by the space object to be added is calculated, and if the condition is met (namely, the components which try to be added can be accommodated by the space object to be added), a new size result which is matched with the appointed space is created again according to a placement rule (namely, a dividing mode) (namely, the new size result is modified according to target parameter data required by the attack and hardness object to be added).
On the other hand, the object positioning method can realize one-key generation of the plate. The designer can add corresponding plates by one key through 1, 2, 3, 4 and other shortcut keys. The realization principle is as follows: the second step of the configuration link is to bind the materials and the placement rules, namely, the materials and the placement rules are equivalent to the defined default base plates such as the top and the bottom, the left and the right side plates and the like. And the front end only needs to bind the creating method of the object created corresponding to the shortcut key.
On the other hand, the object positioning method can realize one-key modification of the spatial orientation, and a designer can modify the designated direction according to requirements through interface operation. In the drive calculation process of the upper diagram, before calculating the size of the self, after confirming the orientation of the self through the base 9 value actually corresponding to the base 9 value specified on the space orientation determining parameter, all the parts of the subset perform parameter calculation according to the length, width and height of the parent level, namely, the transformation of the space orientation is realized.
With further reference to fig. 4, as an implementation of the methods illustrated in the above figures, the present disclosure provides an embodiment of an object localization apparatus, which corresponds to the above-described method embodiments, and which may include the same or corresponding features as the above-described method embodiments and produce the same or corresponding effects as the above-described method embodiments, in addition to the features described below. The device can be applied to various electronic equipment.
As shown in fig. 4, the object positioning apparatus 400 of the present embodiment. The above apparatus 400 includes: an acquisition unit 401, a division unit 402, and a determination unit 403. Wherein, the obtaining unit 401 is configured to obtain target parameter data of the electrical target empty space; a dividing unit 402, configured to divide the target empty space based on the target parameter data to obtain a sub empty space for placing the object in the target empty space; the determining unit 403 is configured to determine a position where the sub empty space is located as a placement position of the object.
In this embodiment, the obtaining unit 401 of the object locating apparatus 400 may obtain the target parameter data of the target empty space. The target empty space is used for placing the object, and the target parameter data comprises size information of the target empty space.
In this embodiment, the dividing unit 402 may divide the target empty space according to different division modes based on the target parameter data, so as to obtain a sub empty space for placing the object in the target empty space.
In this embodiment, the determining unit 403 may be configured to determine the position of the sub empty space as the placement position of the object.
In some optional implementation manners of this embodiment, the dividing unit 402 includes:
and a dividing subunit (not shown in the figure) configured to divide the target empty space based on the target parameter data and the different dividing manners.
In some optional implementation manners of this embodiment, the dividing subunit includes:
a first dividing module (not shown in the figure) for determining dividing points on the line segment corresponding to the length in the selected direction according to a set proportion; dividing the target empty space at the division point along a plane perpendicular to the selected direction;
a second calculating module (not shown in the figures) configured to divide empty spaces other than the target sub-empty space in the target empty space along a plane perpendicular to the selected direction according to a set proportion;
and a third calculation module (not shown) configured to determine a plane parallel to the selected side and having a distance from the selected side as a target distance as a division plane along which the target empty space is divided.
In some optional implementations of this embodiment, the dividing unit is further configured to:
determining a length of the target empty space in a selected direction from target parameter data including the changed size information;
and dividing the target vacant space based on a set proportion and the length in the selected direction.
In some optional implementations of this embodiment, the dividing unit is further configured to:
according to a set proportion, determining division points on line segments corresponding to the lengths in the selected direction; the target empty space is divided at the division point along a plane perpendicular to the selected direction.
In some optional implementations of this embodiment, the dividing unit is further configured to:
determining a target sub empty space with a set length in the target empty space, wherein the direction indicated by the length of the target sub empty space is parallel to the selected direction; and dividing the vacant spaces except the target sub vacant spaces in the target vacant space along a plane perpendicular to the selected direction according to a set proportion.
In some optional implementations of this embodiment, the dividing unit is further configured to:
the target vacant space is in a cuboid shape; and
the dividing the target empty space based on the target parameter data including the changed size information includes:
determining a plane which is parallel to the selected side face of the cuboid and has a distance with the selected side face as a target distance as a dividing plane;
and dividing the target vacant space along the dividing plane.
In the apparatus 400 according to the above embodiment of the present disclosure, after the obtaining unit 401 obtains the target parameter data of the obtained target empty space, the dividing unit 402 determines a dividing point on a line segment corresponding to the length in the selected direction according to a set ratio based on the target parameter data, and divides the target empty space at the dividing point along a plane perpendicular to the selected direction. And dividing the vacant spaces except the target sub vacant spaces in the target vacant space along a plane perpendicular to the selected direction according to a set proportion. And determining a plane which is parallel to the selected side face and has a distance with the selected side face as a target distance as a dividing plane, and dividing the target vacant space along the dividing plane. Subsequently, the determination unit 403 may determine the position where the sub empty space is located as the placement position of the object. According to the technical scheme provided by the embodiment of the invention, the target parameter data of the target vacant space is obtained, the target vacant space is divided based on the target parameter data comprising the changed size information, the sub vacant space for placing the object in the target vacant space is obtained, then the position of the sub vacant space is determined as the placing position of the object, the object is positioned, and the object is placed directly by dividing the space, so that the object positioning efficiency can be improved, and the time consumption is saved.
Fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure, where the electronic device 500 shown in fig. 5 includes: at least one processor 501, memory 502, and at least one network interface 504 and other user interfaces 503. The various components in the electronic device 500 are coupled together by a bus system 505. It is understood that the bus system 505 is used to enable connection communications between these components. The bus system 505 includes a power bus, a control bus, and a status signal bus in addition to a data bus. For clarity of illustration, however, the various buses are labeled as bus system 505 in FIG. 5.
The user interface 503 may include, among other things, a display, a keyboard, or a pointing device (e.g., a mouse, trackball, touch pad, or touch screen, among others.
It is to be understood that the memory 502 in embodiments of the present disclosure may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The non-volatile Memory may be a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically Erasable PROM (EEPROM), or a flash Memory. Volatile Memory can be Random Access Memory (RAM), which acts as external cache Memory. By way of illustration and not limitation, many forms of RAM are available, such as Static random access memory (Static RAM, SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic random access memory (Synchronous DRAM, SDRAM), Double Data Rate Synchronous Dynamic random access memory (ddr Data Rate SDRAM, ddr SDRAM), Enhanced Synchronous SDRAM (ESDRAM), synchlronous SDRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The memory 502 described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
In some embodiments, memory 502 stores elements, executable units or data structures, or a subset thereof, or an expanded set thereof as follows: an operating system 5021 and application programs 5022.
The operating system 5021 includes various system programs, such as a framework layer, a core library layer, a driver layer, and the like, and is used for implementing various basic services and processing hardware-based tasks. The application 5022 includes various applications, such as a Media Player (Media Player), a Browser (Browser), and the like, for implementing various application services. A program implementing the method of the embodiments of the present disclosure may be included in the application program 5022.
In the embodiment of the present disclosure, by calling a program or an instruction stored in the memory 502, specifically, a program or an instruction stored in the application 5022, the processor 501 is configured to execute the method steps provided by the method embodiments, for example, including: acquiring target parameter data of a target vacant space, wherein the target vacant space is used for placing the object, and the target parameter data comprises size information of the target vacant space; if the size information is changed, dividing the target vacant space based on target parameter data including the changed size information to obtain a sub vacant space for placing the object in the target vacant space; and determining the position of the sub vacant space as the placement position of the object.
The method disclosed by the embodiment of the present disclosure can be applied to the processor 501, or implemented by the processor 501. The processor 501 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 601. The Processor 601 may be a general-purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, or discrete hardware components. The various methods, steps, and logic blocks disclosed in the embodiments of the present disclosure may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present disclosure may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software elements in the decoding processor. The software elements may be located in ram, flash, rom, prom, or eprom, registers, among other storage media that are well known in the art. The storage medium is located in the memory 502, and the processor 501 reads the information in the memory 502 and completes the steps of the method in combination with the hardware.
It is to be understood that the embodiments described herein may be implemented in hardware, software, firmware, middleware, microcode, or any combination thereof. For a hardware implementation, the Processing units may be implemented in one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), general purpose processors, controllers, micro-controllers, microprocessors, other electronic units configured to perform the functions described herein, or a combination thereof.
For a software implementation, the techniques described herein may be implemented by means of units performing the functions described herein. The software codes may be stored in a memory and executed by a processor. The memory may be implemented within the processor or external to the processor.
The electronic device provided in this embodiment may be the electronic device shown in fig. 5, and may perform all the steps of the object positioning method shown in fig. 2, so as to achieve the technical effect of the object positioning method shown in fig. 2, please refer to the description related to fig. 2 for brevity, which is not described herein again.
The disclosed embodiments also provide a storage medium (computer-readable storage medium). The storage medium herein stores one or more programs. Among others, the storage medium may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as read-only memory, flash memory, a hard disk, or a solid state disk; the memory may also comprise a combination of memories of the kind described above.
When one or more programs in the storage medium are executable by one or more processors, the object localization method performed on the electronic device side as described above is implemented.
The processor is configured to execute the communication program stored in the memory to implement the following steps of the object positioning method executed on the electronic device side: acquiring target parameter data of a target vacant space, wherein the target vacant space is used for placing the object, and the target parameter data comprises size information of the target vacant space; if the size information is changed, dividing the target vacant space based on target parameter data including the changed size information to obtain a sub vacant space for placing the object in the target vacant space; and determining the position of the sub vacant space as the placement position of the object.
Those of skill would further appreciate that the various illustrative components and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both, and that the various illustrative components and steps have been described above generally in terms of their functionality in order to clearly illustrate this interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied in hardware, a software module executed by a processor, or a combination of the two. A software module may reside in Random Access Memory (RAM), memory, Read Only Memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present disclosure in further detail, and it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present disclosure, and are not intended to limit the scope of the present disclosure, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present disclosure should be included in the scope of the present disclosure.

Claims (10)

1. An object positioning method, comprising:
acquiring target parameter data of a target vacant space, wherein the target vacant space is used for placing the object, and the target parameter data comprises size information of the target vacant space;
if the size information is changed, dividing the target vacant space based on target parameter data including the changed size information to obtain a sub vacant space for placing the object in the target vacant space;
and determining the position of the sub vacant space as the placement position of the object.
2. The method of claim 1, wherein the dividing the target empty space based on target parameter data including the changed size information comprises:
determining a length of the target empty space in a selected direction from target parameter data including the changed size information;
and dividing the target vacant space based on a set proportion and the length in the selected direction.
3. The method of claim 2, wherein the dividing the target empty space based on the set proportion and the length in the selected direction comprises:
according to a set proportion, determining division points on line segments corresponding to the lengths in the selected direction; dividing the target empty space at the division point along a plane perpendicular to the selected direction;
and/or the presence of a gas in the gas,
determining a target sub empty space with a set length in the target empty space, wherein the direction indicated by the length of the target sub empty space is parallel to the selected direction; and dividing the vacant spaces except the target sub vacant spaces in the target vacant space along a plane perpendicular to the selected direction according to a set proportion.
4. The method of claim 1, wherein the target empty space is in the shape of a cuboid; and
the dividing the target empty space based on the target parameter data including the changed size information includes:
determining a plane which is parallel to a selected side face of the cuboid and has a distance with the selected side face as a target distance as a dividing plane;
and dividing the target vacant space along the dividing plane.
5. The method of claim 4, wherein the target distance is a sum of a length of the object in a direction perpendicular to the selected side and a set distance.
6. The method according to one of claims 1 to 5, characterized in that the method further comprises:
presenting the image of the sub vacant space;
and if the pose change operation aiming at the sub vacant space is detected, adjusting the pose of the sub vacant space according to the indication of the pose change operation, and presenting the image of the pose-adjusted sub vacant space.
7. The method according to any one of claims 1 to 5, wherein shape information of the object is stored in advance, and a size of the object is settable; the sub empty space is further obtained based on size division set for the object; the object and the target key have a one-to-one correspondence.
8. An object positioning apparatus, characterized in that the apparatus comprises:
an acquisition unit configured to acquire target parameter data of a target empty space for placing the object, the target parameter data including size information of the target empty space;
a dividing unit configured to divide the target empty space based on target parameter data including changed size information if the size information is changed, to obtain a sub empty space for placing the object in the target empty space;
and the determining unit is configured to determine the position of the sub empty space as the placement position of the object.
9. An electronic device, comprising:
a memory for storing a computer program;
a processor for executing a computer program stored in the memory, and when executed, implementing the method of any of the preceding claims 1-7.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the method of any one of the preceding claims 1 to 7.
CN202111178956.7A 2021-10-08 2021-10-08 Object positioning method and device, electronic equipment and storage medium Pending CN114003987A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111178956.7A CN114003987A (en) 2021-10-08 2021-10-08 Object positioning method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111178956.7A CN114003987A (en) 2021-10-08 2021-10-08 Object positioning method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114003987A true CN114003987A (en) 2022-02-01

Family

ID=79922404

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111178956.7A Pending CN114003987A (en) 2021-10-08 2021-10-08 Object positioning method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114003987A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160212402A1 (en) * 2015-01-15 2016-07-21 Kabushiki Kaisha Toshiba Spatial information visualization apparatus, storage medium, and spatial information visualization method
CN106969733A (en) * 2016-05-20 2017-07-21 美国西北仪器公司 The method and range unit positioned in object space to target object
WO2018235576A1 (en) * 2017-06-20 2018-12-27 三菱電機株式会社 Parts storing device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160212402A1 (en) * 2015-01-15 2016-07-21 Kabushiki Kaisha Toshiba Spatial information visualization apparatus, storage medium, and spatial information visualization method
CN106969733A (en) * 2016-05-20 2017-07-21 美国西北仪器公司 The method and range unit positioned in object space to target object
WO2017198187A1 (en) * 2016-05-20 2017-11-23 美国西北仪器公司 Method for positioning target object in target space and measurement device
WO2018235576A1 (en) * 2017-06-20 2018-12-27 三菱電機株式会社 Parts storing device

Similar Documents

Publication Publication Date Title
US9600149B2 (en) Display processing system, display processing method, and information storage medium
CN109858138B (en) BIM-based room decoration component processing method, device, terminal and medium
CN102004809A (en) Process, program and apparatus for displaying an assembly of objects of a plm database
US20140365873A1 (en) Computing devices for generating content layout
CN108564645B (en) Rendering method of house model, terminal device and medium
US9190017B2 (en) Proportional pointer transition between multiple display devices
US10318127B2 (en) Interface providing systems and methods for enabling efficient screen control
WO2014117559A1 (en) 3d-rendering method and device for logical window
CN114648615B (en) Method, device and equipment for controlling interactive reproduction of target object and storage medium
JP6820160B2 (en) Programs and systems that render images
US8024158B2 (en) Management system and management method of CAD data used for a structural analysis
CN114003987A (en) Object positioning method and device, electronic equipment and storage medium
US11423587B2 (en) Freeform gradient style blending
CN117994411A (en) Virtual building processing method, device, equipment and computer readable storage medium
CN111737784B (en) Board card type selection configuration method and equipment based on digital three-dimensional ZXMP S385 subframe
CN114820968A (en) Three-dimensional visualization method and device, robot, electronic device and storage medium
EP3454207B1 (en) Dynamic preview generation in a product lifecycle management environment
CN114297762A (en) Construction drawing generation method and related device
CN113034669A (en) Parking space display method, device, equipment, storage medium and product
US10355794B2 (en) Channel simulation device and channel simulation program
CN115879207B (en) Outdoor space enclosing degree determining method, device, computer equipment and storage medium
US20240095416A1 (en) Techniques incorporated into design software for generating sustainability insights
US20240095414A1 (en) Techniques incorporated into design software for generating sustainability insights
JP2018151872A (en) Drawing program, drawing method and drawing device
CN115203809A (en) Building information model rendering method and system and electronic equipment

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