A case-based reasoning approach to the designing of building envelopes