public InteriorPath(WorldEditor worldEditor, IWorldContainer parentContainer, string meshName, InteriorPathContents path)
 {
     parent = parentContainer;
     app = worldEditor;
     points = new PointCollection(this, worldEditor, true, worldEditor.Config.DisplayRegionPoints, worldEditor.Config.RegionPointMeshName, worldEditor.Config.RegionPointMaterial);
     nameValuePairs = new NameValueObject();
     points.PointsChanged += new PointsChangedEventHandler(PointsChangedHandler);
     Changed += new InSceneChangedEventHandler(app.SceneChangedHandler);
     foreach (Vector3 position in path.Points)
     {
         int index;
         points.AddPoint(position, out index);
     }
 }
 public InteriorPath(WorldEditor worldEditor, IWorldContainer parentContainer, string meshName, InteriorPathContents path)
 {
     parent                = parentContainer;
     app                   = worldEditor;
     points                = new PointCollection(this, worldEditor, true, worldEditor.Config.DisplayRegionPoints, worldEditor.Config.RegionPointMeshName, worldEditor.Config.RegionPointMaterial);
     nameValuePairs        = new NameValueObject();
     points.PointsChanged += new PointsChangedEventHandler(PointsChangedHandler);
     Changed              += new InSceneChangedEventHandler(app.SceneChangedHandler);
     foreach (Vector3 position in path.Points)
     {
         int index;
         points.AddPoint(position, out index);
     }
 }