Thijser
Thijser

Reputation: 2633

How to see if a door faces outside

I'm working on a pathfinding program in revit. In order to get this to work I need to know what doors face the outside, in order to find this I have several ideas but am unsure how to get any of them done.

1 something with topolegy and looking at how close the topolegy is to the door, anyone know if this can be done?

2 something with looking at every wall and every door, won't this be slow?

3 some secret property I have yet to find in doors.

Upvotes: 0

Views: 599

Answers (2)

Jeremy Tammik
Jeremy Tammik

Reputation: 8294

Matt is absolutely right, as always.

Here are some additional ideas, just skimming the help for for 'exterior':

The door host is normally a wall.

You can find out all kind of things from the wall.

Here are some of them, from more complex aspects via energy analysis to the super simple wall side enumeration property, which is probably the easiest thing to go for:

ConstructionType Enumeration

  • ExteriorWall An exterior wall surrounding the space
  • InteriorWall An interior wall surrounding the space

EnergyAnalysisSurface SurfaceName Property

  • E = Exposure - exterior/interior/underground [E/I/U].

WallFunction Enumeration

  • Interior An interior wall.
  • Exterior An exterior wall.
  • Foundation A foundation wall.
  • Retaining A retaining wall.
  • Soffit A soffit wall.
  • Coreshaft A coreshaft wall.

WallSide Enumeration

  • Exterior The exterior of the wall.
  • Interior The interior of the wall.

Here are some discussions on The Building Coder going into more detail:

Be aware that some of these properties depend on correct modelling.

The user can create a crappy model and nothing will work.

Upvotes: 1

Matt
Matt

Reputation: 1096

I would say that it depends on whether you can demand specific "IsExterior" kind of parameters be applied to the door (or not). Obviously that approach would work.

Beyond that, the other approaches might be:

  • You can look at the Door.FromRoom and Door.ToRoom (by phase), and see if it only has a room on one side of it

    • This presumes that all rooms are modeled.
    • This presumes that certain "outdoor" rooms, like "Deck", "Patio" are not modeled.
  • You can look at the geometry, intersecting the door vector with other walls in the model. The performance varies. Sometimes it's not as bad as you think.

    • This might get into how to properly handle linked models (and what geometry is in those linked models - core/shell, surrounding buildings, etc).
    • The simple shapes are easy, but more complex cases (courtyard, alleyway, etc) can be complex.

Good luck, I'd love to know what you come up with... -Matt

Upvotes: 1

Related Questions