Está leyendo la documentación de Icon Map Slicer para la versión 1.1.0.12, que aún no se ha publicado. Ir a la versión más reciente (1.1.0.11).
Esta página aún no está disponible en español, por lo que se muestra en inglés.

BIM models

New in 1.1.0.12

The BIM Models layer places building and asset models on the map, such as a lift, a plant room or a whole building, and binds their parts to the rows of your report. Put the names of the parts in Feature Reference, and each row colors, fades, hides and selects the parts it names. Clicking a part selects its row and filters the report page, so a table of the parts next to the map and the model on the map work together.

How it works

  1. Convert the model. Open your IFC file in the BIM to Icon Map Converter in the Icon Map Customer Portal. It runs in your browser, and the file is never uploaded. You get the model as a .glb.gz file and a parts table as a .csv file.
  2. Name the parts in your data. Load the parts table into your semantic model, or use a table you already have that names the parts.
  3. Add the model to the map. Turn on the BIM Models layer and pick the .glb.gz file in the BIM model picker.
  4. Place it. A model placed in the converter, or a georeferenced IFC, is already in the right place. Otherwise drag it into place on the map.
  5. Bind your rows. Put the part names in Feature Reference. Each row now colors, hides and selects its parts.

The geometry always comes from the file. Your rows carry the part names and the values you want to show, not geometry.

What you need

Field well What to put in it
* ID (required) A unique value for each row, for example a part ID
Feature Reference The names of the parts, outermost first. For example a host family, then the family nested in it. One field is enough when every part has its own name. See Bind rows to parts.
Tooltips Optional. Fields to show when you point at a part.

Rows need no Longitude (X) or Latitude (Y): the model's placement puts its parts on the map. A row is drawn by the BIM Models layer when it has a Feature Reference value and no longitude or latitude. Leave these fields empty on those rows: Longitude (X), Latitude (Y), Destination Longitude, Destination Latitude, Image / WKT / GeoJSON, Circle Size, Heatmap Weight and Cell (H3/S2/A5/Geohash) Weight.

The BIM Models layer does not take rows away from Shapes from files, Vector tiles or ArcGIS layers bound to data. Each of them matches its own features, so one row can color a building's footprint and the building's model, and select both at once.

You also need the model file: a .glb or .glb.gz file whose parts have names. See Files the layer reads.

Add a BIM model to the map

  1. Add fields to * ID (required) and Feature Reference. Put the outermost part name first.
  2. In the Format pane, expand Data Layers and turn on BIM Models in the Data Layers group. In the Layer Manager, select Add a layer, Data layer, BIM models instead. If the panel What kind of map are you making? is showing, you can select its BIM models tile.
  3. Under BIM Models - Models, turn on Choose BIM models. In the Layer Manager, select the BIM models row, then Choose BIM models. The BIM model picker opens.
  4. Select Add a model, add the .glb.gz file from the converter, and select Apply.
  5. Zoom in to the model. The layer is shown from zoom 12, street level, by default. Tilt the map to see the model from the side.
  6. If the model is not where it belongs, turn on Move models on the map and drag it into place. See Place the model.
  7. Open the picker again to see how many of your rows match a part.

Choose BIM models

The BIM model picker holds the models of the layer. It opens from Choose BIM models in BIM Models - Models or from the Layer Manager. The switch turns itself off again.

Models lists the models in the layer, with where each one comes from, its number of parts and how many rows match it. Select Add a model to add one from:

Tab What it does
From a file Drop a .glb or .glb.gz file, or select Browse.... A copy is saved in the report, so it needs no hosting. Up to 25 MB per file and 3 copies per report.
OneLake Choose from OneLake browses the lakehouses you can open. Select a .glb or .glb.gz file, then Link to this file (every viewer loads it from OneLake with their own access, so changes to the file show up in the report) or Import a copy (a copy is saved in the report, and viewers need no access to OneLake). See Files in OneLake.
From a link Paste the https:// link to a .glb or .glb.gz file and select Add. Viewers load the file from its host, which must allow Icon Map to read it (CORS). Use a lasting link, not one that expires.

Select a model in the list to see:

  • Name: the name of the model. It is the Model value rows use when the layer has several models. See Several models in one layer.
  • Match parts by: the value of each part that rows are matched against.
    • Converter key (default): the key the converter wrote into each part. Offered for files from the converter.
    • Part name: the name of each part in the file. Use this for a GLB from another tool.
    • Any attribute in the file, such as Family, Type, IfcType, GlobalId or ElementId.
  • The match report, for example "34 of 36 rows match. Not found: Binder binder, Object[] parameters." It changes as soon as you change Match parts by. A model that has not been drawn on the map yet has no report: select Apply, then open the picker again.
  • Parts: the part tree. Parts bound to a row are marked, and so are parts that take the row of a part above them.
  • Where the model is placed, and Remove this model.

Nothing is saved until you select Apply.

A copy in the report or a link? A copy saved in the report needs no hosting and no access to anything else: every viewer gets the model with the report. The report grows by the size of the file, and a changed model has to be added again. Link to a file in OneLake, or on a web server, for files over 25 MB, for a model shared by many reports, or for a model that changes.

Files the layer reads

  • A .glb file (glTF 2.0, self-contained), or a .glb.gz file: the same file, gzip-compressed, as the converter writes it. A host that sends a .glb with gzip compression works too.
  • The parts are the named nodes in the file, kept in their tree. Files from the BIM to Icon Map Converter also carry part attributes (Family, Type, IfcType and so on) and a placement.
  • Any other GLB whose parts have names works too, for example an FBX, SketchUp or Revit glTF export converted to GLB keeping the node names. It has no attributes: match by Part name, and place it by hand. Opening it in the converter first adds the parts table and a placement.
  • Geometry compressed with meshopt is read where WebAssembly is allowed. If a meshopt file does not draw in your report, convert it again with Compression set to Quantized, the converter's default, which works everywhere.
  • Files compressed with Draco or KTX2 textures cannot be read. The pane says so.
  • Up to 25 MB for a copy saved in the report. Models with more than 500,000 triangles or 20,000 parts may be slow to draw.

Bind rows to parts

Levels: matching along the part tree

The Feature Reference fields are read as a path, outermost first. With a host family field and a nested family field in that order:

  • A row binds to every part whose name is its last value and that sits inside a part named by the value before it. Other parts may sit in between.
  • A row whose later values are blank binds to the part named by its earlier values. A row with only a host family binds to the whole host family.
  • With one field, a row binds to every part with that name, wherever it is in the model.

Names are compared trimmed and ignoring case. Several parts can share a name, for example two guide rails: a row then binds to all of them.

The parts table from the converter has a Level1, Level2 ... column for each level of the tree. Put them in Feature Reference in that order.

Fields to match, in BIM Models - Matching, chooses the fields. Leave it empty to use every Feature Reference field, in the order they are in the well. To use only some, list their names separated by |, outermost first, for example HostFamily|NestedType. The line above it says which fields parts are being matched by.

A row colors a part and everything in it

A row's settings apply to its parts and to every part below them, unless a lower part has a row of its own. So a row for the lift car can color the whole car red while a row for the car door colors just the door blue. When two rows have the same path, the first row wins.

Rows that match nothing

A row whose path matches no part draws nothing. BIM Models - Matching lists them for each model, for example "Lift: 34 of 36 rows match. Not found: Binder binder, Object[] parameters", and so does the picker. The usual reasons:

  • Match parts by reads a different value from the one in your data. Try another choice in the picker.
  • The fields in Feature Reference are in the wrong order, or one of them is not a level of the tree. Use Fields to match to leave it out.
  • The part is not in the model. In Revit, a nested family is exported as its own part only when it is a shared nested family. See Models from Revit.

Several models in one layer

A layer can hold several models, each with its own placement. Rows are matched against every model. When two models have parts with the same names, such as two lifts of the same family in different shafts, use conditional formatting on Model in BIM Models - Models (shown when the layer holds more than one model): choose Field value and a field that holds the model's Name from the picker. A row whose Model is blank matches every model.

Place the model

Each model has its own placement. When you add a model:

  • A model from the converter that was placed there, or from a georeferenced IFC file, is placed where the file says. BIM Models - Placement shows "Placed from the IFC location."
  • Any other model is placed in the middle of the map view, and shows "Placed by hand."

BIM Models - Placement sets the placement of one model at a time. When the layer holds several, choose it in Model to place. Type an exact Latitude, Longitude and Heading (degrees clockwise from north) for a surveyed point, or drag the model on the map.

Move models on the map

A lift shaft on the map with a white move handle at its base and a blue turn handle, and the note: Moving models: drag a model or its handles
Move models on the map: the white handle moves the model, the blue handle turns it
  1. Turn on Move models on the map, in BIM Models - Placement or in the Layer Manager. Handles show only while you are editing the report.
  2. Drag the model, or its white handle, to move it.
  3. Drag the blue handle to turn it. Hold Shift to snap the turn to 15 degrees.
  4. Turn Move models on the map off when you are done.

Each drag is saved when you let go, and the Latitude, Longitude and Heading boxes show the new values. While the switch is on, clicks on models do not select rows and models show no tooltips, so moving a model never filters the report. Reading view never shows the handles.

Moving a model that was placed from the IFC makes it placed by hand. Reset to IFC location puts it back.

Height

Altitude What it does
On the ground (the default) The base of the model sits on the terrain under its center, raised or lowered by Height above ground. A negative value sinks the model, for a basement or a lift pit.
Explicit height The base of the model is at Height above sea level, whatever the terrain.
  • The model is not bent to fit the terrain. On a steep slope, part of it can float or sink: adjust the height to correct it.
  • Height units sets Meters or Feet for the height boxes.
  • Hide parts below ground, on by default, cuts every model off at the ground under it, so foundations, piles and a lowered basement disappear under the map. Turn it off to see them through the ground.
  • When the IFC file has an elevation, Use the IFC elevation sets Explicit height to it. Check the result against the terrain: the height datum of an IFC file often differs from the map's.

See Terrain, hillshade, sky and lighting. Models are lit by the map's Light settings.

Color and visibility

These settings apply to each row's parts, and take conditional formatting (fx), so your data colors, fades and hides the parts. They are in BIM Models - Color and visibility.

  • Color parts off keeps the model's own colors. Turn it on to color each row's parts with Color. Use fx on Color with Gradient or Rules to color parts by a measure or a status column.
  • Apply color as: Replace paints the part the row's color. Tint mixes the row's color into the model's own colors and textures.
  • Transparency: 0 to 100 percent.
  • Show part: No hides the row's parts. Use fx to hide parts by rule, for example where Status is Removed.

Parts with no data

Parts that no row matches are drawn as set in Parts with no data, in BIM Models - Matching:

Parts with no data What it does
Show as authored (the default) Drawn as they are in the model.
Ghosted Drawn faded.
Hidden Not drawn.

Turn on Color parts with no data to draw them in Color for parts with no data instead of their own colors.

Selection, tooltips and zoom

  • Selection. Click a part to select its row and filter the rest of the report page. Hold Ctrl or Shift to add to the selection. A click on a part with no row of its own selects the row of the nearest part above it, so clicking a door handle selects the door. A click passes through parts that are mostly see-through, such as a glass shaft wall, to the part behind. The lasso, the circle, Travel time and Select everything inside a shape take each part by the ground point under its center. Parts that are not selected fade to Unselected Items Transparency in Format pane > Selection > Formatting. See How Icon Map Slicer filters.
  • Tooltips. Pointing at a part shows its row's Tooltips fields. Add part attributes to tooltip adds the part's name and attributes from the model (family, type, IFC type and so on). Tooltip for parts with no data, on by default, shows the name and attributes of a part that no row matches. See Tooltips.
  • Zoom. Auto zoom and zooming to the selection frame the parts themselves, so zooming to a door frames the door. Set Include in Zoom to No to leave a row's parts out, and turn off Include parts with no data in zoom to frame only the bound parts.
  • Labels. Parts do not carry data labels.

Convert your model

The BIM to Icon Map Converter in the Icon Map Customer Portal turns an IFC model into the files this layer uses. It is free and open to everyone, signed in or not. The converter runs in your browser: your file is converted on your computer and is not uploaded to Icon Map.

The BIM to Icon Map Converter: the part tree of a lift on the left, and the lift on a map with handles to move and turn it
The BIM to Icon Map Converter, with a lift's part tree and the lift placed on the map

Open BIM to Icon Map Converter in the portal, under Tools, and work down its steps:

  1. Open a file. Drop an .ifc, .ifczip or .glb file on the page, or click to browse. IFC2X3, IFC4 and IFC4X3 are read. The converter asks before it opens a file over 250 MB, which can run out of browser memory.
  2. Part tree. Check the tree, with the number of parts and triangles in each branch. Click a part in the tree or on the map to see its attributes.
  3. Tree and key.
    • Tree from chooses which IFC relationships make the tree: Assemblies within the spatial structure (the default), Assemblies only, Spatial structure only (site, building, storey) or Flat (no tree).
    • Match parts by is the value rows in Power BI match. The default, Family (Revit), else Name, suits a Revit export. For a .glb, The file's own keys keeps the names in the file.
    • Compression: Quantized (works everywhere) is the default. meshopt (smaller, needs WebAssembly in Power BI) makes a smaller file.
    • Include by IFC type leaves out types you do not need. IfcSpace and IfcOpeningElement are left out by default. Add property values adds property set values to the parts and to the parts table.
  4. Check against your data (optional). Drop a CSV exported from your Power BI table, or paste a column of values, and tick the Level columns, in order. The converter matches them as the visual will and reports, for example, "34 of 36 rows match. Not found: ...". If the IFC lost which part sits inside which, Build the tree from this table builds the tree from a child column and a parent column of your table.
  5. Place it. A georeferenced IFC is placed already: "Placed from the IFC site location." Otherwise drag the model into place on the map, or select Place on the map and click where the model's center should be. Drag the white handle to move it and the blue handle to turn it; Shift snaps the turn to 15 degrees. Set Height (m) and Heading (degrees). The placement is written into the file, and the visual uses it as the model's starting position.
  6. Download. Download <name>.glb.gz is the model for this layer. Download <name>-parts.csv is the parts table. Download a plain .glb for other viewers gives the same model without the gzip compression.

The parts table has one row per part: PartId, ParentId, Key, Level1 ... LevelN, Path, Family, Type, IfcType, GlobalId, ElementId and Triangles, plus any property values you added. The Level columns go straight into Feature Reference, in order. Relate your own tables to it on Key or the Level columns.

For every option, see BIM to Icon Map Converter.

Models from Revit

  • Export the model from Revit as IFC, then open the .ifc file in the converter. Revit names elements Family:Type:ElementId, and the converter splits that into Family, Type and ElementId attributes.
  • Revit exports a nested family as its own part only when it is a shared nested family. A nested family that is not shared is merged into its host and cannot be told apart later. Make the nested families you want to bind shared before you export.
  • If the export loses which family sits inside which, Build the tree from this table in the converter rebuilds the tree from your own host and nested family table.

Settings

All of these are in Format pane > Data Layers, shown when the BIM Models switch is on. Settings marked fx accept conditional formatting.

BIM Models - Models

Setting What it does Default
Choose BIM models Opens the BIM model picker. The switch turns itself off again. The line below it names the models in the layer. Off
Model Shown when the layer holds more than one model. Empty matches every row against every model. Set a field value to say which model a row's parts are in, by the model's name. fx Empty

A model that cannot be drawn is named in this group, with the reason.

BIM Models - Matching

Setting What it does Default
Fields to match The Feature Reference fields to match, by name, separated by |, outermost first. Empty uses every field in the well, in order. Empty
(match report) For each model: how many rows match, and the values not found.
Parts with no data Show as authored, Ghosted or Hidden. Show as authored
Color parts with no data Draws parts no row matches in Color for parts with no data. Off
Color for parts with no data Shown when Color parts with no data is on. #C8C6C4

BIM Models - Placement

Setting What it does Default
Move models on the map Drag and turn models on the map while you are editing the report. Off
Model to place Which model the boxes below change. Shown when the layer holds more than one model. The first model
Latitude, Longitude Where the model's center is. From the file, or the middle of the map view
Heading Degrees clockwise from north that the model faces. From the file, or 0
Altitude On the ground or Explicit height. On the ground
Height above ground (Height above sea level with Explicit height) Raises or lowers the model. Negative values sink it. 0
Height units Meters or Feet. Meters
Hide parts below ground Cuts every model off at the ground under it. On
Reset to IFC location Shown when a model placed from the IFC has been moved.
Use the IFC elevation Shown when the IFC file has an elevation. Sets Explicit height to it.

BIM Models - Color and visibility

Setting What it does Default
Color parts Colors each row's parts with Color. Off keeps the model's own colors. Off
Color The color of the row's parts. Shown when Color parts is on. fx #118DFF
Apply color as Replace or Tint. Shown when Color parts is on. Replace
Transparency 0 to 100 percent. fx 0
Show part Yes or No. fx Yes

BIM Models - Interaction and visibility

Setting What it does Default
Allow Selection Whether the row's parts can be selected. fx Yes
Include Tooltip Whether the row's parts show a tooltip. fx Yes
Add part attributes to tooltip Adds the part's name and attributes from the model to the tooltip. Off
Tooltip for parts with no data Shows the name and attributes of parts no row matches. On
Include in Zoom Whether the row's parts count toward the area the map zooms to. fx Yes
Include parts with no data in zoom Whether parts no row matches count toward it too. On
Min Zoom The layer is hidden when the map is zoomed out past this level. 0 to 24. 12
Max Zoom The layer is hidden when the map is zoomed in past this level. 0 to 24. 24
Z-Index Drawing order among the layers. Higher draws on top. 0 to 1000. 460

In the Layer Manager

Select the BIM models row in the Layer Manager to change:

  • Matching - Parts with no data.
  • Placement - Move models on the map and Hide parts below ground.
  • Interaction - Allow Selection, Include Tooltip and Visible at zoom.

Choose BIM models opens the BIM model picker. Colors and the other values per row are set with conditional formatting in the Format pane. See Edit, reorder and remove layers.

Tips and limits

  • Cannot see the model? The layer is shown from zoom 12 by default: zoom in, or lower Min Zoom. A model placed by hand starts in the middle of the map view when it was added.
  • Parts are missing. Check the match report in the picker, and Parts with no data. A part below the ground is hidden while Hide parts below ground is on.
  • The model draws nothing. BIM Models - Models names the model and the reason, for example a host that does not allow the file to be read, or a file compressed with Draco.
  • Models are drawn on the flat map and on the globe.
  • IFC files and native Revit files (.rvt, .rfa) are not read by the visual. Convert them first in the BIM to Icon Map Converter.
  • Rows hold the part names and values, never geometry. To draw lines and sections held in your data, use Shapes at their heights on the same map.