LotSpec: Options Management App for Production Home Builders
Production home builders face the challenge of managing countless predefined options, which they offer to create a custom home building experience for potential home buyers, and to avoid the “cookie-cutter” cliché. To manage these options, many home builders and plan service providers employ workflows that involve complex variations of nested Xrefs, Layer States, or Dynamic Blocks while often discarding the bedrock feature of AutoCAD® Architecture that is Project Navigator.
LotSpec, a free App for AutoCAD Architecture available on the Autodesk® App Store, provides an elegant solution for production home builders to manage options and automatically configure option-specific plan sets. Within the context of an AutoCAD Architecture project, LotSpec provides tools to define a list of available options, assign Option Rules to individual or groups of drawing objects, and “Solve” drawings for viable combinations of selected options, all while seamlessly integrating with Project Navigator.
Essentially, LotSpec is a rule-based floor plan configurator built on principles of Boolean logic. Each option in a project is assigned a code, used to form option rules. Option rules are statements composed of option codes (the variables) and logical operators such as AND, OR & NOT, if needed. Option rules are applied to individual or groups of objects within project drawings; they instruct LotSpec during the Solve process.
The solve process copies drawings, evaluates option rules against user made option selections, returns a True/False result for each rule, and instructs LotSpec to either Move, Stretch, Delete, or Ignore drawing objects accordingly. The product is an option-specific plan set reflecting home buyer selections, done in a matter of minutes. Let’s take a closer look.
On the LotSpec ribbon tab (Figure 1), the Edit Options button displays the Options palette (Figure 2), from which the user can manage Option Groups and Option Selections for the active project. Option groups are used to organize option selections, and consist of a sort order, name, selection settings, and a default option when the group requires that a selection be made. Option selections represent the predefined options available to home buyers, and consist of a name and a code, which is used in forming option rules as mentioned above.
In addition, both option groups and selections may have an option rule applied to them. These rules are used to limit selection availability based on other current selections, preventing the user from mistakenly selecting a nonviable combination of options. For example, as seen in Figure 2, the “Bedroom 4” option has a rule of Not office, and the “Office” option has a rule of Not bdr. These rules prevent both the Bedroom 4 and Office options from being selected at the same time. If either option is selected, the other will be disabled.
Figure 1: LotSpec ribbon tab
Figure 2: LotSpec Options palette
The primary device used to apply option logic within a drawing is the Poly Option tool. When using this tool, objects are displaced from their intended location in the drawing and enclosed with a polyline. The polyline is assigned an option rule, along with displacement points indicating where objects should be moved from/to (Figure 3). During the solve process, poly options are evaluated against selected options. Objects within poly options that return a positive result are moved according to established displacement points, whereas objects within poly options returning a negative result are deleted.
Figure 3: Example poly option for “2 Car Front Garage” option
Figure 4 shows a sample floor plan with many poly options defined. Each blue box represents a poly option, while adjacent arcs highlight the from/to displacement points. Objects in the middle of the drawing (not enclosed by a poly option) are the core features of this floor plan; they are unaffected by the solve process regardless of which options may be selected.
Figure 4: Unsolved floor plan with Poly Options labeled
Poly options can also be used to stretch objects rather than move them during the solve process. The poly option dialog (Figure 3) has a Stretch checkbox used to indicate the stretch. All principles of the move poly option apply to the stretch poly option; the difference being that objects are stretched rather than moved in the case of a positive result, and ignored rather than deleted in the case of a negative result. Figure 3 shows a stretch poly option used to stretch the garage when the “4’ Garage Extension” option is selected, “gar4x” is the option code/rule in this case.
The Object Option tool is used to apply an option rule directly to drawing objects in their current location. As seen in Figure 5, the kitchen island block has a rule of ‘kit_island’ applied to it. This object option instructs LotSpec to delete the kitchen island block during the solve process if the “Kitchen Island” option is NOT selected, or in other words to “Keep If” the “Kitchen Island” IS selected.
Object options are most effectively used with on/off option scenarios, meaning options where no alternative exists for that location, just like the kitchen island. On the other hand, when multiple alternative options exist for a single location, using the poly option tool to displace objects is more effective.
Figure 5: Object option applied to kitchen island block
Solving Drawing / Project
After a list of options has been defined and option logic established within project drawings, the Solve Drawing and Solve Project functions can be used to configure option-specific plans. Solve Drawing, as the title infers, is used to solve a single drawing, and is typically used to test work in progress on the active drawing. Solve Project is used to solve all drawings within a project at once, and to test work in progress, especially in 3D projects where sections and elevations are generated automatically from multiple solved constructs. However, the ultimate purpose of the Solve Project function is to generate option-specific plan sets that reflect home buyer selections. This is used for permitting and construction purposes.
Both Solve Drawing and Solve Project functions initially prompt the user with an option selection dialog (Figure 6). When using Solve Project, or if the active drawing contains Xrefs, the selection dialog will also include a list of project files (Elements, Constructs, or Views) to be solved.
After the user has clicked OK, each of the drawings to be solved are copied to a Solved category within their respective classification (Element, Construct, or View), and appended with a “-SOLVED” suffix. The “-SOLVED” drawings are then opened and configured (or solved) according to selected options and existing option logic established within each drawing. As shown in Figure 7, the resulting solved drawing is a complete floor plan configured to reflect selected options. When solving Section/Elevation type Views, LotSpec automatically refreshes all Section/Elevation objects to reflect solved Xrefs. LotSpec works with both 2D and 3D projects alike.
The option selection dialog (Figure 6) also includes a Mirror Plan checkbox. When mirror plan is checked, after each drawing is solved, LotSpec automatically mirrors all objects in the drawing about the zero-zero axis, with mirror direction determined by the Rotated Plan project setting. Mirroring a floor plan is common as lot conditions often require a specific garage orientation (Garage-Left versus Garage-Right).
Figure 6: Solve Drawing dialog
Figure 7: Solved drawing reflecting selected options
LotSpec follows the standard AutoCAD Architecture workflow in that Elements are referenced by Constructs, Constructs by Views, and Views are placed on Sheets. To automatically produce option-specific plan sets using LotSpec, the solved views are placed on sheets, which then represent the last solved configuration. When the time comes to create a permanent set of plans for a specific lot (or home buyer), the entire Base Project file structure is copied, creating a separate independent project. The new project is opened, and the Solve Project function is used to solve all drawings for desired options. If custom options are requested (ones that have not been predefined), the solved drawings can manually be edited as needed. At this point, the solved project has no dependence on the LotSpec App, and the unsolved base drawings may be purged to prevent overwriting of modified solved drawings.
LotSpec Pro, also available in the Autodesk App Store, is a paid version of LotSpec that includes additional tools. Most notably is the addition of Option Sets, which are used to assemble Master Plan Sets that depict all available options for a particular project, commonly used for estimating and preliminary approvals. Option sets are predefined combinations of option selections and are managed from the options palette. They can be solved to create a library of pre-solved drawings, which are then placed on sheets to assemble the Master Plan Set.
The Pro version also adds functionality to execute Solve Routines during the solve process. Solve routines are custom commands that can be run during various stages of the solve process (pre-project, pre-drawing, post-drawing, and post-project). As an example, built into LotSpec Pro is an automatic dimension command that can be used as a post-drawing solve routine. The automatic dimension command works by detecting blocks placed by the user to indicate exterior openings and wall jogs. After each drawing is solved, the routine finds these blocks and automatically dimensions the exterior based on a predefined dimensioning algorithm and settings specific to the drawing.
Lastly, LotSpec Pro includes a set of advanced option tools. These tools are currently limited to the Property Option and Style Option. The Property Option tool allows the user to assign optional values to object properties based on option rules. Similarly, the Style Option tool allows optional styles to be assigned to AEC objects. Property and Style Options are evaluated during the solve process, with optional values being assigned if the corresponding option rule returns a positive result. Coming soon are option tools for controlling the contents of Text and Attribute objects, Property Set values, and Dynamic Block parameters.
LotSpec for Revit
LotSpec for Revit® is currently under development and will be available on the Autodesk App Store within the coming months. LotSpec for Revit can be used independently of LotSpec for ACA, or in tandem as a hybrid solution sharing a single LotSpec option file. For a sneak peak at LotSpec for Revit, along with LotSpec for ACA training videos, please visit the LotSpec YouTube channel. https://www.youtube.com/channel/UCacLlR3Q0mQMpE_fCV1fX2A.