Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Selector

Hierarchy

  • Selector

Index

Constructors

constructor

  • new Selector(bim365: BIMModel): Selector
  • Parameters

    • bim365: BIMModel

    Returns Selector

Properties

selectionBoxEventEmitter

selectionBoxEventEmitter: EventEmitter = this.bim365.selectionBoxService.selectionBoxEventEmitter

框选完成回调

Methods

getAllElementOrSpaceID

  • getAllElementOrSpaceID(type: any): any
  • 获取模型全部构件id或者空间id

    Parameters

    • type: any

      element space all

    Returns any

getElementByElementID

  • getElementByElementID(elementid: [], isSpace?: boolean): Element[]
  • 根据elementid获取element对象

    Parameters

    • elementid: []

      elementid数组

    • Default value isSpace: boolean = false

    Returns Element[]

getElementIdsByCategoryId

  • getElementIdsByCategoryId(modelId: string, categoryId: string | string[]): string[]
  • 根据构件类型,得到构件id

    Parameters

    • modelId: string

      模型Id

    • categoryId: string | string[]

    Returns string[]

    构件Ids

       function getElementIdsByCategoryId() {
         let ids =BIM365API.Selector.getElementIdsByCategoryId(modelId, categoryId);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByCategoryName

  • getElementIdsByCategoryName(modelId: string, categoryName: string | string[]): string[]
  • 根据类型名称得到构件id

    Parameters

    • modelId: string

      模型id

    • categoryName: string | string[]

      类型名称 string|string[]

    Returns string[]

       function getElementIdsByCategoryName() {
         let ids = BIM365API.Selector.getElementIdsByCategoryName(modelId, categoryName);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByCondition

  • getElementIdsByCondition(searches: any[]): Promise<Response>
  • 按照构件属性得到构件ID

    Parameters

    • searches: any[]
         Search = {
         key: string,特性
         value: string,条件值
         condition: string, //条件如:等于,不等于,大于,小于,包含,不包含
         logic?: string //Or And 默认And
         };

    Returns Promise<Response>

       function getElementIdsByTypeId() {
         BIM365API.Selector.getElementIdsByCondition(modelId, searches).then(function(ids){
           for(let id of ids) {
             let modelId = id.split('^')[0];
             let elementId = id.split('^')[1];
             console.log(modelId, elementId);
           }
         });
       }

getElementIdsByElementName

  • getElementIdsByElementName(modelId: string, elementName: string | string[]): string[]
  • 根据构件名称得到构件Id

    Parameters

    • modelId: string

      模型名称

    • elementName: string | string[]

      构件名称 string|string[]

    Returns string[]

       function getElementIdsByElementName() {
         let ids = BIM365API.Selector.getElementIdsByElementName(modelId, elementName);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByFamilyId

  • getElementIdsByFamilyId(modelId: string, familyId: string | string[]): string[]
  • 根据构件族id得到构件id

    Parameters

    • modelId: string

      模型Id

    • familyId: string | string[]

      族Id string|string[]

    Returns string[]

       function getElementIdsByFamilyId() {
         let ids = BIM365API.Selector.getElementIdsByFamilyId(modelId, familyId);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByFamilyName

  • getElementIdsByFamilyName(modelId: string, familyName: string | string[]): string[]
  • 根据族名称得到构件id

    Parameters

    • modelId: string

      模型Id

    • familyName: string | string[]

      族别名称 string|string[]

    Returns string[]

       function getElementIdsByFamilyName() {
         let ids = BIM365API.Selector.getElementIdsByFamilyName(modelId, familyName);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByLevelId

  • getElementIdsByLevelId(modelId: string, levelId: string | string[]): string[]
  • 根据levelId 得到构件id

    Parameters

    • modelId: string
    • levelId: string | string[]

    Returns string[]

       function getElementIdsByLevelId() {
         let ids =  BIM365API.Selector.getElementIdsByLevelId(modelId, levelId);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByLinkLevelId

  • getElementIdsByLinkLevelId(modelId: string, LinklevelId: string | string[]): string[]
  • 根据链接文件的标高获取构件ID

    Parameters

    • modelId: string
    • LinklevelId: string | string[]
      ```

      function getElementIdsByLinkLevelId() { let ids = BIM365API.Selector.getElementIdsByLevelId(modelId, linkLevelId); for(let id of ids) { let modelId = id.split('^')[0]; let elementId = id.split('^')[1]; console.log(modelId, elementId); } } `

    Returns string[]

getElementIdsByProperty

  • getElementIdsByProperty(key: string, val: string): Promise<Response>
  • 根据固定属性名属性值获取构件id

    Parameters

    • key: string

      属性名

    • val: string

      属性值

    Returns Promise<Response>

getElementIdsByTypeId

  • getElementIdsByTypeId(modelId: string, typeId: string | string[]): string[]
  • 根据构件类别id得到构件id

    Parameters

    • modelId: string

      模型Id

    • typeId: string | string[]

      类别Id string|string[]

    Returns string[]

       function getElementIdsByTypeId() {
         let ids = BIM365API.Selector.getElementIdsByTypeId(modelId, typeId);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsByTypeName

  • getElementIdsByTypeName(modelId: string, typeName: string | string[]): string[]
  • 根据构件类别名称得到构件id

    Parameters

    • modelId: string

      模型Id

    • typeName: string | string[]

      类别名称 string|string[]

    Returns string[]

       function getElementIdsByTypeName() {
         let ids = BIM365API.Selector.getElementIdsByTypeName(modelId, typeName);
         for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
         }
       }

getElementIdsCrossBox

  • getElementIdsCrossBox(): string[]
  • 得到与剖切相交的所有的构件

    Returns string[]

       function getElementIdsCrossBox() {
          let ids = BIM365API.Selector.getElementIdsCrossBox();
          for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
          }
       }

getElementIdsInBox

  • getElementIdsInBox(): string[]
  • 得到剖切中的所有构件

    Returns string[]

       function getElementIdsInBox() {
          let ids = BIM365API.Selector.getElementIdsInBox();
          for(let id of ids) {
           let modelId = id.split('^')[0];
           let elementId = id.split('^')[1];
           console.log(modelId, elementId);
          }
       }

getElementsBySpace

  • getElementsBySpace(spaceid: string, modelid: string, version?: string, withBlock?: boolean, categoryid?: string): Promise<any>
  • 获取空间下 elementid

    Parameters

    • spaceid: string

      空间id

    • modelid: string

      模型id

    • Default value version: string = ""

      版本号 默认 ''

    • Default value withBlock: boolean = false

      是否包含几何体信息 默认false

    • Default value categoryid: string = ""

      默认 ''

    Returns Promise<any>

getHideElementIds

  • getHideElementIds(): string[]
  • 返回当前所有隐藏的构件的数组

    Returns string[]

    构件Id的数组

getHighilightElementIds

  • getHighilightElementIds(): string[]
  • 得到当前所有选中对象的Id

    Returns string[]

       function getHighilightElementIds(){
         var elementIds =  BIM365API.Selector.getHighilightElementIds();
         console.log(elementIds);
       }

getIsolateElementIds

  • getIsolateElementIds(): string[]
  • 得到当前所有隔离对象的数组

    Returns string[]

    隔离对象Ids

isActiveSelectionBox

  • isActiveSelectionBox(active: boolean): void
  • 是否开启框选模式

    Parameters

    • active: boolean

    Returns void