[ブログに戻る](/ja/blog) # Teigha Mechanical で HoleChartOrigin を作成する

Alexandr Matvienko 8月 08, 2017 [\#mechanical](/ja/blog/tag/mechanical) [\#getting started](/ja/blog/tag/getting-started)

<a class="a2a_button_facebook"></a><a class="a2a_button_twitter"></a><a class="a2a_button_linkedin"></a>

Teigha Mechanical では、HoleChartOrigin は HoleChart 複合エンティティの一部です。HoleChart のすべてのコンポーネントを正しく機能させるには、HoleChartOrigin の作成が最初に行うべきことです。

![image1](/files/inline-images/image001_5.png)AcMgDimManager を使用して AcAmgHoleChartOrigin を作成し、その位置を設定します。

```
AcMgDimManager manager;
AcAmgHoleChartOriginPtr pHCO;
manager.newHoleChartPoint(pHCO, pDb, btrId, FHCId);
pHCO->setOrigin(OdGePoint3d(65.0, 300.0, 0.0));

```

newHoleChartPoint の引数は次のとおりです。

- pHCO — HoleChartOrigin スマートポインタ
- pDb — データベースポインタ
- btrId — HoleChartOrigin を含むブロックテーブル行、次に AcAmgFilteredHoleChart の OdDbObjectId
- FHCId — デフォルトで true のブールフラグで、HoleChartPoint ではなく HoleChartOrigin を作成していることを示します

HoleChartOrigin には、直交座標系と極座標系の 2 つの独立した座標系レイヤーが含まれています。これらのレイヤーには、テキストプロパティ (高さ、色、アタッチメントポイント) や HoleChartOrigin コンポーネント (座標系の終端記号と矢印) などの独自のプロパティがあります。デフォルトでは直交座標系が使用されます。テキストプロパティを設定するには、次のコードを使用します。

```
pHCO->setTextPosition(OdGePoint3d(85.0, 320.0, 0.0));
pHCO->useSetTextPosition();
pHCO->setTextHeight(7.0, AcMgHc::kCartesian);
pHCO->setTextAttachment(Acm::kTopRight,
AcMgHc::kCartesian);
pHCO->setTextColor(OdCmColor(OdCmEntityColor::kByLayer), AcMgHc::kCartesian);

```

AcMgHc::kPolar 列挙型を使用して極座標系のプロパティを設定し、極座標系に切り替えることができます。

```
pHCO->setCoordSystemType(AcMgHc::kPolar);

```

終端記号のタイプと、さまざまなコンポーネントの表示設定も構成できます。

```
pHCO->setOriginTerminator(AcMgHc::kPoint2d, AcMgHc::kCartesian);
pHCO->setOriginFlags(SHOWZERO | SHOWCOORDSYSTEM, AcMgHc::kCartesian);

```

原点終端記号には 7 種類あります。

- text
- kNone
- kPoint2d
- kDot
- kDotBlank
- kCross
- kNc
- kCustom

原点フラグは、コンポーネントの表示設定を設定するビットマスクです。

- SHOWCOORDSYSTEM — 原点矢印の表示設定。
- SHOWZERO — 「0」テキストの表示設定。
- DRAWLEADER — HoleChartPoint で引き出し線の表示設定に使用されます。

AcAmgFilteredHoleChart を介して原点テキストを設定できます。

```
OdDbObjectPtr pObj = FHCId.safeOpenObject(OdDb::kForWrite);
AcAmgFilteredHoleChartPtr pFHC = AcAmgFilteredHoleChart::cast(pObj);
pFHC->setColumnEquation(AcMgHc::kHcOrigin, L"MyStr");

```

最後のステップは、HoleChartOrigin のレイヤーを設定することです。

```
pHCO->setLayer(L"AM_5");

```

## 今すぐ始める

**ODAソフトウェアを60日間無料でお試しください。  
リスクなし、クレジットカード不要。**

[無料で試す](https://www.opendesign.com/ja/free-trial)
