欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# CAD SelectionFilter下TypedValue數(shù)組使用方式

 更新時間:2024年02月22日 16:25:48   作者:李建軍  
這篇文章主要介紹了C# CAD SelectionFilter下TypedValue數(shù)組使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

TypedValue數(shù)組使用方式

SelectionFilter是用于過濾AutoCAD實體的類,在AutoCAD中,可以使用它來選擇具有特定屬性的實體。

構(gòu)造SelectionFilter對象時,需要傳入一個TypedValue數(shù)組,它用于定義選擇規(guī)則。

在TypedValue數(shù)組中,每個元素表示一個選擇條件,它由兩個參數(shù)組成:DxfCode和值。

DxfCode是一個整數(shù)枚舉值,用于表示選擇條件的類型,而值則是與之對應(yīng)的具體屬性值。

根據(jù)不同的需求,可以定義不同的TypedValue對象,并將它們組合成一個數(shù)組,從而實現(xiàn)各種自定義的選擇規(guī)則。

常用的DxfCode枚舉值及其對應(yīng)的屬性值

  • DxfCode.Start(0):選擇開始實體
  • DxfCode.End(1):選擇結(jié)束實體
  • DxfCode.Text(1):選擇包含指定文本的實體
  • DxfCode.BlockName(2):選擇位于指定塊名稱的實體
  • DxfCode.LayerName(8):選擇位于指定圖層的實體
  • DxfCode.Color(62):選擇指定顏色的實體
  • DxfCode.LinetypeName(6):選擇位于指定線型的實體
  • DxfCode.LinetypeScale(48):選擇具有指定線型比例的實體
  • DxfCode.LineWeight(370):選擇具有指定線寬的實體
  • DxfCode.EntityHandle(5):選擇具有指定句柄的實體
  • DxfCode.XCoordinate(10):選擇具有指定X坐標(biāo)的實體
  • DxfCode.YCoordinate(20):選擇具有指定Y坐標(biāo)的實體
  • DxfCode.ZCoordinate(30):選擇具有指定Z坐標(biāo)的實體
  • DxfCode.Radius(40):選擇具有指定半徑的實體
  • DxfCode.Diameter(41):選擇具有指定直徑的實體
  • DxfCode.Angle(50):選擇具有指定角度的實體
  • DxfCode.Elevation(38):選擇具有指定高度的實體
  • DxfCode.Thickness(39):選擇具有指定厚度的實體
  • DxfCode.TextStyleName(7):選擇使用指定文本樣式的實體
  • DxfCode.TextHeight(40):選擇具有指定文本高度的實體
  • DxfCode.TextRotation(50):選擇具有指定文本旋轉(zhuǎn)角度的實體
  • DxfCode.TextString(1):選擇包含指定字符串的實體
  • DxfCode.ObjectId(330):選擇具有指定對象ID的實體
// 選擇顏色為1(紅色)且位于圖層“Layer1”的線段
TypedValue[] values = new TypedValue[] {
    new TypedValue((int)DxfCode.Color, 1),
    new TypedValue((int)DxfCode.Start, "LINE"),
    new TypedValue((int)DxfCode.LayerName, "Layer1")
};

下面是一個示例代碼

演示如何實現(xiàn)選擇圖層名為"權(quán)利人"和"預(yù)編號"

并且類型為TEXT的實體:

    SelectionFilter innerFilter = new SelectionFilter(new TypedValue[] {
    new TypedValue((int)DxfCode.Operator, "<or"),
    new TypedValue((int)DxfCode.LayerName, "權(quán)利人"),
    new TypedValue((int)DxfCode.LayerName, "預(yù)編號"),
    new TypedValue((int)DxfCode.Start, "TEXT"),  // 實體類型為TEXT
    new TypedValue((int)DxfCode.Operator, "or"),
    new TypedValue((int)DxfCode.End, "or"),
});
    // 使用多邊形窗口選擇方式讓用戶選擇位于外部多段線內(nèi)的實體
    PromptSelectionResult innerSelRes = ed.SelectWindowPolygon(outerPoints, innerFilter);

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論