1.首先明确一点,经过测试发现,FromRoom和ToRoom属性并不能确定门或者窗的朝向问题,这个属性用来干嘛我也不确定。
按照有些博客中的说法,门开向哪个房间,那么ToRoom属性就是哪个房间,若是想更改,可以通过door.FlipFromToRoom方法来变更门窗的这两个属性。
2.门的朝向,可以通过familyinstance.FacingOrientation来判定。若在平面图中,门朝上开,则FacingOrientation=new XYZ(0,1,0);
门朝右开,则FacingOrientation=new XYZ(1,0,0).
若是需要更改朝向,则使用familyinstance.flipFacing()方法来对其进行反向。
3.如果在一个事务中,先创建了一个门的实例,紧接着获取其FromRoom或者ToRoom属性,是不准确的,如果需要获取,
必须对文档进行更新,即Document.Regenerate(),然后再获取其属性,这个时候,就与lookup中查看到的是一致的了。
Regenerate无需再开一个事务单独进行,放到同一个事务里面,添加这个方法即可。