
#########
IScEngine
#########

.. js:class:: IScEngine

   
   Index
   =====
   
   .. rubric:: Methods
   
   
   .. rst-class:: api-xref-list
   
   
   * :js:meth:`~IScEngine._getScPlaneArray`
   * :js:meth:`~IScEngine._toTextureInterpolation`
   * :js:meth:`~IScEngine._toTextureMipMapping`
   * :js:meth:`~IScEngine._toTextureModifier`
   * :js:meth:`~IScEngine._toTextureParameterization`
   * :js:meth:`~IScEngine._toTextureTiling`
   * :js:meth:`~IScEngine.addCuttingSection`
   * :js:meth:`~IScEngine.addLight`
   * :js:meth:`~IScEngine.addNodesToOverlay`
   * :js:meth:`~IScEngine.addPointLight`
   * :js:meth:`~IScEngine.addView`
   * :js:meth:`~IScEngine.advanceExportToSvg`
   * :js:meth:`~IScEngine.advanceIncrementalSelection`
   * :js:meth:`~IScEngine.attachModel`
   * :js:meth:`~IScEngine.attachScsBuffer`
   * :js:meth:`~IScEngine.attachScsModelByKey`
   * :js:meth:`~IScEngine.beginConvexPolyhedronSelection`
   * :js:meth:`~IScEngine.beginExportToSvg`
   * :js:meth:`~IScEngine.beginRayDrillSelection`
   * :js:meth:`~IScEngine.beginRequestBatch`
   * :js:meth:`~IScEngine.beginScreenAreaSelection`
   * :js:meth:`~IScEngine.beginSphereSelection`
   * :js:meth:`~IScEngine.clearElementVisibility`
   * :js:meth:`~IScEngine.clearHighlight`
   * :js:meth:`~IScEngine.clearLights`
   * :js:meth:`~IScEngine.compositePickFromScreen`
   * :js:meth:`~IScEngine.computeMinimumBodyBodyDistance`
   * :js:meth:`~IScEngine.computeMinimumFaceLineDistance`
   * :js:meth:`~IScEngine.computeMinimumFaceRayDistance`
   * :js:meth:`~IScEngine.computeMininimumFaceFaceDistance`
   * :js:meth:`~IScEngine.createFloorplanMesh`
   * :js:meth:`~IScEngine.createIdentityMatrix`
   * :js:meth:`~IScEngine.createImage`
   * :js:meth:`~IScEngine.createMatrix`
   * :js:meth:`~IScEngine.createMesh`
   * :js:meth:`~IScEngine.createMeshInstance`
   * :js:meth:`~IScEngine.debug_log`
   * :js:meth:`~IScEngine.debug_stateFailure`
   * :js:meth:`~IScEngine.debug_sync`
   * :js:meth:`~IScEngine.delayCapping`
   * :js:meth:`~IScEngine.destroyImages`
   * :js:meth:`~IScEngine.destroyLocalInstances`
   * :js:meth:`~IScEngine.destroyMeshes`
   * :js:meth:`~IScEngine.destroyOverlay`
   * :js:meth:`~IScEngine.detachInclusions`
   * :js:meth:`~IScEngine.disconnectNetwork`
   * :js:meth:`~IScEngine.enableCappingIdleCallback`
   * :js:meth:`~IScEngine.enableHiddenLineRendering`
   * :js:meth:`~IScEngine.endComparison`
   * :js:meth:`~IScEngine.endIncrementalSelection`
   * :js:meth:`~IScEngine.endRequestBatch`
   * :js:meth:`~IScEngine.exportToSvg`
   * :js:meth:`~IScEngine.feedScsBuffer`
   * :js:meth:`~IScEngine.flushMetaDataCache`
   * :js:meth:`~IScEngine.getAllowHighDpi`
   * :js:meth:`~IScEngine.getBounding`
   * :js:meth:`~IScEngine.getCamera`
   * :js:meth:`~IScEngine.getCameraPromise`
   * :js:meth:`~IScEngine.getCanvasSize`
   * :js:meth:`~IScEngine.getCappedInstances`
   * :js:meth:`~IScEngine.getCappingGeometryVisibility`
   * :js:meth:`~IScEngine.getClientDimensions`
   * :js:meth:`~IScEngine.getCullingVector`
   * :js:meth:`~IScEngine.getCuttingSectionLimits`
   * :js:meth:`~IScEngine.getDataFromIds`
   * :js:meth:`~IScEngine.getDrawnPartsBounding`
   * :js:meth:`~IScEngine.getEffectiveElementColor`
   * :js:meth:`~IScEngine.getEffectivePartColor`
   * :js:meth:`~IScEngine.getEffectivePartOpacity`
   * :js:meth:`~IScEngine.getElementColor`
   * :js:meth:`~IScEngine.getElementHighlighted`
   * :js:meth:`~IScEngine.getEyeDomeLightingBlurEdgeDistance`
   * :js:meth:`~IScEngine.getEyeDomeLightingBlurInterval`
   * :js:meth:`~IScEngine.getEyeDomeLightingBlurSamples`
   * :js:meth:`~IScEngine.getEyeDomeLightingEnabled`
   * :js:meth:`~IScEngine.getEyeDomeLightingOpacity`
   * :js:meth:`~IScEngine.getEyeDomeLightingShadingEdgeDistance`
   * :js:meth:`~IScEngine.getFullCameraMatrix`
   * :js:meth:`~IScEngine.getInstancesCappingMeshData`
   * :js:meth:`~IScEngine.getInstancesMeshData`
   * :js:meth:`~IScEngine.getInteractiveDrawLimitIncreaseEnabled`
   * :js:meth:`~IScEngine.getLight`
   * :js:meth:`~IScEngine.getLightKeys`
   * :js:meth:`~IScEngine.getLooseBounding`
   * :js:meth:`~IScEngine.getMaxOverlayIndex`
   * :js:meth:`~IScEngine.getMeshData`
   * :js:meth:`~IScEngine.getMetallicRoughness`
   * :js:meth:`~IScEngine.getMinimumFramerate`
   * :js:meth:`~IScEngine.getModelBounding`
   * :js:meth:`~IScEngine.getNetworkModelName`
   * :js:meth:`~IScEngine.getPartAmbientColor`
   * :js:meth:`~IScEngine.getPartColor`
   * :js:meth:`~IScEngine.getPartEffectiveAmbientColor`
   * :js:meth:`~IScEngine.getPartEffectiveEmissiveColor`
   * :js:meth:`~IScEngine.getPartEffectiveSpecularColor`
   * :js:meth:`~IScEngine.getPartEmissiveColor`
   * :js:meth:`~IScEngine.getPartHasTransparency`
   * :js:meth:`~IScEngine.getPartHighlighted`
   * :js:meth:`~IScEngine.getPartMaterial`
   * :js:meth:`~IScEngine.getPartOpacity`
   * :js:meth:`~IScEngine.getPartsBounding`
   * :js:meth:`~IScEngine.getPartSpecularColor`
   * :js:meth:`~IScEngine.getPickTolerance`
   * :js:meth:`~IScEngine.getPointShape`
   * :js:meth:`~IScEngine.getPointSize`
   * :js:meth:`~IScEngine.getPrimaryModelKey`
   * :js:meth:`~IScEngine.getProjectionMatrix`
   * :js:meth:`~IScEngine.getRendererType`
   * :js:meth:`~IScEngine.getScsInfo`
   * :js:meth:`~IScEngine.getSessionType`
   * :js:meth:`~IScEngine.getStatistics`
   * :js:meth:`~IScEngine.getStreamCutoffScale`
   * :js:meth:`~IScEngine.getVersionString`
   * :js:meth:`~IScEngine.getViewMatrix`
   * :js:meth:`~IScEngine.hasDepthRange`
   * :js:meth:`~IScEngine.highlightElements`
   * :js:meth:`~IScEngine.highlightParts`
   * :js:meth:`~IScEngine.instanceKeyInfo`
   * :js:meth:`~IScEngine.isInit`
   * :js:meth:`~IScEngine.loadEmpty`
   * :js:meth:`~IScEngine.loadFinished`
   * :js:meth:`~IScEngine.logMessage`
   * :js:meth:`~IScEngine.loseWebGlContext`
   * :js:meth:`~IScEngine.markCameraAsEmpty`
   * :js:meth:`~IScEngine.metaDataKeyInfo`
   * :js:meth:`~IScEngine.modelKeysFromInclusionKeys`
   * :js:meth:`~IScEngine.pauseAllRendering`
   * :js:meth:`~IScEngine.pauseRendering`
   * :js:meth:`~IScEngine.pickAllFromRay`
   * :js:meth:`~IScEngine.pickAllFromScreen`
   * :js:meth:`~IScEngine.pickFromRay`
   * :js:meth:`~IScEngine.pickFromScreen`
   * :js:meth:`~IScEngine.redraw`
   * :js:meth:`~IScEngine.registerBimInstances`
   * :js:meth:`~IScEngine.removeAllCuttingSections`
   * :js:meth:`~IScEngine.removeCuttingSection`
   * :js:meth:`~IScEngine.removeLight`
   * :js:meth:`~IScEngine.removeView`
   * :js:meth:`~IScEngine.replaceMesh`
   * :js:meth:`~IScEngine.requestMeshInstances`
   * :js:meth:`~IScEngine.resetCachedStatistics`
   * :js:meth:`~IScEngine.resetColors`
   * :js:meth:`~IScEngine.resetOpacity`
   * :js:meth:`~IScEngine.resetPartMaterial`
   * :js:meth:`~IScEngine.resetToEmpty`
   * :js:meth:`~IScEngine.resize`
   * :js:meth:`~IScEngine.resumeAllRendering`
   * :js:meth:`~IScEngine.resumeRendering`
   * :js:meth:`~IScEngine.safeGetMetaData`
   * :js:meth:`~IScEngine.safeGetMetaDatas`
   * :js:meth:`~IScEngine.safeLoadMetaDatas`
   * :js:meth:`~IScEngine.setAllowHighDpi`
   * :js:meth:`~IScEngine.setAmbientLightColor`
   * :js:meth:`~IScEngine.setAmbientOcclusionEnabled`
   * :js:meth:`~IScEngine.setAmbientOcclusionRadius`
   * :js:meth:`~IScEngine.setAntiAliasingMode`
   * :js:meth:`~IScEngine.setBackFacesVisible`
   * :js:meth:`~IScEngine.setBackgroundGradient`
   * :js:meth:`~IScEngine.setBloomEnabled`
   * :js:meth:`~IScEngine.setBloomIntensityScale`
   * :js:meth:`~IScEngine.setBloomLayers`
   * :js:meth:`~IScEngine.setBloomThreshold`
   * :js:meth:`~IScEngine.setBloomThresholdRampWidth`
   * :js:meth:`~IScEngine.setCamera`
   * :js:meth:`~IScEngine.setCappingDelay`
   * :js:meth:`~IScEngine.setCappingFaceColor`
   * :js:meth:`~IScEngine.setCappingGeometryVisibility`
   * :js:meth:`~IScEngine.setCappingLineColor`
   * :js:meth:`~IScEngine.setCullingVector`
   * :js:meth:`~IScEngine.setDefaultDepthRange`
   * :js:meth:`~IScEngine.setDepthRange`
   * :js:meth:`~IScEngine.setDisplayIncompleteFrames`
   * :js:meth:`~IScEngine.setDrawMode`
   * :js:meth:`~IScEngine.setDrawStrategy`
   * :js:meth:`~IScEngine.setElementColor`
   * :js:meth:`~IScEngine.setElementHighlightColor`
   * :js:meth:`~IScEngine.setElementsVisibilityOverride`
   * :js:meth:`~IScEngine.setElementVisibility`
   * :js:meth:`~IScEngine.setExplodeMagnitude`
   * :js:meth:`~IScEngine.setEyeDomeLightingBlurEdgeDistance`
   * :js:meth:`~IScEngine.setEyeDomeLightingBlurInterval`
   * :js:meth:`~IScEngine.setEyeDomeLightingBlurSamples`
   * :js:meth:`~IScEngine.setEyeDomeLightingEnabled`
   * :js:meth:`~IScEngine.setEyeDomeLightingOpacity`
   * :js:meth:`~IScEngine.setEyeDomeLightingShadingEdgeDistance`
   * :js:meth:`~IScEngine.setFaceVisibility`
   * :js:meth:`~IScEngine.setGoochBaseColorProminence`
   * :js:meth:`~IScEngine.setGoochBlue`
   * :js:meth:`~IScEngine.setGoochLuminanceShiftStrength`
   * :js:meth:`~IScEngine.setGoochYellow`
   * :js:meth:`~IScEngine.setGroundPlane`
   * :js:meth:`~IScEngine.setHardEdgeColor`
   * :js:meth:`~IScEngine.setHardEdgeOpacity`
   * :js:meth:`~IScEngine.setHardEdgesEnabled`
   * :js:meth:`~IScEngine.setHardEdgeThreshold`
   * :js:meth:`~IScEngine.setHardEdgeThresholdRampWidth`
   * :js:meth:`~IScEngine.setHighlightColorizeCompression`
   * :js:meth:`~IScEngine.setImageBasedLightingEnabled`
   * :js:meth:`~IScEngine.setImageBasedLightingEnvironment`
   * :js:meth:`~IScEngine.setImageBasedLightingEnvironmentToDefault`
   * :js:meth:`~IScEngine.setImageBasedLightingIntensity`
   * :js:meth:`~IScEngine.setImageBasedLightingMatrix`
   * :js:meth:`~IScEngine.setInstanceModifier`
   * :js:meth:`~IScEngine.setInstancesMatrix`
   * :js:meth:`~IScEngine.setInteractiveDrawDelay`
   * :js:meth:`~IScEngine.setInteractiveDrawLimitIncreaseEnabled`
   * :js:meth:`~IScEngine.setLightingEnabled`
   * :js:meth:`~IScEngine.setLineJitterEnabled`
   * :js:meth:`~IScEngine.setLineJitterFrequency`
   * :js:meth:`~IScEngine.setLineJitterInstanceCount`
   * :js:meth:`~IScEngine.setLineJitterRadius`
   * :js:meth:`~IScEngine.setLinePattern`
   * :js:meth:`~IScEngine.setLineVisibility`
   * :js:meth:`~IScEngine.setMatrices`
   * :js:meth:`~IScEngine.setMeshLevel`
   * :js:meth:`~IScEngine.setMetallicRoughness`
   * :js:meth:`~IScEngine.setMetallicRoughnessMaterialOverride`
   * :js:meth:`~IScEngine.setMinimumFramerate`
   * :js:meth:`~IScEngine.setNodeHighlightColor`
   * :js:meth:`~IScEngine.setOverlayCamera`
   * :js:meth:`~IScEngine.setOverlayViewport`
   * :js:meth:`~IScEngine.setOverlayVisibility`
   * :js:meth:`~IScEngine.setPartAmbientColor`
   * :js:meth:`~IScEngine.setPartAmbientMix`
   * :js:meth:`~IScEngine.setPartColor`
   * :js:meth:`~IScEngine.setPartEmissiveColor`
   * :js:meth:`~IScEngine.setPartMaterial`
   * :js:meth:`~IScEngine.setPartOpacity`
   * :js:meth:`~IScEngine.setPartSpecularColor`
   * :js:meth:`~IScEngine.setPartSpecularIntensity`
   * :js:meth:`~IScEngine.setPartVisibility`
   * :js:meth:`~IScEngine.setPickTolerance`
   * :js:meth:`~IScEngine.setPointShape`
   * :js:meth:`~IScEngine.setPointSize`
   * :js:meth:`~IScEngine.setPointVisibilityTest`
   * :js:meth:`~IScEngine.setProjection`
   * :js:meth:`~IScEngine.setRemoteEndpoint`
   * :js:meth:`~IScEngine.setServerRenderQuality`
   * :js:meth:`~IScEngine.setSilhouetteColor`
   * :js:meth:`~IScEngine.setSilhouetteEnabled`
   * :js:meth:`~IScEngine.setSilhouetteOpacity`
   * :js:meth:`~IScEngine.setSilhouetteThreshold`
   * :js:meth:`~IScEngine.setSilhouetteThresholdRampWidth`
   * :js:meth:`~IScEngine.setSimpleReflectionAttenuation`
   * :js:meth:`~IScEngine.setSimpleReflectionBlurInterval`
   * :js:meth:`~IScEngine.setSimpleReflectionBlurSamples`
   * :js:meth:`~IScEngine.setSimpleReflectionEnabled`
   * :js:meth:`~IScEngine.setSimpleReflectionFadeAngle`
   * :js:meth:`~IScEngine.setSimpleReflectionOpacity`
   * :js:meth:`~IScEngine.setSimpleShadowBlurInterval`
   * :js:meth:`~IScEngine.setSimpleShadowBlurSamples`
   * :js:meth:`~IScEngine.setSimpleShadowColor`
   * :js:meth:`~IScEngine.setSimpleShadowEnabled`
   * :js:meth:`~IScEngine.setSimpleShadowInteractiveUpdateEnabled`
   * :js:meth:`~IScEngine.setSimpleShadowOpacity`
   * :js:meth:`~IScEngine.setSimpleShadowResolution`
   * :js:meth:`~IScEngine.setStreamCutoffScale`
   * :js:meth:`~IScEngine.setStreamIdleMarker`
   * :js:meth:`~IScEngine.setTexture`
   * :js:meth:`~IScEngine.setTimeout`
   * :js:meth:`~IScEngine.setToonShadingBandCount`
   * :js:meth:`~IScEngine.setToonShadingSpecularFactor`
   * :js:meth:`~IScEngine.setTransparencyMode`
   * :js:meth:`~IScEngine.setVisibilityByAttachment`
   * :js:meth:`~IScEngine.setXRayColor`
   * :js:meth:`~IScEngine.setXRayOpacity`
   * :js:meth:`~IScEngine.setXRayTransparencyMode`
   * :js:meth:`~IScEngine.shutdown`
   * :js:meth:`~IScEngine.sleep`
   * :js:meth:`~IScEngine.start`
   * :js:meth:`~IScEngine.startComparison`
   * :js:meth:`~IScEngine.startExplode`
   * :js:meth:`~IScEngine.stopExplode`
   * :js:meth:`~IScEngine.synchronizeVisibilities`
   * :js:meth:`~IScEngine.testPointVisibility`
   * :js:meth:`~IScEngine.throttleLoad`
   * :js:meth:`~IScEngine.triangulatePolygon`
   * :js:meth:`~IScEngine.unsetCullingVector`
   * :js:meth:`~IScEngine.unsetDepthRange`
   * :js:meth:`~IScEngine.unsetElementColor`
   * :js:meth:`~IScEngine.unsetElementsVisibilityOverride`
   * :js:meth:`~IScEngine.unsetLinePattern`
   * :js:meth:`~IScEngine.unsetMetallicRoughness`
   * :js:meth:`~IScEngine.unsetPartAmbientColor`
   * :js:meth:`~IScEngine.unsetPartColor`
   * :js:meth:`~IScEngine.unsetPartEmissiveColor`
   * :js:meth:`~IScEngine.unsetPartOpacity`
   * :js:meth:`~IScEngine.unsetPartSpecularColor`
   * :js:meth:`~IScEngine.unsetPartSpecularIntensity`
   * :js:meth:`~IScEngine.unsetTexture`
   * :js:meth:`~IScEngine.unsetXRayColor`
   * :js:meth:`~IScEngine.updateCamera`
   * :js:meth:`~IScEngine.updateCuttingSection`
   * :js:meth:`~IScEngine.updateLight`
   * :js:meth:`~IScEngine.waitForImageDecoding`
   
   




Methods
=======

.. js:method:: IScEngine._getScPlaneArray

   .. rst-class:: sig-pretty-signature
   
      | _getScPlaneArray(**cuttingSection**\ : :js:class:`~ICuttingSection`\ ): :js:data:`~Vector4`\ []
   
   **Parameters**
   
      **cuttingSection**\ : :js:class:`~ICuttingSection`
   
   
   **Returns**\ : :js:data:`~Vector4`\ []
   



.. js:method:: IScEngine._toTextureInterpolation

   .. rst-class:: sig-pretty-signature
   
      | _toTextureInterpolation(**value**\ : (*undefined* \| *boolean*\ )): :js:data:`TextureInterpolation <Sc.TextureInterpolation>`
   
   **Parameters**
   
      **value**\ : (*undefined* \| *boolean*\ )
   
   
   **Returns**\ : :js:data:`TextureInterpolation <Sc.TextureInterpolation>`
   



.. js:method:: IScEngine._toTextureMipMapping

   .. rst-class:: sig-pretty-signature
   
      | _toTextureMipMapping(**value**\ : (*undefined* \| *boolean*\ )): :js:data:`TextureMipMapping <Sc.TextureMipMapping>`
   
   **Parameters**
   
      **value**\ : (*undefined* \| *boolean*\ )
   
   
   **Returns**\ : :js:data:`TextureMipMapping <Sc.TextureMipMapping>`
   



.. js:method:: IScEngine._toTextureModifier

   .. rst-class:: sig-pretty-signature
   
      | _toTextureModifier(**value**\ : (*undefined* \| *number*\ )): :js:data:`TextureModifier <Sc.TextureModifier>`
   
   **Parameters**
   
      **value**\ : (*undefined* \| *number*\ )
   
   
   **Returns**\ : :js:data:`TextureModifier <Sc.TextureModifier>`
   



.. js:method:: IScEngine._toTextureParameterization

   .. rst-class:: sig-pretty-signature
   
      | _toTextureParameterization(**value**\ : (*undefined* \| :js:data:`TextureParameterization <TextureParameterization.UV>`\ )): :js:data:`TextureParameterization <Sc.TextureParameterization.UV>`
   
   **Parameters**
   
      **value**\ : (*undefined* \| :js:data:`TextureParameterization <TextureParameterization.UV>`\ )
   
   
   **Returns**\ : :js:data:`TextureParameterization <Sc.TextureParameterization.UV>`
   



.. js:method:: IScEngine._toTextureTiling

   .. rst-class:: sig-pretty-signature
   
      | _toTextureTiling(**value**\ : (*undefined* \| :js:data:`~TextureTiling`\ )): :js:data:`TextureTiling <Sc.TextureTiling>`
   
   **Parameters**
   
      **value**\ : (*undefined* \| :js:data:`~TextureTiling`\ )
   
   
   **Returns**\ : :js:data:`TextureTiling <Sc.TextureTiling>`
   



.. js:method:: IScEngine.addCuttingSection

   .. rst-class:: sig-pretty-signature
   
      | addCuttingSection(**cuttingSection**\ : :js:class:`~ICuttingSection`\ ): *Promise*
   
   **Parameters**
   
      **cuttingSection**\ : :js:class:`~ICuttingSection`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.addLight

   .. rst-class:: sig-pretty-signature
   
      | addLight(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **light**\ : :js:class:`~Light`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **light**\ : :js:class:`~Light`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.addNodesToOverlay

   .. rst-class:: sig-pretty-signature
   
      | addNodesToOverlay(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **index**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **index**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.addPointLight

   .. rst-class:: sig-pretty-signature
   
      | addPointLight(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **light**\ : :js:class:`~PointLight`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **light**\ : :js:class:`~PointLight`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.addView

   .. rst-class:: sig-pretty-signature
   
      | addView(**canvasContainer**\ : *HTMLDivElement*\ ): *Promise*
   
   **Parameters**
   
      **canvasContainer**\ : *HTMLDivElement*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.advanceExportToSvg

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



.. js:method:: IScEngine.advanceIncrementalSelection

   .. rst-class:: sig-pretty-signature
   
      | advanceIncrementalSelection(**handle**\ : :js:class:`IncrementalSelectionId <Selection.IncrementalSelectionId>`\ ): *Promise*
   
   **Parameters**
   
      **handle**\ : :js:class:`IncrementalSelectionId <Selection.IncrementalSelectionId>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.attachModel

   .. rst-class:: sig-pretty-signature
   
      | attachModel(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **modelName**\ : *string*\ , **inclusionMatrix**\ : :js:data:`~Matrix12`\ , **parentMeasurementUnit**\ : *number*\ , **markAllInstancesInvisible**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **modelName**\ : *string*
   
      **inclusionMatrix**\ : :js:data:`~Matrix12`
   
      **parentMeasurementUnit**\ : *number*
   
      **markAllInstancesInvisible**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.attachScsBuffer

   .. rst-class:: sig-pretty-signature
   
      | attachScsBuffer(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **buffer**\ : (*None* \| :js:data:`ScsBuffer <Sc.ScsBuffer>`\ ), **inclusionMatrix**\ : :js:data:`~Matrix12`\ , **parentMeasurementUnit**\ : *number*\ , **markAllInstancesInvisible**\ : *boolean*\ , **resolveOnFullyLoaded**\ : *boolean*\ , **cancelUnitMatrix**\ : *boolean*\ , **autoUnitScale**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **buffer**\ : (*None* \| :js:data:`ScsBuffer <Sc.ScsBuffer>`\ )
   
      **inclusionMatrix**\ : :js:data:`~Matrix12`
   
      **parentMeasurementUnit**\ : *number*
   
      **markAllInstancesInvisible**\ : *boolean*
   
      **resolveOnFullyLoaded**\ : *boolean*
   
      **cancelUnitMatrix**\ : *boolean*
   
      **autoUnitScale**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.attachScsModelByKey

   .. rst-class:: sig-pretty-signature
   
      | attachScsModelByKey(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **modelKey**\ : :js:data:`ModelKey <Sc.ModelKey>`\ , **inclusionMatrix**\ : :js:data:`~Matrix12`\ , **parentMeasurementUnit**\ : *number*\ , **markAllInstancesInvisible**\ : *boolean*\ ): :js:data:`InclusionKey <Sc.InclusionKey>`
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **modelKey**\ : :js:data:`ModelKey <Sc.ModelKey>`
   
      **inclusionMatrix**\ : :js:data:`~Matrix12`
   
      **parentMeasurementUnit**\ : *number*
   
      **markAllInstancesInvisible**\ : *boolean*
   
   
   **Returns**\ : :js:data:`InclusionKey <Sc.InclusionKey>`
   



.. js:method:: IScEngine.beginConvexPolyhedronSelection

   .. rst-class:: sig-pretty-signature
   
      | beginConvexPolyhedronSelection(**volumePlanes**\ : :js:class:`~Plane`\ [], **heuristicOrigin**\ : :js:class:`~Point3`\ , **config**\ : :js:class:`~IncrementalPickConfig`\ ): *Promise*
   
   **Parameters**
   
      **volumePlanes**\ : :js:class:`~Plane`\ []
   
      **heuristicOrigin**\ : :js:class:`~Point3`
   
      **config**\ : :js:class:`~IncrementalPickConfig`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.beginExportToSvg

   .. rst-class:: sig-pretty-signature
   
      | beginExportToSvg(**config**\ : :js:class:`SvgConfig <Sc.SvgConfig>`\ ): *Promise*
   
   **Parameters**
   
      **config**\ : :js:class:`SvgConfig <Sc.SvgConfig>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.beginRayDrillSelection

   .. rst-class:: sig-pretty-signature
   
      | beginRayDrillSelection(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **rayCssOrigin**\ : :js:class:`~Point2`\ , **rayCssBoxRadius**\ : *number*\ , **config**\ : :js:class:`~IncrementalPickConfig`\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **rayCssOrigin**\ : :js:class:`~Point2`
   
      **rayCssBoxRadius**\ : *number*
   
      **config**\ : :js:class:`~IncrementalPickConfig`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.beginRequestBatch

   .. rst-class:: sig-pretty-signature
   
      | beginRequestBatch(**type**\ : *RequestBatchType*\ ): *void*
   
   **Parameters**
   
      **type**\ : *RequestBatchType*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.beginScreenAreaSelection

   .. rst-class:: sig-pretty-signature
   
      | beginScreenAreaSelection(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **areaCssMin**\ : :js:class:`~Point2`\ , **areaCssMax**\ : :js:class:`~Point2`\ , **config**\ : :js:class:`~IncrementalPickConfig`\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **areaCssMin**\ : :js:class:`~Point2`
   
      **areaCssMax**\ : :js:class:`~Point2`
   
      **config**\ : :js:class:`~IncrementalPickConfig`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.beginSphereSelection

   .. rst-class:: sig-pretty-signature
   
      | beginSphereSelection(**sphereCenter**\ : :js:data:`~Vector3`\ , **sphereRadius**\ : *number*\ , **config**\ : :js:class:`~IncrementalPickConfig`\ ): *Promise*
   
   **Parameters**
   
      **sphereCenter**\ : :js:data:`~Vector3`
   
      **sphereRadius**\ : *number*
   
      **config**\ : :js:class:`~IncrementalPickConfig`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.clearElementVisibility

   .. rst-class:: sig-pretty-signature
   
      | clearElementVisibility(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.clearHighlight

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



.. js:method:: IScEngine.clearLights

   .. rst-class:: sig-pretty-signature
   
      | clearLights(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.compositePickFromScreen

   .. rst-class:: sig-pretty-signature
   
      | compositePickFromScreen(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **point**\ : :js:class:`~Point2`\ , **config**\ : :js:class:`~PickConfig`\ , **isDrawing**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **point**\ : :js:class:`~Point2`
   
      **config**\ : :js:class:`~PickConfig`
   
      **isDrawing**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.computeMinimumBodyBodyDistance

   .. rst-class:: sig-pretty-signature
   
      | computeMinimumBodyBodyDistance(**inc1**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ , **inc2**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ ): *Promise*
   
   **Parameters**
   
      **inc1**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
      **inc2**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.computeMinimumFaceLineDistance

   .. rst-class:: sig-pretty-signature
   
      | computeMinimumFaceLineDistance(**inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ , **faceId**\ : *number*\ , **ray**\ : :js:class:`~Ray`\ ): *Promise*
   
   **Parameters**
   
      **inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
      **faceId**\ : *number*
   
      **ray**\ : :js:class:`~Ray`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.computeMinimumFaceRayDistance

   .. rst-class:: sig-pretty-signature
   
      | computeMinimumFaceRayDistance(**inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ , **faceId**\ : *number*\ , **ray**\ : :js:class:`~Ray`\ ): *Promise*
   
   **Parameters**
   
      **inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
      **faceId**\ : *number*
   
      **ray**\ : :js:class:`~Ray`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.computeMininimumFaceFaceDistance

   .. rst-class:: sig-pretty-signature
   
      | computeMininimumFaceFaceDistance(**inc1**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ , **face1**\ : *number*\ , **inc2**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ , **face2**\ : *number*\ ): *Promise*
   
   **Parameters**
   
      **inc1**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
      **face1**\ : *number*
   
      **inc2**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
      **face2**\ : *number*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.createFloorplanMesh

   .. rst-class:: sig-pretty-signature
   
      | createFloorplanMesh(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.createIdentityMatrix

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



.. js:method:: IScEngine.createImage

   .. rst-class:: sig-pretty-signature
   
      | createImage(**primaryImage**\ : :js:class:`~ImageOptions`\ , **thumbnailImage**\ : :js:class:`~ImageOptions`\ ): *Promise*
   
   **Parameters**
   
      **primaryImage**\ : :js:class:`~ImageOptions`
   
      **thumbnailImage**\ : :js:class:`~ImageOptions`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.createMatrix

   .. rst-class:: sig-pretty-signature
   
      | createMatrix(**elements**\ : :js:data:`~Matrix16`\ ): *Promise*
   
   **Parameters**
   
      **elements**\ : :js:data:`~Matrix16`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.createMesh

   .. rst-class:: sig-pretty-signature
   
      | createMesh(**meshData**\ : :js:class:`~MeshData`\ ): *Promise*
   
   **Parameters**
   
      **meshData**\ : :js:class:`~MeshData`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.createMeshInstance

   .. rst-class:: sig-pretty-signature
   
      | createMeshInstance(**meshInstanceData**\ : :js:class:`~MeshInstanceData`\ ): *Promise*
   
   **Parameters**
   
      **meshInstanceData**\ : :js:class:`~MeshInstanceData`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.debug_log

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



.. js:method:: IScEngine.debug_stateFailure

   .. rst-class:: sig-pretty-signature
   
      | debug_stateFailure(**value**\ : :js:data:`StateFailure <Sc.StateFailure>`\ ): *Promise*
   
   **Parameters**
   
      **value**\ : :js:data:`StateFailure <Sc.StateFailure>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.debug_sync

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



.. js:method:: IScEngine.delayCapping

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



.. js:method:: IScEngine.destroyImages

   .. rst-class:: sig-pretty-signature
   
      | destroyImages(**imageIds**\ : :js:data:`ImageIds <Sc.ImageIds>`\ ): *Promise*
   
   **Parameters**
   
      **imageIds**\ : :js:data:`ImageIds <Sc.ImageIds>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.destroyLocalInstances

   .. rst-class:: sig-pretty-signature
   
      | destroyLocalInstances(**instanceIncs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **instanceIncs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.destroyMeshes

   .. rst-class:: sig-pretty-signature
   
      | destroyMeshes(**meshIds**\ : :js:data:`MeshIds <Sc.MeshIds>`\ ): *Promise*
   
   **Parameters**
   
      **meshIds**\ : :js:data:`MeshIds <Sc.MeshIds>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.destroyOverlay

   .. rst-class:: sig-pretty-signature
   
      | destroyOverlay(**index**\ : *number*\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **index**\ : *number*
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.detachInclusions

   .. rst-class:: sig-pretty-signature
   
      | detachInclusions(**inclusionKeys**\ : :js:data:`InclusionKey <Sc.InclusionKey>`\ []): *Promise*
   
   **Parameters**
   
      **inclusionKeys**\ : :js:data:`InclusionKey <Sc.InclusionKey>`\ []
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.disconnectNetwork

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



.. js:method:: IScEngine.enableCappingIdleCallback

   .. rst-class:: sig-pretty-signature
   
      | enableCappingIdleCallback(**enable**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **enable**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.enableHiddenLineRendering

   .. rst-class:: sig-pretty-signature
   
      | enableHiddenLineRendering(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **settings**\ : *HiddenLineSettings*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **settings**\ : *HiddenLineSettings*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.endComparison

   .. rst-class:: sig-pretty-signature
   
      | endComparison(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.endIncrementalSelection

   .. rst-class:: sig-pretty-signature
   
      | endIncrementalSelection(**handle**\ : :js:class:`IncrementalSelectionId <Selection.IncrementalSelectionId>`\ ): *void*
   
   **Parameters**
   
      **handle**\ : :js:class:`IncrementalSelectionId <Selection.IncrementalSelectionId>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.endRequestBatch

   .. rst-class:: sig-pretty-signature
   
      | endRequestBatch(**type**\ : *RequestBatchType*\ ): *void*
   
   **Parameters**
   
      **type**\ : *RequestBatchType*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.exportToSvg

   .. rst-class:: sig-pretty-signature
   
      | exportToSvg(**config**\ : :js:class:`SvgConfig <Sc.SvgConfig>`\ ): *Promise*
   
   **Parameters**
   
      **config**\ : :js:class:`SvgConfig <Sc.SvgConfig>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.feedScsBuffer

   .. rst-class:: sig-pretty-signature
   
      | feedScsBuffer(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **buffer**\ : (*None* \| :js:data:`ScsBuffer <Sc.ScsBuffer>`\ )): *void*
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **buffer**\ : (*None* \| :js:data:`ScsBuffer <Sc.ScsBuffer>`\ )
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.flushMetaDataCache

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



.. js:method:: IScEngine.getAllowHighDpi

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



.. js:method:: IScEngine.getBounding

   .. rst-class:: sig-pretty-signature
   
      | getBounding(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **ignoreInvisible**\ : *boolean*\ , **includeExcluded**\ : *boolean*\ , **tightBounding**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **ignoreInvisible**\ : *boolean*
   
      **includeExcluded**\ : *boolean*
   
      **tightBounding**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getCamera

   .. rst-class:: sig-pretty-signature
   
      | getCamera(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): :js:class:`~Camera`
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : :js:class:`~Camera`
   



.. js:method:: IScEngine.getCameraPromise

   .. rst-class:: sig-pretty-signature
   
      | getCameraPromise(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getCanvasSize

   .. rst-class:: sig-pretty-signature
   
      | getCanvasSize(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): :js:class:`~Point2`
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : :js:class:`~Point2`
   



.. js:method:: IScEngine.getCappedInstances

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



.. js:method:: IScEngine.getCappingGeometryVisibility

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



.. js:method:: IScEngine.getClientDimensions

   .. rst-class:: sig-pretty-signature
   
      | getClientDimensions(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): [*number*\ , *number*\ ]
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : [*number*\ , *number*\ ]
   



.. js:method:: IScEngine.getCullingVector

   .. rst-class:: sig-pretty-signature
   
      | getCullingVector(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getCuttingSectionLimits

   .. rst-class:: sig-pretty-signature
   
      | getCuttingSectionLimits(): *CuttingSectionLimits*
   
   **Returns**\ : *CuttingSectionLimits*
   



.. js:method:: IScEngine.getDataFromIds

   .. rst-class:: sig-pretty-signature
   
      | getDataFromIds(**ids**\ : :js:data:`DataIds <Sc.DataIds>`\ ): *Promise*
   
   **Parameters**
   
      **ids**\ : :js:data:`DataIds <Sc.DataIds>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getDrawnPartsBounding

   .. rst-class:: sig-pretty-signature
   
      | getDrawnPartsBounding(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEffectiveElementColor

   .. rst-class:: sig-pretty-signature
   
      | getEffectiveElementColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementOffset**\ : *number*\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementOffset**\ : *number*
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEffectivePartColor

   .. rst-class:: sig-pretty-signature
   
      | getEffectivePartColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEffectivePartOpacity

   .. rst-class:: sig-pretty-signature
   
      | getEffectivePartOpacity(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getElementColor

   .. rst-class:: sig-pretty-signature
   
      | getElementColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementOffset**\ : *number*\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementOffset**\ : *number*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getElementHighlighted

   .. rst-class:: sig-pretty-signature
   
      | getElementHighlighted(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementIndex**\ : *number*\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementIndex**\ : *number*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEyeDomeLightingBlurEdgeDistance

   .. rst-class:: sig-pretty-signature
   
      | getEyeDomeLightingBlurEdgeDistance(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEyeDomeLightingBlurInterval

   .. rst-class:: sig-pretty-signature
   
      | getEyeDomeLightingBlurInterval(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEyeDomeLightingBlurSamples

   .. rst-class:: sig-pretty-signature
   
      | getEyeDomeLightingBlurSamples(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEyeDomeLightingEnabled

   .. rst-class:: sig-pretty-signature
   
      | getEyeDomeLightingEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEyeDomeLightingOpacity

   .. rst-class:: sig-pretty-signature
   
      | getEyeDomeLightingOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getEyeDomeLightingShadingEdgeDistance

   .. rst-class:: sig-pretty-signature
   
      | getEyeDomeLightingShadingEdgeDistance(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getFullCameraMatrix

   .. rst-class:: sig-pretty-signature
   
      | getFullCameraMatrix(**camera**\ : :js:class:`~Camera`\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): :js:class:`~Matrix`
   
   **Parameters**
   
      **camera**\ : :js:class:`~Camera`
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : :js:class:`~Matrix`
   



.. js:method:: IScEngine.getInstancesCappingMeshData

   .. rst-class:: sig-pretty-signature
   
      | getInstancesCappingMeshData(**inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ ): *Promise*
   
   **Parameters**
   
      **inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
   
   **Returns**\ : *Promise*
   
   .. rst-class:: sig-pretty-signature
   
      | getInstancesCappingMeshData(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getInstancesMeshData

   .. rst-class:: sig-pretty-signature
   
      | getInstancesMeshData(**inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`\ ): *Promise*
   
   **Parameters**
   
      **inc**\ : :js:data:`InstanceInc <Sc.InstanceInc>`
   
   
   **Returns**\ : *Promise*
   
   .. rst-class:: sig-pretty-signature
   
      | getInstancesMeshData(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getInteractiveDrawLimitIncreaseEnabled

   .. rst-class:: sig-pretty-signature
   
      | getInteractiveDrawLimitIncreaseEnabled(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getLight

   .. rst-class:: sig-pretty-signature
   
      | getLight(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **key**\ : *number*\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **key**\ : *number*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getLightKeys

   .. rst-class:: sig-pretty-signature
   
      | getLightKeys(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getLooseBounding

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



.. js:method:: IScEngine.getMaxOverlayIndex

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



.. js:method:: IScEngine.getMeshData

   .. rst-class:: sig-pretty-signature
   
      | getMeshData(**id**\ : :js:data:`MeshId <Sc.MeshId>`\ ): *Promise*
   
   **Parameters**
   
      **id**\ : :js:data:`MeshId <Sc.MeshId>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getMetallicRoughness

   .. rst-class:: sig-pretty-signature
   
      | getMetallicRoughness(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getMinimumFramerate

   .. rst-class:: sig-pretty-signature
   
      | getMinimumFramerate(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getModelBounding

   .. rst-class:: sig-pretty-signature
   
      | getModelBounding(**ignoreInvisible**\ : *boolean*\ , **includeExcluded**\ : *boolean*\ , **tightBounding**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **ignoreInvisible**\ : *boolean*
   
      **includeExcluded**\ : *boolean*
   
      **tightBounding**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getNetworkModelName

   .. rst-class:: sig-pretty-signature
   
      | getNetworkModelName(): *string*
   
   **Returns**\ : *string*
   



.. js:method:: IScEngine.getPartAmbientColor

   .. rst-class:: sig-pretty-signature
   
      | getPartAmbientColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartColor

   .. rst-class:: sig-pretty-signature
   
      | getPartColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartEffectiveAmbientColor

   .. rst-class:: sig-pretty-signature
   
      | getPartEffectiveAmbientColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartEffectiveEmissiveColor

   .. rst-class:: sig-pretty-signature
   
      | getPartEffectiveEmissiveColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartEffectiveSpecularColor

   .. rst-class:: sig-pretty-signature
   
      | getPartEffectiveSpecularColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartEmissiveColor

   .. rst-class:: sig-pretty-signature
   
      | getPartEmissiveColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartHasTransparency

   .. rst-class:: sig-pretty-signature
   
      | getPartHasTransparency(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartHighlighted

   .. rst-class:: sig-pretty-signature
   
      | getPartHighlighted(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartMaterial

   .. rst-class:: sig-pretty-signature
   
      | getPartMaterial(**nodeIds**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **nodeIds**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartOpacity

   .. rst-class:: sig-pretty-signature
   
      | getPartOpacity(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): (*None* \| *number*\ )[]
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : (*None* \| *number*\ )[]
   



.. js:method:: IScEngine.getPartsBounding

   .. rst-class:: sig-pretty-signature
   
      | getPartsBounding(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **ignoreInvisible**\ : *boolean*\ , **tightBounding**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **ignoreInvisible**\ : *boolean*
   
      **tightBounding**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPartSpecularColor

   .. rst-class:: sig-pretty-signature
   
      | getPartSpecularColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPickTolerance

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



.. js:method:: IScEngine.getPointShape

   .. rst-class:: sig-pretty-signature
   
      | getPointShape(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPointSize

   .. rst-class:: sig-pretty-signature
   
      | getPointSize(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getPrimaryModelKey

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



.. js:method:: IScEngine.getProjectionMatrix

   .. rst-class:: sig-pretty-signature
   
      | getProjectionMatrix(**camera**\ : :js:class:`~Camera`\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): :js:class:`~Matrix`
   
   **Parameters**
   
      **camera**\ : :js:class:`~Camera`
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : :js:class:`~Matrix`
   



.. js:method:: IScEngine.getRendererType

   .. rst-class:: sig-pretty-signature
   
      | getRendererType(): :js:data:`~RendererType`
   
   **Returns**\ : :js:data:`~RendererType`
   



.. js:method:: IScEngine.getScsInfo

   .. rst-class:: sig-pretty-signature
   
      | getScsInfo(): (*None* \| *string* \| :js:data:`ScsBuffer <Sc.ScsBuffer>`\ )
   
   **Returns**\ : (*None* \| *string* \| :js:data:`ScsBuffer <Sc.ScsBuffer>`\ )
   



.. js:method:: IScEngine.getSessionType

   .. rst-class:: sig-pretty-signature
   
      | getSessionType(): :js:data:`SessionType <Sc.SessionType>`
   
   **Returns**\ : :js:data:`SessionType <Sc.SessionType>`
   



.. js:method:: IScEngine.getStatistics

   .. rst-class:: sig-pretty-signature
   
      | getStatistics(**forceUpdate**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **forceUpdate**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.getStreamCutoffScale

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



.. js:method:: IScEngine.getVersionString

   .. rst-class:: sig-pretty-signature
   
      | getVersionString(): *string*
   
   **Returns**\ : *string*
   



.. js:method:: IScEngine.getViewMatrix

   .. rst-class:: sig-pretty-signature
   
      | getViewMatrix(**camera**\ : :js:class:`~Camera`\ ): :js:class:`~Matrix`
   
   **Parameters**
   
      **camera**\ : :js:class:`~Camera`
   
   
   **Returns**\ : :js:class:`~Matrix`
   



.. js:method:: IScEngine.hasDepthRange

   .. rst-class:: sig-pretty-signature
   
      | hasDepthRange(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *Promise*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.highlightElements

   .. rst-class:: sig-pretty-signature
   
      | highlightElements(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementIndex**\ : *number*\ , **elementCount**\ : *number*\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementIndex**\ : *number*
   
      **elementCount**\ : *number*
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.highlightParts

   .. rst-class:: sig-pretty-signature
   
      | highlightParts(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **highlighted**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **highlighted**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.instanceKeyInfo

   .. rst-class:: sig-pretty-signature
   
      | instanceKeyInfo(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **by**\ : *Attachment*\ , **ret**\ : *AllKeys*\ ): *Promise*
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **by**\ : *Attachment*
   
      **ret**\ : *AllKeys*
   
   
   **Returns**\ : *Promise*
   
   .. rst-class:: sig-pretty-signature
   
      | instanceKeyInfo(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **by**\ : *Attachment*\ , **ret**\ : *KeyCountOnly*\ ): *Promise*
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **by**\ : *Attachment*
   
      **ret**\ : *KeyCountOnly*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.isInit

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



.. js:method:: IScEngine.loadEmpty

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



.. js:method:: IScEngine.loadFinished

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



.. js:method:: IScEngine.logMessage

   .. rst-class:: sig-pretty-signature
   
      | logMessage(**message**\ : *string*\ ): *void*
   
   **Parameters**
   
      **message**\ : *string*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.loseWebGlContext

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



.. js:method:: IScEngine.markCameraAsEmpty

   .. rst-class:: sig-pretty-signature
   
      | markCameraAsEmpty(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.metaDataKeyInfo

   .. rst-class:: sig-pretty-signature
   
      | metaDataKeyInfo(**modelKeyOrAttachScope**\ : (:js:data:`ModelKey <Sc.ModelKey>` \| :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ ), **byModel**\ : *boolean*\ , **keyCountOnly**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **modelKeyOrAttachScope**\ : (:js:data:`ModelKey <Sc.ModelKey>` \| :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ )
   
      **byModel**\ : *boolean*
   
      **keyCountOnly**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.modelKeysFromInclusionKeys

   .. rst-class:: sig-pretty-signature
   
      | modelKeysFromInclusionKeys(**inclusionKeys**\ : :js:data:`InclusionKey <Sc.InclusionKey>`\ []): *Promise*
   
   **Parameters**
   
      **inclusionKeys**\ : :js:data:`InclusionKey <Sc.InclusionKey>`\ []
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.pauseAllRendering

   .. rst-class:: sig-pretty-signature
   
      | pauseAllRendering(**callback**\ : () => *void*\ ): *void*
   
   **Parameters**
   
      **callback**\ : () => *void*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.pauseRendering

   .. rst-class:: sig-pretty-signature
   
      | pauseRendering(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.pickAllFromRay

   .. rst-class:: sig-pretty-signature
   
      | pickAllFromRay(**ray**\ : :js:class:`~Ray`\ , **config**\ : :js:class:`~PickConfig`\ ): *Promise*
   
   **Parameters**
   
      **ray**\ : :js:class:`~Ray`
   
      **config**\ : :js:class:`~PickConfig`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.pickAllFromScreen

   .. rst-class:: sig-pretty-signature
   
      | pickAllFromScreen(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **point**\ : :js:class:`~Point2`\ , **config**\ : :js:class:`~PickConfig`\ , **isDrawing**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **point**\ : :js:class:`~Point2`
   
      **config**\ : :js:class:`~PickConfig`
   
      **isDrawing**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.pickFromRay

   .. rst-class:: sig-pretty-signature
   
      | pickFromRay(**ray**\ : :js:class:`~Ray`\ , **config**\ : :js:class:`~PickConfig`\ ): *Promise*
   
   **Parameters**
   
      **ray**\ : :js:class:`~Ray`
   
      **config**\ : :js:class:`~PickConfig`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.pickFromScreen

   .. rst-class:: sig-pretty-signature
   
      | pickFromScreen(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **point**\ : :js:class:`~Point2`\ , **config**\ : :js:class:`~PickConfig`\ , **isDrawing**\ : *boolean*\ ): *Promise*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **point**\ : :js:class:`~Point2`
   
      **config**\ : :js:class:`~PickConfig`
   
      **isDrawing**\ : *boolean*
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.redraw

   .. rst-class:: sig-pretty-signature
   
      | redraw(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.registerBimInstances

   .. rst-class:: sig-pretty-signature
   
      | registerBimInstances(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **bimType**\ : :js:data:`BimType <Sc.BimType>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **bimType**\ : :js:data:`BimType <Sc.BimType>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.removeAllCuttingSections

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



.. js:method:: IScEngine.removeCuttingSection

   .. rst-class:: sig-pretty-signature
   
      | removeCuttingSection(**cuttingSection**\ : :js:class:`~ICuttingSection`\ ): *Promise*
   
   **Parameters**
   
      **cuttingSection**\ : :js:class:`~ICuttingSection`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.removeLight

   .. rst-class:: sig-pretty-signature
   
      | removeLight(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **key**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **key**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.removeView

   .. rst-class:: sig-pretty-signature
   
      | removeView(**index**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **index**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.replaceMesh

   .. rst-class:: sig-pretty-signature
   
      | replaceMesh(**id**\ : :js:data:`MeshId <Sc.MeshId>`\ , **data**\ : :js:class:`~MeshData`\ ): *Promise*
   
   **Parameters**
   
      **id**\ : :js:data:`MeshId <Sc.MeshId>`
   
      **data**\ : :js:class:`~MeshData`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.requestMeshInstances

   .. rst-class:: sig-pretty-signature
   
      | requestMeshInstances(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.resetCachedStatistics

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



.. js:method:: IScEngine.resetColors

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



.. js:method:: IScEngine.resetOpacity

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



.. js:method:: IScEngine.resetPartMaterial

   .. rst-class:: sig-pretty-signature
   
      | resetPartMaterial(**nodeIds**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **params**\ : keyof :js:class:`~IMaterial`\ []): *void*
   
   **Parameters**
   
      **nodeIds**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **params**\ : keyof :js:class:`~IMaterial`\ []
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.resetToEmpty

   .. rst-class:: sig-pretty-signature
   
      | resetToEmpty(**whitelistInstances**\ : :js:data:`InstanceKey <Sc.InstanceKey.Invalid>`\ [], **whitelistMeshes**\ : :js:data:`MeshKey <Sc.MeshKey.Invalid>`\ []): *Promise*
   
   **Parameters**
   
      **whitelistInstances**\ : :js:data:`InstanceKey <Sc.InstanceKey.Invalid>`\ []
   
      **whitelistMeshes**\ : :js:data:`MeshKey <Sc.MeshKey.Invalid>`\ []
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.resize

   .. rst-class:: sig-pretty-signature
   
      | resize(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.resumeAllRendering

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



.. js:method:: IScEngine.resumeRendering

   .. rst-class:: sig-pretty-signature
   
      | resumeRendering(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.safeGetMetaData

   .. rst-class:: sig-pretty-signature
   
      | safeGetMetaData(**modelKey**\ : :js:data:`ModelKey <Sc.ModelKey>`\ , **dataKey**\ : :js:data:`DataKey <Sc.DataKey.Invalid>`\ ): *Promise*
   
   **Parameters**
   
      **modelKey**\ : :js:data:`ModelKey <Sc.ModelKey>`
   
      **dataKey**\ : :js:data:`DataKey <Sc.DataKey.Invalid>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.safeGetMetaDatas

   .. rst-class:: sig-pretty-signature
   
      | safeGetMetaDatas(**modelKey**\ : :js:data:`ModelKey <Sc.ModelKey>`\ , **dataKeys**\ : :js:data:`DataKey <Sc.DataKey.Invalid>`\ []): *Promise*
   
   **Parameters**
   
      **modelKey**\ : :js:data:`ModelKey <Sc.ModelKey>`
   
      **dataKeys**\ : :js:data:`DataKey <Sc.DataKey.Invalid>`\ []
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.safeLoadMetaDatas

   .. rst-class:: sig-pretty-signature
   
      | safeLoadMetaDatas(**ids**\ : :js:data:`DataIds <Sc.DataIds>`\ ): *Promise*
   
   **Parameters**
   
      **ids**\ : :js:data:`DataIds <Sc.DataIds>`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.setAllowHighDpi

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



.. js:method:: IScEngine.setAmbientLightColor

   .. rst-class:: sig-pretty-signature
   
      | setAmbientLightColor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setAmbientOcclusionEnabled

   .. rst-class:: sig-pretty-signature
   
      | setAmbientOcclusionEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **enabled**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **enabled**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setAmbientOcclusionRadius

   .. rst-class:: sig-pretty-signature
   
      | setAmbientOcclusionRadius(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **radius**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **radius**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setAntiAliasingMode

   .. rst-class:: sig-pretty-signature
   
      | setAntiAliasingMode(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **antiAliasingMode**\ : :js:data:`~AntiAliasingMode`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **antiAliasingMode**\ : :js:data:`~AntiAliasingMode`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBackFacesVisible

   .. rst-class:: sig-pretty-signature
   
      | setBackFacesVisible(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **visible**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **visible**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBackgroundGradient

   .. rst-class:: sig-pretty-signature
   
      | setBackgroundGradient(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **top**\ : (*None* \| :js:class:`~Color`\ ), **bottom**\ : (*None* \| :js:class:`~Color`\ )): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **top**\ : (*None* \| :js:class:`~Color`\ )
   
      **bottom**\ : (*None* \| :js:class:`~Color`\ )
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBloomEnabled

   .. rst-class:: sig-pretty-signature
   
      | setBloomEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBloomIntensityScale

   .. rst-class:: sig-pretty-signature
   
      | setBloomIntensityScale(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBloomLayers

   .. rst-class:: sig-pretty-signature
   
      | setBloomLayers(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **layers**\ : :js:class:`~BloomLayerInfo`\ []): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **layers**\ : :js:class:`~BloomLayerInfo`\ []
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBloomThreshold

   .. rst-class:: sig-pretty-signature
   
      | setBloomThreshold(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setBloomThresholdRampWidth

   .. rst-class:: sig-pretty-signature
   
      | setBloomThresholdRampWidth(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setCamera

   .. rst-class:: sig-pretty-signature
   
      | setCamera(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **camera**\ : :js:class:`~Camera`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **camera**\ : :js:class:`~Camera`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setCappingDelay

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



.. js:method:: IScEngine.setCappingFaceColor

   .. rst-class:: sig-pretty-signature
   
      | setCappingFaceColor(**color**\ : (*None* \| :js:class:`~Color`\ )): *void*
   
   **Parameters**
   
      **color**\ : (*None* \| :js:class:`~Color`\ )
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setCappingGeometryVisibility

   .. rst-class:: sig-pretty-signature
   
      | setCappingGeometryVisibility(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **cappingGeometryVisibility**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **cappingGeometryVisibility**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setCappingLineColor

   .. rst-class:: sig-pretty-signature
   
      | setCappingLineColor(**color**\ : (*None* \| :js:class:`~Color`\ )): *void*
   
   **Parameters**
   
      **color**\ : (*None* \| :js:class:`~Color`\ )
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setCullingVector

   .. rst-class:: sig-pretty-signature
   
      | setCullingVector(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **space**\ : :js:data:`CullingVectorSpace <Sc.CullingVectorSpace>`\ , **vector**\ : :js:class:`~Point3`\ , **toleranceDegrees**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **space**\ : :js:data:`CullingVectorSpace <Sc.CullingVectorSpace>`
   
      **vector**\ : :js:class:`~Point3`
   
      **toleranceDegrees**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setDefaultDepthRange

   .. rst-class:: sig-pretty-signature
   
      | setDefaultDepthRange(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **min**\ : *number*\ , **max**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **min**\ : *number*
   
      **max**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setDepthRange

   .. rst-class:: sig-pretty-signature
   
      | setDepthRange(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **min**\ : *number*\ , **max**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **min**\ : *number*
   
      **max**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setDisplayIncompleteFrames

   .. rst-class:: sig-pretty-signature
   
      | setDisplayIncompleteFrames(**value**\ : *boolean*\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **value**\ : *boolean*
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setDrawMode

   .. rst-class:: sig-pretty-signature
   
      | setDrawMode(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:data:`DrawMode <Sc.DrawMode>`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:data:`DrawMode <Sc.DrawMode>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setDrawStrategy

   .. rst-class:: sig-pretty-signature
   
      | setDrawStrategy(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **strategy**\ : :js:data:`DrawStrategy <Sc.DrawStrategy>`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **strategy**\ : :js:data:`DrawStrategy <Sc.DrawStrategy>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setElementColor

   .. rst-class:: sig-pretty-signature
   
      | setElementColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementOffset**\ : *number*\ , **elementCount**\ : *number*\ , **color**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementOffset**\ : *number*
   
      **elementCount**\ : *number*
   
      **color**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setElementHighlightColor

   .. rst-class:: sig-pretty-signature
   
      | setElementHighlightColor(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **fillColor**\ : (*None* \| :js:class:`~Color`\ ), **outlineColor**\ : (*None* \| :js:class:`~Color`\ )): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **fillColor**\ : (*None* \| :js:class:`~Color`\ )
   
      **outlineColor**\ : (*None* \| :js:class:`~Color`\ )
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setElementsVisibilityOverride

   .. rst-class:: sig-pretty-signature
   
      | setElementsVisibilityOverride(**instances**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **pointsVisible**\ : *boolean*\ , **linesVisible**\ : *boolean*\ , **facesVisible**\ : *boolean*\ ): *void*
   
   Sets the visibility mask override for the given instances Will be applied for all views
   
   **Parameters**
   
      **instances**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
         Instances to apply the override to
   
   
      **pointsVisible**\ : *boolean*
   
         if points should be visible in the mask
   
   
      **linesVisible**\ : *boolean*
   
         if lines should be visible in the mask
   
   
      **facesVisible**\ : *boolean*
   
         if faces should be visible in the mask
   
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setElementVisibility

   .. rst-class:: sig-pretty-signature
   
      | setElementVisibility(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementOffset**\ : *number*\ , **elementCount**\ : *number*\ , **visible**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementOffset**\ : *number*
   
      **elementCount**\ : *number*
   
      **visible**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setExplodeMagnitude

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



.. js:method:: IScEngine.setEyeDomeLightingBlurEdgeDistance

   .. rst-class:: sig-pretty-signature
   
      | setEyeDomeLightingBlurEdgeDistance(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setEyeDomeLightingBlurInterval

   .. rst-class:: sig-pretty-signature
   
      | setEyeDomeLightingBlurInterval(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setEyeDomeLightingBlurSamples

   .. rst-class:: sig-pretty-signature
   
      | setEyeDomeLightingBlurSamples(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setEyeDomeLightingEnabled

   .. rst-class:: sig-pretty-signature
   
      | setEyeDomeLightingEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **enabled**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **enabled**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setEyeDomeLightingOpacity

   .. rst-class:: sig-pretty-signature
   
      | setEyeDomeLightingOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setEyeDomeLightingShadingEdgeDistance

   .. rst-class:: sig-pretty-signature
   
      | setEyeDomeLightingShadingEdgeDistance(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setFaceVisibility

   .. rst-class:: sig-pretty-signature
   
      | setFaceVisibility(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **faceVisibility**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **faceVisibility**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setGoochBaseColorProminence

   .. rst-class:: sig-pretty-signature
   
      | setGoochBaseColorProminence(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setGoochBlue

   .. rst-class:: sig-pretty-signature
   
      | setGoochBlue(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setGoochLuminanceShiftStrength

   .. rst-class:: sig-pretty-signature
   
      | setGoochLuminanceShiftStrength(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setGoochYellow

   .. rst-class:: sig-pretty-signature
   
      | setGoochYellow(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setGroundPlane

   .. rst-class:: sig-pretty-signature
   
      | setGroundPlane(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **normal**\ : :js:class:`~Point3`\ , **position**\ : :js:class:`~Point3`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **normal**\ : :js:class:`~Point3`
   
      **position**\ : :js:class:`~Point3`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setHardEdgeColor

   .. rst-class:: sig-pretty-signature
   
      | setHardEdgeColor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setHardEdgeOpacity

   .. rst-class:: sig-pretty-signature
   
      | setHardEdgeOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setHardEdgesEnabled

   .. rst-class:: sig-pretty-signature
   
      | setHardEdgesEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setHardEdgeThreshold

   .. rst-class:: sig-pretty-signature
   
      | setHardEdgeThreshold(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setHardEdgeThresholdRampWidth

   .. rst-class:: sig-pretty-signature
   
      | setHardEdgeThresholdRampWidth(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setHighlightColorizeCompression

   .. rst-class:: sig-pretty-signature
   
      | setHighlightColorizeCompression(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **compressionLevel**\ : *number*\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **compressionLevel**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setImageBasedLightingEnabled

   .. rst-class:: sig-pretty-signature
   
      | setImageBasedLightingEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setImageBasedLightingEnvironment

   .. rst-class:: sig-pretty-signature
   
      | setImageBasedLightingEnvironment(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **data**\ : *Uint8Array*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **data**\ : *Uint8Array*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setImageBasedLightingEnvironmentToDefault

   .. rst-class:: sig-pretty-signature
   
      | setImageBasedLightingEnvironmentToDefault(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setImageBasedLightingIntensity

   .. rst-class:: sig-pretty-signature
   
      | setImageBasedLightingIntensity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setImageBasedLightingMatrix

   .. rst-class:: sig-pretty-signature
   
      | setImageBasedLightingMatrix(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:class:`~Matrix`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:class:`~Matrix`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setInstanceModifier

   .. rst-class:: sig-pretty-signature
   
      | setInstanceModifier(**instanceModifier**\ : :js:data:`~InstanceModifier`\ , **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **modifierValue**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **instanceModifier**\ : :js:data:`~InstanceModifier`
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **modifierValue**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setInstancesMatrix

   .. rst-class:: sig-pretty-signature
   
      | setInstancesMatrix(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **matrix**\ : :js:class:`~Matrix`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **matrix**\ : :js:class:`~Matrix`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setInteractiveDrawDelay

   .. rst-class:: sig-pretty-signature
   
      | setInteractiveDrawDelay(**value**\ : *number*\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **value**\ : *number*
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setInteractiveDrawLimitIncreaseEnabled

   .. rst-class:: sig-pretty-signature
   
      | setInteractiveDrawLimitIncreaseEnabled(**enable**\ : *boolean*\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **enable**\ : *boolean*
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLightingEnabled

   .. rst-class:: sig-pretty-signature
   
      | setLightingEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **enabled**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **enabled**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLineJitterEnabled

   .. rst-class:: sig-pretty-signature
   
      | setLineJitterEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLineJitterFrequency

   .. rst-class:: sig-pretty-signature
   
      | setLineJitterFrequency(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLineJitterInstanceCount

   .. rst-class:: sig-pretty-signature
   
      | setLineJitterInstanceCount(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLineJitterRadius

   .. rst-class:: sig-pretty-signature
   
      | setLineJitterRadius(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLinePattern

   .. rst-class:: sig-pretty-signature
   
      | setLinePattern(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **pattern**\ : :js:data:`~LinePattern`\ , **patternLength**\ : *number*\ , **patternLengthUnit**\ : :js:data:`~LinePatternLengthUnit`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **pattern**\ : :js:data:`~LinePattern`
   
      **patternLength**\ : *number*
   
      **patternLengthUnit**\ : :js:data:`~LinePatternLengthUnit`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setLineVisibility

   .. rst-class:: sig-pretty-signature
   
      | setLineVisibility(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **lineVisibility**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **lineVisibility**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setMatrices

   .. rst-class:: sig-pretty-signature
   
      | setMatrices(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **matrices**\ : :js:class:`~Matrix`\ []): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **matrices**\ : :js:class:`~Matrix`\ []
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setMeshLevel

   .. rst-class:: sig-pretty-signature
   
      | setMeshLevel(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **meshLevel**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **meshLevel**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setMetallicRoughness

   .. rst-class:: sig-pretty-signature
   
      | setMetallicRoughness(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **metallicFactor**\ : *number*\ , **roughnessFactor**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **metallicFactor**\ : *number*
   
      **roughnessFactor**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setMetallicRoughnessMaterialOverride

   .. rst-class:: sig-pretty-signature
   
      | setMetallicRoughnessMaterialOverride(**defaultMetallicFactor**\ : *number*\ , **defaultRoughnessFactor**\ : *number*\ ): *void*
   
   **Parameters**
   
      **defaultMetallicFactor**\ : *number*
   
      **defaultRoughnessFactor**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setMinimumFramerate

   .. rst-class:: sig-pretty-signature
   
      | setMinimumFramerate(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setNodeHighlightColor

   .. rst-class:: sig-pretty-signature
   
      | setNodeHighlightColor(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **fillColor**\ : (*None* \| :js:class:`~Color`\ ), **outlineColor**\ : (*None* \| :js:class:`~Color`\ )): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **fillColor**\ : (*None* \| :js:class:`~Color`\ )
   
      **outlineColor**\ : (*None* \| :js:class:`~Color`\ )
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setOverlayCamera

   .. rst-class:: sig-pretty-signature
   
      | setOverlayCamera(**index**\ : *number*\ , **camera**\ : :js:class:`~Camera`\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **index**\ : *number*
   
      **camera**\ : :js:class:`~Camera`
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setOverlayViewport

   .. rst-class:: sig-pretty-signature
   
      | setOverlayViewport(**index**\ : *number*\ , **anchor**\ : :js:data:`OverlayAnchor <Sc.OverlayAnchor>`\ , **x**\ : *number*\ , **xUnit**\ : :js:data:`~OverlayUnit`\ , **y**\ : *number*\ , **yUnit**\ : :js:data:`~OverlayUnit`\ , **width**\ : *number*\ , **widthUnit**\ : :js:data:`~OverlayUnit`\ , **height**\ : *number*\ , **heightUnit**\ : :js:data:`~OverlayUnit`\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **index**\ : *number*
   
      **anchor**\ : :js:data:`OverlayAnchor <Sc.OverlayAnchor>`
   
      **x**\ : *number*
   
      **xUnit**\ : :js:data:`~OverlayUnit`
   
      **y**\ : *number*
   
      **yUnit**\ : :js:data:`~OverlayUnit`
   
      **width**\ : *number*
   
      **widthUnit**\ : :js:data:`~OverlayUnit`
   
      **height**\ : *number*
   
      **heightUnit**\ : :js:data:`~OverlayUnit`
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setOverlayVisibility

   .. rst-class:: sig-pretty-signature
   
      | setOverlayVisibility(**index**\ : *number*\ , **visibility**\ : *boolean*\ , **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ ): *void*
   
   **Parameters**
   
      **index**\ : *number*
   
      **visibility**\ : *boolean*
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartAmbientColor

   .. rst-class:: sig-pretty-signature
   
      | setPartAmbientColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **color**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **color**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartAmbientMix

   .. rst-class:: sig-pretty-signature
   
      | setPartAmbientMix(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartColor

   .. rst-class:: sig-pretty-signature
   
      | setPartColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **color**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **color**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartEmissiveColor

   .. rst-class:: sig-pretty-signature
   
      | setPartEmissiveColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **color**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **color**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartMaterial

   .. rst-class:: sig-pretty-signature
   
      | setPartMaterial(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **material**\ : :js:class:`~IMaterial`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **material**\ : :js:class:`~IMaterial`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartOpacity

   .. rst-class:: sig-pretty-signature
   
      | setPartOpacity(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **opacity**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **opacity**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartSpecularColor

   .. rst-class:: sig-pretty-signature
   
      | setPartSpecularColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **color**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **color**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartSpecularIntensity

   .. rst-class:: sig-pretty-signature
   
      | setPartSpecularIntensity(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPartVisibility

   .. rst-class:: sig-pretty-signature
   
      | setPartVisibility(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **visible**\ : *boolean*\ , **onlyDemanded**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **visible**\ : *boolean*
   
      **onlyDemanded**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPickTolerance

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



.. js:method:: IScEngine.setPointShape

   .. rst-class:: sig-pretty-signature
   
      | setPointShape(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **shape**\ : :js:data:`~PointShape`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **shape**\ : :js:data:`~PointShape`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPointSize

   .. rst-class:: sig-pretty-signature
   
      | setPointSize(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **size**\ : *number*\ , **unit**\ : :js:data:`~PointSizeUnit`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **size**\ : *number*
   
      **unit**\ : :js:data:`~PointSizeUnit`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setPointVisibilityTest

   .. rst-class:: sig-pretty-signature
   
      | setPointVisibilityTest(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **points**\ : :js:class:`~Point3`\ []): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **points**\ : :js:class:`~Point3`\ []
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setProjection

   .. rst-class:: sig-pretty-signature
   
      | setProjection(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **projection**\ : :js:data:`~Projection`\ ): *void*
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **projection**\ : :js:data:`~Projection`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setRemoteEndpoint

   .. rst-class:: sig-pretty-signature
   
      | setRemoteEndpoint(**uri**\ : *string*\ , **modelName**\ : *string*\ ): *void*
   
   **Parameters**
   
      **uri**\ : *string*
   
      **modelName**\ : *string*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setServerRenderQuality

   .. rst-class:: sig-pretty-signature
   
      | setServerRenderQuality(**jpegQualityLow**\ : *number*\ , **jpegQualityHigh**\ : *number*\ , **scaleLow**\ : *number*\ , **scaleHigh**\ : *number*\ ): *void*
   
   **Parameters**
   
      **jpegQualityLow**\ : *number*
   
      **jpegQualityHigh**\ : *number*
   
      **scaleLow**\ : *number*
   
      **scaleHigh**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSilhouetteColor

   .. rst-class:: sig-pretty-signature
   
      | setSilhouetteColor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSilhouetteEnabled

   .. rst-class:: sig-pretty-signature
   
      | setSilhouetteEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSilhouetteOpacity

   .. rst-class:: sig-pretty-signature
   
      | setSilhouetteOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSilhouetteThreshold

   .. rst-class:: sig-pretty-signature
   
      | setSilhouetteThreshold(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSilhouetteThresholdRampWidth

   .. rst-class:: sig-pretty-signature
   
      | setSilhouetteThresholdRampWidth(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleReflectionAttenuation

   .. rst-class:: sig-pretty-signature
   
      | setSimpleReflectionAttenuation(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **nearDistance**\ : *number*\ , **farDistance**\ : *number*\ , **unit**\ : :js:data:`~SimpleReflectionAttenuationUnit`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **nearDistance**\ : *number*
   
      **farDistance**\ : *number*
   
      **unit**\ : :js:data:`~SimpleReflectionAttenuationUnit`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleReflectionBlurInterval

   .. rst-class:: sig-pretty-signature
   
      | setSimpleReflectionBlurInterval(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ , **unit**\ : :js:data:`~BlurIntervalUnit`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
      **unit**\ : :js:data:`~BlurIntervalUnit`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleReflectionBlurSamples

   .. rst-class:: sig-pretty-signature
   
      | setSimpleReflectionBlurSamples(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleReflectionEnabled

   .. rst-class:: sig-pretty-signature
   
      | setSimpleReflectionEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleReflectionFadeAngle

   .. rst-class:: sig-pretty-signature
   
      | setSimpleReflectionFadeAngle(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **degrees**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **degrees**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleReflectionOpacity

   .. rst-class:: sig-pretty-signature
   
      | setSimpleReflectionOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowBlurInterval

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowBlurInterval(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowBlurSamples

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowBlurSamples(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowColor

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowColor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowEnabled

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowInteractiveUpdateEnabled

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowInteractiveUpdateEnabled(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowOpacity

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setSimpleShadowResolution

   .. rst-class:: sig-pretty-signature
   
      | setSimpleShadowResolution(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **pixels**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **pixels**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setStreamCutoffScale

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



.. js:method:: IScEngine.setStreamIdleMarker

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



.. js:method:: IScEngine.setTexture

   .. rst-class:: sig-pretty-signature
   
      | setTexture(**instanceIncs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **options**\ : :js:class:`~TextureOptions`\ ): *Promise*
   
   **Parameters**
   
      **instanceIncs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **options**\ : :js:class:`~TextureOptions`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.setTimeout

   .. rst-class:: sig-pretty-signature
   
      | setTimeout(**handler**\ : () => *void*\ , **timeout**\ : *number*\ ): *Timeout*
   
   **Parameters**
   
      **handler**\ : () => *void*
   
      **timeout**\ : *number*
   
   
   **Returns**\ : *Timeout*
   



.. js:method:: IScEngine.setToonShadingBandCount

   .. rst-class:: sig-pretty-signature
   
      | setToonShadingBandCount(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **bandCount**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **bandCount**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setToonShadingSpecularFactor

   .. rst-class:: sig-pretty-signature
   
      | setToonShadingSpecularFactor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **specularFactor**\ : *number*\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **specularFactor**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setTransparencyMode

   .. rst-class:: sig-pretty-signature
   
      | setTransparencyMode(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:data:`~TransparencyMode`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:data:`~TransparencyMode`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setVisibilityByAttachment

   .. rst-class:: sig-pretty-signature
   
      | setVisibilityByAttachment(**attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`\ , **setVisibility**\ : :js:data:`SetVisibility <Sc.SetVisibility>`\ ): *void*
   
   **Parameters**
   
      **attachScope**\ : :js:data:`AttachScope <Sc.AttachScope.OfInitialEmptyModel>`
   
      **setVisibility**\ : :js:data:`SetVisibility <Sc.SetVisibility>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setXRayColor

   .. rst-class:: sig-pretty-signature
   
      | setXRayColor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **group**\ : :js:data:`~XRayGroup`\ , **element**\ : :js:data:`~ElementType`\ , **color**\ : :js:class:`~Color`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **group**\ : :js:data:`~XRayGroup`
   
      **element**\ : :js:data:`~ElementType`
   
      **color**\ : :js:class:`~Color`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setXRayOpacity

   .. rst-class:: sig-pretty-signature
   
      | setXRayOpacity(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : *number*\ , **element**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : *number*
   
      **element**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.setXRayTransparencyMode

   .. rst-class:: sig-pretty-signature
   
      | setXRayTransparencyMode(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **value**\ : :js:data:`~TransparencyMode`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **value**\ : :js:data:`~TransparencyMode`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.shutdown

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



.. js:method:: IScEngine.sleep

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



.. js:method:: IScEngine.start

   .. rst-class:: sig-pretty-signature
   
      | start(**canvasContainer**\ : *HTMLDivElement*\ , **options**\ : *InitOptions*\ ): *boolean*
   
   **Parameters**
   
      **canvasContainer**\ : *HTMLDivElement*
   
      **options**\ : *InitOptions*
   
   
   **Returns**\ : *boolean*
   



.. js:method:: IScEngine.startComparison

   .. rst-class:: sig-pretty-signature
   
      | startComparison(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **instanceSet1**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **instanceSet2**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **config**\ : :js:class:`~ComparisonConfig`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **instanceSet1**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **instanceSet2**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **config**\ : :js:class:`~ComparisonConfig`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.startExplode

   .. rst-class:: sig-pretty-signature
   
      | startExplode(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **vector**\ : :js:class:`~Point3`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **vector**\ : :js:class:`~Point3`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.stopExplode

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



.. js:method:: IScEngine.synchronizeVisibilities

   .. rst-class:: sig-pretty-signature
   
      | synchronizeVisibilities(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **visible**\ : *boolean*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **visible**\ : *boolean*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.testPointVisibility

   .. rst-class:: sig-pretty-signature
   
      | testPointVisibility(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **points**\ : :js:class:`~Point3`\ []): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **points**\ : :js:class:`~Point3`\ []
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.throttleLoad

   .. rst-class:: sig-pretty-signature
   
      | throttleLoad(**newPauseInterval**\ : *number*\ , **throttleDuration**\ : *number*\ ): *void*
   
   **Parameters**
   
      **newPauseInterval**\ : *number*
   
      **throttleDuration**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.triangulatePolygon

   .. rst-class:: sig-pretty-signature
   
      | triangulatePolygon(**polygonPoints**\ : (*number*\ [] \| *Float32Array*\ ), **normal**\ : :js:data:`~Vector3`\ ): *Float32Array*
   
   **Parameters**
   
      **polygonPoints**\ : (*number*\ [] \| *Float32Array*\ )
   
      **normal**\ : :js:data:`~Vector3`
   
   
   **Returns**\ : *Float32Array*
   



.. js:method:: IScEngine.unsetCullingVector

   .. rst-class:: sig-pretty-signature
   
      | unsetCullingVector(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetDepthRange

   .. rst-class:: sig-pretty-signature
   
      | unsetDepthRange(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetElementColor

   .. rst-class:: sig-pretty-signature
   
      | unsetElementColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ , **elementOffset**\ : *number*\ , **elementCount**\ : *number*\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
      **elementOffset**\ : *number*
   
      **elementCount**\ : *number*
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetElementsVisibilityOverride

   .. rst-class:: sig-pretty-signature
   
      | unsetElementsVisibilityOverride(**instances**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   Unsets the visibility mask override for the given instances
   
   **Parameters**
   
      **instances**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
         Instances to apply the override to
   
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetLinePattern

   .. rst-class:: sig-pretty-signature
   
      | unsetLinePattern(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetMetallicRoughness

   .. rst-class:: sig-pretty-signature
   
      | unsetMetallicRoughness(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetPartAmbientColor

   .. rst-class:: sig-pretty-signature
   
      | unsetPartAmbientColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetPartColor

   .. rst-class:: sig-pretty-signature
   
      | unsetPartColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetPartEmissiveColor

   .. rst-class:: sig-pretty-signature
   
      | unsetPartEmissiveColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetPartOpacity

   .. rst-class:: sig-pretty-signature
   
      | unsetPartOpacity(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetPartSpecularColor

   .. rst-class:: sig-pretty-signature
   
      | unsetPartSpecularColor(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetPartSpecularIntensity

   .. rst-class:: sig-pretty-signature
   
      | unsetPartSpecularIntensity(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ , **elementType**\ : :js:data:`~ElementType`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
      **elementType**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetTexture

   .. rst-class:: sig-pretty-signature
   
      | unsetTexture(**incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`\ ): *void*
   
   **Parameters**
   
      **incs**\ : :js:data:`InstanceIncs <Sc.InstanceIncs>`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.unsetXRayColor

   .. rst-class:: sig-pretty-signature
   
      | unsetXRayColor(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **group**\ : :js:data:`~XRayGroup`\ , **element**\ : :js:data:`~ElementType`\ ): *Promise*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **group**\ : :js:data:`~XRayGroup`
   
      **element**\ : :js:data:`~ElementType`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.updateCamera

   .. rst-class:: sig-pretty-signature
   
      | updateCamera(**viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **camera**\ : :js:class:`~Camera`\ ): :js:class:`~Camera`
   
   **Parameters**
   
      **viewKey**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **camera**\ : :js:class:`~Camera`
   
   
   **Returns**\ : :js:class:`~Camera`
   



.. js:method:: IScEngine.updateCuttingSection

   .. rst-class:: sig-pretty-signature
   
      | updateCuttingSection(**cuttingSection**\ : :js:class:`~ICuttingSection`\ ): *Promise*
   
   **Parameters**
   
      **cuttingSection**\ : :js:class:`~ICuttingSection`
   
   
   **Returns**\ : *Promise*
   



.. js:method:: IScEngine.updateLight

   .. rst-class:: sig-pretty-signature
   
      | updateLight(**view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`\ , **key**\ : *number*\ , **light**\ : :js:class:`~Light`\ ): *void*
   
   **Parameters**
   
      **view_key**\ : :js:data:`ViewKey <Sc.ViewKey>`
   
      **key**\ : *number*
   
      **light**\ : :js:class:`~Light`
   
   
   **Returns**\ : *void*
   



.. js:method:: IScEngine.waitForImageDecoding

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





