The present disclosure relates to a system for facilitating the construction of a railing system for a deck.
Railing systems for any number of outdoor applications are well-known. For example, residential decks, pool decks, and playgrounds all utilize any number of conventional railing systems. Conventional railing systems typically comprise elongated railings, posts, pickets, spacers, and other associated hardware.
When designing a railing system for a structure (e.g. a deck), several factors come into consideration. These may include factors such as aesthetics, the dimensions of the structure, building code requirements, etc. As these factors may be different for different projects, the railing system itself may vary from project to project.
Once a particular railing system has been designed, it is useful and important to determine the type and amount of the railing hardware required to build the railing system. In some cases, railing hardware is not individually sold but instead, several pieces of hardware are bundled together in kits. For example, a kit may contain a number of pickets and spacers. In such cases, it would be beneficial to determine the minimum number of kits required to construct the particular railing system in order to avoid unnecessary wastage.
According to one aspect, a system for facilitating construction of a deck by a user and a customer service agent, comprises a server, a database, and a client computer. The database is operationally connected to the server, with the database comprising parts information regarding a plurality of parts for the deck. The client computer is in communication with the server. The client computer comprises a camera for capturing video data and a display for displaying a user interface. The user interface is configured to accept textual input from the user regarding deck information. The deck information comprises information regarding dimensions and layout of the deck. The user interface is further configured to accept graphical input regarding the deck, with the graphical input comprising a drawing by the user of the deck on a grid displayed on the user interface. The client computer is further configured to transmit the deck information and the drawing to the server. The server is configured to generate a graphical representation of the deck, with the graphical representation based, at least in part, on the drawing, the deck information, and one or more criteria regarding placement of the parts for the deck. The server is further configured to convert the deck information into component information, with the component information comprising information regarding one or more of the individual components of the deck. The server is further configured to generate, based at least in part on the component information and the parts information, a list comprising minimum quantities of the parts required for the deck. The server is further configured to transmit the list and the graphical representation to the client computer. The client computer is configured to generate an augmented view integrating the graphical representation with the video data. The user interface is configured to display a menu bar on a first portion thereof, with the menu bar configured to allow the user to toggle the user interface to display on a second portion thereof between a three-dimensional and a two-dimensional view of the graphical representation. The user interface further configured to allow the user to manipulate the three-dimensional or the two-dimensional views of the graphical representation using touch input on the user interface. The user interface is further configured to display the augmented view or the list upon request by the user through the user interface.
According to another aspect, the database further comprises ordering information, wherein the ordering information comprises information regarding pricing and inventory of each of the plurality of parts.
According to a further aspect, the server is further configured to generate a price, wherein the price is based, at least in part, on the pricing and the inventory of the parts required for the deck.
According to still another aspect, the user interface is further configured to accept touch input from the user for the graphical input.
According to yet still another aspect, the plurality of parts comprises one or more of the following: railings, pickets, posts, and panels.
According to a further aspect, the user interface is further configured to allow for the user to input changes to the deck information.
The foregoing was intended as a summary only and of only some of the aspects. Other aspects will be appreciated by reference to the detailed description of the preferred embodiments. Moreover, this summary should be read as though the claims were incorporated herein for completeness.
The embodiments will be described by reference to the drawings thereof, in which:
Referring to
The present disclosure provides an efficient and convenient way to design the railing system 10 for the deck 50. Referring to
Through the user interface 110, the remote users 104 are able to access the host application 102. For example, where the communication network 108 is the Internet, the host application 102 may be a web-based application that may be accessed using a browser program on the communication device 106 and viewed using the user interface 110.
The host application 102 is associated with a database 112. The database 112 comprises various data, including railing parts data 114 and railing kit data 116. The railing parts data 114 comprises data on one or more types of railing parts 118. The various components of the railing system 10 form the railing parts 118. These components may include items such as pickets 20, hand rails 12, base rails 14, posts 16, spacers 22, gates, brackets, or the like. The railing parts data 114 includes data not only identifying the types of railing parts 118, but also includes data on characteristics of each of the types of railing parts 118. Such characteristics may include colour, dimensions, and any particular usage requirements for the railing part 118.
The railing kit data 116 comprises data regarding the organization of one or more railing parts 118 into one or more kits 120. For example, railing parts 118 are not always sold individually; instead, one or more railing parts 118 may be bundled or assembled together and sold as one kit 120. Different combinations and sets of railing parts 118 may be bundled or assembled together in a variety of ways to form a number of different kits 120. The railing kit data 116 includes data on the composition and organization of each of the kits 120.
Referring to
The database 112 may also comprise project data 122 (regarding projects 124 created by the remote users 104) and profile data 126 (regarding the remote users 104).
When the remote user 104 first initiates the host application 102, the remote user 104 may be prompted by the user interface 110 to enter a username and/or password in order to log on to the host application 102, as shown in
After the remote user 104 has logged on, the remote user 104 may be prompted by the user interface 110 to start a new project 124 or to load a previously saved project 124 (step 200). If the remote user 104 starts a new project 124, the remote user 104 may be prompted (step 202) to enter information regarding the project 124, including an address 150 (or location) for the project 124 and whether the project 124 is for a residential or commercial property, as shown in
The remote user 104 is then prompted to provide information regarding a defined area, such as the deck 50, for which the railing system 10 will be configured (step 204). Information regarding the deck 50 may include its dimensions and its shape (e.g. square, rectangular, L-shaped, irregularly-shaped, etc.). Where the user interface 110 is a graphical user interface, the user interface 110 may provide the remote user 104 with a grid 130 on which the remote user 104 is able to provide graphical of a representation of the deck 50, as shown in
The user interface 110 may also depict various icons 132 that assist the remote user 104 in depicting the deck 50. For example, the icons 132 may allow the remote user 104 to rotate or scale the deck 50. In addition, the user interface 110 may allow the remote user 104 to precisely input the dimensions of the deck 50, and the host application 102 can automatically adjust the deck 50 depicted on the user interface 110 based on the inputted dimensions.
The user interface 110 may also display the dimensions and relevant angles of the deck 50, as shown in
After the dimensions and configuration of the deck 50 have been specified and depicted on the user interface 110, the remote user 104 may be then prompted to indicate whether stairs 134 are to be added to the deck 50. If so, the user interface 110 may prompt the remote user 104 to provide information regarding one or more stairs 134 leading to the deck 50 (step 206). If the deck 50 is to have stairs 134, the remote user 104 is prompted to provide specifications for the stairs 134, which may include information regarding the width, rise, and/or run of the stairs 134. In addition, the remote user 104 may be prompted by the user interface 110 about the number of treads for the stairs 134 and the presence of gates 136 (e.g. top and/or bottom gates). Where the user interface 110 is a graphical user interface, once the remote user 104 has provided the information regarding the stairs 134, the user interface 110 may provide a graphical c of the stairs 134, which the remote user 104 can manipulate via the user interface 110 to connect it graphically with the deck 50, as shown in
After all of the stairs 134 have been specified and depicted on the user interface 110, the remote user 104 may then be prompted by the user interface 110 to provide information regarding additional decks 50, if any (step 208). If there are additional decks 50, the remote user 104 may be prompted to provide their dimensions, shape(s), etc. Where the user interface 110 is a graphical user interface, the remote user 104 may be able to draw a graphical representation of the additional deck(s) 50 on the user interface 110 and manipulate them to connect with any existing deck 50 and/or stairs 134.
If the remote user 104 does not connect the additional deck(s) 50 to any existing deck 50 and/or stairs 134, the user interface 110 will display an error message advising the remote user 104 of this.
The remote user 104 may also be prompted by the user interface 110 to specify whether the railing system 10 will be installed on the deck surface or on the deck fascia as this may affect the total length of railing required for the railing system 10.
Next, the user interface 110 may prompt the remote user 104 to provide information regarding existing structural features (step 210), such as columns 138 or walls 140. If such structural features are present, the remote user 104 may be prompted by the user interface 110 to provide their dimensions, locations, and/or shapes. For columns 138, this may be carried out when the remote user 104 selects a side 156 of the deck 50 on the user interface 110 on which the column 138 is located. Once selected, the user interface 110 will then prompt the remote user 104 to provide the dimensions, positions, offsets, and general shape (e.g. round or square) of the column(s) 138.
Where the user interface 110 is a graphical user interface, once the remote user 104 has provided the information regarding the column(s) 138, the user interface 110 may provide a graphical representation of the deck 50 with the column(s) 138, as shown in
Similarly, if one or more walls 140 are to be present, the remote user 104 may be prompted by the user interface 110 to provide the orientation and length of the wall(s) 140. This may be carried out when the remote user 104 selects a side 156 of the deck 50 on the user interface 110 on which the wall 140 is located. Once selected, the user interface 110 will then prompt the remote user 104 to provide the length and position of the wall 140. The user interface 110 may also prompt the remote user 104 to indicate whether the wall 140 is a full-length wall or a partial wall (i.e. does not extend for the full length of a side of the deck 50).
Where the user interface 110 is a graphical user interface, a graphical representation of the column(s) 138 and wall(s) 140 may then be displayed with the deck(s) 50, as shown in
In addition, the remote user 104 may be prompted by the user interface 110 to select one or more sides 156 of the deck(s) 50 for which no railing will be installed. Where the user interface 110 is a graphical user interface, the remote user 104 may select the sides 156 of the deck 50 for which no railing will be installed by selecting the appropriate portions of the deck 50, as shown in
Next, the remote user 104 may also be prompted by the user interface 110 to select one or more locations on the deck 50 for inserting additional gates 136 (step 212). This may be carried out when the remote user 104 selects a side 156 of the deck 50 on the user interface 110 on which the gate 136 is to be located. The remote user 104 may specify the position, dimensions (e.g. the width), and orientation (e.g. the swing direction) of the gates 136. Where the user interface 110 is a graphical user interface, a graphical representation of the gates 136 can be displayed with the deck 50, as shown in
Based on the information provided by the remote user 104 to the user interface 110, the host application 102 determines appropriate locations for posts 142 for the railing system 10 (step 214). This determination takes into account a number of factors, including the distance between respective posts 142, the location of gates 136 (if any), the presence of columns 138 (if any) and walls 140 (if any), the location of stairs 134 (if any), and others. For example, a post 142 should be located proximate to the columns 138 so that the end of the hand rails 12 or base rails 14 can extend from the post 142, resulting in a minimal gap between the post 142 and the column 138. In addition, there may be a maximum allowable distance between adjacent posts 142. Where the user interface 110 is a graphical user interface, a graphical representation of the posts 142 can be displayed, as shown in
Based on the railing parts data 114, the remote user 104 may also be prompted by the user interface 110 to select certain characteristics for various railing parts 118 (step 216), as shown in
In addition, the host application 102 may restrict certain configurations of the railing system 10 because of physical limitations. For example, if walls 140 are present, the host application 102 may provide the remote user 104 with the option of using one or more brackets for attaching the hand rail 12 and base rail 14 to the walls 140 (instead of the post 16), but only if the brackets can be placed normal to the walls 140. The host application 102 may determine any such limitations based on the configuration of the railing system 10 and the railing parts data 114.
Once the remote user 104 has completed configuration of the railing system 10, the host application 102 determines (step 218) a parts list 146 comprising a list of the railing parts 118 and their respective quantities required to construct the railing system 10. This determination is based on the railing parts data 114 and the configuration of the railing system 10. In order to reduce potential wastage, the determination may produce a parts list 146 that comprises a minimum number of each of the railing parts 118 required to construct the railing system 10.
The following examples demonstrate how the minimum number for certain ones of the railings parts 118 may be determined for a particular portion of the deck 50, where L=center-to-center span (in mm); P=minimum number of pickets required; S=minimum number of spacers required; d=end spacer length (in mm); and w=glass panel width (in mm).
Based on the parts list 146, the host application 102 determines (step 220) a kits list 148 comprising a list of the kits 120 required to construct the railing system 124. This determination is based on the railing kit data 116 and the parts list 146. In order to reduce potential wastage, the determination may produce a kits list 148 that comprises a minimum number of each of the kits 120 required to construct the railing system 10.
The kits list 148 may be displayed (step 222) on the user interface 110, as shown in
In another embodiment, the database 112 further comprises building regulations data 150. The building regulations data 150 comprises information on building regulations for different areas. When the remote user 104 enters the address 128 for the project 124, the host application 102 determines the appropriate area for the address 128 and, based on the building regulations data 150, determines the appropriate building regulations for the project 124.
Thereafter, the host application 102 applies the appropriate building regulations to restrict the configuration of the railing system 10. For example, certain areas (e.g. Florida) prohibit the use of glass panels. Therefore, if the remote user 104 indicates that the project 124 is located in Florida, the host application 102 will apply the appropriate building regulations from Florida and prevent the remote user 104 from subsequently selecting glass panels for the project. The user interface 110 may provide a warning to the remote user 104 advising of the restriction.
In addition to the use of glass panels, building regulations may also limit the maximum length for hand rails 12 and base rails 14. This may differ in different areas and may also differ based on whether it is in a residential or commercial setting. Therefore, depending on the address 128 for the project and its setting (i.e. residential or commercial), the host application 102 applies the appropriate building regulation from the building regulations data 148 to restrict the configuration of the railing system 10. This restriction may include restricting the placement of posts 142 so that the hand rails 12 and base rails 14 are appropriately separated by the posts 142 (e.g. such that the hand rails 12 and base rails 14 are not too long).
The host application 104 may store the configuration of the railing system 10, the parts list 146, the kits list 148, and the address 128 in the database 112 as a project 124 in the project data 126 for later retrieval. In addition, the host application 104 may provide the remote user 104 with the ability to save the project 124 at any time throughout the process, through appropriate input on the user interface 110.
In another embodiment shown in
The cost data 152 may be based on estimated costs for each of the kits 120. These estimated costs may already be stored in the database 112. Alternatively, referring to
For example, the hardware associated with constructing a section of fencing (e.g. pickets 20, hand rails 12, etc.) may be sold in different kits 120 corresponding to different configurations. In a first kit 120a, the included hardware may comprise the hardware required to construct a 4-foot section of fencing, while in a second kit 120b, the included hardware may comprise the hardware required to construct a 6-foot section of fencing. If the railing system 10 required a 10-foot section of fencing, the host application 102 may determine, based on the cost data 152, that it would be more cost efficient to use one of the first kit 120a and one of the second kit 120b, rather than three of the first kits 120a. This could also result in less wastage of material.
The host application 102 is able to determine the kits list 148 based on one or both of the following factors: (1) an absolute minimum of kits 120 required for the railing system 10; and (2) a minimum total cost to purchase the kits 120 required for the railing system 10. In some cases, the two factors may result in identical kits lists 148; however, there may be instances when they will result in different kits lists 148 (e.g. where there are discounts for certain kits 120). For example, in the example described above, if the first kit 120a cost $10 each and the second kit 120b cost $30 each, then it would be more cost efficient to purchase three of the first kits 120a (for a total of $30), rather than purchasing one of the first kit 120a and one of the second kit 120b (for a total of $40).
Referring to
The system 200 further comprises one or more client computers 208 that are in communication with the server 202 over network 216, such as the Internet. This communication may be wired or wireless. For example, the communications may be through cellular signals, through Wi-Fi, Bluetooth, etc. The client computer 208 may comprise display 210 for displaying user interface 212. The client computer 208 may be a desktop computer, a laptop computer, a tablet computer, a smartphone, or the like. The client computer 208 is configured to accept input through the user interface 212 from a user regarding deck information 214. The deck information 214 may comprise information regarding the deck 50, such as dimensions or layout.
The client computer 208, after accepting input of the deck information 214 from the user, is further configured to transmit the deck information 214 to the server 202 over the network 216.
Upon receipt of the deck information 214 from the client computer 208, the server 202 is configured to convert the deck information 214 into component information 218. The component information 218 includes information regarding one or more of the individual components of the deck. For example, the component information 218 may include information regarding the hand rails 12, the base rails 14, the posts 16, the panels 18, the pickets 20, and the spacers 22 for the deck 50. Based at least in part on the component information 218 and the parts information 206, the server 202 is further configured to generate a parts list 220 comprising the minimum quantities of the parts required for the deck 50.
Since the information regarding the parts in the parts information 206 may be for standard parts, alterations to the standard parts are likely needed in order to construct the deck 50. Therefore, the server 202 is further configured to generate, based at least in part on the parts information 206, the component information 218, and the parts list 220, instruction information 222. The instruction information 222 comprises information regarding alterations to be made to the parts required for the deck 50. For example, if one or more of the hand rails 12 need to be cut in order to fit the dimensions of the deck 50, this would be included in the instruction information 222.
The server 202 transmits the parts list 220 and the instruction information 222 to the client computer 208 over the network 216. The client computer 208 is then configured to display the parts list 220 and the instruction information 222 through the user interface 212 on the display 210. The parts list 220 and the instruction information 222 may be formatted in various ways to present the information therein in a more user-friendly manner.
In another embodiment, referring to
The chat session will allow the user and the customer service agent to communicate, in real time, regarding any issues the user may be encountering.
The chat session may be of a video chat session or an audio chat session, or a combination of both. In order to engage in a video or audio chat session, the client computer 208 and the customer service computer 224 will both need to be equipped with cameras or microphones, respectively.
The database 204 may also include ordering information 226 regarding pricing and inventory of the parts. In such a case, the server 202 may use the ordering information 226 when generating the parts list 220 so that the pricing of the parts for the deck 50 is included. In addition, the server 202 may use the ordering information 226 when generating the parts list 220 so that only the parts that are available are included in the parts list 220 (e.g. depending on the inventory levels of the parts in the ordering information 226).
Furthermore, based on the ordering information 226, the server 202 may also, when generating the parts list 220, include a total price for the deck 50.
As described above, the user interface 212 is configured to accept input from the user regarding the deck 50. In one embodiment, the user interface 212 is configured to accept touch input for drawing an outline for the deck 50. Upon drawing the outline for the deck 50, the user may make changes or modifications to the deck 50 (see
The user interface 212 may be further configured to display a graphical representation of the deck 50. The graphical representation may include a two-dimensional view (see
The user interface 212 may also be configured to display (
Referring to
In some embodiments, the host application 102 may be configured to provide real-time or almost real-time visualization of the deck 50 in its intended location. In such embodiments, the remote user 104 may be prompted by the user interface 110 to activate the camera 300 to start capturing video, which may be displayed on the user interface 110 for viewing by the remote user 104. The host application 102 may be configured to generate the augmented view 302 based on the video data captured by the camera 300. The augmented view 302 may also be displayed on a real-time or almost real-time basis on the user interface 110. The augmented view 302 provides the remote user 104 with an approximate visualization of how the deck 50 may look in its intended location (e.g. by superimposing or integrating the graphical representation of the deck 50 into the video data captured by the camera 300.
In some embodiments, the remote user 104 is able to move the communication device 106, thereby changing the angle or orientation of the video captured by the camera 300. The host application 102 may be configured to update the augmented view 302 to take into account the change in the angle or orientation of the video. For example, the remote user 104 is able to move the communication device 106 in order to view, on the user interface 110, an updated version of the augmented view 302 depicting the deck 50 from a different angle or orientation.
In some embodiments, the video data captured by the camera 300 may be transmitted to the host server 100 where it is processed by the host application 102 in order to generate the augmented view 302. The augmented view 302 is then transmitted to the communication device 106 for display on the user interface 110. In other embodiments, the communication device 106 may support a local application 304 that is installed on the communication device 106. The local application 304 may control the operation of the user interface 110. The local application 304 may also transmit to the host server 100 the deck information 214 and the graphical input provided by the remote user 104 (e.g. the representation of the deck 50 as drawn by the remote user 104 using the user interface 110). The host server 100 is configured to generate a graphical representation of the deck 50 based, at least in part, on the deck information 214 and the graphical input. The graphical representation of the deck 50 may be transmitted to the communication device 106. The local application 304 may be configured to generate the augmented view 302 based on the graphical representation of the deck 50 received from the host server 100 and the video data captured by the camera 300. The local application may be further configured to cause the augmented view 302 to be displayed on the user interface 110.
It will be appreciated by those skilled in the art that the preferred embodiment has been described in some detail but that certain modifications may be practiced without departing from the principles of the invention.
This application is a continuation-in-part of U.S. patent application Ser. No. 17/025,195 filed Sep. 18, 2020, which is a continuation-in-part of U.S. patent application Ser. No. 16/344,761 filed Apr. 24, 2019, which is a national stage application, filed under 35 U.S.C. § 371, of International Patent Application No. PCT/CA2017/051443 filed Nov. 30, 2017, which claims the benefit of U.S. Provisional Patent Application No. 62/428,125 filed Nov. 30, 2016, the contents of all of which are hereby incorporated by reference herein in their entirety.
Number | Date | Country | |
---|---|---|---|
62428125 | Nov 2016 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 17025195 | Sep 2020 | US |
Child | 18543706 | US | |
Parent | 16344761 | Apr 2019 | US |
Child | 17025195 | US |