Taging Linked Model Rooms

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hello,
I'm trying to tag all linked model rooms in the current view. Its weird, it looks line the room tags are there, I've added a selection, and it adds room tags to the selection, however none of them are visible.
Any help really apprectiated.
<Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Manual)> _
<Autodesk.Revit.Attributes.Regeneration(Autodesk.Revit.Attributes.RegenerationOption.Manual)> _
<Autodesk.Revit.Attributes.Journaling(Autodesk.Revit.Attributes.JournalingMode.NoCommandData)> _
Public Class TagAllLinkedRoomElementsCmd
Implements Autodesk.Revit.UI.IExternalCommand
Public Function Execute(ByVal commandData As Autodesk.Revit.UI.ExternalCommandData, _
ByRef message As String, ByVal elements As Autodesk.Revit.DB.ElementSet) _
As Autodesk.Revit.UI.Result Implements Autodesk.Revit.UI.IExternalCommand.Execute
Dim activeDBdoc As Document = commandData.Application.ActiveUIDocument.Document
Dim selSelectionElements As Autodesk.Revit.UI.Selection.SelElementSet = commandData.Application.ActiveUIDocument.Selection.Elements
Dim objTransation As Transaction = clsRockitTransation.CreateNewTransation("Tag All Linked Room Elements", activeDBdoc)
If objTransation IsNot Nothing Then
Dim RoomTagTypeList As List(Of RoomTagType) = clsRockitElements.GetRoomTagTypes(activeDBdoc)
If RoomTagTypeList.Count > 0 Then
Dim objRoomTagType As RoomTagType = RoomTagTypeList.Item(1)
MsgBox(objRoomTagType.Name)
For Each doc As Document In commandData.Application.Application.Documents
Dim eleDocSpatialElements As List(Of Element) = clsRockitElements.Rockit_GetAllSpatialElements(doc)
For Each objElement As Element In eleDocSpatialElements
Dim objRoom As Room = TryCast(objElement, Room)
If objRoom IsNot Nothing Then
Dim locationPoint As LocationPoint = TryCast(objRoom.Location, LocationPoint)
Try
'MsgBox(locationPoint.Point.X.ToString)
Dim point As New Autodesk.Revit.DB.UV(locationPoint.Point.X, locationPoint.Point.Y)
Dim newTag As RoomTag = activeDBdoc.Create.NewRoomTag(objRoom, point, activeDBdoc.ActiveView)
newTag.RoomTagType = objRoomTagType
selSelectionElements.Add(newTag)
'MsgBox(objRoom.Name & " has been tagged...")
Catch ex As Exception
'MsgBox(ex.Message & objRoom.Name)
End Try
End If
Next
Next
End If
objTransation.Commit()
End If
End Function
End Class