Tag Archives: gdl

The Shell Tool for Objects

Building the Pendant Globe

The shell tool is one of the most underused tools in ARCHICAD. I use it for almost any shape revolved around an axis, but it can also be used in place of morph and mesh type elements. In the following example, I will show how Grace used the shell to build a light fixture, but it can also be used to model decorative columns, newels, pickets and other trim elements.

Screen Shot 2016-04-19 at 9.21.16 AM

In the above image, the globe for the pendant light is a shell, the “whishbone” hanger is a morph and the pendant is a scripted cylinder. To start, draft the shape of the fixture and split it in 1/2 since the shell is revolved around a center point.

Screen Shot 2016-04-19 at 9.22.23 AM

Next set up the shell tool to trace out & revolve around the drafted shape. Set the structure to basic and the geometry method to revolved. Set the building material, surface and all pens for saving to GDL.

Screen Shot 2016-04-19 at 10.09.35 AM

The shell will be “horizontal”, so it will need to be rotated. Click on the end/center node and use the slant axis option from the pet palette (second icon/top row). Normally rotation needs to be started in a 3d view and completed in floor plan view.

Screen Shot 2016-04-19 at 10.02.41 AM

Scripting the Pendant Hanger

After the globe and bracket are modeled and placed in the correct location relative to project 0,0,0 all that needs to be done is save to an object, then script in the pendant portion of the fixture. This was covered at the last AC East Bay usergroup, and you can find more info from that presentation here.

The scripting portion is actually very simple. Start by adding parameters to adjust the length & radius of the hanging cylinder and mounting base; the four parameters at the bottom of the image below.

Screen Shot 2016-04-19 at 10.22.18 AM

Next, you only need to script two cylinders that reference the parameter variables above. CYLIND is the script for a cylinder shape and it references the cylinder height then radius seperate by a comma. The mounting plate needs to be adjusted to the top of the first cylinder, so an ADDz command that references the first cylinder length is needed.

Screen Shot 2016-04-19 at 9.45.07 AM

I also added a hotspot so the to the 3d script to allow the object to be placed on the ceiling in 3d view.

WWA Library 19 ALERT!

I have made a major change to our custom library for AC19 that will most likely result in missing objects for most project teams.

Our “People Objects” have ranged from mediocre (and high polygon) to embarrassingly bad. To eliminate the intrusion of these distracting objects in our projects I have removed them from the WWA Library 19.

Please use the 3D People Silhouettes from now on; as this will be our modeling/drawing standard.

Screen Shot 2015-12-29 at 12.25.31 PM

Cabinet Objects

This week, Grace has been exploring the use of cabinet objects to represent the doors of a cabinet, allowing a single source for changing the door style and configuration, but leaving the cabinet face and box to a more flexible and detailed modeling element.

Screen Shot 2015-12-10 at 2.23.37 PM

Essentially turning the toe kick and counter portions of the cabinet off. This is a great solution for “future proofing the BIM process“, but requires turning those portions off to achieve the required design and appearance.

You can not set these elements to 0′-0”, as the GDL requires a distance for its script. You can turn the countertop off in the counter edge settings:

Screen Shot 2015-12-10 at 2.24.08 PM


Modeling Wall Ends

As with everything in ARCHICAD, there are several ways (or seemingly infinite ways in some cases) to model any design conditions. When it comes to a wall end wrapped with a finish or trim, there are only a couple of good options. 1) The wall end tool, and 2) a custom profiled column.

Option 1 falls apart in several conditions and for one specific reason. In floor plan, the wall end has lines that you may not want to see, and in RCP (3d Document) the fills and pens do not match. The reason for this is that the walls use building materials, but the wall end tool is a GDL object which uses fills, not building materials. A fill will never clean up with a building material, so option 1 should be considered an unacceptable solution.

This is crap, dont do this!

Option 2 has the advantage of using a building material, cleaning up perfectly with the wall and looking correct in all views. Additionally this option forces the wall length to be modeled correctly to the actual core length, as opposed to the full wall length (face of finish) that is required for the wall end tool to show correctly. The only shortcoming a complex profiled column has is the column does not move with the wall when the wall is extended or shifted; but its a small amount of coordination to ensure the plans, elevations, model, and RCP all show cleanly and correctly.

Thats a nice looking wall end!

Other Library Parts- Use the Lamps

The libraries primarily contribute to the object tool. But libraries contain a lot more than just objects. There are images that are applied to attributes and other classifications of GDL parts not accessible by the object tools settings.

Some of these “Other GDL” parts are components, or objects that can be applied to another object. Most of us are familiar with creating custom door leafs and window sashes, these are components of the door and window tool. But there are other classifications too, elements saved to the library that can be applied to many other tools.

One example that many are not aware of or do not think about, is the lamp tool. Lamps are just GDL objects that have been saved with a subtype that restricts access to the Lamp tool settings, rather than the Object tool. Some of these lamps are basic light sources, great for renderings. Others are actual fixtures, usually very generic in shape and appearance. These can be a great resource into creating a convincing image or rendering without spending the time to model or find a generic shaped lamp. As an added bonus, these objects almost always have a light source, intensity and color associated with them. This can greatly improve the results of your rendering when the lamp settings are turned on in the rendering settings palette.

Screen Shot 2015-09-21 at 9.26.56 AMScreen Shot 2015-09-21 at 9.27.59 AM Screen Shot 2015-09-21 at 9.28.20 AM

Some of the lamps that work very well for generic visualization purposes are the ceiling fixture, pendant fixture and sconce lamps. Other lamps in the default libraries do not have many shape options other than size and surface.

BIM Element Wants and Needs

In recent project audits and reviews I noticed a few projects that had disconnected and un-parametric elements and objects to represent very simple model elements. A toilet, for example, with a separate drafted floor plan and 3d/elevation view.

It was explained that this was done to show the manufacturers specific dimensions, shape and style in plan. Although there are ways change or override an objects plan symbol to show exactly what is perceived as necessary, this raises a much bigger question. What really is necessary in a drawing/model element? We may want a plan symbol or elevation of an element to match identically to a manufacturers drawing, but is that really necessary? I would say an exact graphic representation to a manufacturers spec is very low on the priority list for a BIM element, at least in most cases.

The Needs

So what are the priorities for a BIM element? We can assign a hierarchy of what a BIM element should represent to better understand.

  1. A BIM element needs to be parametric with a single element representing all views. Without this criteria being met before all else, the drawings are prone to redundancies and inconsistencies, and we loose almost all efficiencies of a BIM model and BIM process.
  2. A BIM element should match the overall size of the manufacturers specifications. This ensures that critical clearances and space requirements of a specific model element are met. This is overall dimensions; because a basic 3D cube with an associated plan symbol may meet criteria #1 and would be far superior to disconnected 2d plan and elevation views of an element.
  3. A BIM element should be placed in the correct location as its overall dimensions relate to the space it will be installed/built in. It should be in the correct location in plan, elevation and 3d views to show its relationship to all other model elements.

After these criteria are met, an element will be consistent in all views, it will be easily managed, maintained and edited, it will represent the correct size and represent the design intent. Anything else a model element requires is not a project need, but simply a “want” of the designer.

What does this all mean? Simply that in most cases we do not need a manufacturers specific element. Rather we need a generic element that represents the manufacturers size and the designed location of an element.

The toilet, as in the initial example, could be a basic out of the box ARCHICAD toilet that was set to the manufacturers size and placed correctly in plan. This would be enough to convey the design intent and document the building sufficiently.

The Wants

There may be some obvious additions to the hierarchy above, but rarely if ever should these take priority over the needs of a BIM element.

  1. Elements that are not part of the documentation, such as furniture or decoration used for visualization only may not require much thought towards what the plan or elevation views look like, but only need to show a quality 3d view. Elements that are placed only for BIMx or renderings would be a waste of time to build a correct plan symbol and parameters for listing into the element.
  2. Elements that require a manufacturers specific appearance to properly leverage a models visualization to make selections. Appliances and plumbing fixtures may meet this exception, but these elements should also be modeled so that their plan symbol, elevation view and 3d representation may meet the BIM element criteria above.
  3. An element that needs a higher level of accuracy to show relationships to finishes may require additional criteria, but may not ignore the top 3 criteria listed above. For example, a wall mounted faucet may need to show relationship to grout joints. So an additional element criteria would be manufacturers detailed dimensions. For this type of element all other criteria must be met; which means a custom object would need to be built or downloaded to maintain the integrity of the model.

Thinking Outside the Box

A few weeks ago I gave an example from Rina & Maggie’s project using a fence object, complex profile, or morph object in place of multiple column elements.

Here is another example of that creative thinking. Using that same fence object Matthew placed dentils on his crown, making light work of what would have otherwise been incredibly tedious to place individual dentils. Of additional benefit, the spacing and “slat” dimensions are set right in the object, so spacing and sizing changes can be made and overall spans can be adjusted globally or per section of crown.

Screen Shot 2015-06-26 at 2.13.49 PM

Granted, we don’t do a lot of trim packages involving dentils, but this is the sort of out of the box thinking that can gain massive amounts of efficiency for any design. Using the right tool for the job is crucial to maximize efficiency, precision and flexibility.

Screen Shot 2015-06-26 at 2.14.52 PM

Sketchup as GDL

A while ago I gleaned a bit of GDL object advice from Nathan Hildebrandt from Fulton Trotter. He suggested saving a 3d model from ARCHICAD to Sketchup, then merging it back in as a GDL object. I think his use of this method is more large scale context elements, but I want to focus on smaller/simpler objects. I’ll get to the advantages of this in a minute, for now here is the process:

Create your object using morph, wall, slab, beam, column and roof elements as you would any other 3d GDL element. Make sure all surfaces are properly placed and aligned. Place the main image surface’s element and origin point at 0,0,0 xyz coordinates. When you go to save it, rather than saving a GDL from the library menu, save as an SKP from the File > Save As menu.
Screen Shot 2015-06-23 at 8.13.50 AM

Next import the file back into ARCHICAD using the File > File Special > Merge command. See the article on working with Sketchup for more detailed advice on this process.

Screen Shot 2015-06-23 at 8.09.56 AM

Now for the advantages of this method of saving objects. The first advantage is you do not need image specific surfaces, once the Sketchup file has been imported the surface can be deleted, all surfaces are embedded in the object (but will be added back to the attributes if you convert the object back to morphs). The second advantage is, since the surfaces are part of the object and not pulled from the attributes, you do not need to worry about alignment of the surface to the object, it will always maintain proper surface position. The final advantage of this object type is the image will scale automatically with the image size. With a normal surface based object you would need a separate surface for each different sized element.

Screen Shot 2015-06-23 at 8.12.24 AM

Screen Shot 2015-06-23 at 8.12.50 AM

So what would we use this trick for? As I said, I think Nathan’s Tweet was suggesting this solution for whole buildings & context, which is a good solution if we need detailed context without bringing in additional attributes. I like this solution for things like TVs, pictures, posters, signage, rugs, etc. Any element with a non-repeating pattern or surface that will be placed multiple times and resized could benefit from this object type.

Now for the disadvantage(s). Unlike a traditional object type, the surfaces do not seem to be editable once the SKP file is merged. All scripts seem really basic for an object like this, so I am working on solving this problem to allow some surfaces to have an adjustable parameter, and will follow up with a post or sample script when I solve this final piece.
Screen Shot 2015-06-23 at 8.13.31 AM

Keeping it Clean

If you are working on a project and notice every time you open or refresh your library manager you get a Library Loading Report, pay attention to this post!Screen Shot 2015-06-02 at 12.32.02 PMThis palette comes up automatically if you have Missing, Duplicate, Temporarily Missing or Substituted objects. It is important to keep as many of these library mis-handlings to a minimum, but this post will focus specifically on Duplicate Objects. Duplicate Objects can be a problem for three main reasons:

  1. Its annoying to get a Library Loading Report every time you open or refresh
  2. It can cause objects to show up incorrectly
  3. It can slow ArchiCAD down

Moving past point 1, because thats obvious, objects can sometimes show up incorrectly. This is because the object may revert to default settings for lines, fills, pens, surfaces, etc. on switching back and forth between the two (or more) instances of that object, component or image loaded to the library. Duplicates can also slow ArchiCAD down. This is not very common, but a file I recently cleaned up had over 2,000 duplicates. Once the afflicting library was removed the project sped up significantly. This post will not delve into cleaning that kind of mess up.

So how do you clean up duplicates before they get this bad? When you get the library loading report, fix the problem as soon as possible.

Step 1:

Get a list of the duplicate Objects, Components and Image Files. This is as simple as selecting the Libraries with Duplicate Objects folder in the Library Loading Report, select the info box (bottom right corner) and screen shot or write down the duplicate element names. In the library manager you will see the same Libraries with Duplicate Objects folder, so you can access this easily at anytime in the process.Screen Shot 2015-06-02 at 12.32.25 PM

The Library Manager also lists which libraries contain duplicates. In the example above there is one duplicate from the Embedded Library to the WWA Library 18.2 and one in the Embedded Library to the Embedded Library. This is evident by the (1) at the end of the Library name.Screen Shot 2015-06-02 at 12.32.41 PMFrom the information palette that results from selecting the library in the Loading Report or Library Manager, be sure that the view options are set to List of all duplicates: to ensure all objects, placed or not, can be removed from the libraries.

Step 2:

Next, simply weed out the problematic objects. If the embedded library is host to one or more of the duplicates this tends to be the easiest place to remove them. In teamwork projects, if the BIM Server Libraries are the culprits the server libraries will need to be cleaned up and refreshed, please inform me if this is a problem in your file and I will resolve it on my end.

Screen Shot 2015-06-02 at 12.41.26 PM

Often, if unsure of which object to remove I will save a back up to my desk top before deleting the problematic element. This can be done with the save icon (second from the left) above the reserve/release button of the Library Manager.

Step 3:

Screen Shot 2015-06-02 at 12.41.54 PMThe last thing to do is to Reload Libraries and Apply all the Changes via the green circle/arrow symbol below the library window. Verify the duplicates are no longer seen in the Library Loading Report.

Screen Shot 2015-06-02 at 12.42.21 PM

Slatted & Screened Walls

Todays post is inspired by some creative modeling by Maggie! Unfortunately her project was redesigned before I could get a screen shot of how she used a fence object to model slatted walls, but it got me thinking of other ways to model repetitious elements, other than dragging & managing multiple copies of columns, beams, etc.

Screen Shot 2015-05-01 at 4.10.15 PMThe image above is of three slatted elements modeled with three separate tools. The left-most slats are morph elements boolean-ed into a single morph object. These have the advantage of easily extending both vertically and horizontally as a single element. The morph element can also be reoriented to a horizontal or even diagonal element with a single rotation. The profiles need to be simple and consistent or managing the element could be tedious and inaccurate.

The center slats are a complex profile with repeating shapes applied to a column. Advantages for this method are the ability to slope the column, change the shape, size & spacing of the boards with a quick redraft of the custom profile and easy extension of the height and width. The profiles can be more complex than the morph element.

The right-most slats are a fence object. This object has an advantage of being the easiest to change the element width, board spacing and size with no redrafting or manual object editing. Its disadvantages are that the boards must be oriented vertically or horizontally and can only be square or round profiles depending on the fence element used. The plan symbol for these objects can also be limited, which may be the most discouraging factor for this option.

All three options are a cleaner and more manageable solution to separate columns individually placed and coordinated.