[−][src]Struct hulc2envolventecte::parsers::bdl::Wall
Cerramiento exterior o interior Puede definirse su configuración geométrica por polígono o por localización respecto al espacio padre.
Fields
name: String
Nombre
space: String
Espacio en al que pertenece el cerramiento
cons: String
Definición de la composición de capas del cerramiento Incialmente contiene un elemento CONSTRUCTION y se sustituye en el postproceso por LAYERS
location: Option<String>
Posición respecto al espacio asociado (TOP, BOTTOM, nombreespacio)
tilt: f32
Inclinación (grados sexagesimales) Ángulo entre el eje Z y la normal exterior del muro
geometry: Option<WallGeometry>
Posición definida por polígono
bounds: BoundaryType
Tipos de cerramiento:
- UNDERGROUND: cerramiento en contacto con el terreno (UNDERGROUND-WALL)
- EXTERIOR: cerramiento en contacto con el aire exterior (EXTERIOR-WALL, ROOF)
- INTERIOR: cerramiento interior entre dos espacios (STANDARD en BDL)
- ADIABATIC: cerramiento que no conduce calor (a otro espacio) pero lo almacena Existen otros tipos en BDL pero HULC no los admite:
- INTERNAL: cerramiento interior a un espacio (no comunica espacios)
- AIR: superficie interior a un espacio, sin masa, pero que admite convección
nextto: Option<String>
Espacio adyacente que conecta con el espacio padre (solo en algunos tipos de cerramientos interiores (no adiabático o superficie interior))
Implementations
impl Wall
[src]
pub fn gross_area(&self, db: &Data) -> Result<f32, Error>
[src]
Superficie bruta (incluyendo huecos) del muro (m2)
TODO: la búsqueda de polígonos y espacios no es óptima (se podría cachear)
pub fn net_area(&self, db: &Data) -> Result<f32, Error>
[src]
Superficie neta (sin huecos) del cerramiento (m2)
pub fn perimeter(&self, db: &Data) -> Result<f32, Error>
[src]
Perímetro del cerramiento (m)
pub fn azimuth(&self, northangle: f32, db: &Data) -> Result<f32, Error>
[src]
Azimut, ángulo del muro respecto al norte (grados sexagesimales)
Ángulo entre el eje Y del espacio y la proyección horizontal de la normal exterior del muro Se puede indicar una desviación del norte geográfico respecto al geométrico (northangle)
Se calcula:
- Los elementos horizontales se definen con azimut igual a 0.0
- Los elementos definidos por geometría ya tiene definido su azimut
- Los elementos definidos por vértice de polígono del espacio consultan el azimuth del polígono del espacio
pub fn position(&self) -> Tilt
[src]
Posición del elemento (TOP, BOTTOM, SIDE) según su inclinación Los elementos con inclinación > 60º Con la horizontal son verticales.
Trait Implementations
impl Clone for Wall
[src]
impl Debug for Wall
[src]
impl Default for Wall
[src]
impl TryFrom<BdlBlock> for Wall
[src]
type Error = Error
The type returned in the event of a conversion error.
pub fn try_from(value: BdlBlock) -> Result<Self, Self::Error>
[src]
Conversión de bloque BDL a cerramiento (cerramiento exterior, interior, cubierta o elemento en contacto con el terreno)
Ejemplos en BDL de EXTERIOR-WALL y ROOF:
"P01_E02_PE006" = EXTERIOR-WALL
ABSORPTANCE = 0.6
COMPROBAR-REQUISITOS-MINIMOS = YES
TYPE_ABSORPTANCE = 1
COLOR_ABSORPTANCE = 0
DEGREE_ABSORPTANCE = 2
CONSTRUCCION_MURO = "muro_opaco"
CONSTRUCTION = "muro_opaco0.60"
LOCATION = SPACE-V11
..
"P02_E01_FE001" = EXTERIOR-WALL
ABSORPTANCE = 0.95
COMPROBAR-REQUISITOS-MINIMOS = YES
TYPE_ABSORPTANCE = 0
COLOR_ABSORPTANCE = 7
DEGREE_ABSORPTANCE = 2
CONSTRUCCION_MURO = "muro_opaco"
CONSTRUCTION = "muro_opaco0.95"
X = -49.0098
Y = 0
Z = 0
AZIMUTH = 90
TILT = 180
POLYGON = "P02_E01_FE001_Poligono3"
..
"P03_E01_CUB001" = ROOF
ABSORPTANCE = 0.6
COMPROBAR-REQUISITOS-MINIMOS = YES
TYPE_ABSORPTANCE = 0
COLOR_ABSORPTANCE = 0
DEGREE_ABSORPTANCE = 2
CONSTRUCTION = "SATE"
X = 2.496
Y = -4.888
Z = 3
AZIMUTH = 180
LOCATION = TOP
POLYGON = "P03_E01_FE004_Poligono3"
..
"P03_E01_CUB001" = ROOF
ABSORPTANCE = 0.6
COMPROBAR-REQUISITOS-MINIMOS = YES
TYPE_ABSORPTANCE = 0
COLOR_ABSORPTANCE = 0
DEGREE_ABSORPTANCE = 2
CONSTRUCTION = "cubierta"
LOCATION = TOP
..
XXX: atributos no trasladados: XXX: propiedades para definir el estado de la interfaz para la selección de la absortividad: XXX: TYPE_ABSORPTANCE, COLOR_ABSORPTANCE, DEGREE_ABSORPTANCE XXX: Atributos no trasladados: COMPROBAR-REQUISITOS-MINIMOS, CONSTRUCCION_MURO
Ejemplos en BDL de INTERIOR-WALL:
"P01_E02_Med001" = INTERIOR-WALL
INT-WALL-TYPE = STANDARD
NEXT-TO = "P01_E07"
COMPROBAR-REQUISITOS-MINIMOS = NO
CONSTRUCTION = "tabique"
LOCATION = SPACE-V1
..
"P02_E01_FI002" = INTERIOR-WALL
INT-WALL-TYPE = STANDARD
NEXT-TO = "P01_E04"
COMPROBAR-REQUISITOS-MINIMOS = NO
CONSTRUCTION = "forjado_interior"
X = -38.33
Y = 3.63
Z = 0
AZIMUTH = 90
TILT = 180
POLYGON = "P02_E01_FI002_Poligono2"
..
XXX: atributos no trasladados: Ninguno
Ejemplos en BDL de UNDERGROUND-WALL:
"P01_E01_FTER001" = UNDERGROUND-WALL
Z-GROUND = 0
COMPROBAR-REQUISITOS-MINIMOS = YES
CONSTRUCTION = "solera tipo"
LOCATION = BOTTOM
AREA = 418.4805
PERIMETRO = 65.25978
..
"solera tipo" = CONSTRUCTION
TYPE = LAYERS
LAYERS = "solera tipo"
..
XXX: No se han trasladado las variables de AREA y PERIMETRO porque se pueden calcular y los valores comprobados en algunos archivos no son correctos XXX: Ignoramos "Z-GROUND", la profundidad del elemento en el terreno, ya que no es del BDL y es menos fiable que min(space.z, 0.0)
Auto Trait Implementations
impl RefUnwindSafe for Wall
[src]
impl Send for Wall
[src]
impl Sync for Wall
[src]
impl Unpin for Wall
[src]
impl UnwindSafe for Wall
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,