Propiedades en IFC

Comparte esta noticia en:

Facebook
Twitter
LinkedIn
WhatsApp

Industry Foundation Classes (IFC), como habrá leído en otra parte de este blog o en Internet en general, es un estándar que hace que sea mucho más fácil compartir datos entre diferentes partes de un proyecto. Este es un esquema de datos universal diseñado para optimizar la transferencia de información del proyecto entre diferentes sistemas.

En este artículo nos centraremos en analizar diferentes tipos de inmuebles. Además, los veremos con más detalle e intentaremos responder la pregunta de cuál de ellos debe elegirse para almacenar información en su proyecto.

¿Cuales son las propiedades del IFC?

En el estándar IFC (Industry Foundation Classes), cada objeto BIM (Building Information Model) se asigna a una clase específica (Entidad), y cada clase tiene sus propios atributos. Ejemplos de atributos incluyen nombre, descripción, tipo predefinido, tipo de objeto y etiqueta. Aunque estos atributos ayudan a identificar un objeto, a menudo no son suficientes para proporcionar una descripción completa.

Las propiedades se utilizan para caracterizar objetos con mayor precisión. Las propiedades pueden tomar diferentes valores y están representadas por diferentes tipos de datos. Las propiedades pueden ser variadas y cubrir parámetros tanto básicos como más complejos.

Un grupo de propiedades con características similares se denomina conjunto de propiedades. El estándar IFC ofrece conjuntos predefinidos de propiedades, marcados con el prefijo Pset_.

Hay 645 conjuntos de propiedades disponibles en el estándar IFC 4×3. Estos conjuntos de estándares están disponibles para diferentes industrias, fases de proyectos o tipos de partes interesadas.

Entérate más de la lista «Psets» aqui.

Asociar propiedades con un objeto

Técnicamente hablando, los objetos están asociados con conjuntos de propiedades («Psets»), en lugar de directamente con propiedades individuales. Esto significa que cada propiedad, incluso si solo hay una, debe ser parte de un conjunto de propiedades.

Si está familiarizado con el diagrama IFC, sabrá que además de objetos y propiedades, también existen relaciones. Las relaciones se utilizan para conectar objetos con objetos, objetos con clasificaciones y objetos con materiales. En este caso, no todo es diferente.

La relación ifcRelDefinesByProperties se utiliza para vincular un objeto a un conjunto de propiedades.

Asociar propiedades a un objeto IFC

Los tipos de propiedades

Un conjunto de propiedades puede contener varios tipos de propiedades, cada una de las cuales puede tener diferentes tipos de datos. Pero veamos esto. Aquí hay una breve descripción de cada tipo de propiedad:

IfcPropertySingleValue

  • Un valor de propiedad.
  • Puede aceptar varios tipos de datos para valores individuales, como números, cadenas (texto), fechas, etc.
  • Ejemplo: una propiedad denominada “Peso” con un valor numérico de 100,2 kg
/* Name, Specification, NominalValue, Unit */
#116 = IFCPROPERTYSINGLEVALUE('WEIGHT', $, IFCREAL('100.2'), $);

IfcPropertyBoundedValue

  • Un valor de propiedad con límites especificados.
  • A menudo se utiliza para describir propiedades que tienen restricciones, como un rango de valores.
  • Ejemplo: Propiedad “Área” con un valor entre 100 y 250 metros cuadrados.
/* Name, Specification, UpperBoundValue, LowerBoundValue, Unit, SetPointValue */
#132 = IFCPROPERTYBOUNDEDVALUE('AREA', $, IFCINTEGER('250'), IFCINTEGER('150'), #140, $);

/* Dimensions, UnitType, Prefix, Name */
#140 = IFCSIUNIT(*,.AREAUNIT., $,.SQUARE_METRE.);

IfcPropertyEnumeratedValue

  • Una propiedad que puede tomar uno de un conjunto limitado de valores.
  • Se aplica cuando la propiedad se puede asignar a una de las opciones predefinidas.
  • Ejemplo: Propiedad “Color” con opciones: rojo, azul, verde
/* Name, Specification, EnumerationValues, EnumerantionReference */
#133 = IFCPROPERTYENUMERATEDVALUE('COLOR', $, (IFCLABEL('RED')), #134);

/* Name, EnumerationValues, Unit */
#134 = IFCPROPERTYENUMERATION('ePENUM_COLOR', (IFCLABEL('RED'), IFCLABEL('GREEN'), IFCLABEL('BLUE')), $);

IfcPropertyListValue

  • Un valor de propiedad representado como una lista.
  • Puede contener varios tipos de datos en forma de lista.
  • Ejemplo: Propiedad «Materiales» como una lista que contiene madera, acero, concreto.
/* Name, Specification, ListValues, Unit */
#135 = IFCPROPERTYLISTVALUE('MATERIAL_LIST', $, (IFCLABEL('WOOD'), IFCLABEL('STEEL'), IFCLABEL('CONCRETE')), $);

IfcPropertyReferenceValue

  • Un valor de propiedad representado como una referencia a otro objeto o entidad.
  • A menudo se utiliza cuando la propiedad está asociada con otro objeto en el modelo de datos.
  • Ejemplo: Propiedad “Material” como referencia a un objeto que representa el tipo de material.
/* Name, Specification, UsageName, PropertyReference */
#136 = IFCPROPERTYREFERENCEVALUE('MATERIAL_NAME', $, $, #139);

/* Name, Description, Category */
#139 = IFCMATERIAL('Brick',$,$);

IfcPropertyTableValue

  • Una propiedad organizada en forma tabular.
  • Se utiliza cuando la propiedad requiere una estructura tabular para su descripción.
  • Ejemplo: Tabla con las propiedades químicas de diversas sustancias.
/* Name, DefiningValues, DefinedValues, Expression, DefiningUnit, DefinedUnit, CurveInterpolation */
#137 = IFCPROPERTYTABLEVALUE('TABLE', $, (IFCLABEL('Property1'),IFCLABEL('Property2')), (IFCTEXT('Value1'),IFCTEXT('Value2')), $, $, $, $);

Tipos de propiedad IFC

Tipos de valor

Ahora comprenda que existen varios tipos de propiedades y estas propiedades se combinan en colecciones que se asocian con cada objeto a través de la relación ifcRelDefinesByProperties.

Pasamos ahora a describir los tipos de datos, que son parte integral de cada propiedad. Distinguimos tres grupos principales de valores: IfcSimpleValue, IfcMeasureValue e IfcDerivedMeasureValue.

Distinguimos los siguientes tipos de datos (IfcSimpleValue, IFC 4×3):

  • IfcEntero :
    • Definición: tipo de datos que representa números enteros sin decimales.
    • Ejemplo: se puede utilizar para especificar el número de pisos de un edificio.
  • IfcReal :
    • Definición: Tipo de datos que representa números reales, permitiendo decimales.
    • Ejemplo: se utiliza para especificar dimensiones precisas de elementos de construcción, como la longitud de las paredes.
  • IfcBooleano :
    • Definición: tipo de datos que representa valores lógicos, como verdadero/falso.
    • Ejemplo: se puede utilizar para determinar un estado, por ejemplo, si las puertas están cerradas (verdadero) o abiertas (falso).
  • IfcLógico :
    • Definición: tipo de datos que representa valores lógicos, similar a IfcBoolean.
    • Ejemplo: Aplicado para representar condiciones lógicas en las especificaciones del proyecto, por ejemplo, si un material es resistente al fuego (verdadero) o no (falso).
  • Identificador Ifc :
    • Definición: Tipo de datos que representa cadenas de caracteres utilizadas con fines de identificación.
    • Ejemplo: se puede utilizar para asignar identificadores únicos a elementos de construcción individuales.
  • Etiqueta Ifc :
    • Definición: tipo de datos que representa cadenas de caracteres utilizadas con fines de denominación.
    • Ejemplo: se utiliza para dar nombres legibles a elementos, por ejemplo, «Muro principal».
  • Texto Ifc :
    • Definición: tipo de datos que representa cadenas de caracteres utilizadas con fines descriptivos.
    • Ejemplo: se utiliza para proporcionar información descriptiva adicional sobre un elemento de construcción específico.
  • IfcFechaHora :
    • Definición: tipo de datos que representa fecha y hora.
    • Ejemplo: Se utiliza para determinar el momento en el tiempo en que se tomó una medida de construcción específica.
  • IfcFecha :
    • Definición: tipo de datos que representa información de fecha.
    • Ejemplo: se puede utilizar para especificar la fecha de inicio de la construcción de un objeto en particular.
  • Hora Ifc :
    • Definición: tipo de datos que representa información de tiempo.
    • Ejemplo: se utiliza para determinar la duración de una fase de construcción específica, por ejemplo, el tiempo necesario para completar los cimientos.
  • IfcDuración :
    • Definición: Tipo de datos que representa un período de tiempo o un intervalo de tiempo.
    • Ejemplo: Se aplica para especificar la duración de todo el proyecto de construcción.
  • IfcTimeStamp :
    • Definición: tipo de datos que representa un momento en el tiempo, contado en segundos desde 1970.
    • Ejemplo: se puede utilizar para representar la fecha y hora de la última actualización del modelo 3D.
  • Referencia IfcURI :
    • Definición: tipo de datos que representa una cadena de caracteres única que identifica un recurso lógico o físico utilizado en las tecnologías de Internet.
    • Ejemplo: se utiliza para hacer referencia a materiales externos, como especificaciones técnicas almacenadas en línea.

Selecciona de propiedades y tipos de valores

La diversidad de propiedades y tipos de datos en el entorno BIM es innegable. Sin embargo, en la práctica sólo se utiliza una parte seleccionada de esta amplia gama. Además, ciertos tipos de propiedades encuentran dificultades debido a la falta de soporte de los navegadores IFC, lo que limita efectivamente su aplicación práctica. Ejemplos de propiedades con las que los navegadores IFC tienen problemas son IfcPropertyBoundedValue e IfcPropertyTableValue.

Sin duda, ifcPropertySingleValue es el rey de las propiedades. Su fácil implementación y soporte para todas las herramientas de trabajo de IFC lo convierten en la base para un trabajo efectivo tanto en la creación como en la edición de modelos BIM.

Una situación similar ocurre con los tipos de datos. No todos son muy utilizados y los más consolidados son los básicos incluidos en el estándar IFC 2×3. Nos referimos a ifcInteger, ifcReal, ifcLabel, ifcText e ifcBoolean. Al utilizar estos tipos de datos críticos, podemos estar seguros de que varias herramientas interpretan correctamente nuestra información.

Respondiendo a la pregunta planteada al principio del artículo sobre cómo recopilamos nuestra información BIM utilizando el estándar IFC, estoy convencido de que esta combinación no solo garantiza el cumplimiento de nuestros datos con el estándar, sino también un fácil acceso y legibilidad garantizados en cada herramienta. . que soporta el formato IFC.

¿Cómo agrego propiedades a un objeto?

Ahora, en la parte práctica del artículo, presentaré una forma sencilla de agregar información a un modelo sin necesidad de programas o lenguajes de programación costosos. Esto es particularmente útil cuando queremos agregar una pequeña cantidad de propiedades a un objeto específico, como por ejemplo: por ejemplo, ifcBuildingElementProxy, o si queremos complementar el conjunto de propiedades de los objetos espaciales, por ejemplo: ifcRoad, ifcSite o ifcRailway.

Como aprendimos en la parte anterior del artículo, para poder asociar un objeto con propiedades, que a su vez deben estar vinculadas al objeto a través de una relación, la propiedad debe ser parte de un conjunto.

Comencemos especificando qué propiedades queremos agregar a nuestro proyecto y qué valores representan. En este caso utilizo un conjunto de propiedades que consta de:

  1. Autor: Marcin Pszczółka (String)
  2. Nombre del blog: BIMCORNER (String)
  3. Título del artículo: Propiedades en IFC (String)
  4. Número de artículo: 201 (Number)

Dadas estas propiedades, necesitamos crear un conjunto de propiedades llamado «Común». Este conjunto debe tener un identificador único, una referencia de propiedad (#112, #113, #114, #115) y una referencia de relación. El conjunto de propiedades se encuentra en la línea #111 (STEP ID).

Para asociar un objeto con un conjunto de propiedades, usaremos la asociación ifcRelDefinesProperties, que en nuestro caso está en la línea #110 (STEP ID). Luego encontramos el objeto al que queremos asignar propiedades. En mi caso, el objeto correspondiente está en la línea #109 (STEP ID).

Puede ver que al comprender los principios básicos, podemos conectar fácilmente estos elementos.

A continuación se muestra un ejemplo completo que detalla cómo agregar información a un objeto.

/* GlobalId, OwnerHistory, Name, Description, ObjectType, ObjectPlacement, Representation, Tag, PredefinedType */
#109 = IFCBUILDINGELEMENTPROXY('1M06J4V4v2wOkLDqTQEOYI', #6, 'TopSurface', $, 'PROXYOBJECT', #20, #122, $, 'USERDEFINED');

/* GlobalId, OwnerHistory, Name, Description, RelatedObjects, RelatingPropertyDefinition */
#110 = IFCRELDEFINESBYPROPERTIES('0rqbV$QVbEXuK__P05wmBy', #6, $, $, (#109), #111);

/* GlobalId, OwnerHistory, Name, Description, HasProperties */
#111 = IFCPROPERTYSET('3oOx18zQXElPN3IlOR6gau', #6, 'Common', $, (#112, #113, #114, #115));

/* Name, Specification, NominalValue, Unit */
#112 = IFCPROPERTYSINGLEVALUE('Blog name', $, IFCLABEL('BIMCORNER'), $);
#113 = IFCPROPERTYSINGLEVALUE('Author', $, IFCTEXT('Marcin Pszczolka'), $);
#114 = IFCPROPERTYSINGLEVALUE('Title of article', $, IFCTEXT('Properties in IFC'), $);
#115 = IFCPROPERTYSINGLEVALUE('Number of article', $, IFCREAL('201'), $);

propiedades el IFC interfaz

Resumen

Como puedes leer más arriba, en este artículo analizo en profundidad las propiedades de los estándares IFC para proyectos BIM.

Entonces, en resumen, en IFC, a cada objeto se le asigna una propiedad y el estándar ofrece varios tipos, como ifcPropertySingleValue o ifcPropertyEnumeatedValue.

En la práctica, recomiendo usar ifcPropertySingleValue y tipos de datos básicos, como IfcInteger, IfcLabel o IfcText, debido a su simplicidad y soporte en las herramientas IFC.

En conclusión, espero que este artículo proporcione una nueva perspectiva sobre la propiedad en IFC, enfatizando los aspectos prácticos de agregar información a un modelo BIM.

Fuente:

Marcin Pszczolka de bimcorner.com

Deja un comentario

También puede interesarte:

redaccion

¿Tienes contenido de valor para nuestro BLOG?

Se parte de nuestro equipo de redactores y disfruta de muchos beneficios.
Gana visibilidad en el mundo de la ingeniería en nuestro BLOG.
                                               ¡Postula ahora!

Artículo añadido al carrito.
0 artículos - S/ 0.00

Nueva Norma IS.010

"Instalaciones Sanitarias en Edificaciones con CYPEPLUMBING"

Regístrate y Descarga e-book

PROMOCIÓN VALIDA HASTA FIN DE AÑO

X