2017-01-10 16 views
0

私はRevit Apiで新しく、助けが必要です。 私はいくつかのModelLineを持っています。 ModelLineの開始点または終了点をどのように知っていますか?開始点または終了点ModelLineの取得方法

Selection mySelection = rvtUIDoc.Selection; 
     ICollection<ElementId> selectedIds = rvtUIDoc.Selection.GetElementIds(); 

     ICollection<ElementId> selectedlinesIds = new List<ElementId>(); 

     foreach (ElementId id in selectedIds) 
     { 
      Element elements = rvtUIDoc.Document.GetElement(id); 

      if (elements is ModelLine) 
      { 
       selectedlinesIds.Add(id); 
      } 
     } 

     //Проверяем есть ли выделенные объекты 
     if (0 == selectedlinesIds.Count) 
     { 
      TaskDialog.Show("Revit","Вы не выделили ни одной линии"); 
     } 
     else 
     { 

      ModelLine(rvtUIDoc, m_rvtDoc, selectedlinesIds); 
     } 

次に何をする必要がありますか?

http://thebuildingcoder.typepad.com/blog/about-the-author.html#2

実際の答え:

のRevit APIへの初心者として

答えて

1

、私はあなたがのRevit APIを介して動作、すべての最初の、特にDevTVと私の最初のRevitプラグインチュートリアル材料始めることをお勧めこの質問と多くの。

あなたの質問に対する直接の答えは、ModelCurveの開始点と終了点が、下にあるジオメトリ曲線によって制御されていることです。

プロパティからアクセスできます。

GetEndPointは、開始点または終了点に3D点を返すメソッドを提供します。

あなたの質問に答えます。

新しい開始点または終了点を定義する、つまり既存の点を変更するには、全く新しい曲線を作成する必要があります。ここで

はまさにそれをやっての例です:答えのための

http://thebuildingcoder.typepad.com/blog/2013/08/generating-a-midcurve-between-two-curve-elements.html

+0

感謝 – Kuvon