PDA

View Full Version : Walls of the room



kklsara
2008-09-11, 12:36 PM
How to retrieve the sorrounding walls of a room ?

I know the boundary curve can be obtained, but the boundary curve is the inner edge of the wall. But I need the wall LocationCurve.

Thanks,
-Saro

mmason.65315
2008-09-12, 11:51 AM
From the BoundarySegment you can get its Element, which is the element which is bounding the room (typically a Wall or Room Bounding line).

As a side note, you can change the settings that control how Room Boundaries are reported to use the Wall Centerline, etc.

-Matt

Amirek1
2008-09-12, 02:47 PM
As a side note, you can change the settings that control how Room Boundaries are reported to use the Wall Centerline, etc.



Could you elaborate more on this?
Also, is there a way to do the other way; i.e., writing the code so that when assgining rooms in Revit, the room boundary lines are aligned with wall centerline or exterior face?

kklsara
2008-09-13, 05:49 AM
Hi Matt:

I could not get your point. "Change setting".. Is that can be done by API? If so can you please let me know about it in detail.

Thanks in advance,
-kklsara

kklsara
2008-09-13, 06:01 AM
Hi Amirek1:

Yes I eloborate my problem.

When I export the rooms, I export the room boundary curves also. This is done by getting the Room.Boundary way. But here I get the boundary curves as the inner edges of the wall footing.

Now When I import the same again, I get the room boundary curves as the edges only. So when I tried to create the walls using this curves, the walls are offset and interfere/placed apart. This is because, the curves are automatically taken as the center Location curve of the wall.

There seems an other way creating a room boundary without walls. It is by "Room Separation lines"
So I tried to create the "Room Separation" lines using the current edge curves.
I used the method NewRoomBoundaryLines() which is available in the Create namespace.
But adding to my worries, they are produced as Space separation lines only.

Any suggestions would be great :)

Thanks,
-kklsara

mmason.65315
2008-09-13, 01:10 PM
Disclosure: I have not fully tried this - but here's my theory.

If you change the Revit settings under Settings + Area and Volume Calculations, you can make it so that when Revit returns you the boundary lines for the room, they can be in any of a few places (wall face, wall center, wall core center, etc).

This setting can be changed programmatically.

So I was suggesting that if you change the setting, you would get the boundary lines in a way which would support your creation of walls (which currently have to be created on center through the API).

-Matt

kklsara
2008-09-15, 01:26 AM
Yes. I find by its category.
But Category is "read only".

Is that any way to change its category?

-kklsara

mmason.65315
2008-09-15, 12:03 PM
No, there's no way to programmatically change the category I think.
-Matt

kklsara
2008-09-16, 02:26 AM
Well, I saw a linestyle can be set for the ModelCurve, but I could not get the available styles in application. Any idea how can I iterate the linestyles?

-Saro