GetSubEntity やっとこさ修正完
AutoCADでオリジナルの下書き線作成コマンドを使用していますが長年放置していた問題をやっとこさ修正できました。下書き線のオフセットコマンドで、ブロック内エンティティ を基準にオフセット線を作成可能とするため、GetSubEntityを使用してエンティティ選択させています。HELPの構文はobject.GetSubEntity Object, PickedPoint, TransMatrix, ContextData [, Prompt]このようになっています。PickedPointアクセス:出力のみタイプ:バリアント型(3 要素の倍精度浮動小数点数型配列)選択した点を指定する 3D WCS 座標。WCS座標となっているのですが、UCS設定しているとUCS座標になっていました。しかし、選択されたエンティティの座標はWCSのものです。選択エンティティをモデル空間にコピー、座標変換させていますが、座標系指定はできなさそう。選択したエンティティの座標と選択点が離れるという、そりゃ結果異なるよね。 という状態に先週気が付いた。TranslateCoordinates(PickedPoint, acUCS, acWorld, False)これで選択点もWCS座標にして解決です。UCS使用中ですが、オフセットなので相対距離があっていれば正しく動作します。