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