Diferenças entre edições de "Codificação usando entidades IFC"

Da wiki WIQI GEQUALTEC
Ir para: navegação, pesquisa
Linha 31: Linha 31:
 
[http://www.buildingsmart-tech.org/ifc/IFC4/final/html/annex/annex-b/alphabeticalorder_entities.htm buildingSMART Entities]
 
[http://www.buildingsmart-tech.org/ifc/IFC4/final/html/annex/annex-b/alphabeticalorder_entities.htm buildingSMART Entities]
  
[[Ficheiro:Organização de uma entidade.png|thumb|center|800px|Organização de uma entidade <ref name="Nour"> Nour, M. Construction Product Data and Building Information Models: VDM Publishing. (2008).</ref>]]
+
[[Ficheiro:Organização de uma entidade.png|thumb|center|800px|Organização de uma entidade.png <ref name="Nour"> Nour, M. Construction Product Data and Building Information Models: VDM Publishing. (2008).</ref>]]
  
  
Linha 38: Linha 38:
 
----
 
----
  
[[Codificação usando entidades IFC: Exemplo 1|Exemplo 1]]
+
[[Codificação usando entidades IFC: Exemplo 1|Simbologia Usada]]
  
 
[[Codificação usando entidades IFC: Exemplo 2|Exemplo 2]]
 
[[Codificação usando entidades IFC: Exemplo 2|Exemplo 2]]
Linha 44: Linha 44:
 
(under construction)
 
(under construction)
  
 
== Keywords ==
 
 
BIM, IFC, Interoperability, Information management, Structures.
 
  
 
== Referências Bibliográficas ==
 
== Referências Bibliográficas ==
 
<references/>
 
<references/>
  
== Ligações internas ==
 
 
* [[BIM|BIM]]
 
* [[interoperabilidade|Interoperabilidade]]
 
* [[Industry Foundation Classes|IFC]]
 
* [[O Modelo IFC Como Agente de Interoperabilidade]]
 
 
== Ligações externas ==
 
 
* [http://www.slideshare.net/sparoes/apresentao-dissertao-srgio-pinho-o-modelo-ifc-como-agente-de-interoperabilidade apresentação da tese no Slideshare]
 
* [http://www.joaorio.com/2013/ifc-interoperabilidade-bim-estruturas/ post no sítio do João Rio]
 
 
[[Categoria:BIM]]
 
[[Categoria:IFC]]
 
[[Categoria:BIM]]
 
[[Categoria:IFC]]
 
[[Categoria:BIM]]
 
[[Categoria:IFC]]
 
[[Categoria:BIM]]
 
[[Categoria:IFC]]
 
 
[[Categoria:BIM]]
 
[[Categoria:BIM]]
 
[[Categoria:IFC]]
 
[[Categoria:IFC]]
 
[[Categoria:BIM]]
 
[[Categoria:BIM]]
 
[[Categoria:IFC]]
 
[[Categoria:IFC]]

Revisão das 13h13min de 23 de outubro de 2013

O recurso à codificação usando Industry Foundation Classes (IFC) poderá constituir um importante meio para a melhoria das condições de interoperabilidade, permitindo também a automação de sistemas entre outras aplicações. O formato IFC usa um arquivo de texto simples, já que este formato é o único formato de dados digital verdadeiramente universal, dando origem a ficheiros com a extensão “*.txt”, “*.ifc” ou “*.ifcXML”

Quando se trabalha directamente com o esquema EXPRESS numa ferramenta de edição de texto, é inevitável falar-se em entidades (ou classes), pois no domínio IFC são as entidades que definem os comandos e acções capazes de criar informação que capta e descreve a indústria AEC/FM (Architecture, Engineering and Construction /Facility Management).



Descrição Semântica de IFC

Enquanto linguagem, o IFC usa um conjunto de expressões formadas de acordo com um conjunto de regras, o que define a gramática. Conhecendo-se os requisitos gramaticais, o conjunto de regras é inesgotável, permitindo que a partir do conceito teórico uma linguagem tenha a sua própria composição e definição estrutural pelo arranjo dos seus componentes, formando uma sequência de informação inteligível. No domínio da linguagem de programação, a descrição de como a linguagem é composta e quais são os seus constituintes é definida pela sua sintaxe e semântica, isto é, pelas regras de construção de frases e seu significado, que devem ser especificadas com precisão. A sintaxe é vista como uma compilação livre de contexto, sendo a semântica incumbida de optimizar o código e fazer a verificação dos tipos. A semântica de uma linguagem de programação e o seu mapeamento é compilada pelo Homem, criando o que se designa muitas vezes por linguagem de código (ou apenas código), cuja finalidade é a execução computacional, com especial vocação para a repetição e sistematização de acções [1].

No caso da linguagem utilizada pelo padrão IFC, o desenvolvimento e manutenção fica a cargo do “Model Support Group” (MSG), grupo implementado pela BuildingSMART. Para que uma linguagem permita a comunicação entre o emissor e o receptor, ambos devem comunicar da mesma forma, na medida em que o receptor seja capaz de reproduzir com exactidão as informações que lhe foram emitidas. Aplicando estes conceitos ao caso de estudo em causa, poder-se-á dizer que quando o emissor e o receptor não comunicam na mesma linguagem, o IFC funciona como tradutor, permitindo um entendimento entre a fonte e o destino. Esta é a finalidade que fomenta o IFC, a possibilidade de troca de informação por meio de uma linguagem comum [2].


Estrutura Interna de um Ficheiro IFC

Estrutura tipo de um ficheiro STEP [3]

Na codificação de um ficheiro IFC em formato de texto, a primeira linha e última linha de todos os arquivos IFC devem identificar a norma ISO 10303 cujo objectivo é estabelecer procedimentos e linguagem padrão para representação, interpretação e troca de informação, sendo que a primeira linha deve conter a referência “ISO-10303-21” e a última a referência “END-ISO-10303-21”. Esta referência evidência o formato de um arquivo STEP definido segundo a ISO 10303-21:2002, onde o formato de troca de dados STEP mais utilizado é o STEP-File, que devido à sua estrutura ASCII é fácil de ler com tipicamente uma instância por linha. Denote-se ainda que a ISO 10303-21 define o mecanismo de codificação na forma de representar os dados de acordo com um determinado esquema EXPRESS, padrão de linguagem para modelação de dados, baseando-se no EXPRESS mas constituindo uma variante [4].

O corpo de um arquivo que segue esta norma é dividido em duas secções, a secção “HEADER” e a secção “DATA”. Para se dar como concluída cada uma destas secções é usada uma string com o comando “ENDSEC;”.

HEADER

A secção HEADER tem uma estrutura fixa, podendo ser constituída por 6 grupos, sendo que todas as estruturas de troca devem conter os grupos “FILE_DESCRIPTION”, “FILE_NAME”, “FILE_SCHEMA” e devem aparecer na ordem pela qual serão abaixo descritos. Instâncias dos grupos “FILE_POPULATION”, “SECTION_LANGUAGE” e “SECTION_CONTEXT” podem aparecer depois do “FILE_SCHEMA” apenas em arquivos de segunda edição. Nesta secção todos os campos podem incluir strings vazias, excepto o grupo “FILE_SCHEMA” e os dados no campo “time_stamp” que está incluído no grupo "FILE_NAME” [4].

DATA

A secção DATA contém dados de aplicativos de acordo com um esquema EXPRESS específico, é nesta secção que as entidades são atribuídas ao ficheiro IFC. A sequência pela qual as entidades aparecem descriminadas na construção de um dado texto em código não corresponde obrigatoriamente à ordem pela qual serão identificadas pelo programa destino, isto significa que, em duas linhas de código consecutivas, a segunda string não tem necessariamente que depender ou ter alguma relação com a primeira. O IFC é um sistema de digitação solto que fornece múltiplos caminhos para introdução de objectos e não segue uma orientação específica, permitindo a criação de vários encadeamentos lógicos, dando assim grande flexibilidade e suporte a múltiplas representações


Definição de Entidade

Entidade (ou classe) define um conjunto de informação definida por atributos e restrições. Uma entidade tem uma estrutura bastante própria. É reconhecida no ficheiro IFC pelo seu identificador único que deve ser um número inteiro positivo (> 0), na forma “#número”. A finalidade e função dessa entidade é identificada pelo seu nome, que é representado por letras maiúsculas no código IFC. Repare-se que o nome dessa entidade é apenas válido dentro desse ficheiro IFC, pois se o conteúdo deste for exportado para um novo sistema, mesmo que não se efectuem quaisquer alterações, ao voltar-se a exportar o ficheiro para o IFC a partir desse sistema, verifica-se que o código do ficheiro é alterado, ou seja, há uma alteração e modificação das entidades para as mesmas instâncias. O nome da instância é usado também para referenciar outras entidades através de valores atribuídos ou membros agregados (atributo inverso), sendo que a instância referenciada poderá ser definida antes ou depois da instância onde é referida. Por fim as definições de atributos atribuem características à entidade IFC em causa. Os valores e definições desses atributos variam de entidade para entidade, pois definem parâmetros próprios para cada uma das diferentes entidades. Como já foi referido, esses parâmetros são definidos a priori pelo MSG (Model Support Group). Uma lista completa das entidades existentes, com links individuais que fazem a respectiva ligação à página que especifica a função, construção e relações de cada entidade pode ser encontrada em: buildingSMART Entities

Organização de uma entidade.png [3]


Exemplos Práticos

Nota: Os conteúdos apresentados são reforçados com base em exemplo práticos, para informações mais especificas deve ser consultada a seguinte referência bibliográfica: [5].


Simbologia Usada

Exemplo 2

(under construction)


Referências Bibliográficas

  1. Gunter, C.A. Semantics of programming languages: structures and techniques: London (1992).
  2. Pazlar, Tomaz, and Ziga Turk. "Interoperability in practice: Geometric data exchange using the IFC standard." Electronic Journal of Information Technology in Construction no. 13:362-380. (2008).
  3. 3,0 3,1 Nour, M. Construction Product Data and Building Information Models: VDM Publishing. (2008).
  4. 4,0 4,1 ISO. ISO 10303-21:2002. In Part 21: Implementation methods: Clear text encodind of the exchange structure. (2002).
  5. S. Pinho, “O Modelo IFC como agente de interoperabilidade: Aplicação ao domínio das estruturas,” Universidade do Porto - Faculdade de Engenharia, 2013.