SI(([Object.structuralUse*] = 'Vigueta') | ([Object.structuralUse*] = 'Viga'), 'IfcBeam', 'IfcMember')
Si la configuración de Uso estructural del elemento estructural del objeto es Vigueta o Viga, la entidad IFC será IfcBeam; de otra manera, será IfcMember.
ENCONTRAR('Estructural', [Style.Name]) = 0
El Pset de clasificación será adjuntado a la losa si el nombre de Estilo del objeto de losa comienza con “Estructural”.
Escenarios de intercambio de archivos frecuentemente incluyen requerimientos y políticas especificando que ciertos campos de datos no estén vacíos, o que todos los campos de datos deben tener un valor predeterminado. Sólo algunos objetos específicos tienen un valor diferente que serán anulado manualmente. Simplemente incluir una constante al final de la fórmula de asignación de datos para estar seguro que un campo de datos obligatorio siempre contiene un valor.
[Style.Function] ELSE ‘NOTDEFINED’
[Object.VW_Name] ELSE [Style.Name] ELSE ‘Cubierta’
Es buen práctica crear un formato de registro para trabajar un caso con un valor predeterminado para la mayoría de los objetos, pero valores diferentes sólo para algunos objetos específicos, e incluir un valor de campo de registro predeterminado que se convierte en el valor predeterminado del origen de datos. Luego, adjuntar ese registro sólo a los objetos que tendrán los valores específicamente diferentes y cambiar el valor en los registros adjuntos según sea necesario. Objetos sin ningún registro adjuntado recibirán el valor predeterminado y los objetos con ese registre adjuntado recibirán el valor específico.
[Record.Pricing Details.Discount];
Los resultados de una fórmula de asignación de datos muchos veces necesitan ser “mejorados” para mejorar la legibilidad, para agregar un prefijo/sufijo para cumplir con ciertos requerimientos, o para ser combinados o calculados desde orígenes múltiples.
En este ejemplo, se necesita una mejor descripción de una escalera mecánica incluyendo importante información sobre el fabricante y el ancho de escalón. También se quiere agregar algunas palabras para aumentar la legibilidad.
‘Escalera mecánica: ' + [Object.Type] + ' Ancho: ' + [Object.Step width]
Escalera mecánica: Otis 510 M Ancho: 1000 (3' 3")
En otro ejemplo, se necesita establecer que el nombre del objeto de ventana provenga del nombre Vectorworks. Se deben combinar los campos Prefijo de ID, Etiqueta de ID y Sufijo de ID si no existe un nombre Vectorworks. La palabra “Ventana” debe ser usada para identificar la ventana si todos esos parámetros están vacíos.
[Object.VW_Name] ELSE [Object.IDPrefix] + [Object.IDLabel] + [Object.IDSuffix] ELSE 'Ventana'
W-01A1
En este ejemplo, queremos calcular la IfcWindow.OverallHeight en base a las configuraciones de nuestro objeto de ventana.
El parámetro Altura contiene el valor correcto siempre y cuando la ventana no tiene ningún alféizar o, si tiene un alféizar, es un Tipo de alféizar de Ladrillo. En cualquier otra situación, el valor Altura de alféizar (3) debe ser agregado a la Altura de la ventana.
[Object.OverallHeight] + SI([Object.IncludeSill] & ([Object.SillStyle] != 'Ladrillo'),[Object.SillHeight], 0)
2000,0
2150,0
Datos de IFC requieren muchos tipos de campos de datos de “enumeración”. Ejemplos típicos incluyen: PredefinedType, OperationType, ShapeType y así sucesivamente. Algunas veces no existe ninguna correlación uno-a-uno; las configuraciones actuales difieren entre IFC, ningún origen de datos válido puede ser asignado directamente, o los valores están en otro lenguaje.
En este ejemplo, se asignará la lista Operación de bastidor desde la ventana al OperationType requerido del conjunto de datos Panel de ventana IFC.
Para la asignación, se usará una de las funciones selectoras que asigna las entradas en las lista de Operación de bastidor de ventana a un par de parámetros de Panel de ventana IFC (lógico y valor):
SELECT2([Object.SashOperation] = 'Abertura', 'FIXEDCASEMENT',
[Object.SashOperation] = 'Abertura Encamisada', 'FIXEDCASEMENT',
[Object.SashOperation] = 'Vidrio Fijo', 'FIXEDCASEMENT',
[Object.SashOperation] = 'Vidrio Fijo - Sin Bastidor', 'FIXEDCASEMENT',
[Object.SashOperation] = 'Con Vidrio Fijo', 'SLIDINGVERTICAL',
[Object.SashOperation] = 'Dos Hojas Móviles', 'SLIDINGVERTICAL',
[Object.SashOperation] = 'Batiente', 'SIDEHUNGLEFTHAND',
[Object.SashOperation] = 'Batiente En Dos Partes', 'SIDEHUNGLEFTHAND',
[Object.SashOperation] = 'Control Deslizante Horizontal', 'SLIDINGHORIZONTAL',
[Object.SashOperation] = 'Marquesina', 'TOPHUNG',
[Object.SashOperation] = 'Burlete', 'BOTTOMHUNG',
[Object.SashOperation] = 'Inclinación/Giro', 'TILTANDTURNLEFTHAND',
[Object.SashOperation] = 'Pivote Vertical', 'PIVOTVERTICAL')
ELSE 'NOTDEFINED'
Símbolos y geometría personalizada deben tener datos de IFC adjuntos para ser exportados. Sus asignaciones de datos de IFC se basan en las configuraciones de sus tipos de entidad IFC designados.
En el cuadro de diálogo Asignación de datos IFC se agrega Pset_ColumnCommon y se asigna el campo Referencia al nombre de clase del objeto. También se agregan valores fijos (VERDADERO) para IsExternal y LoadBearing.
Al seleccionar el comando Datos IFC y seleccionar IfcColumn, se puede ver cómo funciona la asignación nueva:
Para símbolos, otra opción puede ser usada para especificar la asignación de datos además de usar asignación para sus designaciones IFC —usar el nombre del símbolo. El nombre del símbolo puede ser agregado y luego se puede definir la designación IFC (haciendo clic en Cambiar asignación) y los Psets que se desea exportar (haciendo clic en Agregar). Por ejemplo, agregamos Pset_ManufacturerTypeInformation y luego asignamos todos los campos a valores fijos ya que son los mismos para todas las instancias de este símbolo.
Ahora, sin siquiera fijar datos de IFC a la definición de símbolo o a ninguna instancia de símbolo, el símbolo es exportado como un IfcFurnishingElement con Pset_ManufacturerTypeInformation. Podemos ver la asignación predeterminada y los datos que serán exportados abriendo el cuadro de diálogo Datos de IFC y haciendo clic en OK después de verificar el IfcFurnishingElement sugerido.
~~~~~~~~~~~~~~~~~~~~~~~~~