Revit Camera Settings, Project Plasma, DA4R and AI

Once again, I have been spending way too much time answering questions in the Revit API discussion forum and much too little time writing for The Building Coder.

So, before the end of this week, here are some interesting items I want to share with you:

Map Forge Viewer Camera Settings back to Revit

My colleague Eason Kang invested some research in converting the camera state of the Forge Viewer back to the Revit model via Revit API.

Camera mapping

Here is the main gist of the Revit part of his solution:

/// <summary>
/// Create perspective view with camera settings 
/// matching the Forge Viewer.
/// </summary>
void CreatePerspectiveViewMatchingCamera(
  Document doc )
{
  usingvar trans = new Transaction( doc ) )
  {
    trans.Start( "Map Forge Viewer Camera" );

    ViewFamilyType typ
      = new FilteredElementCollector( doc )
        .OfClass( typeofViewFamilyType ) )
        .Cast<ViewFamilyType>()
        .First<ViewFamilyType>( 
          x => x.ViewFamily.Equals( 
            ViewFamily.ThreeDimensional ) );

    // Create a new perspective 3D view

    View3D view3D = View3D.CreatePerspective( 
      doc, typ.Id );

    Random rnd = new Random();
    view3D.Name = string.Format( "Camera{0}", 
      rnd.Next() );

    // By default, the 3D view uses a default 
    // orientation. Change that by creating and 
    // setting up a suitable ViewOrientation3D.

    var position = new XYZ( -15.12436009332275,
      -8.984616232971192, 4.921260089050291 );

    var up = new XYZ( 0, 0, 1 );

    var target = new XYZ( -15.02436066552734,
      -8.984211875061035, 4.921260089050291 );

    var sightDir = target.Subtract( position ).Normalize();

    var orientation = new ViewOrientation3D(
      position, up, sightDir );

    view3D.SetOrientation( orientation );

    // Turn off the far clip plane, etc.

    view3D.LookupParameter( "Far Clip Active" )
      .Set( 0 );

    view3D.LookupParameter( "Crop Region Visible" )
      .Set( 1 );

    view3D.LookupParameter( "Crop View" )
      .Set( 1 );

    trans.Commit();
  }
}

I am sure this will prove very useful for anyone aiming to precisely adjust the camera settings in a Revit perspective view.

Many thanks to Eason for his careful research and documentation!

I added this to The Building Coder samples in the new method CreatePerspectiveViewMatchingCamera.

Project Quantum Becomes Plasma

I read an interesting discussion by AEC Magazine of the past, present, potential future of Revit and the long-term Autodesk vision for BIM: What comes after Revit? Autodesk aims to reinvent collaborative BIM.

Here is a quick overview and executive summary of the contents:

In 2016, Autodesk announced Project Quantum, described as a platform technology for “evolving the way BIM works, in the era of the cloud, by providing a common data environment”.

The project then went dark but now it’s back and called Project Plasma:

The 'awe inspiring' section is based on an interview with chief software architect Jim Awe.

Data contracts also mention blockchain and other, more lightweight, legally secure and binding technologies.

Interestingly, AEC Magazine surmises that 'reading between the lines, Revit’s demise is a long way off, if ever'.

I found it a very interesting read.

Mikako's DA4R Overview

I have been rather silent lately on the topic of DA4R, Forge Design Automation for Revit, mainly due to the fact that my Forge-focussed colleagues are dealing with that more than I am, focussing on the Revit instead.

Mikako Harada now published her own overview of DA for Revit learning materials and where to get help about Forge that you might want to check out.

AI is Affecting Human Game Strategies

I enjoyed following the development of AlphaGo and AlphaZero quite closely in the past.

My daughter Marie now pointed out an interesting book review on Game Changer – AlphaZero's Groundbreaking Chess Strategies and the Promise of AI by Matthew Sadler.

Next on my own reading list is Ian McEwan's Machines like me, partially inspired by the recent 'game changing' developments in AI.

AI can Convert Speech to Gesture

Continuing on the topic of AI, here is an quite fascinating two-and-a-half-minute video on learning individual styles of conversational gesture describing an AI system that generates realistic gestures and applies them to synthesise a video from a couple of photographs and an audio recording of a person speaking:

Barcelona Forge Accelerator

Where am I?

I just arrived in Barcelona to participate in next week's Forge accelerator here.

Looking forward very much to meeting my colleagues again and working on some inspiring and exciting new projects!

Open Positions at Autodesk

Autodesk is recruiting, with many open positions.

One AEC-related European one is for a Director of Named Accounts AEC Sales – #19WD33872:

The Director of Named Accounts AEC Sales, EMEA & ANZ leads a sales organization responsible for selling our portfolio of products across Autodesk Named Accounts customers in the EMEA & ANZ region. Success in this role is measured in terms of ACV growth, providing direction on account strategy, effective sales management, and execution to drive business results and meet/exceed financial and business objectives. The incumbent possesses strong sales management skills, international sales experience, and business acumen skills necessary for driving an overall AEC sales strategy in conjunction with Business Strategy & Marketing (BSM) and Product Development (PDG) groups.

If that is not up your alley, check out the numerous other positions at autodesk.com/careers.