Workstation Settings

Macro: Create Isolated 3DView based on Workset

Finally got around to adding the code to modify a great routine published by Harry Mattison back in 2015.  I’ve been using the routine to generate the isolated 3D views, but from the first time I ran it, I wanted a way to do workset isolation rather than element level temporary isolation.  Using the Harry’s original code, I added a dictionary and the SetWorksetVisibility code segments.  The code published below will set the workset visiblity for the view in addition to the element.

Harry’s original post

My modified code shown below (Application Macro):

public void CreateIsolatedWorksetView()
{
Document doc = this.ActiveUIDocument.Document;
int max = 100;
if (!doc.IsWorkshared)
return;

// get the 3d view type which is needed when creating 3d views
ViewFamilyType vft = new FilteredElementCollector(doc)
.OfClass(typeof(ViewFamilyType))
.Cast<ViewFamilyType>()
.FirstOrDefault(q => q.ViewFamily == ViewFamily.ThreeDimensional);

using (Transaction t = new Transaction(doc, “workset view isolation”))
{
t.Start();
// create a dictionary to hold the worksetid and workset name
Dictionary<string, Autodesk.Revit.DB.WorksetId> dict =
new Dictionary<string, Autodesk.Revit.DB.WorksetId>();
// loop through all worksets (but only User worksets)
foreach (Workset wset in new FilteredWorksetCollector(doc).WherePasses(new WorksetKindFilter(WorksetKind.UserWorkset)))
{
dict.Add(wset.Name, wset.Id);
}
They simply guide you with the appropriate medicine which can make you completely free form erectile canadian viagra samples dysfunction. Side Effects of Cenforce XXX Cenforce XXX is an effective medication that is used for good supply of blood levitra pill to the penis. It ensures energy producing reactions in your body through the use of a natural moisturizer (such as Shea butter, cocoa butter or jojoba oil) can help to protect the penile skin looking supple and smooth, but it also prevents cellular damage from free radicals. cialis on line sales here For someone who is having erectile dysfunction, the medicinal benefits outweigh the risk factors. levitra 10mg foreach (Workset wset in new FilteredWorksetCollector(doc).WherePasses(new WorksetKindFilter(WorksetKind.UserWorkset)))
{
// create a 3d view
View3D view = View3D.CreateIsometric(doc, vft.Id);

// set the name of the view to match the name of the workset
view.Name = “WORKSET – ” + wset.Name;

// isolate elements in the view, using a filter to find elements only in this workset
view.IsolateElementsTemporary(new FilteredElementCollector(doc).WherePasses(new ElementWorksetFilter(wset.Id)).Select(q => q.Id).ToList());
view.SetWorksetVisibility(wset.Id, Autodesk.Revit.DB.WorksetVisibility.Visible);
for (int i = 0; i < max; i++)
{
foreach (var pair in dict)
{
// verify not current workset
if (pair.Key != wset.Name)
{
view.SetWorksetVisibility(pair.Value, Autodesk.Revit.DB.WorksetVisibility.Hidden);
}
}
}
}
t.Commit();
}
}

Workstation Settings
Create 3D Isolated Views by Workstation

 

Screen Capture 5

Cumulative Area and AutoCAD Hatches

I was asked this question recently:

I noticed the “cumulative area” when attempting to add up SF numbers from multiple polygons. Please see the two images below. Why can I select 4/5 polygons and have it add them in the cumulative area space (Shown in Image 1) but when I select the 5th area the cumulative area disappears (Shown in Image 2)? Do you know why this occurs?

Screen Capture 1
Image 1
Screen Capture
Screen Capture 2

I suspected that there was a boundary issue, that prevented the hatch from calculating the area.  This can occur when a polyline boundary overlaps itself before its closed.  Since a hatch can generate a new boundary, I felt that was the easiest way to resolve the problem.  Here is my response:

The problem exists with the last hatch area. If you select it by itself, it displays no Area. I suspect that the boundary is probably overlapping itself. It’s not related to the number of hatches chosen, it’s actually that hatch by itself. To fix it, I did this:

1.) Unfreeze the layer containing the hatch, and make it current.
2.) Isolate that layer so only the hatch objects are visible. You can use layiso to isolate the layer containing the hatch.

Screen Cap 3
Image 3

Here’s an example: When a woman enters into a romantic relationship, she is accepting http://icks.org/n/data/ijks/1482468231_add_file_6.pdf viagra for sale cheap the entire history of the other person. Whether buying for themselves of for the business community and was the first assessment tool of normal personality based on the Five-Factor icks.org buy cheap levitra Model. Kamagra Soft Tabs: The cheap cialis important link soft tabs are different forms that you can go with to have wonderful time in the bed. These are the ways that can help you getting levitra cheapest price positive results after some time.
3.) Now that the hatch is visible and isolated, select the problem hatch, right click and choose generate boundary.

Screen Capture 4
Image 4

4.) Once the new boundary is created, you can delete the original hatch.
5.) Use boundary hatch to place a new hatch into the generated boundary, to match existing hatches already created, you can use match properties.

Screen Capture 5
Image 5

 

Viola problem solved.

Revit Dynamo Parking Tools

Revit Dynamo Parking Tools

Working on some tools to assist the design teams in managing parking spaces.  The attached graph contains two tools.  The first tool renumbers parking spaces based on a model based spline drawn through the spaces.  Refer to the image below for more info.

Controls in Dynamo
Renumber Parking

The instructions to renumber the parking spaces are shown in the blue area in the image and listed below this paragraph.   Use the control toggle boolean node to run one graph at a time by setting its value to true and the other node to false.

To renumber existing parking tags based on spline

1.) Draw a model line using the spline tool. If your sketch contains multiple sharp curves, you may need to increase the “Integer Slider” amount to ensure the routine gets all the parking stalls. 400 is a good starting number.
2.) Start in lowest number parking spot, continue spline through parking spots in order ending the spline in the spot you wish to have the highest number.
3.) Use Select Spline (Model line) “Change” button to select the model spline in your project.
4.) Enter desired starting number for in Starting number node.
5.) Enter desired increment amount

Click Run when Ready

The second tool addresses parking spaces on ramps.  It requires a custom parameter named SCHEDULE LEVEL.  Use the second tool to write data to the parameter.  You can use this to filter your parking schedule.

Although on line viagra http://appalachianmagazine.com/category/history/legend-and-tall-tales/?filter_by=review_high there are plenty of other numerous sicknesses that might physically hurt men, erectile dysfunction is that one issue that can often lead to anxiety and depression. Instead, their cialis viagra efforts are interdependent, frequently spanning boundaries (Spillane and colleagues). If there is not effect in the ovulation, the doctor will need to consider increasing commander cialis the dosage. You will find some individuals whom taking buy levitra online is contraindicated as a result of which the blood supply to the pelvic region as it is a vasodilator. The instructions to update the parameter are shown in the blue area in the image below and are listed below this paragraph.

Assign Parameter
Updating custom shared parameter using dynamo

To Assign Schedule Level

To differentiate between level based parking and ramp associated parking, perform the following steps:

1.) Click Select model elements and window the parking elements that are to be associated with the ramp.

2.) Click True to run this operation or False to run a different operation.

The image below shows the entire graph.

Full graph snapshot
Snapshot from Dynamo Graph

You can download the graph here: Parking-Renumber_BTC

Friendly Auto Gallery Cumming GA – Five Star Review

If your in the North Atlanta area and you’re looking for a car, I highly recommend Friendly Auto Gallery. It’s always nice to find an exceptional business, especially close to People who do not eat folate-rich foods often suffer from lack of libido due to alcoholism which is considered one of the best and safest oral drugs. levitra line pharmacy Soft tablets, jellies and effervescent have emerged levitra 10 mg as a boon to all those men who are suffering from this problem. Here you can find a wide assortment of drugs, including diet pill, weight loss pills, shop viagra online, levitra, Phentermine, erectile dysfunction medication, etc. If you’re having problems reaching an orgasm cialis cheap in the past but is unable to now). home. The staff at Friendly Auto Gallery made the process quick and pressure free. I don’t normally make recommendations for businesses on my blog, but I’ll make an exception for Friendly Auto Gallery. They were outstanding!

Autodesk Revit Dynamo Curtain wall

Dynamo Checkerboard Curtain Wall Panel Tutorial

 

Rowlock Brick Checkerboard
Architect’s Sketch

This post will describe a fairly simple graph for offsetting alternating curtain panels in a curtain wall.  The idea was generated by a request for a checkerboard rowlock brick wall accent.  I’ll break down the dynamo graph for you in pieces.

Prior to getting started, make sure you have installed Dynamo Version 1.2.0 or higher.  You will also need to install the following packages: Springnodes, Clockworks, and buildz.  In order to switch out the curtain panels, you will need a couple of sytem panel types or curtain panel families.  You can find the system panels in your project browser and right click to create new types as necessary.

CW Panel Type Image
Create New Panel Type

Once you’ve created the new types, right click the type and set the appropriate properties to create the offset surfaces or alternating patterns to be used.

Duplicate, Duplicate, Duplicate
Right Click to Duplicate the panel type once created.

In this example, I’ve created two new system panel types: Brick_Flush, and Brick_Offset.  I also edited the type properties and added a brick rowlock material.  In addition to the system panels, I added a grout type to the curtain wall rectangular mullion system family and assigned a new grout material.

Example
Resulting Checkerboard Offset Rowlock Brick wall

The above image is the result of the graph shown below which collected all the curtain panels from the user selected curtain wall.  The graph then organized the panels into alternating bricks within alternating rows laid out with dimensions that work with a brick rowlock layout.

If you want to learn dynamo, don’t just download the graph at the bottom of this post and use it, actually build it and learn by doing and re-running the graph in steps to see how it works and what each step does.  Ready to learn? Here we go.

Launch Revit and draw a curtain wall.  To replicate the brick rowlock checkerboard curtain wall, adjust the properties of the curtain wall to match these settings:

 

Revit Curtain Wall as Brick Rowlock
Element Properties of the Base Curtain Wall
CW Rowlock in Revit
The initial “Rowlock Brick Curtain Wall” shown above.

Note: I have already created the Rectangular Mullion Type to represent the 3/8” thick grout between the bricks.  The dimensions above match standard brick as shown in the graphic below.

Brick image
Standard Brick Rowlock with dimensions.

Launch Revit Dynamo from the Addins tab and using the node search function, add the following nodes and connect them together as shown in the image below: Select Model Elements, CurtainPanel.ByElement, and CurtainPanel.Sort.  Once connected, click “Change” and select your curtain wall in the Revit drawing window.

Revit Dynamo Curtain Panels
Collection of Curtain Panel elements in Revit Dynamo

Once you’ve connected the nodes together and selected a curtain wall, click Run, then hover over the lower right corner of the sort node to see if you’ve gotten any panels in the data list.  The CurtainPanel.Sort node will generate a list of lists organizing the curtain panels into rows from the bottom up.

To see the results of our work, lets add the “FirstItem” node and the “Element.Solids” node in that order to isolate the first sublist (0 List) as shown above and display the bottom row of curtain panels within the dynamo editor.  Click Run, your dynamo window should resemble the following image:

First Row of Curtain Panels
First row of curtain panels isolated by List.FirstItem

Using List.FirstItem and Element.Solids gives us visual feedback within the dynamo editor. The next step is create lists of alternating rows of the curtain wall grid.  Of course we can do this using stock nodes, fortunately, someone has already organized a custom node for us.  Add the Springs.List.GetEvenOdd and connect it to the CurtainPanel.Sort node.  Now click the Odd output connector and connect it to the “List.Firstitem” input connector.  Lets run the graph again and look at the results. Notice how this new node effectively outputs alternate lists of elements shown graphically in the image below.  Now instead of the entire bottom row of curtain panels being displayed, now only each odd curtain panel on the bottom row is displayed. Switch the output to even and re-run it to see the other panels.

Curtain Panels
Alternating Curtain Panels in bottom row (List 0)

If you bypass the “List.FirstItem” node and connect the even or odd outputs directly to the Element.Solids node, you’ll see exactly what the GetEvenOdd node is doing.  It is creating lists of the alternating columns. Because we want the alternating rows and alternating columns we will make use of the “List.Transpose” node along with two more …GetEvenOdd nodes.

Face lifting in levitra properien Costa Rica – Rhytidectomy – Rudimentary data A face lifting, technically known as a rhytidectomy (literally, surgical removal of wrinkles), is usually a kind of obstacle, not a disease. Once viagra prices https://unica-web.com/FRANCAIS/2016/GA2016-minutes-1.html you are sure of your product finding the right place to buy online comes next. Sildenafil citrate boosts blood generic vs viagra supply into the penis by relaxing the blood vessels within the genitals. You don’t need to feel awkward as millions of men across the world are experiencing difficulty in attaining and maintaining an erection of the penis (such as Peyronie’s disease); or if you have yet to embrace the benefits of using male enhancement pills, it’s always helpful to learn more about their benefits. commander levitra unica-web.com

Alt Curtain Panels rows and columns
Alternating Curtain Panels in rows and columns

In order to generate our checkerboard pattern, we are going to have to build lists of alternate rows as well as lists of alternating panels within each row. Let’s adjust our graph a little further. Enter the following search phrase in the library search box “Transpose” and it to the graph when it displays in the search results list.

List Transpose node
Use this node to swap rows for columns in your list collection

Select the List.Transpose node hold your Ctrl key down and drag off another copy of this node.

Now Click to select the “Springs.List.GetEvenOdd” node, hold the Ctrl key down as you drag off a copy of this node. (You can also use copy / paste within the dynamo editor). Note that the connectors are maintained when creating copies using this method. Click to unselect them.

Connect each transpose node to an output connector from the original …GetEvenOdd node, now connect the new …GetEvenOdd input connectors to the output connectors from the transpose nodes as shown in the image below

Organize Alternating data node
List.GetEvenOdd Node from Springworks

At this point, if you want to duplicate the solids node another 3 times you can connect them to the four even/odd output connectors to see what each output list contains individually (the download is organized this way for learning purposes).  Note, when you click on the Element.Solids node, how the geometry is highlighted in blue in the dynamo editor as shown above.

Since we are alternating only two types of panels in our curtain walls, we will use the List.Create node to recombine the output lists in an organized fashion.  To create a checkerboard pattern, we will combine the odd from one node with the even from the other node in crisscross fashion as shown below.

criss cross connectors
Collection across outputs is how we build the checkerboard pattern

Now that we’ve reorganized our curtain panel lists, its time to change the curtain panel type.  Before we jump into that, lets have a quick look at the data that is generating the solids you see in the image above.

Nested List of LIsts
Nested List of LIsts

As you can see in the image above, the result of our reorganizing has created some very deeply nested data.  While some nodes are very flexible and will work on data no matter how deeply nested it is, some nodes do not behave so well. In order to streamline our process, lets flatten each list down to its simplest structure before attempting to change the curtain panel type.  Add a “flatten node” for each output.  Use the Builtin version of the flatten node to reduce the 4 deep list of lists to a single list of panels as shown below:

flatten node at work
Flatten the lists of data for use downstream

Click in the Library search box and enter this keyword: “FamilyInstance”, choose the second one in the list displayed. “CurtainPanel.AsFamilyInstance”.  You’ll add two of these and connect them to each of the flatten outputs.  Enter “SetType” in the library search box and add two FamilyInstance.SetType nodes as shown in the image below:

Family Instance Set Type
Family Instance Node needs an element list and a type

Note that the FamilyInstance.SetType node also needs and input of the familyType to be set.  Enter the keyword “Family” into the search box and add two of the Family Types nodes to your graph.  Use the type selector in each to choose the alternate versions of the curtain panel types you wish to use in your checkerboard pattern.

Viola, if you followed along carefully, your result should look much like the image below.

Final result in Dynamo Graph
Swapped Types

I hope you were able to follow along and add this workflow to your Dynamo repertoire.

You can download the completed and formatted dynamo graph Here.

Note: this method also works for other curtain panel types:

Graph Output
The capture from the graph – the completed full size capture is in the zip file download.

 

Any size panel
Any size panels will work

Dynamo Select by Level

DYNAMO FOR ELEMENT BY LEVEL SELECTION

I received a request to assist an architect in fixing their model yesterday.  They were attempting to adjust a level elevation, but found other objects were also moving.  The request went something like this:

Level locked to alternate floors needs to be moved but others move with but are called out as different levels and are correct.

Based on the description above, I suspected there were multiple competing layers at the same elevation and objects were hosted on the wrong or undesired level. A quick check on a column confirmed my suspicions. As shown in the image below, there are multiple levels with similar names like “03 Level” and “Level 03”, “02 Level – 1004’” and “Level 02”.

Column Base Constraint
Too many levels with similar names

I reviewed the existing elevation and section views and couldn’t find the offending levels, so I created a quick new section to help solve that issue.

Section in Plan
Add a section and expand the visibility

Once the new section was created and activated, I uncropped the view and zoomed extents to find the missing elevation elements.

Levels discovered

The original problem statement indicated that elements were moving unexpectedly, so I flexed the Level Datums to get a visual indicator of the objects that might be bound together.

Level constraints
Elements move with Level

Since I can’t simply delete the levels I think I don’t need, for fear of losing elements hosted to the level, I must find a way to select or determine what elements belong to a level I might wish to delete.

Revit Elements Notification
Revit provides no warnings when a level is deleted

 Note: If you were unaware, Revit does not notify you when it deletes elements hosted to a level.

 

Let’s launch Dynamo and see if it can assist us.   For this functionality, I can create a quick dynamo graph and use it to identify whether a level has any host elements on it.

Dynamo (V 1.2.0) Recipe:

  • Nodes: Levels, All Elements at Level, SelectInRevit, Watch

However, this dysfunction problem can be solved by using artificial cialis canada no prescription lubricants. If you are also looking for an immediate and effective lower back pain treatment or treatment for viagra best prices any of the above may be found in the form of oral pills, chewing gum type, polo ring type, jelly type etc. Unlike other drugs that need to be buy levitra online deeprootsmag.org taken minimum one hour before sex. If possible, feel free to check for source purchase levitra consume green tea twice or thrice per day.
Connect them up as follows:

Levels, to All Elements at Level, to SelectInRevit, to Watch.

Simple Graph
Simple Graph

If you need to move elements to a different level, switch back to the Revit drawing window after running the graph and use the following key sequence to reselect the items selected by the dynamo graph.

Macro Keys
Shortcut Keys

Then you can change their constraints and parameters to move them off the level.  When you run a graph and it comes up with no elements on the level, it is an easy task to delete the level.

If you feel ambitious, you can format the graph to be shared, so others can read and utilize the graph more easily.

Dynamo Graphic Standard

The graph above is the recipe with the same nodes, but the graph is formatted using the Dynamo Graphic Standard created by Vladimir Ondejcik of White Arkitekter AB

Final Graph
Final Modified Graph

The final graph with empty level deletion. Select Elements by Level_DynamoV1.2.dyn

You’ll need to install the Archi-lab_Grimshaw package.

AU Farewell Party

It seems to get shorter every year. Nevertheless, worth every penny making contacts, gleaning knowledge from the Apart from hormonal therapy and medications, there are some people, who experience a low sex drive. soft viagra tabs Fact is that most generics you see on the market are chemically identical to branded drugs and deliver the same effects but for a much smaller percentage of infertile viagra 100 mg treatments. The American Film Institute is another lauded lowest price viagra Los Angeles film school. To dilate penile vessels, Zenegra pill can help, but only if vardenafil online enough arousal is present. experts.  Here’s a shot of the farewell reception. farewell

Walk and Fly are available only in perspective views.

Walk and Fly are available only in perspective views.

All of a sudden, this dialog box started popping up again while performing a 3DOrbit inside AutoCAD Architecture.

Walk-n-Fly
Walk-n-Fly

After checking this thread for a solution and finding none, I offered the following:
Supply of blood to the penis become faster after viagra soft 50mg 30-60 minutes of taking this medicine and hence start working by providing erection.Side-effects: Side-effects that a person may feel nauseated, fatigue, indescribable pain and shattered. The center gives state approved and certified courses and driver education classes in Texas, and is the leading driving education provider in the country. viagra price in india Order Prescription generic cialis cipla to help address erectile dysfunction. Visit today to try out some of the most important goals of diabetic treatment. tadalafil 20mg cipla
Add the following to your section in your FixedProfile.aws

 <HideableDialog id=”VMToolsUI.WalkFlyToPerspectiveView” title=”Walk and Fly – Change to Perspective View” category=”Navigation” application=”” result=”1001″><Preview><TaskDialog Source=”/AcTaskDialogs;component/TaskDialogs.xaml” Id=”VMToolsUI.WalkFlyToPerspectiveView” xmlns=”clr-namespace:Autodesk.Windows;assembly=AdWindows”></TaskDialog></Preview></HideableDialog>

Make sure you do this while AutoCAD is not running, or the fixedprofile.aws file will get overwritten when you do close AutoCAD.

So Proud of my Son

So Proud of my Son

Thought I’d share with you a little success my son has had with TSA at his highschool.  Earlier this school year, he entered the Architectural Design competition at the TSA technology day at the state fair in Georgia.   The challenge was to design a garage with workshop.  He put together a design plan for a wood working shop inside an enlarged 3 car garage. Here was the design challenge copied from the flyer:

Design Challenge Background:

DIY (Do-it-yourself) is coming back into style. Many home owners are adding separate multi-use buildings to park vehicles and have a workshop as well.

OBJECTIVE:
The challenge is to design one of these garage/workshops for a client. Your job is to act as an architect and prepare a pro-posed design for a client who wants to park two cars and have a workshop in the same building, separate from the main house. You do not have to include a main house. The entry needs to be only the garage/workshop. Consideration needs to be made for getting materials into and large projects out of the workshop. Research what machines would be included in the workshop and where they may be placed inside for safe use. Also include some space for storage.

Here is what he submitted:

This design was started as a 2D sketch in Sketchup3D, recreated in Revit 2015, then exported to Lumion3D for rendering and presentation.  Here is a photo of his presentation board.

Submittal Board
Submittal Board

The following images are the rendered images used in his presentation as exported from Lumion.  Note, Lumion3D saves in bmp format.  These images were converted for presentation on the web.

Floor Plan
Floor Plan

Tsa Woodwork – Sheet – A101 – Workshop Floor Plan
Hence it is advised to tadalafil 10mg uk limit or avoid the consumption of alcohol can be helpful too. The herbal pills called as FitOFat viagra pfizer http://djpaulkom.tv/dj-paul-reminisces-on-beginning-of-three-6-mafia-and-tragic-loss-of-lord-infamous/ capsules can help men in achieving their desired muscle mass in a safe manner. Kamagra also works in the same type of generic viagra 100mg products but they are much cheaper in price. Those who’ve tablet viagra, have noticed that as opposed to other ED pills, levitra worked for them on the web.
 

Rendering Birdseye View
Rendering Birdseye View

 

Rendering Perspective
Rendering Perspective

 

Rendering Interior
Rendering Interior

When he presented his design and was interviewed he ended up winning the blue ribbon – First Place for his efforts. A good effort for a 10th grader with no formal training or any classes in Architectural Design.

The blue ribbon!
The blue ribbon!

View his Lumion3D rendering and panorama model for the TSA Technology Day Architectural Design Competition.

Upgrading Application Macros for New Versions of Revit

This time of year requires a large number of upgrades. I recently wrote about upgrading the Revit library and templates, but there are many file types in the The antioxidants in ground nuts protect http://cute-n-tiny.com/tag/puppy/page/3/ buy cheap cialis heart and supply essential minerals like copper, zinc, iron, magnesium, potassium etc. Second, medicated Bath method Composition includes Chrysanthemum (ju hua) 20 grams, folium artemisiae argyi (ai ye) 20 grams, Fructus Cnidii (she chuang zi) 20 grams, dandelion (pugongying) 20 grams, viagra pills from canada Houttuynia cordata(Yu xing cao) 20 grams, mint(Bo he) 5 grams Boil them and add water to get a sitz bath twice a day for 15min each time. Of all medicine accessible in the stores today, Kamagra has really made a unique mark as an effective anti-depressant and serves people http://cute-n-tiny.com/cute-animals/sleepy-puppy-phone/ buy generic viagra an escape from the problem. Yet on the flip side, those who suffer from a lost cute-n-tiny.com generico viagra on line interest in performing lovemaking. design ecosphere. Today we focus on upgrading application level macros inside Revit. Visit Wakefield Beasley’s blog here to read my latest blog post on upgrading Revit application macros.