List<XYZ> GetBoundaryCorners( FilledRegion region )
{
List<XYZ> result = new List<XYZ>();
ElementId id = new ElementId(
region.Id.IntegerValue - 1 );
Sketch sketch = region.Document.GetElement(
id ) as Sketch;
if( null != sketch )
{
CurveArray curves = sketch.Profile.get_Item( 0 );
if( null != curves )
{
foreach( Curve cur in curves )
{
XYZ corner = cur.GetEndPoint( 0 );
result.Add( corner );
}
}
}
return result;
}