
###############
IModelStructure
###############

.. js:class:: wv.IModelStructure

   
   Index
   =====
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~wv.IModelStructure._disableCadConfigurations`
   * :js:meth:`~wv.IModelStructure.$mapBimRelationshipTypes`
   * :js:meth:`~wv.IModelStructure.activateCadConfiguration`
   * :js:meth:`~wv.IModelStructure.activateCadView`
   * :js:meth:`~wv.IModelStructure.activateDefaultCadConfiguration`
   * :js:meth:`~wv.IModelStructure.activateDefaultCadView`
   * :js:meth:`~wv.IModelStructure.addProperty`
   * :js:meth:`~wv.IModelStructure.allowNodeDeletion`
   * :js:meth:`~wv.IModelStructure.applyFilters`
   * :js:meth:`~wv.IModelStructure.cadConfigurationsEnabled`
   * :js:meth:`~wv.IModelStructure.clear`
   * :js:meth:`~wv.IModelStructure.createAndAddRepItem`
   * :js:meth:`~wv.IModelStructure.createCadView`
   * :js:meth:`~wv.IModelStructure.createMeshInstance`
   * :js:meth:`~wv.IModelStructure.createNode`
   * :js:meth:`~wv.IModelStructure.createPart`
   * :js:meth:`~wv.IModelStructure.createPmiInstance`
   * :js:meth:`~wv.IModelStructure.deleteNode`
   * :js:meth:`~wv.IModelStructure.firstAssemblyDataHeader`
   * :js:meth:`~wv.IModelStructure.gatherAnyBodiesFromNodeId`
   * :js:meth:`~wv.IModelStructure.gatherInstanceIncsFromNodeIds`
   * :js:meth:`~wv.IModelStructure.getAbsoluteRootNodeId`
   * :js:meth:`~wv.IModelStructure.getActiveCadConfiguration`
   * :js:meth:`~wv.IModelStructure.getAllRelationships`
   * :js:meth:`~wv.IModelStructure.getAssociatedModelKey`
   * :js:meth:`~wv.IModelStructure.getAttributes`
   * :js:meth:`~wv.IModelStructure.getBimIdFromNode`
   * :js:meth:`~wv.IModelStructure.getBimIdRelationshipTypes`
   * :js:meth:`~wv.IModelStructure.getBounding`
   * :js:meth:`~wv.IModelStructure.getBranchVisibility`
   * :js:meth:`~wv.IModelStructure.getCadConfigurations`
   * :js:meth:`~wv.IModelStructure.getCadViewConfiguration`
   * :js:meth:`~wv.IModelStructure.getCadViewMap`
   * :js:meth:`~wv.IModelStructure.getCadViewPmis`
   * :js:meth:`~wv.IModelStructure.getChildIds`
   * :js:meth:`~wv.IModelStructure.getDefaultCadConfiguration`
   * :js:meth:`~wv.IModelStructure.getDefaultCadView`
   * :js:meth:`~wv.IModelStructure.getEdgeAttributes`
   * :js:meth:`~wv.IModelStructure.getEdgeCount`
   * :js:meth:`~wv.IModelStructure.getEdgeProperty`
   * :js:meth:`~wv.IModelStructure.getFaceAttributes`
   * :js:meth:`~wv.IModelStructure.getFaceCount`
   * :js:meth:`~wv.IModelStructure.getFaceProperty`
   * :js:meth:`~wv.IModelStructure.getFilterName`
   * :js:meth:`~wv.IModelStructure.getFilters`
   * :js:meth:`~wv.IModelStructure.getFiltersFromView`
   * :js:meth:`~wv.IModelStructure.getFiltersWithNode`
   * :js:meth:`~wv.IModelStructure.getGenericTypeIdMap`
   * :js:meth:`~wv.IModelStructure.getGenericTypes`
   * :js:meth:`~wv.IModelStructure.getIdOffset`
   * :js:meth:`~wv.IModelStructure.getInfoOfBimId`
   * :js:meth:`~wv.IModelStructure.getInstanceIncs`
   * :js:meth:`~wv.IModelStructure.getLayerIdsFromName`
   * :js:meth:`~wv.IModelStructure.getLayerName`
   * :js:meth:`~wv.IModelStructure.getLayers`
   * :js:meth:`~wv.IModelStructure.getLowestAvailableNodeId`
   * :js:meth:`~wv.IModelStructure.getMatrix`
   * :js:meth:`~wv.IModelStructure.getModelFileNameFromNode`
   * :js:meth:`~wv.IModelStructure.getModelFileTypeFromNode`
   * :js:meth:`~wv.IModelStructure.getName`
   * :js:meth:`~wv.IModelStructure.getNetMatrix`
   * :js:meth:`~wv.IModelStructure.getNodeExchangeId`
   * :js:meth:`~wv.IModelStructure.getNodeFromInstanceInc`
   * :js:meth:`~wv.IModelStructure.getNodeGenericId`
   * :js:meth:`~wv.IModelStructure.getNodeGenericType`
   * :js:meth:`~wv.IModelStructure.getNodeLayerId`
   * :js:meth:`~wv.IModelStructure.getNodeOrRepItem`
   * :js:meth:`~wv.IModelStructure.getNodesByGenericId`
   * :js:meth:`~wv.IModelStructure.getNodesByGenericType`
   * :js:meth:`~wv.IModelStructure.getNodesFromFilterIds`
   * :js:meth:`~wv.IModelStructure.getParentId`
   * :js:meth:`~wv.IModelStructure.getPartReferrers`
   * :js:meth:`~wv.IModelStructure.getPmis`
   * :js:meth:`~wv.IModelStructure.getPmiSubType`
   * :js:meth:`~wv.IModelStructure.getPmiTopologyReferences`
   * :js:meth:`~wv.IModelStructure.getPmiType`
   * :js:meth:`~wv.IModelStructure.getPointAttributes`
   * :js:meth:`~wv.IModelStructure.getProperties`
   * :js:meth:`~wv.IModelStructure.getRelationsByTypeFromNode`
   * :js:meth:`~wv.IModelStructure.getRuntimeNodeFromBimId`
   * :js:meth:`~wv.IModelStructure.getRuntimeNodesFromLayer`
   * :js:meth:`~wv.IModelStructure.getRuntimeNodesFromLayerName`
   * :js:meth:`~wv.IModelStructure.getRuntimeNodesFromLayers`
   * :js:meth:`~wv.IModelStructure.getType`
   * :js:meth:`~wv.IModelStructure.getUniqueLayerNames`
   * :js:meth:`~wv.IModelStructure.getUnit`
   * :js:meth:`~wv.IModelStructure.getUserData`
   * :js:meth:`~wv.IModelStructure.getUserDataIndices`
   * :js:meth:`~wv.IModelStructure.hasEffectiveGenericType`
   * :js:meth:`~wv.IModelStructure.hasRelationships`
   * :js:meth:`~wv.IModelStructure.init`
   * :js:meth:`~wv.IModelStructure.isACadDrawing`
   * :js:meth:`~wv.IModelStructure.isAnnotationView`
   * :js:meth:`~wv.IModelStructure.isCombineStateView`
   * :js:meth:`~wv.IModelStructure.isFaceMeasurable`
   * :js:meth:`~wv.IModelStructure.isIdValid`
   * :js:meth:`~wv.IModelStructure.isLineMeasurable`
   * :js:meth:`~wv.IModelStructure.isMeasurable`
   * :js:meth:`~wv.IModelStructure.isNodeLoaded`
   * :js:meth:`~wv.IModelStructure.isOutOfHierarchy`
   * :js:meth:`~wv.IModelStructure.isReady`
   * :js:meth:`~wv.IModelStructure.isVisible`
   * :js:meth:`~wv.IModelStructure.isWithinExternalModel`
   * :js:meth:`~wv.IModelStructure.loadMeasurementFromFile`
   * :js:meth:`~wv.IModelStructure.loadMeasurementFromJson`
   * :js:meth:`~wv.IModelStructure.loadMeasurementFromString`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromAssemblyData`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromScsBuffer`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromScsFile`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromScsXmlDoc`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromScsXmlFile`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromStream`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromXmlDoc`
   * :js:meth:`~wv.IModelStructure.loadSubtreeFromXmlFile`
   * :js:meth:`~wv.IModelStructure.lookupAnyBody`
   * :js:meth:`~wv.IModelStructure.lookupAnyTreeNode`
   * :js:meth:`~wv.IModelStructure.lookupBodyInstance`
   * :js:meth:`~wv.IModelStructure.preventMeshDeletion`
   * :js:meth:`~wv.IModelStructure.preventNodeDeletion`
   * :js:meth:`~wv.IModelStructure.registerGenericId`
   * :js:meth:`~wv.IModelStructure.registerGenericType`
   * :js:meth:`~wv.IModelStructure.requestNodes`
   * :js:meth:`~wv.IModelStructure.reset`
   * :js:meth:`~wv.IModelStructure.resetAllTransforms`
   * :js:meth:`~wv.IModelStructure.resetAllVisibilities`
   * :js:meth:`~wv.IModelStructure.resetPmiColor`
   * :js:meth:`~wv.IModelStructure.resetToInitialMatrix`
   * :js:meth:`~wv.IModelStructure.setBehaviorInitiallyHidden`
   * :js:meth:`~wv.IModelStructure.setBodyNodesVisibility`
   * :js:meth:`~wv.IModelStructure.setEdgeProperty`
   * :js:meth:`~wv.IModelStructure.setEnableAutomaticUnitScaling`
   * :js:meth:`~wv.IModelStructure.setFaceProperty`
   * :js:meth:`~wv.IModelStructure.setMatrices`
   * :js:meth:`~wv.IModelStructure.setMatrix`
   * :js:meth:`~wv.IModelStructure.setMeshLevel`
   * :js:meth:`~wv.IModelStructure.setPart`
   * :js:meth:`~wv.IModelStructure.setPhysicalProperties`
   * :js:meth:`~wv.IModelStructure.setPmiColor`
   * :js:meth:`~wv.IModelStructure.setPrefetchScsCutoffScale`
   * :js:meth:`~wv.IModelStructure.setVisibilitiesByMap`
   * :js:meth:`~wv.IModelStructure.setVisibilitiesByValue`
   * :js:meth:`~wv.IModelStructure.shutdown`
   * :js:meth:`~wv.IModelStructure.switchToModel`
   * :js:meth:`~wv.IModelStructure.waitForReady`
   
   



.. rst-class:: kind-group kind-methods

.. rubric:: Methods
   :class: kind-group-title


.. js:method:: wv.IModelStructure._disableCadConfigurations

      .. rst-class:: sig-pretty-signature
      
         | _disableCadConfigurations(): *Promise*
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.$mapBimRelationshipTypes

      .. rst-class:: sig-pretty-signature
      
         | $mapBimRelationshipTypes(**nodeId**\ : *string*\ , **relationships**\ : *Relationship*\ []): :js:class:`RelationshipInfo <wv.RelationshipInfo>`\ []
      
      **Parameters**
      
      
         **nodeId**\ : *string*
      
         **relationships**\ : *Relationship*\ []
      
      
      **Returns**\ : :js:class:`RelationshipInfo <wv.RelationshipInfo>`\ []
      



.. js:method:: wv.IModelStructure.activateCadConfiguration

      .. rst-class:: sig-pretty-signature
      
         | activateCadConfiguration(**view**\ : :js:class:`IView <wv.IView>`\ , **cadConfigId**\ : *number*\ , **fitNodes**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **view**\ : :js:class:`IView <wv.IView>`
      
         **cadConfigId**\ : *number*
      
         **fitNodes**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.activateCadView

      .. rst-class:: sig-pretty-signature
      
         | activateCadView(**view**\ : :js:class:`IView <wv.IView>`\ , **cadViewId**\ : *number*\ , **duration**\ : *number*\ , **massageCamera**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **view**\ : :js:class:`IView <wv.IView>`
      
         **cadViewId**\ : *number*
      
         **duration**\ : *number*
      
         **massageCamera**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.activateDefaultCadConfiguration

      .. rst-class:: sig-pretty-signature
      
         | activateDefaultCadConfiguration(**view**\ : :js:class:`IView <wv.IView>`\ , **fitNodes**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **view**\ : :js:class:`IView <wv.IView>`
      
         **fitNodes**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.activateDefaultCadView

      .. rst-class:: sig-pretty-signature
      
         | activateDefaultCadView(**view**\ : :js:class:`IView <wv.IView>`\ , **duration**\ : *number*\ , **massageCamera**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **view**\ : :js:class:`IView <wv.IView>`
      
         **duration**\ : *number*
      
         **massageCamera**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.addProperty

      .. rst-class:: sig-pretty-signature
      
         | addProperty(**nodeId**\ : *number*\ , **propertyName**\ : *string*\ , **propertyValue**\ : *string*\ , **propertyUnit**\ : :js:class:`UnitElement <wv.UnitElement>`\ []): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **propertyName**\ : *string*
      
         **propertyValue**\ : *string*
      
         **propertyUnit**\ : :js:class:`UnitElement <wv.UnitElement>`\ []
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.allowNodeDeletion

      .. rst-class:: sig-pretty-signature
      
         | allowNodeDeletion(**nodeId**\ : *number*\ ): *void*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.applyFilters

      .. rst-class:: sig-pretty-signature
      
         | applyFilters(**filterIds**\ : :js:data:`FilterId <wv.FilterId>`\ []): *Promise*
      
      **Parameters**
      
      
         **filterIds**\ : :js:data:`FilterId <wv.FilterId>`\ []
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.cadConfigurationsEnabled

      .. rst-class:: sig-pretty-signature
      
         | cadConfigurationsEnabled(): *Promise*
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.clear

      .. rst-class:: sig-pretty-signature
      
         | clear(): *Promise*
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.createAndAddRepItem

      .. rst-class:: sig-pretty-signature
      
         | createAndAddRepItem(**partId**\ : *number*\ , **repItemId**\ : (*None* | *number*\ )): (*None* | *number*\ )
      
      **Parameters**
      
      
         **partId**\ : *number*
      
         **repItemId**\ : (*None* \| *number*\ )
      
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.createCadView

      .. rst-class:: sig-pretty-signature
      
         | createCadView(**parentId**\ : *number*\ , **viewName**\ : *string*\ , **camera**\ : :js:class:`Camera <wv.Camera>`\ , **pmiIds**\ : (*None* | *number*\ []), **nodesToShow**\ : *number*\ [], **nodesToHide**\ : *number*\ [], **nodesIdAndLocalTransforms**\ : [*number*\ , :js:class:`Matrix <wv.Matrix>`\ ][], **cuttingPlane**\ : (*None* | :js:class:`Plane <wv.Plane>`\ ), **meshInstanceData**\ : (*None* | :js:class:`MeshInstanceData <wv.MeshInstanceData>`\ )): (*None* | *number*\ )
      
      **Parameters**
      
      
         **parentId**\ : *number*
      
         **viewName**\ : *string*
      
         **camera**\ : :js:class:`Camera <wv.Camera>`
      
         **pmiIds**\ : (*None* \| *number*\ [])
      
         **nodesToShow**\ : *number*\ []
      
         **nodesToHide**\ : *number*\ []
      
         **nodesIdAndLocalTransforms**\ : [*number*\ , :js:class:`Matrix <wv.Matrix>`\ ][]
      
         **cuttingPlane**\ : (*None* \| :js:class:`Plane <wv.Plane>`\ )
      
         **meshInstanceData**\ : (*None* \| :js:class:`MeshInstanceData <wv.MeshInstanceData>`\ )
      
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.createMeshInstance

      .. rst-class:: sig-pretty-signature
      
         | createMeshInstance(**inclusionKey**\ : :js:data:`InclusionKey <wv.Sc.InclusionKey>`\ , **instanceKey**\ : :js:data:`InstanceKey <wv.Sc.InstanceKey.Invalid>`\ , **name**\ : (*None* | *string*\ ), **parentId**\ : (*None* | *number*\ ), **preventFromResetting**\ : *boolean*\ , **isOutOfHierarchy**\ : *boolean*\ , **implicitBody**\ : *boolean*\ ): *number*
      
      **Parameters**
      
      
         **inclusionKey**\ : :js:data:`InclusionKey <wv.Sc.InclusionKey>`
      
         **instanceKey**\ : :js:data:`InstanceKey <wv.Sc.InstanceKey.Invalid>`
      
         **name**\ : (*None* \| *string*\ )
      
         **parentId**\ : (*None* \| *number*\ )
      
         **preventFromResetting**\ : *boolean*
      
         **isOutOfHierarchy**\ : *boolean*
      
         **implicitBody**\ : *boolean*
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.createNode

      .. rst-class:: sig-pretty-signature
      
         | createNode(**parentId**\ : (*None* | *number*\ ), **nodeName**\ : *string*\ , **nodeId**\ : (*None* | *number*\ ), **localMatrix**\ : (*None* | :js:class:`Matrix <wv.Matrix>`\ ), **visibility**\ : *boolean*\ , **measurementUnit**\ : (*None* | *number*\ )): *number*
      
      **Parameters**
      
      
         **parentId**\ : (*None* \| *number*\ )
      
         **nodeName**\ : *string*
      
         **nodeId**\ : (*None* \| *number*\ )
      
         **localMatrix**\ : (*None* \| :js:class:`Matrix <wv.Matrix>`\ )
      
         **visibility**\ : *boolean*
      
         **measurementUnit**\ : (*None* \| *number*\ )
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.createPart

      .. rst-class:: sig-pretty-signature
      
         | createPart(**nodeId**\ : (*None* | *number*\ )): *number*
      
      **Parameters**
      
      
         **nodeId**\ : (*None* \| *number*\ )
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.createPmiInstance

      .. rst-class:: sig-pretty-signature
      
         | createPmiInstance(**inclusionKey**\ : :js:data:`InclusionKey <wv.Sc.InclusionKey>`\ , **instanceKey**\ : :js:data:`InstanceKey <wv.Sc.InstanceKey.Invalid>`\ , **pmiType**\ : :js:data:`PmiType <wv.PmiType>`\ , **pmiSubType**\ : :js:data:`PmiSubType <wv.PmiSubType>`\ , **topoRefs**\ : *ReferenceOnTopology*\ [], **name**\ : (*None* | *string*\ ), **parentId**\ : (*None* | *number*\ )): *number*
      
      **Parameters**
      
      
         **inclusionKey**\ : :js:data:`InclusionKey <wv.Sc.InclusionKey>`
      
         **instanceKey**\ : :js:data:`InstanceKey <wv.Sc.InstanceKey.Invalid>`
      
         **pmiType**\ : :js:data:`PmiType <wv.PmiType>`
      
         **pmiSubType**\ : :js:data:`PmiSubType <wv.PmiSubType>`
      
         **topoRefs**\ : *ReferenceOnTopology*\ []
      
         **name**\ : (*None* \| *string*\ )
      
         **parentId**\ : (*None* \| *number*\ )
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.deleteNode

      .. rst-class:: sig-pretty-signature
      
         | deleteNode(**nodeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.firstAssemblyDataHeader

      .. rst-class:: sig-pretty-signature
      
         | firstAssemblyDataHeader(): (*None* | *AssemblyDataHeader*\ )
      
      **Returns**\ : (*None* \| *AssemblyDataHeader*\ )
      



.. js:method:: wv.IModelStructure.gatherAnyBodiesFromNodeId

      .. rst-class:: sig-pretty-signature
      
         | gatherAnyBodiesFromNodeId(**nodeId**\ : *number*\ ): *AnyBody*\ []
      
      Walk the assembly tree from the given nodeId and gather all the AnyBody nodes found.
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
            The starting nodeId to walk from.
      
      
      
      **Returns**\ : *AnyBody*\ []
      
      
         An array of AnyBody nodes found during the walk.
      
      



.. js:method:: wv.IModelStructure.gatherInstanceIncsFromNodeIds

      .. rst-class:: sig-pretty-signature
      
         | gatherInstanceIncsFromNodeIds(**nodeIds**\ : *number*\ [], **allowedTypes**\ : *BodyTypeBits*\ , **restriction**\ : *WalkRestriction*\ ): :js:data:`InstanceIncs <wv.Sc.InstanceIncs>`
      
      **Parameters**
      
      
         **nodeIds**\ : *number*\ []
      
         **allowedTypes**\ : *BodyTypeBits*
      
         **restriction**\ : *WalkRestriction*
      
      
      **Returns**\ : :js:data:`InstanceIncs <wv.Sc.InstanceIncs>`
      



.. js:method:: wv.IModelStructure.getAbsoluteRootNodeId

      .. rst-class:: sig-pretty-signature
      
         | getAbsoluteRootNodeId(): *number*
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.getActiveCadConfiguration

      .. rst-class:: sig-pretty-signature
      
         | getActiveCadConfiguration(): (*None* | *number*\ )
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.getAllRelationships

      .. rst-class:: sig-pretty-signature
      
         | getAllRelationships(**nodeId**\ : *number*\ ): *Relationship*\ []
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Relationship*\ []
      



.. js:method:: wv.IModelStructure.getAssociatedModelKey

      .. rst-class:: sig-pretty-signature
      
         | getAssociatedModelKey(**nodeId**\ : *number*\ ): (*None* | :js:data:`ModelKey <wv.Sc.ModelKey>`\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| :js:data:`ModelKey <wv.Sc.ModelKey>`\ )
      



.. js:method:: wv.IModelStructure.getAttributes

      .. rst-class:: sig-pretty-signature
      
         | getAttributes(**nodeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getBimIdFromNode

      .. rst-class:: sig-pretty-signature
      
         | getBimIdFromNode(**nodeId**\ : *number*\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getBimIdRelationshipTypes

      .. rst-class:: sig-pretty-signature
      
         | getBimIdRelationshipTypes(**contextNodeId**\ : *number*\ , **nodeId**\ : *string*\ ): :js:class:`RelationshipInfo <wv.RelationshipInfo>`\ []
      
      **Parameters**
      
      
         **contextNodeId**\ : *number*
      
         **nodeId**\ : *string*
      
      
      **Returns**\ : :js:class:`RelationshipInfo <wv.RelationshipInfo>`\ []
      



.. js:method:: wv.IModelStructure.getBounding

      .. rst-class:: sig-pretty-signature
      
         | getBounding(**nodeIds**\ : *number*\ [], **allowedTypes**\ : *BodyTypeBits*\ , **ignoreInvisible**\ : *boolean*\ , **tightBounding**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeIds**\ : *number*\ []
      
         **allowedTypes**\ : *BodyTypeBits*
      
         **ignoreInvisible**\ : *boolean*
      
         **tightBounding**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getBranchVisibility

      .. rst-class:: sig-pretty-signature
      
         | getBranchVisibility(**nodeId**\ : *number*\ ): :js:data:`BranchVisibility <wv.BranchVisibility>`
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:data:`BranchVisibility <wv.BranchVisibility>`
      



.. js:method:: wv.IModelStructure.getCadConfigurations

      .. rst-class:: sig-pretty-signature
      
         | getCadConfigurations(): :js:class:`IdStringMap <wv.IdStringMap>`
      
      **Returns**\ : :js:class:`IdStringMap <wv.IdStringMap>`
      



.. js:method:: wv.IModelStructure.getCadViewConfiguration

      .. rst-class:: sig-pretty-signature
      
         | getCadViewConfiguration(**nodeId**\ : *number*\ ): (*None* | *number*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.getCadViewMap

      .. rst-class:: sig-pretty-signature
      
         | getCadViewMap(): *Map*
      
      **Returns**\ : *Map*
      



.. js:method:: wv.IModelStructure.getCadViewPmis

      .. rst-class:: sig-pretty-signature
      
         | getCadViewPmis(**cadViewId**\ : *number*\ ): *number*\ []
      
      **Parameters**
      
      
         **cadViewId**\ : *number*
      
      
      **Returns**\ : *number*\ []
      



.. js:method:: wv.IModelStructure.getChildIds

      .. rst-class:: sig-pretty-signature
      
         | getChildIds(**nodeId**\ : *number*\ , **includeOutOfHierarchy**\ : *boolean*\ ): *number*\ []
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **includeOutOfHierarchy**\ : *boolean*
      
      
      **Returns**\ : *number*\ []
      



.. js:method:: wv.IModelStructure.getDefaultCadConfiguration

      .. rst-class:: sig-pretty-signature
      
         | getDefaultCadConfiguration(): (*None* | *number*\ )
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.getDefaultCadView

      .. rst-class:: sig-pretty-signature
      
         | getDefaultCadView(): (*None* | *number*\ )
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.getEdgeAttributes

      .. rst-class:: sig-pretty-signature
      
         | getEdgeAttributes(**nodeId**\ : *number*\ , **edgeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **edgeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getEdgeCount

      .. rst-class:: sig-pretty-signature
      
         | getEdgeCount(**nodeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getEdgeProperty

      .. rst-class:: sig-pretty-signature
      
         | getEdgeProperty(**nodeId**\ : *number*\ , **edgeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **edgeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getFaceAttributes

      .. rst-class:: sig-pretty-signature
      
         | getFaceAttributes(**nodeId**\ : *number*\ , **faceId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **faceId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getFaceCount

      .. rst-class:: sig-pretty-signature
      
         | getFaceCount(**nodeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getFaceProperty

      .. rst-class:: sig-pretty-signature
      
         | getFaceProperty(**prcId**\ : *number*\ , **faceId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **prcId**\ : *number*
      
         **faceId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getFilterName

      .. rst-class:: sig-pretty-signature
      
         | getFilterName(**filterId**\ : :js:data:`FilterId <wv.FilterId>`\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **filterId**\ : :js:data:`FilterId <wv.FilterId>`
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getFilters

      .. rst-class:: sig-pretty-signature
      
         | getFilters(): *Map*
      
      **Returns**\ : *Map*
      



.. js:method:: wv.IModelStructure.getFiltersFromView

      .. rst-class:: sig-pretty-signature
      
         | getFiltersFromView(**nodeId**\ : *number*\ ): :js:data:`FilterId <wv.FilterId>`\ []
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:data:`FilterId <wv.FilterId>`\ []
      



.. js:method:: wv.IModelStructure.getFiltersWithNode

      .. rst-class:: sig-pretty-signature
      
         | getFiltersWithNode(**nodeId**\ : *number*\ ): :js:data:`FilterId <wv.FilterId>`\ []
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:data:`FilterId <wv.FilterId>`\ []
      



.. js:method:: wv.IModelStructure.getGenericTypeIdMap

      .. rst-class:: sig-pretty-signature
      
         | getGenericTypeIdMap(): *Map*
      
      **Returns**\ : *Map*
      



.. js:method:: wv.IModelStructure.getGenericTypes

      .. rst-class:: sig-pretty-signature
      
         | getGenericTypes(): *string*\ []
      
      **Returns**\ : *string*\ []
      



.. js:method:: wv.IModelStructure.getIdOffset

      .. rst-class:: sig-pretty-signature
      
         | getIdOffset(**nodeId**\ : *number*\ ): *number*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.getInfoOfBimId

      .. rst-class:: sig-pretty-signature
      
         | getInfoOfBimId(**nodeID**\ : *number*\ , **bimId**\ : *string*\ ): { connected: *boolean*\ , name: *string* }
      
      **Parameters**
      
      
         **nodeID**\ : *number*
      
         **bimId**\ : *string*
      
      
      **Returns**\ : { connected: *boolean*\ , name: *string* }
      



.. js:method:: wv.IModelStructure.getInstanceIncs

      .. rst-class:: sig-pretty-signature
      
         | getInstanceIncs(**nodeId**\ : *number*\ , **allowedTypes**\ : *BodyTypeBits*\ ): :js:data:`InstanceIncs <wv.Sc.InstanceIncs>`
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **allowedTypes**\ : *BodyTypeBits*
      
      
      **Returns**\ : :js:data:`InstanceIncs <wv.Sc.InstanceIncs>`
      



.. js:method:: wv.IModelStructure.getLayerIdsFromName

      .. rst-class:: sig-pretty-signature
      
         | getLayerIdsFromName(**name**\ : *string*\ ): (*None* | :js:data:`LayerId <wv.LayerId>`\ [])
      
      **Parameters**
      
      
         **name**\ : *string*
      
      
      **Returns**\ : (*None* \| :js:data:`LayerId <wv.LayerId>`\ [])
      



.. js:method:: wv.IModelStructure.getLayerName

      .. rst-class:: sig-pretty-signature
      
         | getLayerName(**layerId**\ : :js:data:`LayerId <wv.LayerId>`\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **layerId**\ : :js:data:`LayerId <wv.LayerId>`
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getLayers

      .. rst-class:: sig-pretty-signature
      
         | getLayers(): *Map*
      
      **Returns**\ : *Map*
      



.. js:method:: wv.IModelStructure.getLowestAvailableNodeId

      .. rst-class:: sig-pretty-signature
      
         | getLowestAvailableNodeId(): *number*
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.getMatrix

      .. rst-class:: sig-pretty-signature
      
         | getMatrix(**nodeId**\ : *number*\ ): :js:class:`Matrix <wv.Matrix>`
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:class:`Matrix <wv.Matrix>`
      



.. js:method:: wv.IModelStructure.getModelFileNameFromNode

      .. rst-class:: sig-pretty-signature
      
         | getModelFileNameFromNode(**nodeId**\ : *number*\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getModelFileTypeFromNode

      .. rst-class:: sig-pretty-signature
      
         | getModelFileTypeFromNode(**nodeId**\ : *number*\ ): (*None* | :js:data:`FileType <wv.FileType>`\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| :js:data:`FileType <wv.FileType>`\ )
      



.. js:method:: wv.IModelStructure.getName

      .. rst-class:: sig-pretty-signature
      
         | getName(**nodeId**\ : *number*\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getNetMatrix

      .. rst-class:: sig-pretty-signature
      
         | getNetMatrix(**nodeId**\ : *number*\ ): :js:data:`Matrix16 <wv.Matrix16>`
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:data:`Matrix16 <wv.Matrix16>`
      



.. js:method:: wv.IModelStructure.getNodeExchangeId

      .. rst-class:: sig-pretty-signature
      
         | getNodeExchangeId(**nodeId**\ : *number*\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getNodeFromInstanceInc

      .. rst-class:: sig-pretty-signature
      
         | getNodeFromInstanceInc(**markNodeLoadedIfCreated**\ : *boolean*\ , **inclusionKey**\ : :js:data:`InclusionKey <wv.Sc.InclusionKey>`\ , **instanceKey**\ : :js:data:`InstanceKey <wv.Sc.InstanceKey.Invalid>`\ , **isOutOfHierarchy**\ : *boolean*\ ): *number*
      
      **Parameters**
      
      
         **markNodeLoadedIfCreated**\ : *boolean*
      
         **inclusionKey**\ : :js:data:`InclusionKey <wv.Sc.InclusionKey>`
      
         **instanceKey**\ : :js:data:`InstanceKey <wv.Sc.InstanceKey.Invalid>`
      
         **isOutOfHierarchy**\ : *boolean*
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.getNodeGenericId

      .. rst-class:: sig-pretty-signature
      
         | getNodeGenericId(**nodeId**\ : *number*\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getNodeGenericType

      .. rst-class:: sig-pretty-signature
      
         | getNodeGenericType(**nodeId**\ : *number*\ ): (*None* | *string*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *string*\ )
      



.. js:method:: wv.IModelStructure.getNodeLayerId

      .. rst-class:: sig-pretty-signature
      
         | getNodeLayerId(**nodeId**\ : *number*\ ): (*None* | :js:data:`LayerId <wv.LayerId>`\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| :js:data:`LayerId <wv.LayerId>`\ )
      



.. js:method:: wv.IModelStructure.getNodeOrRepItem

      .. rst-class:: sig-pretty-signature
      
         | getNodeOrRepItem(**node**\ : *AnyNode*\ ): *Promise*
      
      **Parameters**
      
      
         **node**\ : *AnyNode*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getNodesByGenericId

      .. rst-class:: sig-pretty-signature
      
         | getNodesByGenericId(**genericId**\ : *string*\ ): (*None* | *Set*\ )
      
      **Parameters**
      
      
         **genericId**\ : *string*
      
      
      **Returns**\ : (*None* \| *Set*\ )
      



.. js:method:: wv.IModelStructure.getNodesByGenericType

      .. rst-class:: sig-pretty-signature
      
         | getNodesByGenericType(**genericType**\ : *string*\ ): (*None* | *Set*\ )
      
      **Parameters**
      
      
         **genericType**\ : *string*
      
      
      **Returns**\ : (*None* \| *Set*\ )
      



.. js:method:: wv.IModelStructure.getNodesFromFilterIds

      .. rst-class:: sig-pretty-signature
      
         | getNodesFromFilterIds(**filterIds**\ : :js:data:`FilterId <wv.FilterId>`\ []): (*None* | :js:class:`FilteredNodes <wv.FilteredNodes>`\ )
      
      **Parameters**
      
      
         **filterIds**\ : :js:data:`FilterId <wv.FilterId>`\ []
      
      
      **Returns**\ : (*None* \| :js:class:`FilteredNodes <wv.FilteredNodes>`\ )
      



.. js:method:: wv.IModelStructure.getParentId

      .. rst-class:: sig-pretty-signature
      
         | getParentId(**nodeId**\ : *number*\ ): (*None* | *number*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.getPartReferrers

      .. rst-class:: sig-pretty-signature
      
         | getPartReferrers(**nodeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getPmis

      .. rst-class:: sig-pretty-signature
      
         | getPmis(): :js:class:`IdStringMap <wv.IdStringMap>`
      
      **Returns**\ : :js:class:`IdStringMap <wv.IdStringMap>`
      



.. js:method:: wv.IModelStructure.getPmiSubType

      .. rst-class:: sig-pretty-signature
      
         | getPmiSubType(**pmiId**\ : *number*\ ): :js:data:`PmiSubType <wv.PmiSubType>`
      
      **Parameters**
      
      
         **pmiId**\ : *number*
      
      
      **Returns**\ : :js:data:`PmiSubType <wv.PmiSubType>`
      



.. js:method:: wv.IModelStructure.getPmiTopologyReferences

      .. rst-class:: sig-pretty-signature
      
         | getPmiTopologyReferences(**pmiNodeId**\ : *number*\ ): (*None* | *PmiTopologyReference*\ [])
      
      **Parameters**
      
      
         **pmiNodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *PmiTopologyReference*\ [])
      



.. js:method:: wv.IModelStructure.getPmiType

      .. rst-class:: sig-pretty-signature
      
         | getPmiType(**pmiId**\ : *number*\ ): :js:data:`PmiType <wv.PmiType>`
      
      **Parameters**
      
      
         **pmiId**\ : *number*
      
      
      **Returns**\ : :js:data:`PmiType <wv.PmiType>`
      



.. js:method:: wv.IModelStructure.getPointAttributes

      .. rst-class:: sig-pretty-signature
      
         | getPointAttributes(**nodeId**\ : *number*\ , **pointId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **pointId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getProperties

      .. rst-class:: sig-pretty-signature
      
         | getProperties(**nodeId**\ : *number*\ , **computeFromChildren**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **computeFromChildren**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.getRelationsByTypeFromNode

      .. rst-class:: sig-pretty-signature
      
         | getRelationsByTypeFromNode(**contextNodeId**\ : *number*\ , **nodeId**\ : *string*\ ): (*None* | *Map*\ )
      
      **Parameters**
      
      
         **contextNodeId**\ : *number*
      
         **nodeId**\ : *string*
      
      
      **Returns**\ : (*None* \| *Map*\ )
      



.. js:method:: wv.IModelStructure.getRuntimeNodeFromBimId

      .. rst-class:: sig-pretty-signature
      
         | getRuntimeNodeFromBimId(**contextNodeId**\ : *number*\ , **bimId**\ : *string*\ ): (*None* | *number*\ )
      
      **Parameters**
      
      
         **contextNodeId**\ : *number*
      
         **bimId**\ : *string*
      
      
      **Returns**\ : (*None* \| *number*\ )
      



.. js:method:: wv.IModelStructure.getRuntimeNodesFromLayer

      .. rst-class:: sig-pretty-signature
      
         | getRuntimeNodesFromLayer(**layerId**\ : :js:data:`LayerId <wv.LayerId>`\ , **onlyTreeNodes**\ : *boolean*\ ): (*None* | *number*\ [])
      
      **Parameters**
      
      
         **layerId**\ : :js:data:`LayerId <wv.LayerId>`
      
         **onlyTreeNodes**\ : *boolean*
      
      
      **Returns**\ : (*None* \| *number*\ [])
      



.. js:method:: wv.IModelStructure.getRuntimeNodesFromLayerName

      .. rst-class:: sig-pretty-signature
      
         | getRuntimeNodesFromLayerName(**layerName**\ : *string*\ , **onlyTreeNodes**\ : *boolean*\ ): (*None* | *number*\ [])
      
      **Parameters**
      
      
         **layerName**\ : *string*
      
         **onlyTreeNodes**\ : *boolean*
      
      
      **Returns**\ : (*None* \| *number*\ [])
      



.. js:method:: wv.IModelStructure.getRuntimeNodesFromLayers

      .. rst-class:: sig-pretty-signature
      
         | getRuntimeNodesFromLayers(**layersId**\ : :js:data:`LayerId <wv.LayerId>`\ [], **onlyTreeNodes**\ : *boolean*\ ): (*None* | *number*\ [])
      
      **Parameters**
      
      
         **layersId**\ : :js:data:`LayerId <wv.LayerId>`\ []
      
         **onlyTreeNodes**\ : *boolean*
      
      
      **Returns**\ : (*None* \| *number*\ [])
      



.. js:method:: wv.IModelStructure.getType

      .. rst-class:: sig-pretty-signature
      
         | getType(**nodeId**\ : *number*\ ): :js:data:`NodeType <wv.NodeType>`
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:data:`NodeType <wv.NodeType>`
      



.. js:method:: wv.IModelStructure.getUniqueLayerNames

      .. rst-class:: sig-pretty-signature
      
         | getUniqueLayerNames(): *string*\ []
      
      **Returns**\ : *string*\ []
      



.. js:method:: wv.IModelStructure.getUnit

      .. rst-class:: sig-pretty-signature
      
         | getUnit(**nodeId**\ : *number*\ ): *number*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *number*
      



.. js:method:: wv.IModelStructure.getUserData

      .. rst-class:: sig-pretty-signature
      
         | getUserData(**nodeId**\ : *number*\ , **index**\ : :js:data:`UserDataIndex <wv.UserDataIndex>`\ ): *Uint8Array*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **index**\ : :js:data:`UserDataIndex <wv.UserDataIndex>`
      
      
      **Returns**\ : *Uint8Array*
      



.. js:method:: wv.IModelStructure.getUserDataIndices

      .. rst-class:: sig-pretty-signature
      
         | getUserDataIndices(**nodeId**\ : *number*\ ): :js:data:`UserDataIndex <wv.UserDataIndex>`\ []
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : :js:data:`UserDataIndex <wv.UserDataIndex>`\ []
      



.. js:method:: wv.IModelStructure.hasEffectiveGenericType

      .. rst-class:: sig-pretty-signature
      
         | hasEffectiveGenericType(**nodeId**\ : *number*\ , **genericType**\ : *string*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **genericType**\ : *string*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.hasRelationships

      .. rst-class:: sig-pretty-signature
      
         | hasRelationships(**nodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.init

      .. rst-class:: sig-pretty-signature
      
         | init(**view**\ : :js:class:`IView <wv.IView>`\ , **maxConcurrentAttachments**\ : (*None* | *number*\ )): *Promise*
      
      **Parameters**
      
      
         **view**\ : :js:class:`IView <wv.IView>`
      
         **maxConcurrentAttachments**\ : (*None* \| *number*\ )
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.isACadDrawing

      .. rst-class:: sig-pretty-signature
      
         | isACadDrawing(): *boolean*
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isAnnotationView

      .. rst-class:: sig-pretty-signature
      
         | isAnnotationView(**cadViewNodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **cadViewNodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isCombineStateView

      .. rst-class:: sig-pretty-signature
      
         | isCombineStateView(**cadViewNodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **cadViewNodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isFaceMeasurable

      .. rst-class:: sig-pretty-signature
      
         | isFaceMeasurable(**bodyId**\ : *number*\ , **faceIndex**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **bodyId**\ : *number*
      
         **faceIndex**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.isIdValid

      .. rst-class:: sig-pretty-signature
      
         | isIdValid(**nodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isLineMeasurable

      .. rst-class:: sig-pretty-signature
      
         | isLineMeasurable(**bodyId**\ : *number*\ , **lineIndex**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **bodyId**\ : *number*
      
         **lineIndex**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.isMeasurable

      .. rst-class:: sig-pretty-signature
      
         | isMeasurable(): *boolean*
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isNodeLoaded

      .. rst-class:: sig-pretty-signature
      
         | isNodeLoaded(**nodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isOutOfHierarchy

      .. rst-class:: sig-pretty-signature
      
         | isOutOfHierarchy(**nodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isReady

      .. rst-class:: sig-pretty-signature
      
         | isReady(): *boolean*
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isVisible

      .. rst-class:: sig-pretty-signature
      
         | isVisible(**nodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.isWithinExternalModel

      .. rst-class:: sig-pretty-signature
      
         | isWithinExternalModel(**nodeId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.loadMeasurementFromFile

      .. rst-class:: sig-pretty-signature
      
         | loadMeasurementFromFile(**zipFilename**\ : *string*\ ): *Promise*
      
      **Parameters**
      
      
         **zipFilename**\ : *string*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadMeasurementFromJson

      .. rst-class:: sig-pretty-signature
      
         | loadMeasurementFromJson(**json**\ : *any*\ ): *Promise*
      
      **Parameters**
      
      
         **json**\ : *any*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadMeasurementFromString

      .. rst-class:: sig-pretty-signature
      
         | loadMeasurementFromString(**str**\ : *string*\ ): *Promise*
      
      **Parameters**
      
      
         **str**\ : *string*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromAssemblyData

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromAssemblyData(**nodeId**\ : *number*\ , **modelInc**\ : :js:data:`ModelInc <wv.Sc.ModelInc>`\ , **assemblyData**\ : *AssemblyData*\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **modelInc**\ : :js:data:`ModelInc <wv.Sc.ModelInc>`
      
         **assemblyData**\ : *AssemblyData*
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromScsBuffer

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromScsBuffer(**nodeId**\ : *number*\ , **scsBuffer**\ : :js:data:`ScsBuffer <wv.Sc.ScsBuffer>`\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **scsBuffer**\ : :js:data:`ScsBuffer <wv.Sc.ScsBuffer>`
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromScsFile

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromScsFile(**nodeId**\ : *number*\ , **scsFilename**\ : *string*\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **scsFilename**\ : *string*
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromScsXmlDoc

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromScsXmlDoc(**nodeId**\ : *number*\ , **xmlData**\ : (*string* | *Document*\ ), **modelNameToScs**\ : :js:data:`ModelNameToScsFileFunc <wv.ModelNameToScsFileFunc>`\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **xmlData**\ : (*string* \| *Document*\ )
      
         **modelNameToScs**\ : :js:data:`ModelNameToScsFileFunc <wv.ModelNameToScsFileFunc>`
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromScsXmlFile

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromScsXmlFile(**nodeId**\ : *number*\ , **xmlFilename**\ : *string*\ , **modelNameToScs**\ : :js:data:`ModelNameToScsFileFunc <wv.ModelNameToScsFileFunc>`\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **xmlFilename**\ : *string*
      
         **modelNameToScs**\ : :js:data:`ModelNameToScsFileFunc <wv.ModelNameToScsFileFunc>`
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromStream

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromStream(**nodeId**\ : *number*\ , **modelName**\ : *string*\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **modelName**\ : *string*
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromXmlDoc

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromXmlDoc(**nodeId**\ : *number*\ , **xml**\ : (*string* | *Document*\ ), **massageModelName**\ : :js:data:`MassageModelNameFunc <wv.MassageModelNameFunc>`\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **xml**\ : (*string* \| *Document*\ )
      
         **massageModelName**\ : :js:data:`MassageModelNameFunc <wv.MassageModelNameFunc>`
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.loadSubtreeFromXmlFile

      .. rst-class:: sig-pretty-signature
      
         | loadSubtreeFromXmlFile(**nodeId**\ : *number*\ , **xmlFilename**\ : *string*\ , **massageModelName**\ : :js:data:`MassageModelNameFunc <wv.MassageModelNameFunc>`\ , **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **xmlFilename**\ : *string*
      
         **massageModelName**\ : :js:data:`MassageModelNameFunc <wv.MassageModelNameFunc>`
      
         **config**\ : :js:class:`LoadSubtreeConfig <wv.LoadSubtreeConfig>`
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.lookupAnyBody

      .. rst-class:: sig-pretty-signature
      
         | lookupAnyBody(**nodeId**\ : *number*\ ): (*None* | *AnyBody*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *AnyBody*\ )
      



.. js:method:: wv.IModelStructure.lookupAnyTreeNode

      .. rst-class:: sig-pretty-signature
      
         | lookupAnyTreeNode(**nodeId**\ : *number*\ ): (*None* | *AnyTreeNode*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *AnyTreeNode*\ )
      



.. js:method:: wv.IModelStructure.lookupBodyInstance

      .. rst-class:: sig-pretty-signature
      
         | lookupBodyInstance(**nodeId**\ : *number*\ ): (*None* | *BodyInstance*\ )
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : (*None* \| *BodyInstance*\ )
      



.. js:method:: wv.IModelStructure.preventMeshDeletion

      .. rst-class:: sig-pretty-signature
      
         | preventMeshDeletion(**meshId**\ : :js:data:`MeshKey <wv.Sc.MeshKey.Invalid>`\ ): *void*
      
      **Parameters**
      
      
         **meshId**\ : :js:data:`MeshKey <wv.Sc.MeshKey.Invalid>`
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.preventNodeDeletion

      .. rst-class:: sig-pretty-signature
      
         | preventNodeDeletion(**nodeId**\ : *number*\ ): *void*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.registerGenericId

      .. rst-class:: sig-pretty-signature
      
         | registerGenericId(**node**\ : *AnyTreeNode*\ , **genericId**\ : *string*\ ): *void*
      
      **Parameters**
      
      
         **node**\ : *AnyTreeNode*
      
         **genericId**\ : *string*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.registerGenericType

      .. rst-class:: sig-pretty-signature
      
         | registerGenericType(**node**\ : *AnyTreeNode*\ , **genericType**\ : *string*\ ): *void*
      
      **Parameters**
      
      
         **node**\ : *AnyTreeNode*
      
         **genericType**\ : *string*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.requestNodes

      .. rst-class:: sig-pretty-signature
      
         | requestNodes(**nodeIds**\ : *number*\ []): *Promise*
      
      **Parameters**
      
      
         **nodeIds**\ : *number*\ []
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.reset

      .. rst-class:: sig-pretty-signature
      
         | reset(): *Promise*
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.resetAllTransforms

      .. rst-class:: sig-pretty-signature
      
         | resetAllTransforms(): *Promise*
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.resetAllVisibilities

      .. rst-class:: sig-pretty-signature
      
         | resetAllVisibilities(): *Promise*
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.resetPmiColor

      .. rst-class:: sig-pretty-signature
      
         | resetPmiColor(**startNodeId**\ : (*undefined* | *number*\ )): *void*
      
      **Parameters**
      
      
         **startNodeId**\ : (*undefined* \| *number*\ )
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.resetToInitialMatrix

      .. rst-class:: sig-pretty-signature
      
         | resetToInitialMatrix(**nodeId**\ : *number*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.setBehaviorInitiallyHidden

      .. rst-class:: sig-pretty-signature
      
         | setBehaviorInitiallyHidden(**value**\ : *boolean*\ ): *void*
      
      **Parameters**
      
      
         **value**\ : *boolean*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setBodyNodesVisibility

      .. rst-class:: sig-pretty-signature
      
         | setBodyNodesVisibility(**startNode**\ : *AnyTreeNode*\ , **visibilityFormatter**\ : (*boolean* | (**node**\ : *AnyTreeNode*\ ) => (*undefined* | *boolean*\ ))): *Promise*
      
      **Parameters**
      
      
         **startNode**\ : *AnyTreeNode*
      
         **visibilityFormatter**\ : (*boolean* \| (**node**\ : *AnyTreeNode*\ ) => (*undefined* \| *boolean*\ ))
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.setEdgeProperty

      .. rst-class:: sig-pretty-signature
      
         | setEdgeProperty(**nodeId**\ : *number*\ , **edgeId**\ : *number*\ , **prop**\ : *Base*\ ): *void*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **edgeId**\ : *number*
      
         **prop**\ : *Base*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setEnableAutomaticUnitScaling

      .. rst-class:: sig-pretty-signature
      
         | setEnableAutomaticUnitScaling(**value**\ : *boolean*\ ): *void*
      
      **Parameters**
      
      
         **value**\ : *boolean*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setFaceProperty

      .. rst-class:: sig-pretty-signature
      
         | setFaceProperty(**nodeId**\ : *number*\ , **faceId**\ : *number*\ , **prop**\ : *Base*\ ): *void*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **faceId**\ : *number*
      
         **prop**\ : *Base*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setMatrices

      .. rst-class:: sig-pretty-signature
      
         | setMatrices(**nodeIds**\ : *number*\ [], **matrices**\ : :js:class:`Matrix <wv.Matrix>`\ [], **setAsInitial**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeIds**\ : *number*\ []
      
         **matrices**\ : :js:class:`Matrix <wv.Matrix>`\ []
      
         **setAsInitial**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.setMatrix

      .. rst-class:: sig-pretty-signature
      
         | setMatrix(**nodeId**\ : *number*\ , **matrix**\ : :js:class:`Matrix <wv.Matrix>`\ , **setAsInitial**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **matrix**\ : :js:class:`Matrix <wv.Matrix>`
      
         **setAsInitial**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.setMeshLevel

      .. rst-class:: sig-pretty-signature
      
         | setMeshLevel(**nodeIds**\ : *number*\ [], **meshLevel**\ : *number*\ ): *void*
      
      **Parameters**
      
      
         **nodeIds**\ : *number*\ []
      
         **meshLevel**\ : *number*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setPart

      .. rst-class:: sig-pretty-signature
      
         | setPart(**nodeId**\ : *number*\ , **partId**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **partId**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.setPhysicalProperties

      .. rst-class:: sig-pretty-signature
      
         | setPhysicalProperties(**nodeId**\ : *number*\ , **centerOfGravity**\ : :js:class:`Point3 <wv.Point3>`\ , **surfaceArea**\ : *number*\ , **volume**\ : *number*\ ): *boolean*
      
      **Parameters**
      
      
         **nodeId**\ : *number*
      
         **centerOfGravity**\ : :js:class:`Point3 <wv.Point3>`
      
         **surfaceArea**\ : *number*
      
         **volume**\ : *number*
      
      
      **Returns**\ : *boolean*
      



.. js:method:: wv.IModelStructure.setPmiColor

      .. rst-class:: sig-pretty-signature
      
         | setPmiColor(**color**\ : :js:class:`Color <wv.Color>`\ , **startNodeId**\ : (*undefined* | *number*\ )): *void*
      
      **Parameters**
      
      
         **color**\ : :js:class:`Color <wv.Color>`
      
         **startNodeId**\ : (*undefined* \| *number*\ )
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setPrefetchScsCutoffScale

      .. rst-class:: sig-pretty-signature
      
         | setPrefetchScsCutoffScale(**prefetchCutoffScale**\ : *number*\ ): *void*
      
      **Parameters**
      
      
         **prefetchCutoffScale**\ : *number*
      
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.setVisibilitiesByMap

      .. rst-class:: sig-pretty-signature
      
         | setVisibilitiesByMap(**idToVisibility**\ : *Map*\ , **initiallyHiddenStayHidden**\ : *boolean*\ ): *Promise*
      
      **Parameters**
      
      
         **idToVisibility**\ : *Map*
      
         **initiallyHiddenStayHidden**\ : *boolean*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.setVisibilitiesByValue

      .. rst-class:: sig-pretty-signature
      
         | setVisibilitiesByValue(**nodeIds**\ : *number*\ [], **visibility**\ : *boolean*\ , **initiallyHiddenStayHidden**\ : (*None* | *boolean*\ )): *Promise*
      
      **Parameters**
      
      
         **nodeIds**\ : *number*\ []
      
         **visibility**\ : *boolean*
      
         **initiallyHiddenStayHidden**\ : (*None* \| *boolean*\ )
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.shutdown

      .. rst-class:: sig-pretty-signature
      
         | shutdown(): *void*
      
      **Returns**\ : *void*
      



.. js:method:: wv.IModelStructure.switchToModel

      .. rst-class:: sig-pretty-signature
      
         | switchToModel(**newModelFilename**\ : *string*\ ): *Promise*
      
      **Parameters**
      
      
         **newModelFilename**\ : *string*
      
      
      **Returns**\ : *Promise*
      



.. js:method:: wv.IModelStructure.waitForReady

      .. rst-class:: sig-pretty-signature
      
         | waitForReady(): *Promise*
      
      **Returns**\ : *Promise*
      




