Archive for August, 2015

Managing a customized Style Library in InfraWorks

Using a custom style library in InfraWorks.

When you  start a new fresh model, all styles that comes with the installation of InfraWorks are available to you. You can then add a custom style, whether it is a 3D model imported from Revit, Trimble 3D Warehouse or anything InfraWorks can eat as a 3D model, or a custom made road style. But you will also notice, that the created 3D model style is only available in the InfraWorks model from where you built / created the custom style in.

To have and use it in other models you have the ability to export the custom style(s) from the current style library, so you can import it in your other models to work on.

This works fine, but this can be cumbersome if you have a lot of styles and do it all the time over and over again for new models or even existing models.

What you actually would like is to have these custom style libraries to be available to any InfraWorks model you are working on.

How, I will explain below.

How does it work.

When you start a new model in InfraWorks, all styles you are using in your model will be imported/copied from this base location:

C:\ProgramData\Autodesk\InfraWorks\Resources\LocalLibrary\Styles\

to a location where your local InfraWorks model is created and stored:

C:\Users\<<user>>\Documents\Autodesk InfraWorks Models\<<IW model name>>.files\unver\Content\Styles\

When you create a custom 3D model style in the Style Library, InfraWorks will not create the new custom style in the LocalLibrary folder location. But it creates the custom style in the user folder like mentioned above.

IW_Customized_Style_Library

As the image shows, customized style libraries are stored project specific.

InfraWorks creates 1 folder and 2 files for the custom style in your user folder:

<<imported_3D_model_name>>.style folder
<<imported_3D_model_name>>.png file
<<imported_3D_model_name>>.ACItem file

The imported 3D model with facade images are stored in the <<imported_3D_model_name>>.style folder. The 3D model is converted and named to model.sff.
The <<imported_3D_model_name>>.png file is the screenshot of the imported 3D model shown in the style library and the <<imported_3D_model_name>>.ACItem is a text file containing parameters like the used scale parameters and the location where the model is stored. Also known as URI.

This URI is of important , especially when referencing a custom library with InfraWorks.

Now copy the 3 components: the .style folder, the .png and the .ACItem files to the LocalLibrary folder structure.

Important:

When you have copyied a custom created style to the LocalLibrary folder structure, you must change this URI to the model.sff in the <<imported_3D_model_name>>.style folder.

This can be done several ways:

  1. Open the copied <<imported_3D_model_name>>.ACItem file from the LocalLibrary location in Notepad or any other text editor and change the path of the URI under the “EmbeddedData” section with the full path of the model.sff file found in the <<imported_3D_model_name>>.style folder.
  2. Or, in InfraWorks, edit the URI in the style library. But you have to do that in a newly created InfraWorks model. And when you have saved the right URI, you need to copy once more, but only the .ACItem file to the LocalLibrary folder location.

Example of a 3D model imported from Trimble 3D Warehouse in the 3D Model Style Library:

InfraWorks creates the following folder & files below the 3D Model folder of your local model:

C:\Users\<<user>>\Documents\Autodesk InfraWorks Models\<<IW model name>>.files\unver\Content\Styles\3D Model\

<<imported_3D_model_name>>.style folder
<<imported_3D_model_name>>.png file
<<imported_3D_model_name>>.ACItem file

Now by copying this folder and files to the LocalLibrary location, and by changing the path of the URI in the <<imported_3d_model_name>>.ACItem file like I mentioned above, the custom style will be available to all newly created and existing InfraWorks models.

Note:
When you update the custom library while you work in a model, you have to re-open the model, to update the style library. Re-opening should be done by openening another model and then go back to the actual model.

When you have both InfraWorks and InfraWorks 360 on your system and you want to make use of only 1 content library, set the registry variable ContentLocalLibraryPath to the same folder path. You can find this registry variabele in the HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\InfraWorks and HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\InfraWorks 360 registry paths.

Enjoy

Advertisements

August 31, 2015 at 7:09 am 1 comment

How to use WMS in InfraWorks

Now that you know how to grab or download an image from a WMS server, and how to create a World File for it, the next step is to create an XML file which can be used as a Raster in InfraWorks.

This XML file will be used as a connection to retrieve an image from a WMS server. As soon as it completes the download of the image from the WMS server it will store this in the InfraWorks (SQLite) model. Now every time you reconfigure this Raster feature in InfraWorks it will reconnect to the WMS server using this XML file.

The XML file is built of a format known as GDAL WMS. The complete format is explained over here. We are going to use the same parameters as we have used in our example in our post How to grab aerial image maps from WMS server.

To read the URL easier and to compare it with the GDAL WMS format the parameters are shown below in several rules.

http://geodata1.nationaalgeoregister.nl/luchtfoto/wms?
version=1.1.1
&request=GetMap
&layers=luchtfoto
&SRS=EPSG%3A28992
&BBOX=208670.623,375465.3687,209670.623,375965.3687
&FORMAT=image%2Fjpeg
&WIDTH=2000
&HEIGHT=1000
&STYLES=

Note that the BBOX coordinates are setup from LowerLeftXY to UpperRightXY.
The above URL translated into a GDAL WMS XML format looks like this:

<GDAL_WMS>
<Service name=”WMS”>
<Version>1.1.1</Version>
<ServerUrl>http://geodata1.nationaalgeoregister.nl/luchtfoto/wms?</ServerUrl>
<SRS>EPSG:28992</SRS>
<ImageFormat>image/png</ImageFormat>
<Layers>luchtfoto</Layers>
<Styles></Styles>
</Service> 
<DataWindow>
<UpperLeftX>
208670.623</UpperLeftX>
<UpperLeftY>375965.3687</UpperLeftY>
<LowerRightX>209670.623</LowerRightX>
<LowerRightY>375465.3687</LowerRightY>
<SizeX>2000</SizeX>
<SizeY>1
000</SizeY>
</DataWindow>
<Projection>EPSG:28992</Projection>
<BandsCount>3</BandsCount>
</GDAL_WMS>

Note that the DataWindow coordinates are setup from UpperLeftXY to LowerRightXY. A common mistake is when the BBOX coordinates are used as the DataWindow coordinates, which will surely result in an error when configuring the XML in InfraWorks. 

Click here to download the wms.xml file.

Now use this XML file as a Raster feature in Infraworks and configure it. The aerial image map will be retrieved from the WMS server right into InfraWorks.

GDAL WMS XML

   Happy Web Map Service! 🙂

August 5, 2015 at 9:04 pm Leave a comment


Recent Posts

iPinda Tweets