En ny eksport av Nordhusstykket 5 viste hva mer modellen kan bære, og avdekket feil. Posisjon og klimasted - IfcMapConversion med IfcProjectedCRS gjøres om til breddegrad og lengdegrad. EUREF89 og WGS 84 UTM, NN2000-varianter og Web Mercator forstås. Omregningen er kontrollert mot PROJ. - Vectorworks' standardplassering i Washington, som står når ingenting er satt, kjennes igjen og brukes ikke. - Ny `posisjon` under [klima]. Uten kommune velger beregningen nærmeste av de 358 klimastedene i TMY-arkivet, og sier i rapporten hvor langt unna det ligger. Opplysninger fra modellen - Adressen hentes fra IfcBuilding eller IfcSite. Før ble den første postadressen i filen brukt, og det var firmaets adresse i forfatteropplysningene. - Energirådgiver fra person og organisasjon i forfatteropplysningene. - Byggets navn fra prosjektet når bygningen heter «Default Building». - Referansehøyde og terrenghøyde på bygningen gir hvor mye av grunnmuren som står over bakken. - IsLandmarked gir en merknad om at vernede bygninger er unntatt energiattestplikten. En eksport uten bygningsdeler stopper nå med en feilmelding som peker på lagtilknytningen i eksportdialogen, i stedet for å skrive en tom bygning. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015GeH3y8fwTaTudaD88P57o
31 lines
811 B
Rust
31 lines
811 B
Rust
//! Kontroll av valg av klimasted. Testene bruker TMY-arkivet og laster det ned ved første kjøring.
|
|
|
|
use enok::data::normaliser_stedsnavn;
|
|
use enok::klima::geo::Posisjon;
|
|
use enok::klima::tmy::naermeste_kommune;
|
|
|
|
#[test]
|
|
fn naermeste_klimasted_for_tomter_er_indre_ostfold() {
|
|
let (kommune, km) = naermeste_kommune(&Posisjon {
|
|
bredde: 59.63,
|
|
lengde: 11.01,
|
|
})
|
|
.unwrap();
|
|
assert_eq!(
|
|
normaliser_stedsnavn(&kommune),
|
|
"indreostfold",
|
|
"fikk {kommune}"
|
|
);
|
|
assert!(km < 25.0, "{km} km");
|
|
}
|
|
|
|
#[test]
|
|
fn naermeste_klimasted_for_oslo_raadhus_er_oslo() {
|
|
let (kommune, _) = naermeste_kommune(&Posisjon {
|
|
bredde: 59.9115,
|
|
lengde: 10.7336,
|
|
})
|
|
.unwrap();
|
|
assert_eq!(normaliser_stedsnavn(&kommune), "oslo", "fikk {kommune}");
|
|
}
|