Entendendo um Arquivo .ifc, Parte III

Vimos no artigo anterior como a seção DATA se organiza dentro do arquivo IFC, e também entendemos o que significa entidade e instância, afim de sabermos como os dados são armazenados nesta seção.

Porém este armazenamento segue uma estrutura própria ao IFC, e veremos isso agora.

Simbologia

Ao abrirmos um arquivo IFC, e localizar-mos a seção DATA, logo veremos as entidades instanciadas definidas pelo identificador ‘#’ (conforme no último artigo). Este caractere é apenas um das diversas simbologias que nos depararemos ao longo do arquivo. Então vamos entender cada uma delas:

  • # : Como vimos, é usado antes de um número inteiro para definir este número como identificador único de uma entidade.
  • $ : Indica um valor indefinido ao campo.
  • * : Indica um atributo omisso.
  • , : A vírgula faz a separação entre dois atributos em uma entidade. O separador de números decimais no IFC é o ponto (.).
  • ‘ ‘ : O conteúdo entre dois apóstrofes é tratado como um texto alfanumérico.
  • . . : Um atributo entre pontos indica que trata-se de um atributo enumerado (ou seja é uma opção dentre uma lista de opções predefinidas). Devem sempre ser representados em letras MAIÚSCULAS.
  • ( ) : Os parênteses definem os atributos de uma entidade. Dentro deles é que está toda informação relacionada a entidade em questão. Se aparecerem dentro de outros parênteses, significa que o atributo é um conjunto de outras informações.
  • /* */ : O conteúdo entre estes caracteres não será entendido como uma dado, ele serve apenas para comentários dentro do código.

A estrutura da entidade.

Após termos visto os símbolos utilizados na estrutura de uma entidade (e seus significados), já conseguiremos compreender sua estrutura dentro da seção DATA.

Como já dito em artigos anteriores, o IFC segue o padrão STEP de estrutura de dados, onde cada entidade é representada em uma linha.

Sua estrutura é dividida em três partes principais, conforme esquema abaixo:

Parte 1 – Identificador Único:

Aqui a entidade é etiquetada com um identificador único, que deverá ser um número inteiro positivo maior que zero. Este identificador é sinalizado, como visto acima, com o caractere #, e suporta o máximo de 9 dígitos, ou seja, quase 1 bilhão de entidades.

Este identificador servirá de referência ao longo do arquivo. Por exemplo, temos uma entidade que representa o material de construção Tijolo, e seu ID é #1, quando a entidade parede alvenaria for declarada, o atributo referente ao material do núcleo pode ser configurado para #1, reduzindo assim o tamanho final do arquivo (e também o consumo de memória após a leitura pelo interpretador).

Parte II – Nome da Entidade:

Após o identificador, temos expresso o nome da entidade, representado todo em letras maiúsculas, 

Todas entidades iniciam-se pelo prefixo IFC, justaposto ao seu nome, de acordo com o esquema EXPRESS.

Parte III – Atributos.

Como visto acima, os atributos estão contidos dentro de parênteses, e eles aparecem logo após o nome da entidade. Cada atributo pode conter um ou mais valores, seguindo as regras da simbologia acima.

Literatura Recomendada 

Estes artigos são frutos do conhecimento adquirido por meio da documentação do biildingSMART, disponível neste link, e também da dissertação de mestrado de: PINHO, Sérgio M. F.; com o título de “O MODELO IFC COMO AGENTE DE INTEROPERABILIDADE Aplicação ao domínio das estruturas”, do programa de mestrado da Faculdade de Engenharia da Universidade do Porto, disponível aqui.

O que vem por aí.

Vimos nestes últimos artigos como um arquivo IFC se estrutura, e armazena as informações baseado em entidades. No próximo artigo vamos explorar um outro padrão de arquivo mantido pela buildingSMART, o BCF.

Até lá;

Everton Teles
Arquiteto e Urbanista, reconhece a cidade como a maior invenção humana, e, para melhorar a qualidade de vida nos centros urbanos, acredita que a tecnologia pode trazer a sustentabilidade tão buscada.