Friday, April 20, 2012

Fine-tuning of material surface patterns

When materials with surface patterns are used, there is a good chance that you need to tweak its position, and perhaps even rotate it to some degree.

With system and in-place families, this is very easy to achieve, the latter being a little more tricky. So let’s take a wall with a surface pattern for example. You can tab and pick one of the lines and nudge/move/rotate as desired. Even the align tool works like a charm in cases like this. In fact, we use it all the time for tile-work in interior elevations (filled regions are a bad idea for this purpose as you cannot control the fill position/orientation, so painting the wall with a material and fine-tuning the joint locations represented by the surface pattern, is a much better solution). You might be mostly familiar with doing this on ACT ceilings, where you control the position and orientation of the grid by fine-tuning the surface pattern positioning.

When it comes to in-place families, Revit doesn’t allow you to directly control surface pattern positioning. To achieve this, you have to be in in-place edit mode. This is a very subtle, but important fact as you’ll see shortly.

Unfortunately with component families, there seems to be no way to adjust material positioning in the project environment. But recall my point above about the subtle fact…you can adjust the surface pattern in the in-place family editing environment, so why not add some parameters to expose this functionality in the project environment while editing a component family?

As it turns out, you can only adjust the pattern rotation, which is better than nothing. It is really finicky to get it to work and you have to do it a certain way or it won’t work properly. I could not find a way to modify the position of the the fill in the x-y directions, no matter what I tried: ref. planes, ref. lines, constraining to the geometry etc. None seem to work. However rotation works well and I was very surprised to find that even when you change material or the surface pattern (from orthogonal to slanted etc.) in the project environment, the functionality kept working and did not cause the notorious “can’t create type” error.

It is very peculiar to note that you cannot actually flex the rotation parameter in the family editor more than once, or the family will break. Here are the main rules you have to follow:

  • The angular parameter has to go from a reference plane to one of the pattern’s lines. I found it easier to use an orthogonal crosshatch while building my test;
  • Make sure to set the angle to zero before applying the label to the angular dimension or it’ll somehow try to rotate the pattern (this is definitely a bug) and cause a “constraints not satisfied” error;
  • When loading the family into the project environment, the angular parameter has to be zero, otherwise the surface pattern comes in skewed. I noticed that if you load a family with a pattern rotation of say, 10 degrees, the pattern in the project will actually be rotated at twice that amount (20 degrees in this example) and the family doesn’t react when changing the angle between 0 and double the original angle (20 degrees in this example). So make sure the angle is zero when you load it! Just don’t try flexing it in the family editor either or it’ll break.

This technique works for all material application methods on geometry in the family editor:

  • Painting a material directly on the geometry face
  • Painting a material parameter on the geometry face
  • Assigning a material directly to the geometry
  • Assigning a material parameter to the geometry

I’m not sure how useful this workaround will be to anyone, but there you have it! Hopefully the Factory will resolve this issue and we’ll be able to fine-tune surface pattern positioning directly like we can on system families.


Share/Save/Bookmark

Sunday, April 1, 2012

KiwiCodes acquired by Autodesk

KiwiCodes, brilliant creator of Family Browser and the new Project Browser, has been acquired by Autodesk for an undisclosed sum, rumored to be in the 7 figures range. KiwiCodes founder Phillip Miller was last spotted completely intoxicated and singing “Money, Money, Money”.

In a press conference, Autodesk said they decided to buy this little innovative company out of sheer embarrassment that such a small company could produce something they themselves couldn’t deliver for years after being asked by their passionate users through wish lists, feedback sites and bomb threats.

It is not clear at this time whether Autodesk will include this for their subscription customers or just kill the living daylight out of this product. They also have the option of closing down the API functionality that makes Project Browser possible and then take 10 more years to come up with something bigger, heavier, less elegant and that doesn’t work. I guess we shall find out.

In the meantime, Phillip promised that all bloggers that mentioned KiwiCode’s products will get something in return, which could be as much as being be-friended on Facebook.


Share/Save/Bookmark

Revit2013 in Perspective

Finally! We can now work in Revit in perspective view. I’m so sick and tired of hearing about how the other software can do this and have to sit there and endure the justifiable criticism. But no more!

As you can see below, just click on the View tab and select the new Perspective button. It’s that easy. Arguably my #1 feature of this new release. Way to go Factory!

Perspective View


Share/Save/Bookmark

Friday, March 23, 2012

DWF in the Cloud: #Fail

This is a follow-up post to the previous one on DWFx markups in Revit.

I don’t know about you, but this trend of releasing software with major gaps in workflow is starting to really get on my nerves. Do you think that for example if you use ADR on a tablet, you’d want to be able to open that markup on your PC so you can link it into a Revit project? Would you even consider not including this in your core, basic functionality of a software?

Just in case you didn’t know (of course these things go unadvertised by the marketing departments), if you mark up a DWF on your mobile device or in the cloud, you cannot download those markups to your PC. Now if that’s not a major gap in workflow, I don’t know what is. Are they going to fix it in the next release? I have no idea, but this is really irritating as a trend. Do you think your client will find it acceptable to release a construction document set for their building that omits the foundation design, because you didn’t get to it yet?


Share/Save/Bookmark

Thursday, March 1, 2012

DWFx markups in Revit

Lately I have been looking at Autodesk Design Review (ADR), especially while testing out the Android mobile version. I really think this has great potential to streamline the very chaotic nature of drawing markups in an AE practice. However I was very disappointed to find that the integration with Revit is extremely primitive and poorly implemented.

A seemingly common problem users run into is an error when synchronizing a central file that contains a linked markup:

Cannot save DWFx

This got me digging a bit deeper into the issue and at face value, it seems like there’s a simple solution: make sure the markup file is closed in ADR. However I ran into several occasions where the file was closed, yet Revit and ADR thought it was open for editing. I’m not sure if this is due to a network glitch, but I found it peculiar that when opening the file in ADR, it would say “read-only”, even though just seconds before opening, I was able to rename the file in Windows Explorer just fine. This issue was probably the reason why I found a decent amount of posts lamenting about similar cases, including some on the AUGI forums.

Typically when the markup is not being edited or is clear from the above mentioned issues, you can save without any problems and the status of each markup, including the history and notes added within the Revit project, are successfully saved to the DWFx file during a sync with central. In those instances where the markup was thought of as being edited, I worked around the issue by making a copy, deleting the original and then relinking the newly created file. I have not verified whether a simple rename of the file would have worked but it’s worth a try.

In Revit, the markups reside on the view workset of each view/sheet, which means only one person can edit that view/sheet and change the status of markups and add notes. Other views/sheets can be edited simultaneously. If you want multiple users to work on the same sheet, you’ll have to print a DWFx of the individual views and mark up those instead of working at the sheet level. If the reviewer wants to check progress by opening the markup, the file has to be copied and then opened separately to avoid the above mentioned error during a sync with central. I honestly do not understand why an option to open the markup in read-only mode doesn’t already exist within ADR!

The reviewer CAN open and work in the DWFx while users are in Revit picking up items identified in the markups and changing their status, however they won’t be able to save the markup edits until the reviewer exits. Note that a local file save does not save the DWFx. In my testing, if I canceled the markup saving when I got the infamous error, the Revit file sync also terminated. However a second synchronization went through and Revit did not attempt to save the DWFx file changes unless I made other changes to it. Once the markup was not being edited, I had to change something else in the markup settings in order for Revit to try saving it again during the next synch with central.

Rants

I was quite amazed that so many holes still exist in the DWFx workflow after all these years. So here are my personal rants for your enjoyment. Feel free to add your own in the comments:

  • Selecting a markup and typing "VH" to hide just that one markup results in all markups being turned off. Since each markup element gets placed in its own subcategory, why not modify only that subcategory’s visibility when this shortcut is used?
  • Every markup element gets its own duplicated subcategory in the Imported Categories tab of the V/G dialog. More sloppy coding??
  • Hiding an element in view when something is complete is one way to de-clutter your view and help you focus on those items that still need attention. The other method is to uncheck the visibility of one of the two subcategories for each markup, but these become too cryptic to identify when there are lots of them. However once the DWFx file is edited in ADR, re-saved and then re-loaded in Revit, visibility is re-set and all hidden elements re-appear! I mean, really?! Visibility of markup items should be remembered between re-loads and items should only become visible if their status has changed or notes have been added.
  • There are no controls within Revit like in ADR to use markup status highlighting (which has no degree of control either in ADR 2012). This is a significant problem. I looked at filters for a potential overlooked solution but there’s no way to access markup (imported categories) properties. We need controls to hide/color markups based on status so users can properly focus on what remains to be accomplished.
  • We really need the ability to open the DWFx as read-only so that markup updates are not hindered when the Revit project is synchronized with central.
  • If the error mentioned above pops up during a sync with central and the user dismisses saving the DWFx changes, they are not prompted to save them again unless further markup edits are done. Revit should attempt to re-save these changes back to the markup at the next sync with central even if no further edits are performed.

EDIT: Also refer to this related post by Steve Stafford.


Share/Save/Bookmark

Monday, January 30, 2012

Multi-Disciplinary View Coordination

Back in 2008 I posted a response to an AUGI thread which contains tips that are still relevant to this day and might be unknown to some users. So I thought of echoing it out here.

The main question was about what the best process is to ensure that view extents (ex: plans) are coordinated between different sheets and different disciplines. The discussion then centered on Scope Boxes:

“When you create a scope box, it's just like drawing a rectangle in plan. You can specify a height too (that's why it's a scope box and not rectangle!). Make sure you give it a good descriptive name (Ex: Area 'A'). You can then go to a plan view's properties and under Extents, assign the Scope Box that defines the area you want to see. The crop region will automatically coincide with the scope box. In fact to change the crop region, you now have to modify the scope box by moving the drag handles and the crop region will follow.
So for a large project, the workflow would be as follows:

  1. In an overall plan view, place scope boxes to "chop" your plan in meaningful pieces so it fits on your drawing sheets. Name them accordingly and place any matchlines and view references here;
  2. Create dependent views (let's say you have 5 plan areas....create 5 dependent views and we'll assign them to the 5 scope boxes created in step (1));
  3. Go to each dependent view, name it something meaningful (ex: Area 'A') and assign the appropriate scope box to it. You can turn off scope box visibility to remove clutter as you typically overlap scope boxes so you can show some context (you have to do this to properly use matchlines);
  4. If you want to make changes to the crop region, always go to the parent view, turn on scope boxes or use the Reveal Hidden Elements button (if scope boxes were hidden, they'll become visible in magenta)....you can now modify them and when you're done, click on the Reveal Hidden Elements button once again and they'll go away or hide the category. Your crop regions would have automatically followed the changes in your scope boxes;
  5. The above is done typically by Architectural. Now consultants just link in as usual, they set a plan view that shows the scope boxes, match lines and view references (perhaps set to "By Linked View" to facilitate this) and copy all these elements into their project file. You do that by tabbing until the object in the link is highligted, then copy and paste in the same location*. Now you just need to carry on from step (2) once you have the same scope boxes residing in your project.”

* As Steve Stafford noted in the thread, scope boxes tend to paste exactly in the same spot automatically, regardless of the paste option picked.


Share/Save/Bookmark

Wednesday, January 4, 2012

Resolving locking issues with Revit Server

Hi everyone, hope this New Year brings you all lots of health, happiness and prosperity!

If you’re using Revit Server (why not?), then you’re probably familiar with this particular WIKI article on Model-Level Locks. If you have not noticed, when users report that they cannot access a particular project or synchronize, you also cannot lock the project in the Revit Server Administrator. Without the ability to lock a project, users cannot do anything so it is of utmost importance to get locking-unlocking to work first. Unfortunately we’ve had a couple of occasions where models were in limbo, even though we followed the instructions in the WIKI article.

There are various reasons that could cause a project to break and I won’t try to analyze that. But it seems there is a way to restore balance to the universe once the permissions get sorted out.

surgeryFirst, clear the .lock files as described here. As a precaution, it seems sane to stop the Local Servers in the IIS Manager first, and then stop the Revit Server Autosync service on each Local Server. Alternatively, you could shut them down completely, but as long as you stop the communication between all servers, you should be good to perform some minor “surgery” on the main patient: the Central Server, which has to be up and running. However you also need to stop the Revit Server Autosync service on the Central Server. It seems that in this state, project files that were previously unlockable, can be locked once again, so cycle through them…wax-on, wax-off. If this doesn’t work and you previously deleted the two .lock files for each problem project, go ahead and re-create them manually (notepad is your friend…remember to remove the .txt extension) and try again. I cannot say with certainty whether this is a necessary step since we did perform this task and I honestly don’t know whether to attribute success partially to this fact or not.

When you’re satisfied that locking/unlocking is working, re-start the Revit Server Autosync service on the Central Server. Go back and cycle locking back and forth once again (preferably at the Central Server master node) to ensure everything is working properly. Finally, bring the Local servers back online and don’t forget to restart the Autosync service.

I hope this helps someone in the future. If you have had similar experiences or found alternative solutions (don’t tell me “re-create the central file”: been there, done that!), I would love to hear about them.


Share/Save/Bookmark

Sunday, November 27, 2011

#AU2011

The boarding pass is ready, packing is not yet started, and departure is in 20 hours. I’m finally going back to AU after a two year hiatus. Fingers crossed for an exciting event and the usual great networking! Follow along using twitter #AU2011 which is embedded in this post.


Share/Save/Bookmark

Saturday, October 29, 2011

Plugs

Plugs

No, this is not about Revit MEP. I just have a bunch of announcements/news items that are probably of interest to the Revit community and want to condense them into one post. I’ve been a bit busy and frankly don’t want to fill your inbox with a ton of infomercials. I receive a lot of “press releases” but don’t want to turn this blog into more spam so, since this is my blog, I get to decide what to post and when! And probably most of you have already heard those from other sources, so here we go…

Apps/Plug-ins/API

Kiwicode’s Family Browser has received some really great upgrades recently (thanks Phillip!). The browser window can now be re-sized without having to enable borders and we can now link families from various folders. I cannot wait to set aside time at work to assemble some custom palettes (favorites of sorts). There is also a Favorites tab where you can add/link families so they are literally at your fingertips. Say you are detailing for the rest of the day: you would use this tab to place the most needed components so you can be fast and productive. It’s a brilliant idea! The search function is also quite snappy now. The first time you click into the box, it indexes the families (takes a few seconds) and then, subsequent searches are almost instant.

As you can tell I’m really excited about these improvements, but in my opinion the best one yet is the revamped insert behavior. Now when you click on a family in the palette, it automatically previews with no need to click in the canvas. A single click places an instance, just like native Revit behavior. And if you click on another family while actively placing other instances, it automatically switches to the new clicked family and you can continue placing the new instances. This is also native Revit behavior and makes this plugin feel like it’s part of the software. These were real sticking points for users in the previous version (from personal experience) and now it feels completely seamless.

Kiwicodes really listens to user feedback. Check out my previous post on this topic and note the list of wishes; they’re almost all implemented and then some!

Steve Faust of Revolution Design has some really great apps too. I just want to mention Keynote Manager and the recent Selection Master. Steve has graciously given me a license for the latter and I plan on writing in more depth about his tools, but wanted to plug them now so you can check them out.

Have you ever had to delete unwanted levels in your project and couldn’t because it would have taken a lifetime to find all the families hosted on them? Thanks to the re-host feature, now you can with Selection Master. This tool is a must-have in every BIM Manager’s arsenal. More on these tools in future posts.

Digipara’s Elevator Architect is another tool I’ve been aware of for a while. Unfortunately I tried using it in a recent project but it has failed me. Due to time constraints I have not had time to troubleshoot in depth, although the authors have been very responsive in trying to collect data. Hopefully in the future we can get to the bottom of the problem and use it successfully. As always I might write more in depth in the future.

Learning Revit (and Vasari)

Renowned author Paul Aubin has a new Revit family building course on Lynda.com. You can read all about it here. If you want to sharpen your family building skills (and you know how important this is), you cannot go wrong using this great resource!

What!?! You don’t know what Vasari is? They are up to version 2.1 on Labs and I really wish I had an extra 10 hours a day to play with the cool features that are not in Revit. If like me you’re finding it hard to keep up with everything and don’t have time to test yet another application, you can go to the newly launched Vasari Talk (yep, another link for your bookmarks!). You can participate in live webinars after signing up, or you can watch past recorded sessions.

Navigating Revit

By now you all know that 3Dconnexion’s devices work with Revit. I have not had a chance to try one yet but it looks like it would be a great tool. In the meantime, they are having a drawing for a trip to Autodesk University in Las Vegas on Nov. 29 – Dec. 1, as well as airfare, accommodations and a SpacePilot PRO 3D mouse. You can click here to enter. And speaking of AU, I was lucky enough to make plans for attending this year (thanks AUGI and PhiloWilke!) and am looking forward to meeting up with some old buddies. See you at the AUGI booth!

Evangelizing Revit (and digital simulation)

Abstract submissions for SimAUD 2012 (the Symposium on Simulation for Architecture and Urban Design) are fast approaching. The upcoming symposium will be in Orlando, Florida and you can find more about it here. You can also go to this link for the proceedings from the past two years.


Share/Save/Bookmark

Thursday, October 13, 2011

Face Painting in the Family Editor - FIXED!

Following up on my previous post on the topic, the Factory provided a hotfix for this today. You can read all about it courtesy of Kathryn at Revit Clinic. 13 is such a lucky number, isn’t it?!

To use this functionality, create the parameter first in the Family Types dialog. When you then launch the Paint tool, the parameter will be available as a material in the dialog.

Parameter painting

Installation of the hotfix is a snap…just copy and paste the dll.


Share/Save/Bookmark