IP Library Granted Patent US 12,347,058
Granted Patent B2
US 12,347,058 · App. 18/595,380 · Granted Jul 1, 2025

Element alignment for hangers in computer-aided design

Inventors: Paul Anthony Homier (Ball Ground, GA); Adam Heon (Atlanta, GA)
Assignee: Evolve MEP, LLC
G06T19/20G06F3/04815G06F3/0482G06T2200/24G06T2219/2004
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,347,058
App. No.
18/595,380
Granted
Jul 1, 2025
Kind
B2
Abstract

Examples herein describe systems and methods for aligning elements, such as conduit, ductwork, and plumbing within a computer-aided design (“CAD”) application. A plugin can provide an element alignment option on a graphical user interface (“GUI”) of the CAD program. An anchor point from which to align elements is selected in the GUI so that the plugin can choose locations within a structure to run multiple elements in parallel alignment. The system can recommend an alignment plane based on the slopes of the selected multiple elements and provide a direction for a run of the multiple elements. The systems retrieve the specifications and parameters of each individual element to determine its spacing among the run of multiple elements. The run of multiple elements is displayed and manipulated by the plugin via the GUI.

Claims (43)

1. A system for element alignment in a computer-aided design (“CAD”) application, including:

a database that stores element parameters, including element sizes and spacing requirements;

a processor that executes instructions to perform stages comprising:

receiving at least one selection on a graphical user interface (“GUI”), wherein the at least one selection identifies at least:

an anchor element on the GUI, wherein the anchor element is one of pipe, conduit, or a duct; and

multiple elements to align with the anchor element; and

visually aligning the multiple elements based on the anchor element, wherein the visual alignment includes:

defining an alignment plane based on an edge element or another input;

aligning the anchor element and multiple other non-connected elements in parallel relative to one another on the alignment plane; and

automatically providing spacing between the multiple elements, wherein the anchor element is a start point for the spacing.

2. The system of claim 1 , wherein the alignment plane is based on a direction represented by gravity in combination with the edge element, wherein the edge element is separately selected by the user.

3. The system of claim 1 , wherein the alignment plane is based on an alignment direction selected on the GUI in combination with the edge element.

4. The system of claim 1 , wherein the alignment plane is based on a plane drawn by the user on the GUI, in combination with the edge element.

5. The system of claim 1 , wherein the alignment plane is recommended based on determining like slopes of the multiple elements, and wherein the edge element is the same as the anchor element.

6. The system of claim 1 , wherein the spacing between the multiple elements is based on a spacing table that defines spacing for different element sizes, wherein elements with different diameters have different spacing rules.

7. The system of claim 6 , wherein a padding setting causes additional spacing to be added to the spacing defined in the spacing table, and a rounding setting causes a final spacing to be rounded to a nearest measurement.

8. The system of claim 1 , wherein the at least one selection includes two rows of elements.

9. A method for aligning elements within a REVIT plan, comprising:

receiving at least one selection on a graphical user interface (“GUI”), wherein the at least one selection identifies at least:

an anchor element on the GUI, wherein the anchor element is one of pipe, conduit, or a duct; and

multiple elements to align with the anchor element; and

visually aligning the multiple elements based on the anchor element, wherein the visual alignment includes:

defining an alignment plane based on an edge element or another input;

aligning the anchor element and multiple other non-connected elements in parallel relative to one another on the alignment plane; and

automatically providing spacing between the multiple elements, wherein the anchor element is a start point for the spacing.

10. The method of claim 9 , wherein the alignment plane is based on a direction represented by gravity in combination with the edge element, wherein the edge element is separately selected by the user.

11. The method of claim 9 , wherein the alignment plane is based on an alignment direction selected on the GUI in combination with the edge element.

12. The method of claim 9 , wherein the alignment plane is based on a plane drawn by the user on the GUI, in combination with the edge element.

13. The method of claim 9 , wherein the alignment plane is recommended based on determining like slopes of the multiple elements.

14. The method of claim 9 , wherein the spacing between the multiple elements is based on a spacing table that defines spacing for different element sizes, wherein elements with different diameters have different spacing rules.

15. The method of claim 14 , wherein a padding setting causes additional spacing to be added to the spacing defined in the spacing table, and a rounding setting causes a final spacing to be rounded to a nearest measurement.

16. A non-transitory, computer-readable medium containing instructions for aligning elements in a computer-aided design application, the instructions causing a processor to execute stages comprising:

receiving at least one selection on a graphical user interface (“GUI”), wherein the at least one selection identifies at least:

an anchor element on the GUI, wherein the anchor element is one of pipe, conduit, or a duct; and

multiple elements to align with the anchor element; and

visually aligning the multiple elements based on the anchor element, wherein the visual alignment includes:

defining an alignment plane based on an edge element or another input;

aligning the anchor element and multiple other non-connected elements in parallel relative to one another on the alignment plane; and

automatically providing spacing between the multiple elements, wherein the anchor element is a start point for the spacing.

17. The non-transitory, computer-readable medium of claim 16 , wherein the alignment plane is based on a direction represented by gravity in combination with the edge element, wherein the edge element is separately selected by the user.

18. The non-transitory, computer-readable medium of claim 16 , wherein the alignment plane is based on an alignment direction selected on the GUI in combination with the edge element.

19. The non-transitory, computer-readable medium of claim 16 , wherein the alignment plane is based on a plane drawn by the user on the GUI, in combination with the edge element.

20. The non-transitory, computer-readable medium of claim 16 , wherein the spacing between the multiple elements is based on a spacing table that defines spacing for different element sizes, wherein elements with different diameters have different spacing rules.

Continuity (4)
Continuation 17461781 · Aug 30, 2021
Continuation 17003935 · Aug 26, 2020
Provisional Application 62891778 · Aug 26, 2019
Related Publication 20240212303A1 · Jun 27, 2024
References Cited (6)
US 6597382B1 · Charles · 2003 [cited by applicant]
US 6701288B1 · Normann · 2004 [cited by applicant]
US 6799608B1 · Koshika · 2004 [cited by applicant]
US 20040143470A1 · Myrick · 2004 [cited by applicant]
US 20080309678A1 · Reghetti · 2008 [cited by applicant]
US 20100088031A1 · Nielsen · 2010 [cited by examiner]