Thursday, March 31, 2016

BE GONE SHARP EDGES

In the previous post I made an appeal for anyone who knew how to hide polygon edges to shout up.  Many thanks to Fred and Arthur for the very rapid response.  Seems I should have done a web search :)  Anyway, there is a nice video here      LINK        and a written description here    LINK.

I'm a complete novice when it comes to 3d Max, but I managed to work this one out and created a couple of plumbing families from some Bagno CAD files I had downloaded.  I was quite pleased with this and talked to two of our visualisers for a couple of extra tips on the interface before tackling some Fritz Hansen furniture.



I posted about this long back, but at that stage I was stuck with the mesh edges.  LINK.  So let me take you through the process with a conference chair range called Oxford.
Drag the CAD file in (import) and place it.  Set the Visual Style to Clay (my preference, you can see the geometry clearly).  Click on the little modify symbol (top right, like a rainbow in a box) It should say "Editable Mesh" in the box below.  Then click on the open red triangle in the next box down (Edge)  Now you are selecting edges so put a window around everything.



Next scroll down to the bottom of this panel and click on "Invisible" Nothing seems to happen, but if you now change to wireframe the edges will ghost out.  Click on empty space to deselect and they disappear altogether, so go back to "clay" so you can see the faces and select objects.



Scroll the panel back up, and click on the box (Element) at the far right under "Selection".  Now you can select sub-elements.  In this case I have selected the five-legged base. Then click on "Detach" to make this a separate object. You don't have to give it a name because we aren't saving the 3d Max file, just exporting to CAD. Just accept the default naming (Object 001 etc) Continue like that to break up the chair into separate pieces.



This will allow us to place the base and the seat itself on separate layers.  Also we can delete the cylinder if we want, and replace it with a native Revit extrusion.  That might be better than a facetted mesh.

Finally we will export as a DXF 2004.  Don't know why that is important but apparently it is.



Opening this up in AutoCAD, everything is on layer 0. I'm going to make a new layer called "_Fabric" and place the seat on that.  Then I put everything else on a layer called "_Metal"  Save as DWG. I don't think the version matters this time.  (by the way, I checked that everything was set to "bylayer")



Now let's try bringing this into Revit.  Start a new family from the Furniture template and import the DWG. In this case it seems the base units are Centimetres.  Sounds right for continental Europe. I had to nudge it into position over the origin.



Looking at object styles both line colour and Material are coming from the layer colours I set up in Autocad.  I'm going to delete the two surplus layers (0 and ASHADE) then change the Line colours to black.  Also I substituted default materials for the automatically generated ones (Render Material 0-0-255 etc) and deleted all these in the materials browser. Don't want to transfer a lot of junk into my projects.



Now this is a fairly useable family as it is, but ultimately I will probably separate out the various elements.  The seat comes in different heights, and there are also different styles of base.  (one with wheels)  So it makes sense to follow a modular approach and mix and match nested components.  Also I'm going to substitute native geometry where I can, for a cleaner look ... basically the cylinders I think.  I think it will also be valuable to use 2d drafting in plans and elevations.  Better for performance, but also a cleaner graphic look for orthographic views.



This particular family is not the most dramatic demonstration of the technique perhaps.  You could almost do this in native geometry entirely.  You wouldn't get the subtle double curvature and rounding of the edges but it wouldn't be too bad.  But earlier on I did the Rin chair which is a complete non-starter with Revit's modelling tools.  This turned out very nicely, and looks quite good in plan and elevation even without 2d drafting elements.



Looking at Revit Forum, one comment caught my attention: "... use only if absolutely necessary. Make Native Revit geometry if possible."   Now I do agree with this, but words like "necessary" and "possible" are open to interpretation, and I am aware that some members of the "expert elite" are more dogmatic on this issue than I am.  I think that an acceptable version of the Oxford chair could probably be made as Native Geometry.  It might look a little stiff in rendered views compared to the subtle curvature of the mesh version, especially around the edges, but for most purposes it would be fine.  The Rin chair conversely is a clear case where adapting the downloaded mesh version is really a no-brainer.  In between there are many shades of grey.  Ultimately it's a judgement call.

I will be doing more of this type of work, and probably sharing the families, but for now, I'll finish with a shot of 3 of my new "edge-free" families nestled among older messy-mesh versions from my previous Fritz Hansen post.   Furniture Fritz

Needless to say, I'm quite excited by the possibilities.


Saturday, March 26, 2016

MANUFACTURING BIM

One BIM conference per year is my normal limit, so I have to choose carefully.  This year I will be heading for RTC Europe in Porto and was delighted to learn it will include a Building Content Summit (BCS)  I participated in the inaugural event in Washington last year, which was great.  I think the role of manufacturers and suppliers is perhaps the most important "missing piece" in the BIM jigsaw puzzle at present.  BCS is a great place to get together and do some serious work on that particular problem.

When it comes to Revit content, toilets suck (as I've been saying for the longest time).  It's not just that many of the major manufacturers don't do BIM.   There are a number of fundamental issues that remain unresolved.  What do we really want?  Do we need them to render?  How faithful should the geometry be?  What is the point of 3d geometry if it's full of unsightly seams and sharp edges?  Are 3D CAD imports acceptable?  and so on ...  So I was quite excited when Roca, (a major European brand) released a bunch of stuff via Bim Object some time ago.



I downloaded a couple of dozen families and took a quick look.  Mixed reaction.  Perhaps the best sanitary ware I've seen from a manufacturer to date, but far from perfect.  This weekend I decided to take another look and share my thoughts with a wider audience.

Firstly let me say that BIM Object have had a really positive impact on the world of content.  They have succeeded in bringing a lot of major brands on board the BIM bus and significantly raised standards and expectations.  So whatever I say below should not be taken as criticism.  It's feedback: my contribution towards moving things forward. 

Secondly, I am commenting on Revit families because that's the stuff I know about, but I am a firm supporter of "open BIM", which is especially important when we are talking about Manufacturer content.



Most of these families are just boxes at coarse scale.  Now some people will agree with that, but I'm not so sure.  Keep it simple by all means, but boxes are so anonymous.  Why would you represent a round object as a box, for example? 

Let's take a closer look at one of the families.  This is quite a nice, modern WC: smooth lines, well proportioned ... something our I.D. department might well choose.  The version that I downloaded has 3 separate items of geometry for the 3 detail levels: a box, some native Revit geometry, and a 3d CAD import. 



The native Revit version comes quite close to capturing the form, but inevitable there are still some sharp edges, and the chosen modelling method is rather odd.  I can't help wondering why we need this intermediate version at all.  Will it really perform better than the CAD version ?



So how would I have made it?  How about two extrusions and a blend?  Much simpler, no needs for void cuts, and it eliminates some unsightly seams.



The CAD object is interesting.  I've pointed this out before.  Somebody at BimObject has figured out how to modify CAD meshes so that the edges are suppressed, selectively.  Most of the edges don't show up in revit, but the critical ones that define the form do.  Probably this is a trade secret, which I can understand, but it's a real shame because I think it could save us all a lot of modelling grief, especially in the plumbing and furniture categories.  Is anyone out there willing to share a method for achieving this ?



Manufacturers already have 3d mesh versions of most of their products, so maybe this is the way forward ... but if it is, why do we need the native geometry as well?  Isn't it just consuming effort, and kilobytes?  So here's another way of looking at this object.  Simple extrusion for coarse scale, Mesh geometry for both medium and fine.  My trials suggest that omitting the medium-scale native geometry will reduce file size by about 20%.



The worry might be that all those polygons would impact on performance.  Well they are only visible in 3d views so you could just turn the Plumbing category off in those views. It would be interesting to make different permutations of a family like this and do some performance testing: load up a few hundred instances and time various operations.  For example, you could make another version like this.



I mentioned lack of consistency.  Let's go through some examples.  In some cases the geometry is contained within a nested family.  This is good policy for hosted families, and most of these objects are either wall-hosted or face based.  If you try to model things directly in a wall-hosted family you tend to get problems with different thicknesses of wall.  In the image below, the masking region in a side elevation view has been distorted, because this particular family doesn't use the nesting strategy.



Another inconsistency is that some of the nested families are Generic Models.  The problem comes when you try to change lineweight/colour using Visibility Graphics or Object Styles.  This shows up in the plan views below which also illustrate an attempt to carry the coarse/medium/fine gradation idea through to 2d symbolics



I don't think there are going to be any serious performance issues here.  To me this is just about appropriate representation of an object at different scales.  My comment is that some of the fine scale versions just look wrong.  It's almost like extra lines were added just for the sake of it. 
Or consider these two versions of the WC.  Maybe I'm old fashioned, but to me the black graphic on the left is more successful than the red one on the right.  It hints at the rounded edge of the sloping front to the toilet seat which the red version just traces mechanically.



While I'm splitting hairs, take a look at the next one: a drop-in vanity basin.  The original red GM version has an extra line which misrepresents a gradual change of curvature as a hard edge. When we drew by hand we used to care about the quality of the lines we drew, the economy of expression, the overall presentation of our work.  Drawing is a language and we are trying to communicate ideas.  Fluency and clarity are crucial skills in public speaking, so why would they be less important in a set of drawings?



Another example of inconsistency.  Some families use masking regions in plan and elevation, some don't.  Personally I can't see the value in 2d symbolics that don't mask out the objects behind, so I would always use masking regions.  But more importantly, if you are going to make a set of families for a brand, use a consistent approach.



And I'm a bit disappointed in the naming of the families and the materials.  Once again I would be looking for economy, clarity and consistency.  Why not adopt a format like "Manufacturer Name"/"fitting type"/"product name" as in "Roca_WC_Georgia", for example.  And why do we need to include the product name in the material name?  Surely "Roca_Porcelain_White" would do nicely for basin, WC and bidet irrespective of the style chosen for each ?



BUT as I said at the beginning, I'm not trying to pick holes.  The bigger picture here is that people like Bim Object are bringing more and more manufacturers into the fold.  It's good to aim for quality and consistency, but we also have to work within budgets. So let's applaud the effort.
Perhaps we need to think in terms of a process.  I'm less concerned about the quality of the first generation objects a manufacturer puts out than whether they are starting to engage in BIM processes.  Are they starting to think how BIM could help them to interact with consultants and contractors? or are they just ticking a box ? 

BIM is all about collective decision making, collaboration processes, connecting people together digitally, working on the same set of data.  Surely our goal must be to involve manufacturers in these kinds of activities because they have a lot of knowledge and experience to offer.  Once they become actively engaged, the need to upgrade the quality of their content will arise in a natural way.  Instead of being another set of arbitrary demands from a bunch of temperamental designers, it will be a question of improving the tools they use to coordinate their advisory services.


In other words, BIM is not just another deliverable to add to the list.  It's a new way of working that offers value to everyone involved.  So let's invite manufacturers to join the action.  Specifying products for a building project is not like doing the weekend grocery shopping.  You can't just walk down the aisles and grab stuff off the shelves.  There needs to be some 2-way communication.  So don't think of "BIM content" as another deliverable that you demand from manufacturers.  Think of "BIM processes" as a better way of collaborating with them. 










Sunday, March 6, 2016

MY MIND IS ELSEWHERE

Recently I discovered Docs.com, a free hosting service by Microsoft which works rather well for quickly and easily sharing documents in various formats and for assembling images and text with SWAY.


At the moment I'm seeing it as an alternative web presence for my ideas, less focus on the technicalities of doing stuff in Revit, less of a diary of what I did last weekend, more of a place to reflect on issues, tell slightly more coherent stories, record my talks at various events.  Early days yet but I've put together a couple of journal entries, posted some pdf documents and started a couple of collections.  Take a look,

https://docs.com/andrew-milburn

I've also added a page here with links to all my Project Soane posts.  This is partly prompted by an Italian Architecture student who contacted me asking for assistance with an academic project he is doing on Sir John Soane.

You can get to the page via the row of buttons just below my title banner, or just follow this link.

http://grevity.blogspot.ae/p/project-soane.html

 I was a little shocked to find out that I had done 16 posts.  My how time flies when you're having fun.