Arquivo IFC e sua arquitetura: IfcPropertyDefinition
Como ler um arquivo IFC, alterar e adicionar propriedades aos objetos: conheça IfcPropertyDefinition e a estrutura de dados IFC
O artigo de hoje vai apresentar o terceiro pilar do esquema de dados para arquivo IFC (Industry Foundation Classes): o IfcPropertyDefinition,
ou seja, as propriedades imaginadas como informações compartilhadas entre várias entidades de objetos. Nos artigos precedentes, já falamos sobre o IfcObjectDefinition
e oIfcRelationship.
Confira os 3 artigos sobre a arquitetura IFC:
- IfcObject (parte 1 da arquitetura IFC)
- IfcRelationship (parte 2 da arquitetura IFC)
- IfcPropertyDefinition (parte 3 da arquitetura IFC).
Arquitetura de um arquivo IFC
O esquema IFC representa um sistema de armazenamento para organizar organicamente as informações relativas a um objeto da construção e garantir que esse patrimônio de informações seja acessível ao longo do tempo e sem vínculos. O arquivo IFC é um modelo composto por centenas de entidades organizadas hierarquicamente.
A estrutura do IFC está baseado em 3 conceitos fundamentais, que definem:
IfcObjectDefinition
, ou seja, as entidades;IfcRelationship
, ou seja, as relações entre as entidades;IfcPropertyDefinition
, ou seja, as propriedades associadas às entidades.

Gráfico da composição do esquema de dados IFC
IfcPropertyDefinition
IfcPropertyDefinition
permite generalizar todas as propriedades que podem ser atribuídas aos objetos. Essa generalização permite definir conjuntos de propriedades ou de tipos de objetos (type object). As propriedades definem as informações compartilhadas entre várias instâncias de objetos.
A partir dessas propriedades, criam-se as seguintes:
IfcPropertySetDefinition
, que permite a generalização do conjunto de propriedades;IfcPropertySet
, que representa o recipiente que contém todas as propriedades, definidas e classificadas por meio do nome. Os conjuntos de propriedades são relacionados aos objetos(IfcObject)
por meio da relaçãoIfcRelDefinedByProperties
;IfcProperty
, que define a generalização dos tipos de propriedades a serem associadas aos objetos IFC, e depende de um conjunto de propriedades.

Arquitetura arquivo IFC | Gráfico da árvore IfcPropertyDefinition
IfcProperty
é dividido em:
IfcComplexProperty
, utilizado para definir propriedades complexadas a serem gerenciadas dentro de um conjunto de propriedades;IfcSimpleProperty
, que classifica as propriedades atribuídas para cada objetos. Os subtipos deIfcSimpleProperty
estabelecem as várias maneiras para configurar um valor da propriedade.

Arquitetura arquivo IFC | Gráfico descrição IfcSimpleProperty
IfcSimpleProperty
A IfcSimpleProperty
se ramifica em 6 subtipos diferentes, que já vamos ver.
IfcPropertySingleValue
É possível atribuir um valor específico para esta propriedade, que é composta pelos elementos:
- Name
- Nominal Value
- Type (através do IfcValue)
- Unit
Por exemplo, se quiser descrever as propriedades de uma porta produzida pelo “Produtor A” com espessura de 4 cm e transmitância térmica de 2,6w/(m² K), conseguimos:
IfcPropertyEnumeratedValue
IfcPropertyEnumeratedValue
define uma propriedade cujo valor foi definido a partir de lista de valores enumerados. A lista se encontra dentro da classe IfcPropertyEnumerated
, que representa o subtipo IfcPropertyEnumeratedValue.
É composta pelos elementos:
- Name
- Value (EnumerationValue)
- Type
- IfcPropertyEnumeratio
conforme imagem abaixo.

Esquema exemplo do IfcPropertyEnumeratedValue
IfcPropertyBoundedValue
Define uma propriedade que possui dois valores limite: o primeiro valor diz respeito ao limite superior, enquanto o segundo trata do limite inferior.
É composta pelos elementos:
- Name
- UpperBoundValue
- LowerBoundValue
- Type
- Unit
Essa propriedade detecta, por exemplo, os limites de gabarito ou de peso de um objeto a ser transportado para um ponto do canteiro de obra.

Esquema de exemplo do IfcPropertyBoundedValue
IfcPropertyTableValue
Define uma propriedade à qual estão atribuídos dois elencos de valores, que compõem uma tabela com duas colunas. Os valores da primeira coluna definem o âmbito de aplicação dos valores da segunda.
É composta pelos elementos:
- DefiningValues
- DefiningValueType
- DefingUnit
Por exemplo, através de uma tabela é possível indicar os valores da perda de transmissão sonora dentro de um certo intervalo.

Esquema exemplo do IfcPropertyTableValue
IfcPropertyReferenceValue
Atribui um valor à propriedade através de uma ligação com propriedades complexas, pré-definidas dentro do esquema IFC.
IfcPropertyListValue
Define uma propriedade à qual foram atribuídos vários valores, tomados de um elenco preciso e ordenado: a ordem de visualização dos valor é significativa. Cada valor dentro do elenco é único e não é possível duplicá-lo.
É composta pelos elementos:
- Name
- ListValue
- Type
- Unit
Por exemplo, essa propriedade permite indicar as dimensões, dentro de um certo elenco, a serem atribuídas para realizar um item específico.

Esquema exemplo IfcPropertyListValue
Exemplos de propriedades associadas às entidades
As imagem que seguem (telas do usBIM.viewer+) mostram exemplos de propriedades associadas às entidades.
Na caixa de ferramentas à esquerda, selecionamos uma porta; na caixa de ferramentas à direita, podem-se ler as propriedades associadas a essa entidade.

Imagem 1: leitura das propriedades da entidade porta | usBIM.viewer+
Na segunda imagem (Imagem 2), vamos ver como adicionar uma propriedade a um conjunto de entidades. Após abrir o editor do modelo BIM, é possível adicionarmos uma nova propriedade Pintura associada aos dois WallCommon
selecionando duas entidades da caixa de diálogo Propriedades.

Imagem 2: inserção de uma propriedade para a entidade parede | usBIM.viewer+
A terceira imagem mostra como alterar as propriedades das paredes incluídas noIfcWallStandardCase,
passando de “Parede branca” até “Parede branca bujardada”.

Imagem 3: alteração de uma propriedade da entidade parede | usBIM.viewer+
Finalmente, a quarta imagem mostra como verificar as propriedades adicionadas. Selecione a entidade Parede a partir do IfcWallStandardCase
e leia as alterações adicionadas às propriedades na caixa de ferramentas à direita: a pintura com a atribuição “cor” e alteração da atribuição “reboco”.

Imagem 4: leitura das propriedades adicionadas e atribuídas à entidade parede | usBIM.viewer+
Baixe nosso visualizador de arquivo IFC
Se quiser analisar de forma prática as IfcProperty
atribuídas, adicionar ou alterar as entidades de uma obra (paredes, lajes, janelas, portas), baixe gratuitamente e aproveite sem limite o software usBIM.viewer+ ou também o editor IFC online , que permite abrir, analisar e editar um arquivo IFC.
Se quiser saber mais sobre a arquitetura do formato IFC, confira os links para nossos artigos de aprofundamento:
- IfcObject (parte 1 da arquitetura IFC)
- IfcRelationship (parte 2 da arquitetura IFC)
- IfcPropertyDefinition (parte 3 da arquitetura IFC).