ADN Open CIS
Сообщество программистов Autodesk в СНГ

01/08/2017

Метод getBulkProperties

Метод .getBulkProperties возвращает только указанные свойства для списка dbIds, в отличии от метода .getProperties который возвращает все свойства для одного элемента за раз. Следующий пример кода ищет элементы со значением "Steel" в атрибуте "Material", который возвращает список dbIds. Затем getBulkProperties запрашивает только свойство "Mass" для этих элементов, и, наконец, цикл for суммирует значения. Обратите внимание, что getBulkProperties требует список атрибутов для второго параметра.

Код - JavaScript: [Выделить]
  1. viewer.search('Steel',
  2. function(dbIds){
  3.    viewer.model.getBulkProperties(dbIds, ['Mass'],
  4.    function(elements){
  5.      var totalMass = 0;
  6.      for(var i=0; i<elements.length; i++){
  7.        totalMass += elements[i].properties[0].displayValue;
  8.      }
  9.      console.log(totalMass);
  10.    })
  11. }, null, ['Material'])

Это проще, чем получить полный список свойств с .getProperties в пределах отдельных обратных вызовов для каждого dbId.

Источник: https://forge.autodesk.com/blog/getbulkproperties-method

Автор перевода: Дмитрий Емельянов

Обсуждение: http://adn-cis.org/forum/index.php?topic=

Опубликовано 01.08.2017